Кіріспе

Табиғи тілді өңдеудегі техника. Латенттік семантикалық талдау (LSA) – табиғи тілді өңдеудегі, әсіресе дистрибутивтік семантикадағы, құжаттар мен олардың ішіндегі терминдер арасындағы қатынастарды талдау әдісі. Бұл әдіс құжаттар мен терминдерге қатысты түсініктер жиынтығын құру арқылы іске асырылады. LSA мағынасы жақын сөздер ұқсас мәтін бөліктерінде кездеседі деп есептейді (таралу гипотезасы). Үлкен мәтіннен сөздердің құжаттар бойынша саны көрсетілген матрица (жолдар бірегей сөздерді, ал бағандар әр құжатты көрсетеді) жасалады және бағандар арасындағы ұқсастық құрылымын сақтай отырып, жолдар санын қысқарту үшін сингулярлық мәнге жіктеу (СВД) деп аталатын математикалық әдіс қолданылады. Содан кейін құжаттар кез келген екі баған арасындағы косинус ұқсастығы арқылы салыстырылады. 1-ге жақын мәндер өте ұқсас құжаттарды, ал 0-ге жақын мәндер өте ұқсамайтын құжаттарды білдіреді. Жасырын семантикалық құрылымды пайдаланатын ақпаратты іздеу техникасы 1988 жылы Скотт Дирвестер, Сьюзан Думайс, Джордж Фурнас, Ричард Харшман, Томас Ландауэр, Карен Локбаум және Линн Стритерлерге патенттелген (US Patent 4,839,853, мерзімі өткен). Ақпаратты іздеу саласында бұл техника кейде жасырын семантикалық индекстеу (LSI) деп аталады.

Оқиғалар матрицасы

LSA құжаттардағы терминдердің кездесуін сипаттайтын құжат-термин матрицасын пайдалана алады; бұл қатарлары терминдерге, ал бағандары құжаттарға сәйкес келетін сирек матрица. Матрица элементтерінің салмақтаудың әдеттегі мысалы – tf-idf (терминнің жиілігі – құжаттың жиілігіне кері шама): матрица элементінің салмағы терминдердің әрбір құжатта қанша рет кездесетініне пропорционал, мұнда сирек кездесетін терминдер олардың салыстырмалы маңыздылығын көрсету үшін артық салмақталады. Бұл матрица стандартты семантикалық модельдерде де жиі қолданылады, бірақ математикалық матрица қасиеттері әрқашан қолданылмайтындықтан, ол міндетті түрде матрица түрінде нақты көрсетілмейді.

Коммерциялық қолдану

LSA патенттер бойынша алдыңғы деңгей техникасын іздеуге көмектеседі.

Адам жадындағы қолдану

Латенттік семантикалық талдау адам жадының зерттеуінде, әсіресе еркін еске түсіру және жадты іздеу салаларында кеңінен қолданылып келеді. Екі сөздің семантикалық ұқсастығы (LSA бойынша өлшенгенде) мен кездейсоқ жалпы есімдерден тұратын зерттеу тізімдерін пайдалана отырып, еркін еске түсіру тапсырмаларында оларды бірінен кейін бірі еске түсіру мүмкіндігі арасында оң корреляция бар. Олар сондай-ақ, мұндай жағдайларда ұқсас сөздер арасындағы жауап беру уақыты, ұқсас еместерге қарағанда әлдеқайда жылдам болатынын атап өтті. Бұл құбылыс семантикалық жақындық эффектісі деп аталады. Қатысушылар зерттелген заттарды еске түсіру кезінде қателіктер жасағанда, олар көбінесе ізделіп тұрған затқа семантикалық жағынан жақын және бұрын зерттелген тізімде кездесетін заттар болып шықты. Бұрынғы тізімнен келген бұл араласулар, қазір осылай аталатындай, ағымдағы тізімдегі заттармен еске түсіру үшін бәсекелеседі. Тағы бір модель, Сөздік қатынастар кеңістігі (WAS) деп аталады, ол естелік зерттеулерінде эксперименттер сериясынан алынған еркін қатынастар деректерін жинау арқылы және 72 000-нан астам сөз жұбы үшін сөздік байланысты өлшеу арқылы қолданылады.

