我试图在一个问题上实现word2vec。我将简要解释我的问题陈述:
我在处理临床数据。我想根据一组症状预测前N种疾病
Patient1: ['fever', 'loss of appetite', 'cold', '#flu#']
Patient2: ['hair loss', 'blood pressure', '#thyroid']
Patient3: ['hair loss', 'blood pressure', '#flu]
..
..
Patient30000: ['vomiting', 'nausea', '#diarrohea']
注: 1.前缀为#的词为诊断,其余为症状
在这个语料库上应用word2vec,我能够根据一组输入症状生成前10个诊断。现在,我想了解输出是如何生成的。通过添加输入向量,我知道这是余弦相似性,但我无法验证此输出。或者了解如何改进这一点。我真的很想知道到底是什么在后台导致了这些输出
有谁能帮我回答这些问题或强调这种方法的缺点/优点吗
Word2vec将为您提供n维向量,这些向量根据疾病的共现情况表示每种疾病。这意味着您将每个症状表示为一个向量
一排-
现在,您可以通过取word2vec的平均值来表示数据中的每一行,例如-
现在,数据集中的每一行都有一个5长度的特征向量和一个类。接下来,您可以将其视为任何其他机器学习问题
如果你想预测疾病,那么只需在列车测试分割后使用分类模型。这样您就可以验证数据
对word2vec向量使用余弦相似性只会产生类似的症状。它不允许您建立疾病推荐模型,因为这样您将根据其他类似症状推荐症状。
相关问题 更多 >
编程相关推荐