我有一个包含症状和疾病的数据集。每种疾病都包含带有权重的症状(根据重要性)。问题是在这种情况下无法使用监督方法,因为我没有测试集(我只是在表中列出了症状和疾病之间的联系)。我已经使用了一种通过重要性来计算匹配症状的方法,但是如果症状与数据集中的症状不同,该方法将失败。
我想知道是否有可能训练一个模型,该模型能够理解不同症状之间的隐藏联系,并且如果我们选择的症状不同但非常相似,至少可以给出近似的结果。示例:流感有咳嗽,但人们选择了干咳。该模型应考虑基于不同疾病的两种症状之间的相似性。
如果您对文献或算法名称有任何建议,我将不胜感激。
UPD 1:示例:
支气管炎的数据示例
主要思想是根据明确的症状获得可能的疾病。现在,我要匹配症状并求和匹配的权重,即如果我们选择咳嗽+呼吸音,它将为0.441887 + 0.144301。但是,这种方法不灵活且非常严格。目的是训练一个能够应对类似症状的模型。如果我们选择“干咳”,则不应给出0.44,而不能给出0.0
我有一个包含1949种独特疾病和151种症状的数据集。每种疾病至少包含4种症状。
答案 0 :(得分:0)
为解决这个问题,我建议您继续使用总和作为与数据集中的症状相匹配的症状,而对不存在的症状使用简单的技巧。 您应使用相似度(如果使用字符串,应先使用 Levenshtein ),这样可以得出新症状与数据集中所有症状的相似程度,然后通常找到最相似的症状相似度最高的那一个,由于此比率在O到1之间,因此您可以使用以下公式:
new_weight =相似度比* old_weight
获得new_weight,它是您用于新症状的权重(肯定会比旧的权重要小,但症状名称越相似,它就会越小)
示例:
干咳+呼吸音+发烧:
(在您提供的数据中,干咳与咳嗽最相似,并且假设干咳和咳嗽之间的相似度是.6)
您的支气管炎体重变为:
(。6 * 0.441887)+ 0.144301 + 0.013444
这只是一个起点,依靠它可以开发出更强大的方法