Іске асыру

SVD әдетте үлкен матрицалық әдістерді (мысалы, Ланццос әдістері) қолдану арқылы есептеледі, бірақ нейрондық желіге ұқсас тәсілмен инкрементті түрде және ресурстарды едәуір азайту арқылы да есептелуі мүмкін, бұл үлкен, толық ранктік матрицаны жадта сақтау қажеттілігін жояды. Жақында жылдам, инкрементті, аз жадты, үлкен матрицалы SVD алгоритмі әзірленді. Бұл жылдам алгоритмдердің MATLAB және Python нұсқалары қолжетімді. Горелл мен Уэббтің (2005) стохастикалық жуықтауынан өзгеше, Брэндтің алгоритмі (2003) нақты шешім ұсынады. Соңғы жылдары SVD есептеу күрделілігін төмендету саласында прогресс жасалды; мысалы, параллельді өзіндік мәнге жіктеуді жүзеге асыру үшін параллельді ARPACK алгоритмін пайдалану арқылы SVD есептеу шығындарын үдетуге болады, сонымен қатар салыстырмалы болжам дәлдігін сақтайды.

Семантикалық хэштеу

Семантикалық хэштеуде құжаттар нейрондық желі арқылы жад адрестеріне бейнеленеді, осылайша семантикалық жағынан ұқсас құжаттар бір-біріне жақын адрестерде орналасады. Терең нейрондық желі, іс жүзінде, көптеген құжаттардан алынған сөздердің санының векторларынан графикалық модель құрайды. Сұраныс құжатына ұқсас құжаттарды табу үшін, сұраныс құжатының адресінен бірнеше бит қана өзгешелік танытатын барлық адрестерге тікелей кіру жеткілікті. Бұл хэш-кодтаудың тиімділігін шамамен сәйкестіруге дейін кеңейту әдісі, жергілікті сезімтал хэштеуден әлдеқайда жылдам, ал ол – қазіргі кездегі ең жылдам әдіс.

Жасырын семантикалық индекстеу

Латентті семантикалық индекстеу (LSI) – мәтіннің құрылымдалмаған жинағындағы терминдер мен ұғымдар арасындағы байланыстардағы үлгілерді анықтау үшін сингулярлық құндылықты ыдырату (SVD) деп аталатын математикалық әдісті қолданатын индекстеу және іздеу әдісі. LSI бірдей контексте қолданылатын сөздердің мағынасы ұқсас деген қағидатқа негізделген. LSI-нің басты ерекшелігі – ұқсас контекстте кездесетін терминдер арасындағы байланыстарды орнату арқылы мәтіннің тұжырымдамалық мазмұнын алу мүмкіндігі. LSI сонымен қатар 1970 жылдардың басында Жан Пол Бензекри жасаған хат-хабарларды талдау, яғни көпөлшемді статистикалық әдісті, құжаттардағы сөздерді санаудан құрылған мүмкіндік кестесіне қолдану болып табылады. Бұл әдіс "латентті семантикалық индекстеу" деп аталады, себебі ол мәтін жинағында жасырын семантикалық байланыстағы терминдерді анықтай алады және алғаш рет 1980 жылдардың соңында Bellcore мекемесінде мәтінге қолданылды. Бұл әдіс, сондай-ақ жасырын семантикалық талдау (LSA) деп те аталады, мәтін корпусындағы сөздердің қолданылуындағы жасырын семантикалық құрылымды ашады және оны пайдаланушы сұрақтарына жауап ретінде мәтіннің мағынасын алу үшін қалай қолдануға болатынын көрсетеді, бұл әдетте ұғымдық іздеу деп аталады. LSI-ге ұшыраған құжаттар жинағы бойынша жасалған сұраныстар немесе ұғымдық іздеулер, іздеу сұрағындағы нақты сөздердің болуына қарамастан, іздеу критерийлеріне ұқсас мағынаға ие нәтижелерді береді.

