Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何解释gensim';s Word2vec最相似的方法,并了解它是如何实现的';这就是输出值_Python_Nlp_Gensim_Word2vec_Word Embedding - Fatal编程技术网

Python 如何解释gensim';s Word2vec最相似的方法,并了解它是如何实现的';这就是输出值

Python 如何解释gensim';s Word2vec最相似的方法,并了解它是如何实现的';这就是输出值,python,nlp,gensim,word2vec,word-embedding,Python,Nlp,Gensim,Word2vec,Word Embedding,我试图在一个问题上实现word2vec。我将简要解释我的问题陈述: 我在处理临床数据。我想根据一组症状预测前N种疾病 Patient1: ['fever', 'loss of appetite', 'cold', '#flu#'] Patient2: ['hair loss', 'blood pressure', '#thyroid'] Patient3: ['hair loss', 'blood pressure', '#flu] .. .. Patient30000: ['vomiting'

我试图在一个问题上实现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维向量。这意味着您将每个症状表示为一个向量

    一排-

    X = ['fever', 'loss of appetite']
    
    X_onehot= [[0,0,0,1,0,0,0,0,0,0,0],
               [0,0,0,0,0,0,0,0,1,0,0]]
    
    X_word2vec= [[0.002,0.25,-0.1,0.335,0.7264],
                 [0.746,0.6463,0.0032,0.6301,0.223]]
    
    Y = #flu
    
    现在,您可以通过取word2vec的平均值来表示数据中的每一行,例如-

    X_avg = [[0.374 ,0.44815, -0.0484, 0.48255, 0.4747]]
    
    现在,数据集中的每一行都有一个5长度的特征向量和一个类。接下来,您可以将其视为任何其他机器学习问题

    如果你想预测疾病,那么只需在列车测试分割后使用分类模型。这样您就可以验证数据


    对word2vec向量使用余弦相似性只会产生类似的症状。它不会让你建立一个疾病推荐模型,因为这样你就可以根据其他类似的症状推荐一个症状。

    评论不用于扩展讨论;这段对话已经结束。