Doc2vec (gensim)-보이지 않는 문장의 레이블을 어떻게 유추 할 수 있습니까?


14

https://radimrehurek.com/gensim/models/doc2vec.html

예를 들어, doc2vec를

"aaaaaAAAAAaaaaaa"- "label 1"

"bbbbbbBBBBBbbbb"- "라벨 2"

Doc2vec를 사용하여“aaaaAAAAaaaaAA”가 레이블 1임을 추측 할 수 있습니까?

Doc2vec가 단어 벡터와 레이블 벡터를 훈련시킬 수 있다는 것을 알고 있습니다. 이 벡터를 사용하여 어떤 레이블에 보이지 않는 문장 (훈련 된 단어의 조합)을 유추 할 수 있습니까?

답변:


11

이 질문의 제목은 본문에 대한 별도의 질문이므로 두 가지 모두에 개별적으로 답변합니다 (하나는 다른 것으로 이어짐).

  1. 보이지 않는 문장을 어떻게 추론 할 수 있습니까?
# ... trained model stored in var model
list_of_words = ["this", "is", "a", "new","unseen", "sentence"]
inferred_embedding = model.infer_vector(list_of_words)

어떻게 작동합니까? 원본 용지 당 ( https://cs.stanford.edu/~quocle/paragraph_vector.pdf ) 우리는 두 개의 가중치 행렬은 랜덤 한 초기화 Word2Vec에서 동일한 매트릭스가되는 모든 열 또는 행 각 열 또는 행이 문장 / 문서에 매핑되는 문서 행렬 인 단어 벡터 및 D R M × R에 매핑됩니다. 훈련하는 동안 고정 창 k 크기 의 softmax 분류기 는 다음과 같은 로그 가능성을 최소화하여 (멀티 클래스 교차 엔트로피)아르 자형×아르 자형미디엄×아르 자형케이

1미디엄나는=1미디엄1|나는|=케이|나는1|케이영형((나는|케이나는,...,+케이나는,나는))

나는나는h|나는|나는h나는h

  1. 보이지 않는 문장이 훈련 세트의 문장과 정확히 일치한다고 추론 할 수 있습니까?

임의의 시드를 수정해도 작동하지 않을 수 있지만 수렴에 영향을 줄 수있는 다른 변수가 너무 많으므로 https://github.com/RaRe-Technologies/gensim/issues/374에서 첫 번째 답변을 참조하십시오 .

어쨌든 훈련 세트를 반복하고 유추 벡터와 유사성을 비교하면 데이터 세트에서 가장 유사한 레이블을 유추 문장으로 찾을 수 있습니다. 그러나 왜 훈련 세트의 무언가와 정확히 일치하고 싶습니까? 이것이 이러한 문서 임베딩의 목적을위한 정규식은 감독 또는 감독되지 않은 학습 작업 (예 : 분류 및 클러스터링)을위한 것입니다.


0

나는이 문제를 오늘 해결하려고 노력했으며, coudnt는 gensim.Doc2Vec에서 제공하는 모듈을 훈련 된 모델이 아닌 유추 된 문서 벡터와 훈련 된 모델의 유사도를 계산하는 모듈을 찾습니다. 그래서 기본적으로 나는 이것을했다.

from scipy import spatial
inferred_vector=model.infer_vector(sentence.split())
for labels in labelled_documents:
    print (1-  spatial.distance.cosine(inferred_vector,model.docvecs[labels]))

0

Gensim Doc2Vec tutorial을 기반으로 이와 같은 작업을 수행 할 수 있습니다.

inferred_vector = model_dmm.infer_vector(sentence.split())
sims = model.docvecs.most_similar([inferred_vector], topn=len(model.docvecs))

이렇게하면 모든 레이블이있는 튜플 목록과 각 레이블에 속하는 새 문서와 관련된 확률이 제공됩니다. 라벨로 가장 큰 가치를 얻을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.