LSI-нің артықшылықтары

LSI синонимияны еңсеруге көмектеседі, Бульдік кілт сөздерге сұраныстар мен векторлық кеңістік модельдерінің ең үлкен қиындығы – ақпаратты табу мүмкіндігін төмендетуді арттырады. Осының салдарынан, Бульдік немесе кілт сөздерге сұраныстар көбінесе қатысы жоқ нәтижелерді береді және қажетті ақпаратты жіберіп алады. LSI автоматты түрде құжаттарды жіктеу үшін де қолданылады. Шындығында, бірнеше тәжірибелер LSI мен адамдардың мәтінді өңдеу және жіктеу әдістерінің арасында байланыс бар екенін көрсетті. Құжаттарды жіктеу – бұл құжаттарды олардың мазмұны категориялардың мағыналық мазмұнына қаншалықты ұқсас екеніне байланысты, алдын ала белгіленген бір немесе бірнеше категорияға жатқызу. LSI әрбір категорияның мағыналық негізін анықтау үшін үлгі құжаттарды пайдаланады. Жіктеу процесінде жіктеліп жатқан құжаттардағы ұғымдар үлгі құжаттардағы ұғымдармен салыстырылады және құжаттарға олардың мазмұнындағы ұғымдар мен үлгі құжаттардағы ұғымдардың ұқсастығына сүйене отырып, категория (немесе категориялар) тағайындалады. LSI құжаттардың мағыналық мазмұнына негізделген динамикалық кластерлеуді де жүзеге асыруға мүмкіндік береді. Кластерлеу – бұл әрбір кластердің мағыналық негізін анықтау үшін үлгі құжаттарды пайдаланбай, құжаттарды бір-біріне ұқсас мағыналық жақындығына сәйкес топтастырудың бір жолы. Бұл белгісіз, құрылымдалмаған мәтін жинағымен жұмыс істегенде өте пайдалы. LSI қатаң математикалық тәсілді қолданғандықтан, тілге тәуелді емес. Бұл LSI-ге сөздіктер мен тезаурус сияқты қосымша құрылымдарды қажет етпей, кез келген тілде жазылған ақпараттың мағыналық мазмұнын анықтауға мүмкіндік береді. LSI сонымен қатар көп тілді ұғымдарды іздеу және үлгіге негізделген жіктеуді де жүзеге асыра алады. Мысалы, сұраныстар бір тілде, мысалы, ағылшын тілінде жасалуы мүмкін, ал мағыналық жағынан ұқсас нәтижелер басқа тілде немесе бірнеше тілде болса да қайтарылады. LSI тек сөздермен ғана емес, кез келген таңбалар тізбегімен де жұмыс істей алады. Мәтін түрінде берілген кез келген объектіні LSI векторлық кеңістігінде бейнелеуге болады. Мысалы, MEDLINE аннотацияларымен жасалған сынақтар LSI-нің MEDLINE сілтемелерінің тақырыптары мен аннотацияларындағы биологиялық ақпараттың мағыналық модельдеуіне негізделген гендерді тиімді жіктеуге қабілетті екенін көрсетті. LSI жаңа және өзгеріп жатқан терминологияға автоматты түрде бейімделеді және шуға (яғни, қате жазылған сөздер, басу қателері, оқылмайтын таңбалар және т.б.) өте төзімді екені дәлелденді. Бұл, әсіресе, Оптикалық Символдарды Тану (OCR) және сөзді мәтінге түрлендіруден алынған мәтінді пайдаланатын қосымшалар үшін маңызды. LSI сонымен қатар сирек, екіұшты және қайшылы деректермен де тиімді жұмыс істейді. LSI тиімді болуы үшін мәтін сөйлемдерден тұруы міндетті емес. Ол тізімдермен, бос жазбалармен, электрондық поштамен, веб-мазмұнымен және т.б. жұмыс істей алады. Мәтін жинағында бірнеше термин болған жағдайда, LSI мәтіндегі маңызды терминдер мен ұғымдар арасындағы қатынастардың үлгілерін анықтау үшін қолданылуы мүмкін. LSI көптеген мағыналық сәйкестік мәселелерін шешуде пайдалы шешім болып табылды. Бұл әдіс себеп-салдақ, мақсатқа бағытталған және таксономиялық ақпаратты қамти отырып, маңызды байланыс ақпаратын анықтай алады.

