پرش به محتوا

دگرنمایی واژه

از ویکی‌پدیا، دانشنامهٔ آزاد
(تغییرمسیر از جاسازی کلمه)
دگرنمایی برخی کلمات

در پردازش زبان طبیعی (NLP)، دگرنماییِ واژه اصطلاحی است که برای بردن واژگان به فضایی برداری (نمایش آن‌ها با بردارهای عددی) به منظور تجزیه و تحلیل متن استفاده می‌شود، ساختار آن معمولاً به شکل یک بردار با مقادیر واقعی است که معنای هر کلمه را به گونه‌ای رمزگذاری می‌کند که کلماتی که در بردار به هم نزدیک‌تر هستند از نظر معنی نیز مشابه باشند. جاسازی کلمات را می‌توان با ترکیبی از عملیات مدل‌سازی زبان و تکنیک‌های یادگیری ویژگی به دست آورد که در آن نگاشتی از واژگان کلمات یا عبارات به بردارهای اعداد واقعی انجام می‌شود. این عمل از نظر مفهومی به معنای یک جاسازی ریاضی از فضایی با ابعاد بزرگ به فضای برداری پیوسته با ابعاد بسیار کمتر است.

روش‌های تولید این نگاشت شامل استفاده از شبکه‌های عصبی، کاهش ابعاد در ماتریس هم رویداد کلمه، مدل‌های احتمالی،[۱] روش مبتنی بر دانش قابل توضیح[۲] و همچنین بازنمایی صریح بر حسب زمینه که کلمات در آن ظاهر می‌شوند.

زمانی که از جاسازی (تعبیه) کلمات و عبارات، به عنوان ورودی اولیه استفاده شود، عملکرد کارهای پردازش زبان طبیعی مانند تجزیه نحوی و تجزیه و تحلیل احساسات را افزایش می‌دهد.

توسعه و تاریخچه رویکرد

[ویرایش]

روش جاسازی کلمات در حوزه پژوهشی معناشناسی توزیعی در زبان‌شناسی، مورد بررسی قرار گرفته‌است و هدف آن طبقه‌بندی شباهت‌های معنایی بین اقلام زبان بر اساس ویژگی‌های توزیعی بین آنها در نمونه‌های بزرگی از داده‌های زبان است. این ایده که «یک کلمه با گروهی که آن را نگه می‌دارد مشخص می‌شود» اولین بار توسط جان روپرت فرث مطرح شد.

مفهوم فضای معنایی شامل موارد لغوی (کلمات یا اصطلاحات چند کلمه‌ای) است که با بردارها یا عملیات جاسازی نشان داده می‌شوند و مبتنی بر چالش‌های محاسباتی بدست آوردن ویژگی‌های توزیعی و استفاده از آنها برای کاربرد عملی و همچنین برای اندازه‌گیری شباهت بین کلمات، عبارات یا کل اسناد است. اولین نسل از مدل‌های فضای معنایی، مدل فضای برداری برای بازیابی اطلاعات است.[۳][۴][۵] چنین مدل‌هایی که فضای برداری کلمات و داده‌های توزیعی آنها در ساده‌ترین شکل پیاده‌سازی شده‌اند، منجر به یک فضای برداری بسیار پراکنده با ابعاد بالا می‌شوند (مبحث نفرین ابعاد). کاهش ابعاد با استفاده از روش‌های جبر خطی مانند تجزیه مقادیر منفرد، در اواخر دهه ۸۰ منجر به معرفی آنالیز پنهان مفهومی و رویکرد نمایه‌سازی تصادفی برای جمع‌آوری زمینه‌های همزمانی کلمات شد.[۶][۷][۸][۹][۱۰] در سال ۲۰۰۰ بنجیو و همکارانش در مجموعه ای از مقالات «مدل‌های زبانی احتمالی عصبی» برای کاهش بالای ابعاد کلمات همراه با «یادگیری بازنمایی توزیع شده برای کلمات» را ارائه کردند.[۱۱] برای جاسازی کلمات دو سبک مختلف وجود دارد، یکی که در آن کلمات به عنوان بردار همزمان در نظر گرفته می‌شوند و دیگری که در آن کلمات به عنوان بردار زمینه‌های زبانی بیان می‌شوند. این سبک‌ها توسط لاولی و همکارانش در سال ۲۰۰۴ مورد مطالعه قرار گرفته‌اند. Roweis و Saul در مجله Science نحوه استفاده از " جاسازی خطی محلی " (LLE) برای نمایش ساختارهای داده با ابعاد بالا را منتشر کردند.[۱۲] پس از سال ۲۰۰۵ اکثر تکنیک‌های جدید جاسازی کلمه به جای مدل‌های احتمالی و جبری بیشتر بر اساس معماری شبکه‌های عصبی کار می‌کنند.[۱۳]

