Вкладання слів
Вклада́ння слі́в (англ. word embedding) — це загальна назва низки методик мовного моделювання та навчання ознак в обробці природної мови (ОПМ), в яких слова або фрази зі словника відображують у вектори дійсних чисел. Концептуально воно дає математичне вкладення з простору з багатьма вимірами, по одному на слово, до неперервного векторного простору набагато нижчої розмірності.
До методів породжування цього відображення належать нейронні мережі,[1] зниження розмірності на матриці суміжності слів,[2][3][4] імовірнісні моделі,[5] метод поясненної бази знань,[6] та явне представлення в термінах контексту, в якому з'являються слова.[7]
Було показано, що вкла́дення слів та фраз, коли їх використовують як базове представлення входу, підсилюють продуктивність в задачах ОПМ, таких як синтаксичний аналіз[8] та аналіз тональності тексту.[9]
Розвиток та історія цього підходу
В мовознавстві вкладання слів обговорювали в дослідницькій області дистрибутивної семантики. Її метою є кількісне оцінювання та категоризування семантичних подібностей мовознавчих елементів на основі їхніх розподільних властивостей у великих вибірках мовних даних. Основну ідею, що «слово характеризується товариством, якого воно тримається», популяризував Ферт.[10]
Поняття семантичного простору з лексичними елементами (словами або кількаслівними термінами), представленими як вектори або вкладення, ґрунтується на обчислювальних викликах вловлювання розподільних властивостей та використання їх для практичного застосування, щоби вимірювати подібність між словами, фразами, або цілими документами. Першим поколінням моделей семантичного простору є векторної моделі для інформаційного пошуку.[11][12][13] Такі векторні моделі для слів та їхніх розподільних даних, втілені у своєму найпростішому вигляді, дають в результаті дуже розріджений векторний простір високої розмірності (пор. прокляття розмірності). Зниження числа вимірів із застосуванням лінійних алгебричних методів, таких як сингулярний розклад матриці, призвело потім до впровадження латентно-семантичного аналізу наприкінці 1980-х, та підходу Випадкового індексування для збирання контекстів суміжності слів.[14][15][16][17][18] 2000 року Бенжіо та ін. запровадили в низці праць «Нейронні ймовірнісні моделі мови» для зниження високої розмірності представлень слів у контекстах шляхом «навчання розподіленого представлення для слів».[19][20] Вкладання слів буває двох різних стилів: в одному слова виражають як вектори суміжних слів, а в іншому слова виражають як мовознавчі контексти, в яких ці слова трапляються, ці різні стилі досліджено в праці Лавеллі та ін. 2004 року.[21] Ровейс та Сол опублікували в «Science», як використовувати «локально лінійне вкладання» (ЛЛВ, англ. locally linear embedding, LLE), щоби виявляти представлення структур даних високої розмірності.[22] Більшість нових методик вкладання слів після 2005 року покладаються на нейромережну архітектуру замість більш імовірнісних та алгебричних моделей, з часу деяких засадничих праць Йошуа Бенжіо з колегами.[23][24]
Цей підхід було перейнято багатьма дослідницькими групами після зроблених близько 2010 року вдосконалень в теоретичній праці над якістю векторів та швидкістю тренування цієї моделі, та апаратних досягнень, що дали можливість з користю досліджувати ширший простір параметрів. 2013 року команда в Google під проводом Томаша Міколова створила word2vec, інструментарій вкладання слів, що може тренувати векторні моделі швидше за попередні підходи. Підхід word2vec широко використовували в експериментах, він сприяв підвищенню зацікавлення вкладаннями слів як технологією, зміщуючи напрямок досліджень від спеціалізованих досліджень до ширших експериментів, і врешті-решт проклавши шлях до практичного застосування.[25]
Обмеження
Одним з головних обмежень вкладань слів (векторних моделей слів у цілому) є те, що слова з кількома значеннями об'єднуються в єдине представлення (єдиний вектор в семантичному просторі). Іншими словами, багатозначність та омонімія не обробляються належним чином. Наприклад, в реченні «The club I tried yesterday was great!» не ясно, чи термін «club» стосується словосенсу «багатошаровий бутерброд», «бейсбольний клуб», «молитовня», «ключка для гри в гольф», чи будь-якого іншого сенсу, який може мати слово «club». Необхідність розміщення декількох сенсів на слово в різних векторах (багатосенсові вкладення, англ. multi-sense embeddings) стало мотивацією декількох внесків до ОПМ для розділення односенсових вкладень на багатосенсові.[26][27]
Більшість підходів, які виробляють багатосенсові вкладення, може бути поділено на дві головні категорії згідно їхнього представлення сенсу, а саме спонтанні, та на основі знань.[28] Заснований на word2vec'овім пропуск-грамі (англ. skip-gram), багатосенсовий пропуск-грам (БСПГ англ. Multi-Sense Skip-Gram, MSSG)[29] виконує словосенсове розділення та вкладання одночасно, вдосконалюючи тривалість свого тренування, виходячи з певного числа сенсів для всіх слів. В непараметричнім багатосенсовім пропуск-грамі (НП-БСПГ, англ. Non-Parametric Multi-Sense Skip-Gram, NP-MSSG) це число може мінитися залежно від кожного слова. Поєднуючи попереднє знання лексичних баз даних (наприклад, WordNet, ConceptNet, BabelNet), вкладення слів та воднозначнення сенсу слів, анотування найбільш підхожим сенсом (АНПС англ. Most Suitable Sense Annotation, MSSA)[30] мітить словосенси шляхом спонтанного підходу та підходу на основі знань, розглядаючи контекст слова в наперед визначеному ковзному вікні. Щойно слова було воднозначнено, їх можливо використовувати в стандартній методиці вкладання слів, тож виробляються багатосенсові вкладення. Архітектура АНПС дозволяє процесові воднозначнювання та анотування виконуватися рекурентно, самовдосконалювальним чином.
Відомо, що застосування багатосенсових вкладень покращує продуктивність в низці задач ОПМ, таких як розмічування частин мови, ідентифікація семантичних відношень, та семантична пов'язаність. Проте схоже, що задачі, пов'язані з розпізнаванням іменованих сутностей та аналізом тональності тексту, від представлення кількома векторами не виграю́ть.[31]
Для біологічних послідовностей: БіоВектори
Вкладення слів для N-грамів у біологічних послідовностях (наприклад, ДНК, РНК та протеїнах) для застосувань у біоінформатиці було запропоновано Асґарі та Мофрадом.[32] Назване біо-векторами (БіоВек, англ. bio-vectors, BioVec) для позначування біологічних послідовностей в цілому, й протеїн-векторами (ПротВек, англ. protein-vectors, ProtVec) для протеїнів (послідовностей амінокислот) та ген-векторами (ГенВек, англ. gene-vectors, GeneVec) для послідовностей генів, це представлення можливо широко використовувати в застосуваннях глибинного навчання в протеоміці та геноміці. Результати, представлені Асґарі та Мофрадом,[32] дозволяють припустити, що БіоВектори можуть характеризувати біологічні послідовності в термінах біохімічних та біофізичних інтерпретацій закономірностей, що лежать в їх основі.
Вектори думок
Вектори́ думо́к (англ. thought vectors) — це розширення вкладання слів на цілі речення або навіть документи. Деякі дослідники сподіваються, що вони можуть вдосконалити якість машинного перекладу.[33]
Програмне забезпечення
До програмного забезпечення тренування та використання вкладень слів належать word2vec Томаша Міколова, GloVe Стенфордського університету,[34] GN-GloVe,[35] ELMo AllenNLP,[36] BERT,[37] fastText, Gensim,[38] Indra[39] та Deeplearning4j. Для знижування розмірності простору векторів слів та унаочнювання вкладень слів та кластерів використовують як метод головних компонент (МГК, англ. PCA), так і t-розподілене вкладення стохастичної близькості (англ. t-SNE).[40]
Приклади застосування
Наприклад, fastText також використовують, щоби обчислювати вкладення слів для корпусів текстів у Sketch Engine, доступних онлайн.[41]
Див. також
- Кластерування Брауна
Примітки
- Mikolov, Tomas; Sutskever, Ilya; Chen, Kai; Corrado, Greg; Dean, Jeffrey (2013). «Distributed Representations of Words and Phrases and their Compositionality». arXiv:1310.4546 [cs.CL]. (англ.)
- Lebret, Rémi; Collobert, Ronan (2013). Word Emdeddings through Hellinger PCA. Conference of the European Chapter of the Association for Computational Linguistics (EACL) 2014. Bibcode:2013arXiv1312.5542L. arXiv:1312.5542. (англ.)
- Levy, Omer; Goldberg, Yoav (2014). Neural Word Embedding as Implicit Matrix Factorization NIPS. (англ.)
- Li, Yitan; Xu, Linli (2015). Word Embedding Revisited: A New Representation Learning and Explicit Matrix Factorization Perspective Int'l J. Conf. on Artificial Intelligence (IJCAI). (англ.)
- Globerson, Amir (2007). Euclidean Embedding of Co-occurrence Data. Journal of Machine Learning Research. (англ.)
- Qureshi, M. Atif; Greene, Derek (4 червня 2018). EVE: explainable vector based embedding technique using Wikipedia. Journal of Intelligent Information Systems (англ.) 53: 137–165. ISSN 0925-9902. arXiv:1702.06891. doi:10.1007/s10844-018-0511-x. Проігноровано невідомий параметр
|s2cid=
(довідка) (англ.) - Levy, Omer; Goldberg, Yoav (2014). Linguistic Regularities in Sparse and Explicit Word Representations CoNLL. с. 171–180. (англ.)
- Socher, Richard; Bauer, John; Manning, Christopher; Ng, Andrew (2013). Parsing with compositional vector grammars Proc. ACL Conf. (англ.)
- Socher, Richard; Perelygin, Alex; Wu, Jean; Chuang, Jason; Manning, Chris; Ng, Andrew; Potts, Chris (2013). Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank EMNLP. (англ.)
- Firth, J.R. (1957). A synopsis of linguistic theory 1930-1955. Studies in Linguistic Analysis: 1–32. Передруковано в F.R. Palmer, ред. (1968). Selected Papers of J.R. Firth 1952-1959. London: Longman. (англ.)
- Salton, Gerard (1962). Some experiments in the generation of word and document associations. Proceeding AFIPS '62 (Fall) Proceedings of the December 4–6, 1962, fall joint computer conference: 234–250. Процитовано 18 жовтня 2020. (англ.)
- Salton, Gerard; Wong, A; Yang, C S (1975). A Vector Space Model for Automatic Indexing. Communications of the Association for Computing Machinery (CACM): 613–620. (англ.)
- Dubin, David (2004). The most influential paper Gerard Salton never wrote. Процитовано 18 жовтня 2020. (англ.)
- Sahlgren, Magnus. A brief history of word embeddings. (англ.)
- Kanerva, Pentti, Kristoferson, Jan and Holst, Anders (2000): Random Indexing of Text Samples for Latent Semantic Analysis, Proceedings of the 22nd Annual Conference of the Cognitive Science Society, p. 1036. Mahwah, New Jersey: Erlbaum, 2000. (англ.)
- Karlgren, Jussi; Sahlgren, Magnus (2001). From words to understanding. У Uesaka, Yoshinori; Kanerva, Pentti; Asoh, Hideki. Foundations of Real-World Intelligence (CSLI Publications): 294–308. (англ.)
- Sahlgren, Magnus (2005) An Introduction to Random Indexing, Proceedings of the Methods and Applications of Semantic Indexing Workshop at the 7th International Conference on Terminology and Knowledge Engineering, TKE 2005, August 16, Copenhagen, Denmark (англ.)
- Sahlgren, Magnus, Holst, Anders and Pentti Kanerva (2008) Permutations as a Means to Encode Order in Word Space, In Proceedings of the 30th Annual Conference of the Cognitive Science Society: 1300-1305. (англ.)
- Bengio, Yoshua; Ducharme, Réjean; Vincent, Pascal; Jauvin, Christian (2003). A Neural Probabilistic Language Model. Journal of Machine Learning Research 3: 1137–1155. (англ.)
- Bengio, Yoshua; Schwenk, Holger; Senécal, Jean-Sébastien; Morin, Fréderic; Gauvain, Jean-Luc (2006). A Neural Probabilistic Language Model. Studies in Fuzziness and Soft Computing 194. с. 137–186. ISBN 978-3-540-30609-2. doi:10.1007/3-540-33486-6_6. (англ.)
- Lavelli, Alberto; Sebastiani, Fabrizio; Zanoli, Roberto (2004). Distributional term representations: an experimental comparison 13th ACM International Conference on Information and Knowledge Management. с. 615–624. doi:10.1145/1031171.1031284. (англ.)
- Roweis, Sam T.; Saul, Lawrence K. (2000). Nonlinear Dimensionality Reduction by Locally Linear Embedding. Science 290 (5500): 2323–6. Bibcode:2000Sci...290.2323R. PMID 11125150. doi:10.1126/science.290.5500.2323. Проігноровано невідомий параметр
|citeseerx=
(довідка) (англ.) - Morin, Fredric; Bengio, Yoshua (2005). Hierarchical probabilistic neural network language model. AIstats 5: 246–252. (англ.)
- Mnih, Andriy; Hinton, Geoffrey (2009). A Scalable Hierarchical Distributed Language Model. Advances in Neural Information Processing Systems 21 (NIPS 2008) (Curran Associates, Inc.): 1081–1088. (англ.)
- word2vec
- Reisinger, Joseph; Mooney, Raymond J. (2010). Multi-Prototype Vector-Space Models of Word Meaning. Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics. Los Angeles, California: Association for Computational Linguistics. с. 109–117. ISBN 978-1-932432-65-7. Процитовано 25 жовтня 2019. (англ.)
- Huang, Eric. (2012). Improving word representations via global context and multiple word prototypes. OCLC 857900050. (англ.)
- Camacho-Collados, Jose; Pilehvar, Mohammad Taher (2018). From Word to Sense Embeddings: A Survey on Vector Representations of Meaning. Bibcode:2018arXiv180504032C. arXiv:1805.04032. (англ.)
- Neelakantan, Arvind; Shankar, Jeevan; Passos, Alexandre; McCallum, Andrew (2014). Efficient Non-parametric Estimation of Multiple Embeddings per Word in Vector Space. Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP) (Stroudsburg, PA, USA: Association for Computational Linguistics): 1059–1069. arXiv:1504.06654. doi:10.3115/v1/d14-1113. Проігноровано невідомий параметр
|s2cid=
(довідка) (англ.) - Ruas, Terry; Grosky, William; Aizawa, Akiko (1 грудня 2019). Multi-sense embeddings through a word sense disambiguation process. Expert Systems with Applications 136: 288–303. ISSN 0957-4174. doi:10.1016/j.eswa.2019.06.026. Проігноровано невідомий параметр
|hdl=
(довідка); Проігноровано невідомий параметр|hdl-access=
(довідка) (англ.) - Li, Jiwei; Jurafsky, Dan (2015). Do Multi-Sense Embeddings Improve Natural Language Understanding?. Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing (Stroudsburg, PA, USA: Association for Computational Linguistics): 1722–1732. arXiv:1506.01070. doi:10.18653/v1/d15-1200. Проігноровано невідомий параметр
|s2cid=
(довідка) (англ.) - Asgari, Ehsaneddin; Mofrad, Mohammad R.K. (2015). Continuous Distributed Representation of Biological Sequences for Deep Proteomics and Genomics. PLOS ONE 10 (11): e0141287. Bibcode:2015PLoSO..1041287A. PMC 4640716. PMID 26555596. arXiv:1503.05140. doi:10.1371/journal.pone.0141287. (англ.)
- Kiros, Ryan; Zhu, Yukun; Salakhutdinov, Ruslan; Zemel, Richard S.; Torralba, Antonio; Urtasun, Raquel; Fidler, Sanja (2015). «skip-thought vectors». arXiv:1506.06726 [cs.CL]. (англ.)
- GloVe.
- Zhao, Jieyu. «Learning Gender-Neutral Word Embeddings». arXiv:1809.01496 [cs.CL]. (англ.)
- Elmo.
- Pires, Telmo; Schlinger, Eva; Garrette, Dan (2019-06-04). «How multilingual is Multilingual BERT?». arXiv:1906.01502 [cs.CL]. (англ.)
- Gensim.
- Indra. 25 жовтня 2018.
- Ghassemi, Mohammad; Mark, Roger; Nemati, Shamim (2015). A Visualization of Evolving Clinical Sentiment Using Vector Representations of Clinical Notes. Computing in Cardiology. (англ.)
- Embedding Viewer. Embedding Viewer. Lexical Computing. Процитовано 7 лютого 2018.