Использование модели Word2Vec, предварительно обученной в Википедии
Мне нужно использовать gensim для получения векторных представлений слов,и я считаю, что лучше всего использовать модуль word2vec, который предварительно обучен в корпусе английской Википедии. Кто-нибудь знает, где его скачать, как установить и как использовать gensim для создания векторов?
2 ответов:
@imanzabet предоставляет полезные ссылки с предварительно обученными векторами, но если вы хотите обучать модели самостоятельно, используя genism, вам нужно сделать две вещи:
Приобретите данные Википедии, к которым вы можете получить доступ здесь . Похоже, что самый последний снимок английской Википедии был сделан 20-го числа, и его можно найти здесь . Я считаю, что другие англоязычные "Вики", например цитаты , записываются отдельно, поэтому, если вы хотите включить их, вам нужно будет загрузите и их тоже.
Загрузите данные и используйте их для создания моделей. Это довольно широкий вопрос, поэтому я просто свяжу вас с отличной документацией genism и учебником word2vec.
Наконец, я отмечу, что, кажется, есть сообщение в блоге , описывающее именно ваш вариант использования.
Вы можете проверить WebVectors, чтобы найти модели Word2Vec, обученные на различных корпусах. Модели поставляются с readme, охватывающим детали обучения. Однако вам придется быть немного осторожным, используя эти модели. Я не уверен во всех из них, но, по крайней мере, в случае Википедии, модель-это не двоичный файл, который вы можете прямо загрузить, используя, например, функциональность
gensim, а txt-версия, то есть файл со словами и соответствующими векторами. Имейте в виду, однако, что слова прилагаются к например, если вы хотите использовать модель для поиска сходства для Словаvacation, вы получитеKeyError, Если вы наберете vacation as is, так как модель хранит это слово какvacation_NOUN. Пример фрагмента того, как вы можете использовать модель wiki (возможно, и другие, если они находятся в том же формате), и выходные данные приведены нижеimport gensim.models model = "./WebVectors/3/enwiki_5_ner.txt" word_vectors = gensim.models.KeyedVectors.load_word2vec_format(model, binary=False) print(word_vectors.most_similar("vacation_NOUN")) print(word_vectors.most_similar(positive=['woman_NOUN', 'king_NOUN'], negative=['man_NOUN']))И выход
▶ python3 wiki_model.py [('vacation_VERB', 0.6829521656036377), ('honeymoon_NOUN', 0.6811978816986084), ('holiday_NOUN', 0.6588436365127563), ('vacationer_NOUN', 0.6212040781974792), ('resort_NOUN', 0.5720850825309753), ('trip_NOUN', 0.5585346817970276), ('holiday_VERB', 0.5482848882675171), ('week-end_NOUN', 0.5174300670623779), ('newlywed_NOUN', 0.5146450996398926), ('honeymoon_VERB', 0.5135983228683472)] [('monarch_NOUN', 0.6679952144622803), ('ruler_NOUN', 0.6257176995277405), ('regnant_NOUN', 0.6217397451400757), ('royal_ADJ', 0.6212111115455627), ('princess_NOUN', 0.6133661866188049), ('queen_NOUN', 0.6015778183937073), ('kingship_NOUN', 0.5986001491546631), ('prince_NOUN', 0.5900266170501709), ('royal_NOUN', 0.5886058807373047), ('throne_NOUN', 0.5855424404144287)]Обновление Вот некоторые полезные ссылки на бинарные модели:
Предварительное встраивание слов модели:
Модели быстрого текста :
- crawl-300d-2M. vec.zip : 2 миллиона векторов слов, обученных на обычном обходе (600b токенов).
- wiki-news-300d-1M. vec.zip : 1 миллион векторов слов, обученных в Википедии 2017, umbc webbase corpus и statmt.org набор данных новостей (16b токенов).
- wiki-news-300d-1M-подслово.век.зип: 1 млн. слов векторы обучение с информации полсловом в Википедии 2017, МУБ webbase корпус и statmt.org набор данных новостей (16b токенов).
- векторы слов Wiki , dim=300: wiki.англ..zip : bin+text model
Google Word2Vec
- предварительно обученные векторы слов / фраз:
- GoogleNews-vectors-negative 300.мусорное ведро.gz
- GoogleNews-vectors-negative 300-SLIM.мусорное ведро.gz : тонкая версия с приложением. 300k слов
- предварительно обученные векторы сущностей:
- freebase-vectors-skipgram1000.мусорное ведро.gz : Векторы сущностей, обученные на 100B словах из различных новостных статей
- freebase-vectors-skipgram1000-en.мусорное ведро.gz : векторы сущностей, обученные на 100B словах из различных новостных статей, используя устаревшее/ en / именование (более легко читаемое); векторы отсортированы по частоте
Перчатка : глобальные векторы для представления слов
- перчатка.6B.zip : Wikipedia 2014 + Gigaword 5 (6B токенов, 400K vocab, uncased, 50d, 100d, Векторы 200d, & 300d, загрузка 822 МБ). Вот пример в действии.
- перчатка.840B.300d.zip : общий обход (840b токенов, 2.2 M vocab, cased, 300D векторов, загрузка 2.03 GB)
WebVectors
- модели, обученные на различных корпусах, дополненные тегами Part-of-Speech (POS)
Comments