پس از پیشرفت‌هایی که در سال ۲۰۱۰ در زمینه کاری نظری در مورد کیفیت بردارها انجام شد و سرعت آموزش مدل و پیشرفت‌های سخت‌افزاری امکان کاوش در فضای پارامتر وسیع‌تری را فراهم کرد این رویکرد توسط بسیاری از گروه‌های تحقیقاتی مورد استفاده قرار گرفت. در سال ۲۰۱۳، تیمی در گوگل به رهبری توماس میکولوف روش word2vec را ایجاد کردند که ابزاری است که جاسازی کلمه در مدل‌های فضای برداری را سریعتر از رویکردهای قبلی امکان‌پذیر می‌کند. رویکرد word2vec به‌طور گسترده‌ای استفاده شده‌است و باعث افزایش علاقه به استفاده از تکنیک جاسازی کلمات و در نهایت هموار کردن راه برای کاربرد عملی شده‌است.[۱۴]

محدودیت‌ها

[ویرایش]

یکی از محدودیت‌های اصلی جاسازی کلمات (به‌طور کلی مدل‌های فضای برداری) این است که کلمات با معانی متعدد در یک نمایش واحد (یک بردار در فضای معنایی) ترکیب می‌شوند. به عبارت دیگر، چند معنایی و هم نامی به درستی به کار گرفته نمی‌شود. به عنوان مثال، در جمله "باشگاهی (کلاب) که دیروز امتحان کردم عالی بود!"، مشخص نیست که اصطلاح باشگاه (کلاب) به معنای کلمه ساندویچ کلاب، باشگاه بیسبال ، کلاب هوس یا باشگاه گلف است یا ممکن است در بر گیرنده هر معنای دیگری مربوط به باشگاه باشد. از این رو تطبیق معانی متعدد هر کلمه در بردارهای مختلف (جاسازی‌های چند حسی (چند معنایی)) در پردازش زبان طبیعی برای تقسیم کردن جاسازی‌های تک معنایی به چند معنایی ضروری است.

برای بازنمایی معنایی کلمه، اکثر رویکردهایی که تعبیه‌های چند معنایی تولید می‌کنند را می‌توان به دو دسته اصلی بدون نظارت و مبتنی بر دانش تقسیم کرد.[۱۵] یک روش مبتنی بر word2vec skip-gram یعنی Multi-Sense Skip-Gram (MSSG)[۱۶] که تمایز معنی کلمه و جاسازی را به‌طور همزمان انجام می‌دهد، زمان آموزش را نیز بهبود بخشیده و تعداد معانی خاصی را برای هر کلمه در نظر می‌گیرد. در این روش تعداد معانی در نظر گرفته شده می‌تواند بسته به هر کلمه متفاوت باشد. همچنین این روش با ترکیب دانش قبلی بدست آمده از پایگاه داده‌های لغوی (به عنوان مثال، وردنت، ConceptNet و بابلنت) و جاسازی کلمه و ابهام زدایی معنی کلمه و روش مناسب‌ترین حاشیه نویسی حسی (MSSA)[۱۷] و با در نظر گرفتن بافت کلمه در یک پنجره از پیش تعریف شده، مفاهیم کلمه را از طریق یک رویکرد بدون نظارت و مبتنی بر دانش برچسب گذاری می‌کند. هنگامی که کلمات ابهام زدایی می‌شوند، می‌توان آنها را در یک تکنیک استاندارد جاسازی کلمه استفاده کرد، در نتیجه جاسازی‌های چند معنایی تولید می‌شوند. معماری MSSA این امکان را می‌دهد تا فرایند ابهام زدایی و حاشیه نویسی به‌طور مکرر و به شیوه ای خود-بهبود انجام شود.

