Кіріспе

Құжат терминдерінің матрицасы – жинақтағы әрбір құжатта кездесетін терминдердің жиілігін сипаттайтын математикалық матрица. Құжат терминдері матрицасындағы қатарлар жинақтағы құжаттарға, ал бағандар терминдерге сәйкес келеді. Бұл матрица – "ерекшеліктер" терминдерден өзге құжаттың басқа да қасиеттерін білдіре алатын құжат ерекшеліктері матрицасының нақты бір мысалы. Сонымен қатар, құжаттар бағандарда, ал терминдер қатарларда болатын транспоз немесе термин-құжат матрицасы да жиі кездеседі. Олар табиғи тілді өңдеу және есептеу мәтіндік талдау салаларында пайдалы. Тұрғылықты жағдайда жасушалардағы мәндер нақты терминнің тікелей саны болып табылады, бірақ бастапқы сандарды салмақтау үшін түрлі схемалар бар, мысалы, қатарды қалыпқа келтіру (яғни, салыстырмалы жиілік/үлестер) және tf-idf. Терминдер көбінесе екі жағынан да бос орынмен немесе тыныш белгілерімен бөлінген жеке сөздер болып табылады (ә.қ.а. униграммалар). Мұндай жағдайда бұл "сөздер жиынтығы" деп те аталады, себебі жеке сөздердің саны сақталады, бірақ құжаттағы сөздердің реті сақталмайды.

Тұжырымдаманың тарихы

Матрица термині мәтінді компьютерлендірудің алғашқы жылдарында пайда болды. Құжаттарды сақтау мүмкіндігінің артуы белгілі бір құжатты тиімді түрде табу мәселесін тудырды. Бұрын жіктеу және индекстеу жұмыстары қолмен орындалса, зерттеушілер бұл процесті сөздердің жиілігі туралы ақпаратты пайдаланып автоматтандыру мүмкіндігін қарастырды. Матрица термині алғаш рет 1962 жылы Харольд Борконың «Эмпирикалық негіздемеде математикалық түрде туындырылған жіктеу жүйесін құру» атты мақаласында жарияланды (282-бет, сондай-ақ оның 1965 жылғы мақаласын қараңыз). Борко екі компьютерлік бағдарламаны атап көрсетті: «FEAT» – «Рұқсат етілген әрбір терминнің жиілігі» деген мағынаны білдіретін, System Development Corporation компаниясының Джон С. Олни және System Development Corporation компаниясының Айлин Стоун жасаған «Descriptor Word Index Program» бағдарламалары. Бұл талдау үшін қолданылған бағдарлама FEAT (әрбір рұқсат етілген терминнің жиілігі) болды. Ол System Development Corporation компаниясының Джон К. Олни жасаған және жеке сөздердің жиілігін және сөз жұптарының жиілігін есептеуге арналған. Бұл бағдарламаның нәтижесі – мәтінде кездесетін барлық сөз түрлерінің жиілігі бойынша әліпбилік тізім. «және», «the», «at», «a» сияқты кейбір қызметтік сөздер «тыйым салынған сөздер тізімі» кестесіне енгізілді, ал осы сөздердің жиілігі жеке тізімде тіркелді. Осы ақпаратты ұсыну және факторлық талдау бағдарламасына енгізуге қолайлы нысанда құжат-термин матрицасын дайындау үшін «Descriptor Word Index Program» деп аталатын арнайы компьютерлік бағдарлама жазылды. «Descriptor Word Index Program» бағдарламасын System Development Corporation компаниясының Эйлин Стоун дайындады. Одан кейін, 1963 жылы Джерард Солтон «Автоматты құжат іздеудің кейбір иерархиялық модельдері» атты мақаласын жариялады, онда құжат-термин матрицасының визуалды бейнесі де болды. Солтон сол кезде Гарвард университетінде оқыды және оның жұмысын Әуе күштерінің Кембридж зерттеу зертханалары және Sylvania Electric Products, Inc. қолдады. Бұл мақалада Солтон құжат-термин матрицасын сөздердің ұқсастығын өлшеу үшін қолданылатын термин-контекст матрицасымен салыстыра отырып таныстырады: <blockquote>Егер сөздік байланыстардың орнына құжат байланыстарын немесе құжат кластерлерін жасау қажет болса, сол процедураларды аз өзгерістермен қолдануға болады. C сөз-сөйлем матрицасынан бастаудың орнына, енді Wi сөзінің Document Dj құжатында кездесу жиілігін тізімдейтін F сөз-құжат матрицасын құру ыңғайлы. Құжаттардың ұқсастығын бұрынғыдай қатарларды салыстыру және берілген құжаттағы мазмұндық сөздердің бірлескен кездесу жиілігіне негізделген ұқсастық коэффициенттерін алу арқылы есептеуге болады. Бұл процедура құжат-құжат ұқсастық матрицасын құрайды, оны құжат кластерлерін жасау үшін пайдалануға болады. Ланкастер Боркоға құжат-термин матрицасын жатқызады: System Development Corporation компаниясының Харольд Борко бұл операцияны сәл әрі дамытты. Эксперименттік жинақтың сөздік қорынан маңызды сөздердің тобы таңдалады. Бұл сөздер әр құжаттағы әр терминнің кездесу жиілігін көрсету үшін құжат/термин матрицасына орналастырылады. Содан кейін әрбір сөз жұбы үшін корреляциялық коэффициент есептеледі, ол құжат жинағындағы бірлескен кездесуіне негізделген. Нәтижесінде алынған термин/термин матрицасы факторлық талдаудан өтеді және факторлар сериясы бөлінеді. Бұл факторлар әр фактордағы жоғары жүктемелері бар терминдер негізінде интерпретацияланып, аталғанда, эмпирикалық жіктеменің сыныптарына айналады. Әр фактордағы жоғары жүктемелері бар терминдер – категориялардың сілтеме сөздері немесе болжаушылары.</blockquote>

