Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
Для оценки качества полученных векторов авторы предыдущих исследований обычно использовали наборы слов. Для каждого слова из набора обычно рассматривался список слов, векторы которых по некоторой метрике расстояния были ближайшими к вектору исходного слова. В качестве метрики обычно использовалось косинусное расстояние, то есть разница между косинусами углов двух векторов.
Весьма занимателен вопрос о том, почему авторы word2vec использовали косинусное расстояние, а, например, не обычное евклидово. Дело в том, что косинусное расстояние игнорирует длину векторов, то есть если мы умножим любой из векторов, для которых рассчитывается расстояние, на некоторый скаляр, то косинусное расстояние между этими векторами не изменится. Именно поэтому косинусное расстояние часто используется в ситуациях, когда компонентой вектора является, например, число вхождений слова в некоторое множество документов; как раз такие векторы применяются в латентном семантическом анализе. Не исключено, что Миколов и его коллеги просто взяли привычную метрику, по крайней мере в их статьях нет объяснения использованию именно косинусного расстояния. Впрочем, более поздние исследования [2132] , [2133] , [2134] показали, что длина вектора признаков слова в word2vec связана с частотой
2132
Wilson B., Schakel A. M. J. (2015). Controlled Experiments for Word Embeddings // https://arxiv.org/abs/1510.02675
2133
Rajasekharan A. (2017). How does word2vec work? Can someone walk through a specific example? / Quora // https://www.quora.com/How-does-word2vec-work-Can-someone-walk-through-a-specific-example/answer/Ajit-Rajasekharan
2134
Gong C., He D., Tan X., Qin T., Wang L., Liu T.-Y. (2020). FRAGE: Frequency-Agnostic Word Representation // https://arxiv.org/abs/1809.06858
Хотя CBOW и Skip-gram, как выяснили Миколов и коллеги, хорошо отыскивают синонимы, объективно сравнить качество различных наборов векторов при решении этой задачи довольно сложно. Оценка степени семантической близости слов в ряде случаев сильно зависит от оценщика, поэтому Миколов и его коллеги поставили во главу угла обнаруженное ими интересное свойство вычисленных моделями векторов. Наблюдения исследователей показали, что отношения между векторами отражают различные семантические отношения между словами. Мы знаем, например, что слово «большой» относится к слову «больше» таким же образом, как слово «маленький» относится к слову «меньше», а слово «Москва» относится к слову «Россия» так же, как слово «Рим» относится к слову «Италия». Выяснилось, что если, например, из вектора, соответствующего слову «большой», вычесть вектор, соответствующий слову «больше», то результат будет близок к вектору, полученному путём вычитания из вектора слова «маленький» вектора слова «меньше». Благодаря этому свойству можно использовать полученные векторы для поиска ответов на вопросы вида «Какое слово так же относится к слову A, как слово X относится к слову Y?». Для этого нужно вычислить вектор B = A + X – Y и найти среди имеющихся векторов такой, который будет ближе всего к B (за исключением векторов, содержащихся в самом вопросе: A, X и Y).
Конечно, и такой подход в полной мере не исключает влияния субъективного фактора. Например, у ответов могут существовать синонимы. Но всё-таки такой способ выглядит гораздо более объективным, тем более что в ряде случаев тесты при его использовании можно создавать автоматически, что и сделали в своей работе Миколов и его коллеги. В частности, они использовали данные о столицах стран мира и штатов США, названия валют для стран, словарь антонимов, таблицы с разными формами слов и так далее. Используя эти наборы данных, можно было оценить, насколько успешно полученные наборы векторов способны давать ответ на вопросы типа «Какое слово относится к слову „Россия“ так же, как слово „доллар“ относится к слову „США“?» или «Какое слово относится к слову „дорогой“ так же, как слово „низкий“ относится к слову „высокий“?».
Миколов и его коллеги разделили все вопросы на две группы: семантические (например, нахождение страны по столице) и синтаксические (вопросы, в которых необходимо было подобрать близкие по форме слова: «быстро» — «быстрый»). Всего в тестовый набор было включено 8869 семантических и 10 675 синтаксических вопросов. На данной выборке модель Skip-gram с размерностью вектора признаков 300 продемонстрировала точность 53,3% (50,0% для семантических и 55,9% для синтаксических вопросов). Немного отстала от неё усовершенствованная версия модели NNLM с размерностью вектора признаков 100 — общая точность 50,8% (34,2 и 64,5% для семантических и синтаксических вопросов соответственно). Ранее же, при использовании векторов из более ранних работ других исследовательских групп, точность ответов на подобные вопросы не превышала 12,3% [2135] .
2135
Mikolov T., Chen K., Corrado G., Dean J. (2013). Efficient Estimation of Word Representations in Vector Space / International Conference on Learning Representations (ICLR-2013) // https://arxiv.org/abs/1301.3781
Появление векторов, созданных при помощи моделей Миколова и его коллег, означало настоящий прорыв в «понимании» естественного языка моделями машинного обучения. При этом главная заслуга создателей word2vec состояла не в том, что они улучшили качество работы моделей, а в том, что они, собрав все лучшие на тот момент достижения предшественников, создали прикладную методологию и подарили всем новый мощный инструмент для решения задач в области обработки естественного языка.
Интересно, что в 2020 г., спустя семь лет после выхода word2vec, исследователи из компании Bloomberg обнаружили [2136] , [2137] , что в оригинальной реализации word2vec (конкретно — в алгоритме CBOW) содержится ошибка, приводящая к снижению эффективности работы этого алгоритма. Хотя в 2020 г. мало кто в индустрии разрабатывает модели на основе word2vec (с тех пор появилось множество более совершенных моделей), но в эксплуатации в наши дни до сих пор наверняка остаётся ряд систем, использующих построенные при его помощи наборы эмбеддингов.
2136
Irsoy O., Benton A., Stratos K. (2020). koan: A Corrected CBOW Implementation // https://arxiv.org/abs/2012.15332
2137
Сапунов Г. (2021). koan: A Corrected CBOW Implementation (Ozan Irsoy, Adrian Benton, Karl Stratos) / gonzo-обзоры ML статей, Jan 19, 2021 // https://t.me/gonzo_ML/452
Словарные эмбеддинги нашли применение далеко за пределами сферы искусственного интеллекта. В наши дни их используют при решении самых разных задач в области лингвистики и семантики. Кроме того, для них нашлось применение и в сфере когнитивной психологии — как выяснилось, словарные эмбеддинги можно использовать для прогнозирования человеческого восприятия и оценок в таких разнообразных областях, как социальное познание [2138] , поведение людей в отношении вопросов здоровья, восприятие риска, организационное поведение [2139]
2138
* Социальное познание (англ. social cognition) — процесс познания одного человека другим, одна из сфер, изучаемых социальной психологией, которая исследует механизмы хранения, переработки и использования человеком информации о других людях и социальных ситуациях.
2139
** Организационное поведение (англ. organizational behavior) — научная дисциплина, занимающаяся исследованием поведения людей в организациях.
2140
Richie R., Zou W., Bhatia S., Vazire S. (2019). Predicting High-Level Human Judgment Across Diverse Behavioral Domains / Psychology, Vol. 5, Iss. 1, p. 50 // https://doi.org/10.1525/collabra.282
6.3.3.4 Наследники word2vec. Концепция «внимания»
Успехи в обуздании семантики означали неминуемый прогресс в самых разных областях обработки естественного языка: в определении семантической близости слов, обнаружении синонимов, категоризации понятий, создании диалоговых моделей, машинном переводе, сентимент-анализе и интент-анализе (определении смысла высказываний), оценке похожести стилей текстов и так далее [2141] , [2142] , [2143] .
2141
Baroni M., Dinu G., Kruszewski G. (2014). Don’t count, predict! A systematic comparison of context-counting vs. context-predicting semantic vectors / Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) // https://doi.org/10.3115/v1/P14-1023
2142
Sivakumar S., Videla L. S., Rajesh Kumar T., Nagaraj J., Itnal S., Haritha D. (2020). Review on Word2Vec Word Embedding Neural Net / 2020 International Conference on Smart Electronics and Communication (ICOSEC) // https://doi.org/10.1109/icosec49089.2020.9215319
2143
Adewumi T. P., Liwicki F., Liwicki M. (2020). Word2Vec: Optimal Hyper-Parameters and Their Impact on NLP Downstream Tasks // https://arxiv.org/abs/2003.11645
Вслед за word2vec Миколова и его коллег на свет появилось множество альтернативных векторных моделей: GloVe [2144] , fastText [2145] , ELMo [2146] , Indra [2147] и так далее. Аналогичные подходы стали практиковаться в смежных областях, например в биоинформатике, где появились векторные представления для элементов биологических последовательностей, такие как ProtVec [2148] , BioVec, GeneVec [2149] , Mol2vec [2150] , SPVec [2151] .
2144
Pennington J., Socher R., Manning C. (2014). GloVe: Global Vectors for Word Representation / Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1532–1543. // https://doi.org/10.3115/v1/D14-1162
2145
Bojanowski P., Grave E., Joulin A., Mikolov T. (2016). Enriching Word Vectors with Subword Information // https://arxiv.org/abs/1607.04606
2146
Peters M. E., Neumann M., Iyyer M., Gardner M., Clark C., Lee K., Zettlemoyer L. (2018). Deep contextualized word representations // https://arxiv.org/abs/1802.05365
2147
Sales J. E., Souza L., Barzegar S., Davis B., Freitas A., Handschuh S. (2018). Indra: A Word Embedding and Semantic Relatedness Server / Proceedings of the Eleventh International Conference on Language Resources and Evaluation (LREC 2018) // https://aclanthology.org/L18-1211/
2148
Asgari E., Mofrad M. R. K. (2015). ProtVec: A Continuous Distributed Representation of Biological Sequences // https://arxiv.org/abs/1503.05140
2149
Asgari E., Mofrad M. R. K. (2015). Continuous Distributed Representation of Biological Sequences for Deep Proteomics and Genomics / PLoS One, Vol. 10 (11), e0141287 // https://doi.org/10.1371/journal.pone.0141287
2150
Jaeger S., Fulle S., Turk S. (2017). Mol2vec: Unsupervised Machine Learning Approach with Chemical Intuition. / Journal of Chemical Information and Modeling, Vol. 58. Iss. 1, pp. 27–35. // https://doi.org/10.1021/acs.jcim.7b00616
2151
Zhang Y.-F., Wang X., Kaushik A.C., Chu Y., Shan X., Zhao M.-Z., Xu Q., Wei D.-Q. (2020). SPVec: A Word2vec-Inspired Feature Representation Method for Drug-Target Interaction Prediction / Frontiers in Chemistry, 2020-01-10. // https://doi.org/10.3389/fchem.2019.00895
Появление инструментов для построения эффективных словарных эмбеддингов, подобных word2vec, ознаменовало собой начало первой коннекционистской революции в обработке естественного языка и сформировало «лицо» моделей, использовавшихся в этой области в середине 2010-х гг. Типичным инструментом в эти годы стали рекуррентные сети (обычно LSTM), получавшие на вход последовательности векторов, соответствовавших словам текста. Иногда эти векторы обогащались путём добавления дополнительных компонент. Например, если слово содержится в некотором специальном списке (допустим, в перечне фамилий или имён людей, в словаре русского мата и т. д.), то дополнительная компонента вектора может принимать значение, равное 1, а в противном случае — значение 0. Для числительных можно в качестве дополнительной компоненты вектора использовать соответствующее числовое значение; например, для слова «первый» оно будет равно 1, для слова «семидесятый» — 70 и так далее.
Можно также использовать две разные таблицы векторов. Первую — построенную на огромном неспециализированном корпусе текстов, а вторую — построенную на небольшом корпусе текстов, имеющих непосредственное отношение к решаемой задаче (например, на текстах обращений клиентов в компанию и т. д.). Затем эти векторы можно сцеплять и, используя полученную комбинацию для эмбеддинга, создавать нейросеть для конкретной задачи. В мире и по сей день эксплуатируется множество систем, основанных на данном подходе.
На границе империй. Том 9. Часть 5
18. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
рейтинг книги
Господин моих ночей (Дилогия)
Маги Лагора
Любовные романы:
любовно-фантастические романы
рейтинг книги
Начальник милиции. Книга 4
4. Начальник милиции
Фантастика:
попаданцы
альтернативная история
рейтинг книги
Сама себе хозяйка
Любовные романы:
любовно-фантастические романы
рейтинг книги
Кодекс Крови. Книга V
5. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Бастард Императора. Том 8
8. Бастард Императора
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Газлайтер. Том 10
10. История Телепата
Фантастика:
боевая фантастика
рейтинг книги
Новый Рал 4
4. Рал!
Фантастика:
попаданцы
рейтинг книги
Метаморфозы Катрин
Фантастика:
фэнтези
рейтинг книги
Возвышение Меркурия
1. Меркурий
Фантастика:
героическая фантастика
попаданцы
аниме
рейтинг книги
Графиня Де Шарни
Приключения:
исторические приключения
рейтинг книги