استفاده از تعبیه‌های چند معنایی برای بهبود عملکرد در چندین کار NLP، مانند برچسب‌گذاری جزء کلام، شناسایی رابطه معنایی، شباهت معنایی، شناسایی موجودیت نام‌گذاری شده و تحلیل احساسات کاربرد دارد.[۱۸][۱۹]

اخیراً تعبیه‌هایی با مفهوم زمینه‌ای مانند ELMo و برت توسعه یافته‌اند. این تعبیه‌ها از بافت و زمینه کلمه برای ابهام‌زدایی چندمعنایی استفاده می‌کنند. این دسته الگوریتم‌ها این کار را با استفاده از معماری شبکه عصبی LSTM و Transformer انجام می‌دهند.

برای توالی‌های بیولوژیکی: بردارهای بیولوژیکی (BioVectors)

[ویرایش]

روش جاسازی کلمه برای n- gram در توالی‌های بیولوژیکی (مثلاً DNA, RNA و پروتئین‌ها) برای کاربردهای بیوانفورماتیک توسط عسگری و مفرد پیشنهاد شده‌است.[۲۰] نام گذاری بردارهای بیولوژیکی(BioVec) برای اشاره به توالی‌های بیولوژیکی است. به‌طور کلی از واژگان برداری‌های پروتئینی (ProtVec) برای پروتئین‌ها (توالی‌های آمینو اسید) و برداری‌های ژنی (GeneVec) برای توالی‌های ژنی، به‌طور گسترده‌ای در یادگیری عمیق استفاده شود. نتایج ارائه شده توسط عسگری و مفرد[۲۰] نشان می‌دهد که BioVectosها می‌تواند توالی‌های بیولوژیکی را از نظر تفسیرهای بیوشیمیایی و بیوفیزیکی شناسایی کند.

بردارهای فکر

[ویرایش]

بردارهای فکر توسعه روش جاسازی کلمات برای کل جملات یا حتی اسناد هستند. برخی از محققان امیدوارند که این بردارها بتوانند کیفیت ترجمه ماشینی را بهبود بخشند.[۲۱]

نرم‌افزار

[ویرایش]

یک نرم‌افزار جهت آموزش و استفاده از روش جاسازی کلمات، ابزار Word2vec ساخته توماس میکولوف است، برنامه دیگر ساخت دانشگاه استنفورد با نام GN-GloVe است.[۲۲] از نرم‌افزارهای دیگر می‌توان به جاساز فلیر،[۱۸] AllenNLP's ELMo,[۲۳] برت، fastText , Gensim ,[۲۴] ایندرا[۲۵] و دیپ‌لرنینگ۴جی اشاره کرد. همچنین تجزیه و تحلیل مؤلفه اصلی (PCA) و روش T-Distributed Stochastic Neighbour Embedding (t-SNE) هر دو برای کاهش ابعاد فضاهای برداری کلمه و جاسازی کلمات و خوشه بندی استفاده می‌شوند.[۲۶]

نمونه‌هایی از کاربرد

[ویرایش]

به عنوان مثال، از ابزار fastText برای جاسازی کلمات برای پیکره متنی در موتور Sketch که به صورت آنلاین در دسترس هستند، استفاده می‌شود.[۲۷]

منابع