Терминдерді таңдау

Матрицаны қарастырудың бір тұжырымы бойынша, әрбір қатар бір құжатты көрсетеді. Векторлық семантикалық модельде, әдетте құжат-термин матрицасын есептеу үшін қолданылатын модельде, мақсат – құжаттың тақырыбын семантикалық мағынасы бар терминнің жиілігі арқылы бейнелеу. Терминдер – құжаттардың семантикалық бірліктері. Индоевропа тілдері үшін есімдер, етістіктер және сын есімдер маңызды санаттар болып есептеледі және осы санаттарға жататын сөздер терминдер ретінде сақталуы тиіс деп жиі болжанады. Терминдер ретінде сөз тіркесін (колокацияны) қосу векторлардың сапасын жақсартады, әсіресе құжаттар арасындағы ұқсастықты есептеу кезінде.

Іздеу нәтижелерін жақсарту

Жасырын семантикалық талдау (LSA, құжат-сөз матрицасында жекеше мәнді жіктеуді орындау) көп мағыналы сөздерді ажырату арқылы және сұраныстың синонимдерін іздеу арқылы іздеу нәтижелерін жақсарта алады. Дегенмен, жоғары өлшемді үздіксіз кеңістікте іздеу, іздеу жүйелерінің стандартты трие дерек құрылымында іздеуге қарағанда әлдеқайда баяу.

Тақырыптарды табу

Құжат терминдерінің матрицасын көпөлшемді талдау корпустың тақырыптарын/мәселелерін анықтауға мүмкіндік береді. Атап айтқанда, жасырын семантикалық талдау және деректерді кластерлеу қолданылуы мүмкін, сондай-ақ, соңғы кезде ықтималдық жасырын семантикалық талдау және оның жалпылама түрі – Латент Дирихлет бөлінісі, және теріс емес матрицалық факторлау осы міндетті орындауда тиімді деп танылды.

Қолданылу

Gensim: Векторлық кеңістік модельдеуге арналған ашық кодты Python фреймворкі. Мәтіннен сөз-құжат матрицаларын құруға арналған жадты тиімді алгоритмдерді және кең таралған түрлендірулерді (tf-idf, LSA, LDA) қамтиды.