저는 파이썬에서 word2vec 모델을 사용하기 위해 첫 번째 앱을 작성하고 있습니다. 여기 내 간단한 코드w2v를 사용하는 동안 파이썬에서 인코딩 문제가 발생했습니다.
import gensim, logging
import sys
import warnings
from gensim.models import Word2Vec
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
def main():
####LOAD MODEL
model = Word2Vec.load_word2vec_format('models/vec-cbow.txt', binary=False)
model.similarity('man', 'women')
if __name__ == '__main__':
with warnings.catch_warnings():
warnings.simplefilter("error")
#warnings.simplefilter("ignore")
main()
나는이 다음과 같은 오류가 있습니다 :
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 96-97: invalid continuation byte
나는이 두 줄을 추가하여 해결을 시도,하지만 난 여전히 오류를 받고 있어요.
reload(sys) # Reload does the trick!
sys.setdefaultencoding('UTF8') #UTF8 #latin-1
w2v 모델은 영어 문장에 대해 교육을 받았습니다.
편집 :
**%run "...\getSimilarity.py"**
---------------------------------------------------------------------------
UnicodeDecodeError Traceback (most recent call last)
**...\getSimilarity.py in <module>()**
64 warnings.simplefilter("error")
65 #warnings.simplefilter("ignore")
---> 66 main()
**...\getSimilarity.py in main()**
30 ####LOAD MODEL
---> 31 model = Word2Vec.load_word2vec_format('models/vec-cbow.txt', binary=False) # C binary format
32 model.similarity('man', 'women')
**...\AppData\Local\Enthought\Canopy\User\lib\site-packages\gensim-0.12.4-py2.7-win-amd64.egg\gensim\models\word2vec.pyc in load_word2vec_format(cls, fname, fvocab, binary, encoding, unicode_errors)**
1090 else:
1091 for line_no, line in enumerate(fin):
-> 1092 parts = utils.to_unicode(line.rstrip(), encoding=encoding, errors=unicode_errors).split(" ")
1093 if len(parts) != vector_size + 1:
1094 raise ValueError("invalid vector on line %s (is this really the text format?)" % (line_no))
**...\AppData\Local\Enthought\Canopy\User\lib\site-packages\gensim-0.12.4-py2.7-win-amd64.egg\gensim\utils.pyc in any2unicode(text, encoding, errors)**
215 if isinstance(text, unicode):
216 return text
--> 217 return unicode(text, encoding, errors=errors)
218 to_unicode = any2unicode
219
**...\AppData\Local\Enthought\Canopy\App\appdata\canopy-1.6.2.3262.win-x86_64\lib\encodings\utf_8.pyc in decode(input, errors)**
14
15 def decode(input, errors='strict'):
---> 16 return codecs.utf_8_decode(input, errors, True)
17
18 class IncrementalEncoder(codecs.IncrementalEncoder):
**UnicodeDecodeError: 'utf8' codec can't decode bytes in position 96-97: invalid continuation byte**
어떤 힌트를 어떻게 문제를 해결하기 : 여기에 전체 스택입니까? 미리 감사드립니다.
'models/vec-cbow.txt'의 크기는 어느 정도입니까? 파일 공유 웹 사이트를 통해 질문에 포함시킬 수 있습니까? 'utf-8'로 인코딩 된 것 같지 않습니다. – MYGz
2.25GB입니다. 나는 당신이 "파일 공유 웹 사이트를 통해 질문에 포함시킬 수 있습니까?"라는 말을 얻지 못했습니까? – sareem
아니, 너무 큽니다. 아니야. – MYGz