[ویرایش]
  1. Globerson, Amir (2007). "Euclidean Embedding of Co-occurrence Data" (PDF). Journal of Machine Learning Research.
  2. Qureshi, M. Atif; Greene, Derek (2018-06-04). "EVE: explainable vector based embedding technique using Wikipedia". Journal of Intelligent Information Systems (به انگلیسی). 53: 137–165. arXiv:1702.06891. doi:10.1007/s10844-018-0511-x. ISSN 0925-9902.
  3. 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. AFIPS '62 (Fall): 234–250. doi:10.1145/1461518.1461544. ISBN 978-1-4503-7879-6. Retrieved 18 October 2020.
  4. Salton, Gerard; Wong, A; Yang, C S (1975). "A Vector Space Model for Automatic Indexing". Communications of the Association for Computing Machinery (CACM). 18 (11): 613–620. doi:10.1145/361219.361220. {{cite journal}}: |hdl-access= requires |hdl= (help)
  5. Dubin, David (2004). "The most influential paper Gerard Salton never wrote". Archived from the original on 18 اكتبر 2020. Retrieved 18 October 2020. {{cite web}}: Check date values in: |archive-date= (help)
  6. Sahlgren, Magnus. "A brief history of word embeddings".
  7. 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.
  8. Karlgren, Jussi; Sahlgren, Magnus (2001). Uesaka, Yoshinori; Kanerva, Pentti; Asoh, Hideki (eds.). "From words to understanding". Foundations of Real-World Intelligence. CSLI Publications: 294–308.
  9. 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
  10. 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.
  11. Bengio, Yoshua; Ducharme, Réjean; Vincent, Pascal; Jauvin, Christian (2003). "A Neural Probabilistic Language Model" (PDF). Journal of Machine Learning Research. 3: 1137–1155.
  12. Roweis, Sam T.; Saul, Lawrence K. (2000). "Nonlinear Dimensionality Reduction by Locally Linear Embedding". Science. 290 (5500): 2323–6. Bibcode:2000Sci...290.2323R. CiteSeerX 10.1.1.111.3313. doi:10.1126/science.290.5500.2323. PMID 11125150.
  13. Mnih, Andriy; Hinton, Geoffrey (2009). "A Scalable Hierarchical Distributed Language Model". Advances in Neural Information Processing Systems 21 (NIPS 2008). Curran Associates, Inc. 21: 1081–1088.
  14. "word2vec". Google Code Archive. Retrieved 23 July 2021.
  15. Camacho-Collados. "From Word to Sense Embeddings: A Survey on Vector Representations of Meaning". arXiv:1805.04032.
  16. 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.
  17. Ruas, Terry; Grosky, William; Aizawa, Akiko (2019-12-01). "Multi-sense embeddings through a word sense disambiguation process". Expert Systems with Applications. 136: 288–303. arXiv:2101.08700. doi:10.1016/j.eswa.2019.06.026. ISSN 0957-4174. {{cite journal}}: |hdl-access= requires |hdl= (help)
  18. ۱۸٫۰ ۱۸٫۱ Akbik, Alan; Blythe, Duncan; Vollgraf, Roland (2018). "Contextual String Embeddings for Sequence Labeling". Proceedings of the 27th International Conference on Computational Linguistics. Santa Fe, New Mexico, USA: Association for Computational Linguistics: 1638–1649.
  19. 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.
  20. ۲۰٫۰ ۲۰٫۱ Asgari, Ehsaneddin; Mofrad, Mohammad R.K. (2015). "Continuous Distributed Representation of Biological Sequences for Deep Proteomics and Genomics". PLOS ONE. 10 (11): e0141287. arXiv:1503.05140. Bibcode:2015PLoSO..1041287A. doi:10.1371/journal.pone.0141287. PMC 4640716. PMID 26555596.
  21. Kiros. "skip-thought vectors". arXiv:1506.06726.
  22. "GloVe".
  23. "Elmo".
  24. "Gensim".
  25. "Indra". GitHub. 2018-10-25.
  26. Ghassemi, Mohammad; Mark, Roger; Nemati, Shamim (2015). "A Visualization of Evolving Clinical Sentiment Using Vector Representations of Clinical Notes" (PDF). Computing in Cardiology.
  27. "Embedding Viewer". Embedding Viewer. Lexical Computing. Archived from the original on 8 February 2018. Retrieved 7 Feb 2018.