RAKE con GENSIM

Estoy tratando de calcular la similitud. En primer lugar, utilicé la biblioteca RAKE para extraer las palabras clave de los trabajos rastreados. Luego puse las palabras clave de cada trabajo en una matriz separada y luego combiné todas esas matrices en documentArray.

documentArray = [‘Comando de la ira, Asertividad, Accesibilidad, Adaptabilidad, Autenticidad, Agresividad, Pensamiento analítico, Biología Molecular, Biología Molecular, Biología Molecular, Biología Molecular, Biología Molecular, Master, Inglés, Biología Molecular, Islamabad, Distrito de Islamabad, Capital de Islamabad Territorio, Pakistán, Rawalpindi, Rawalpindi, Punjab, Pakistán ‘”], [‘ Compensación competitiva, diseño de ensayos, actitud positiva, base regular, motivar a otros, reuniones relacionadas, mejorar el estado, viajes, doctorado, resúmenes de reuniones, paquete de beneficios , base diaria, trabajos científicos, notas de aplicación ‘]


queryStr = ‘In Vitro, Bioquímica, PCR, Western Blotting, Neurociencia, Biología Molecular, Biología Celular, Inmunohistoquímica, Microscopía, Modelos Animales, Presentaciones, Inmunoprecipitación, Biología Celular, Maestría, Grado, Licenciatura ,,,,,

Luego escribí el siguiente código GENSIM,

clase Gensim:

    def __init__(self): print("Init") def calculateGensimSimilarity(self, texts, query): dictionary = corpora.Dictionary(texts) corpus = [dictionary.doc2bow(text) for text in texts] lsi = models.LsiModel(corpus, id2word=dictionary, num_topics=2) lda = models.LdaModel(corpus, id2word=dictionary, num_topics=2) index_lsi = similarities.MatrixSimilarity(lsi[corpus]) index_lda = similarities.MatrixSimilarity(lda[corpus]) vec_bow = dictionary.doc2bow(query.lower().split()) vec_lsi = lsi[vec_bow] vec_lda = lda[vec_bow] print("LSI Model") sims_lsi = index_lsi[vec_lsi] print("LDA Model") print(sims_lsi) sims_lda = index_lda[vec_lda] print(sims_lda) 

    Está imprimiendo LSA puntuación 0 y LDA puntuación 90% + coincidencia. Por favor, hágame saber dónde estoy equivocado y cómo puedo modificarlo para calcular la similitud de coseno correcta.

    Puntuación LSA [0. 0.] Puntuación LDA [0.94234258 0.9477495]