LSI математикасы

LSI мәтін жинағындағы түсініктер арасындағы байланысты анықтау үшін кең таралған сызықтық алгебра әдістерін пайдаланады. Әдетте, бұл процеске салмақталған термин-құжат матрицасын құру, осы матрицаға жекеше мәнмен жіктеу (Singular Value Decomposition) қолдану және мәтіндегі түсініктерді анықтау үшін матрицаны пайдалану кіреді.

LSI-ге қойылатын қиындықтар

LSI-ге қатысты алғашқы қиындықтар масштабталу және өнімділік мәселелері болды. LSI басқа ақпаратты іздеу әдістерімен салыстырғанда салыстырмалы түрде жоғары есептеу қуаты мен жадты қажет етеді. Дегенмен, қазіргі заманғы жоғары жылдамдықты процессорлардың және қолжетімді жадтың арзандығының арқасында бұл мәселелердің көп бөлігі шешілді. Матрица және SVD есептеулері арқылы толық өңделген 30 миллионнан астам құжатты қамтитын нақты қолданыстар кейбір LSI қолданыстарында кең таралған. LSI-нің толыққанды масштабталатын (шектеусіз құжат саны, онлайн оқыту) жүзеге асырылуы ашық кодты gensim бағдарламалық пакетінде бар. LSI-ге тағы бір қиындық – SVD-ны жүргізу үшін қолданылатын өлшемдердің оңтайлы санын анықтаудағы қиындық. Жалпы алғанда, өлшемдердің аз саны мәтін жинағындағы түсініктерді кеңірек салыстыруға мүмкіндік береді, ал өлшемдердің көп саны түсініктерді нақтырақ (немесе маңыздырақ) салыстыруға мүмкіндік береді. Қолданылатын өлшемдердің нақты саны жинақтағы құжаттар санымен шектеледі. Зерттеулер көрсеткендей, орташа көлемді құжат жинақтары үшін (жүздеген мың құжат) әдетте 300 шамасындағы өлшемдер ең жақсы нәтиже береді, ал үлкен құжат жинақтары үшін (миллиондаған құжат) 400 өлшемдер жарайды. Алайда, соңғы зерттеулер құжат жинағының көлемі мен ерекшеліктеріне байланысты 50-1000 өлшемдердің қолайлы екенін көрсетеді. Оптималды өлшемділікті анықтау үшін дисперсияның сақталған үлесін тексеру, ПТА немесе факторлық талдау сияқты әдістер LSI үшін тиімсіз. Синонимдерді тексеру немесе жоғалған сөздерді болжау – дұрыс өлшемді табудың екі мүмкін жолы. LSI тақырыптары қадағаланған оқыту әдістерінде белгілер ретінде қолданылғанда, идеалды өлшемді табу үшін болжау қателіктерін өлшеуге болады.

LSA туралы мақалалар

Латенттік семантикалық талдау, LSA-ның жасаушыларының бірі Том Ландауэр жазған LSA туралы Scholarpedia мақаласы.

Талқылаулар мен демонстрациялар

LSA шолуы, профессор Томас Хофманның LSA-ны, оның Ақпаратты іздеудегі қолданылуларын және ықтималдық жасырын семантикалық талдаумен байланысын сипаттайтын лекциясы. Windows үшін C# тіліндегі толық LSA үлгі кодын қамтиды. Демонстрациялық код мәтіндік файлдарды тізімдеуді, тоқтату сөздерін сүзуді, түбірге келтіруді, құжат-сөздер матрицасын құруды және SVD-ді қамтиды.