Дата публикации: 20.04.2022
Егемберді Алтынайым Кумісбекқызы
Л.Н.Гумилев атындағы Еуразия Ұлттық Университеті,
Ақпараттық технологиялар факультеті,
Нұр-Сұлтан, Қазақстан
Ғылыми жетекшісі – Ниязова Р.С.
Аңдатпа. Мақалада табиғи тілдегі мәтіндерден атау түсініктерін алудың бар құралдары қарастырылады. Қарастырылып отырған құралдардан таңбаланбаған қазақ тіліндегі мәтіндерден атау түсініктерін алу мәселесін шешу үшін ең қолайлысын анықтау мақсатында жүргізілді. Қазақ тіліндегі мәтіндерден атау түсініктерін алу мәселелерін шешу үшін Python программалау тілінде практикалық тиімділігі дәлелденді.
Кілтті сөздер: Ақпаратты алу, атау түсініктері, машиналық оқыту.
Қазіргі уақытта интернеттің белсенді дамуының арқасында ақпарат көлемі бірнеше есе өсті және болжамдарға сәйкес, одан әрі тез өсетін болады. Осыған байланысты деректерді жинақтау және ақпаратты өңдеу мәселелері ерекше өзекті болып табылады. Өз кезегінде ақпаратты ұсынудың негізгі және сұранысқа ие түрі – табиғи тілдегі мәтін. Ақпараттың үлкен көлемі және жылдам өсу қарқыны табиғи тілдегі құжаттардан деректерді автоматты түрде алу және құрылымдау (яғни, жинақтау) қажеттілігін тудырады. Ақпарат жинақталуы, ұқсас тақырып бойынша әртүрлі құрылымдалмаған көздерден алынуы, өңделуі, құрылымдалуы, осылайша оны қабылдаудың ыңғайлылығы мен тиімділігін арттыруы керек. Бұл мәселелерді шешу табиғи тілді өңдеу алгоритмдерін (Natural Language Processing) жүзеге асыру арқылы мүмкін болады. Деректерді жинақтаумен байланысты және оны жүзеге асыру үшін қажетті табиғи тілді өңдеудің маңызды міндеттерінің бірі атау түсініктерін алу болып табылады. Атау түсініктерін алу құрылымдалмаған құжаттардан құрылымдық деректерді алудың маңызды аспектілерінің бірі болып табылады. Қарым-қатынастар немесе оқиғалар сияқты күрделі құрылымдарды шығару алдыңғы мәтінді өңдеу әрекетіндегідей ақпаратты шығаруды талап етеді.
Мәтіндерден ақпаратты алу, атап айтқанда, аталған нысандарды тану, тақырыптық деректерді біріктіру мәселелерін шешу үшін ең қолайлы табиғи тілді талдау саласы болып табылады. Қолданыстағы тәсілдер мен әдістерді, сондай-ақ аталған нысандарды шығаруға арналған бағдарламалық құралдарды қарастыру және міндеттерді шешу үшін оларды қолдану мүмкіндігін бағалау қажет. Аты аталған нысандарды шығару міндеті (Amed Entity Recognition, NER) мәтіндегі қажетті нысандарды (бұл сөздер мен сөз тіркестері) тану және оларды алдын ала анықталған санаттарға жіктеу болып табылады. Атаулы тұлға – бұл объектіні немесе құбылысты бірнеше ұқсас нәрселерден ерекшелендіретін нақты, нақты анықталған нысанға немесе құбылысқа сілтеме жасауға арналған сөз немесе сөз тіркесі. Атаулы субъектілерге, мысалы, фирмалық атаулар, жалқы есімдер және т.б. жатады. Атаулы тұлғаны шығару табиғи тілді өңдеуге және ақпаратты алуға байланысты көптеген салаларда қолданылады, мысалы, ақпаратты іздеу, сұрақ-жауап жүйелері, автоматтандырылған жаңалықтар жинау және т.б. Бұл аталған нысанды шығару алгоритмдері тақырыптық мәліметтерді біріктіру мәселелерін шешу үшін қолданылады деп айтуға мүмкіндік береді. Мәтіннен аталған нысандарды келесі жолдармен шығаруға болады[1,4]:
-
онтологияларды қолдану (ұғымдар мен объектілерді, олардың арасындағы қатынастарды, олардың сипаттамаларын сипаттайтын құрылымдар);
-
машиналық оқытуды қолдану;
-
ережелер мен үлгілерді (контексттерді) пайдалану.
Бірінші әдіс нысанды алудың және омонимияны жоюдың жоғары дәлдігін қамтамасыз етеді. Бұл әдістің негізгі мәселелері - тезаурус өлшеміне пропорционалды онтологияны жаңартудың қиындығы және толықтығы (өйткені онтологияда бар нәрсе ғана алынады).
Машиналық оқытудың артықшылығы – ережелердің көп мөлшерін құрастыру қажеттілігінің болмауы, өйткені олардың жалпы формасы бар, сонымен қатар ережелерді автоматты түрде шығару мүмкіндігі бар. Дегенмен, бұл әдіс толық және дұрыс белгіленген үлкен денені қажет етеді.
Мәтін мәндік әдіс морфологиялық және синтаксистік талдауды пайдаланады. Үлгілердің көмегімен (контекстсіз грамматикалар) әртүрлі нысандар арасындағы қатынастарды анықтауға болады. Сонымен қатар, үлгілерде объектілер арасындағы қатынастарды білдіретін сөздер болуы мүмкін. CF-грамматикаларды лингвистер қолмен құрастырады, бұл үлкен қол еңбегін қажет етеді.
Атау түсініктер – табиғи тілдердегі мәтіндерді өңдеуге және ақпаратты алуға байланысты көптеген салаларда қолданылады. Атау түсініктерін алу көптеген мәтіндерді автоматты түрде өңдеуге және ақпаратты іздеуге арналған қажетті кезең болып табылады. Мәтіндерден адамдардың аттарын, ұйымдардың аттарын, географиялық орындарды және т.б. алу маңызды.
Атау түсініктерді (Named Entity Recognition, NER) алу міндеті – аталған нысандарды (сөздер мен сөз тіркестерін) тану және оларды алдын-ала анықталған санаттарға жіктеу, мысалы, тұлға, ұйым, географиялық нысандар және т.б.. Бұл міндет құрылымданбаған немесе әлсіз құрылымдалған ақпарат көздерінен, атап айтқанда интернеттен құрылымдалған деректерді автоматты түрде алудан тұратын және өз кезегінде ақпаратты іздеумен және табиғи тілдердегі ақпаратты өңдеумен байланысты ақпаратты алу (Information extraction, IE)[3].
Жасанды интеллект алдында тұрған ең күрделі және сұранысқа ие міндеттердің бірі – NLP (табиғи тілді өңдеу). NLP мәселелерін шешу және енгізу үшін қазіргі уақытта бірнеше бағдарламалық жүйелер мен кітапханалар бар, олар сөйлеуді тану, тілді қалыптастыру және ақпаратты алу және т.б.
Қазіргі таңды тиімді NER моделін табу үшін көптеген зерттеулер жүргізілуде және зерттеушілер әртүрлі әдістер мен тәсілдер ойлап табуда. Әрине, әрбір NER үлгісінің бірнеше қадамдары бар.
Атау түсініктерін алудағы бірінші қадам деректерді талдауға дайындайды. NLP үшін деректерді дайындау өте ұзақ және күрделі жол. Ол үшін келесі әрекеттерді орындай аламыз:
-
сөйлемнің шекарасын сегменттеу;
-
токенизация сөзі;
-
сөйлеу белгісі бөлігі.
Атау түсінігін алудағы екінші қадам алдыңғы қадамнан алған таңбалауыштарды іздейді, білім қоры қайтадан пайда болады. Білім қоры сөздермен, олардың мағыналарымен және олардың арасындағы байланыстармен онтология болуы мүмкін. Іздеуді терең оқыту үлгілері арқылы да жасауға болады. Бұл тәсілдің артықшылығы бар, ол бұрын болмаған жаңа сөздерді көргенде жақсы нәтиже береді.
Атау түсінігін алудағы үшінші қадамы, егер біз бір іздеу үшін бірнеше нәтиже алсақ. Содан кейін бізге ең жақсы нысанды дұрыс таңдау үшін статистикалық модель қажет болады.
Қазіргі уақытта Python NLP мәселелерін шешуге арналған ең перспективалы бағдарламалардың бірі болып табылады. Python тілінде жазылған кітапханалар мен құралдар NLP мәселелерін шешуге арналған және әртүрлі тілдер мен өңдеу функцияларын модельдеуге мүмкіндік береді. Сондай-ақ кітапханалар мен құралдардың көптеген түрлері бар, ең танымал және мәтінді өңдеу тапсырмалары үшін қолданылатындары: Spacy, NLTK, CoreNLP, StanfordNER, kazNLP, Natasha және т.б. Қазақ мәтіндеріне арналған kazNLP – қазақ тілі үшін тегін және ашық бастапқы бастапқы тілді өңдеу құралдарын жасауға бағытталған. Ұсынылған құралдар жинағы NLP мәселелерінің кең ауқымын шешуге арналған, оларды алдын ала өңдеу, негізгі өңдеу және қолданбалы деңгей процедураларына бөлуге болады[2,5].
Бұл жұмыста ақпаратты қазақ тіліне арналған атау түсініктерін шығару жүйесінде пайдалану мәселесі шешілген. Ақпаратты алу әдісі Python программалау тілінің жаңа нұсқасының және керекті кітапханалардың көмегімен жүзеге асырылды. Табиғи тілдерді өңдеу саласында ғылыми-зерттеу жұмыстары жүргізілді, сонымен қатар алынған ақпаратты пайдаланатын мүмкіндіктер және атау түсініктерін шығару жүйесінде осындай қосымша мүмкіндіктерді шығару жүзеге асырылды. Бұл жұмыста машиналық оқыту әдіс-тәсілдерінің бірі мұғаліммен оқыту тәсілі, статистикалық тәсілге және машиналық оқытуға негізделген әдістермен тәжірибе жасалды және олардың қазақ тілін қалай меңгеретінін тексерілді. Нәтижесінде дайындалған жүйе (белгілі бір өлшемдер мен ережелерге сәйкес таңдалған және өңделген тілдік зерттеулерге арналған мәтіндер жиынтығы) мәтіндермен жақсы жұмыс істей алады.
Қолданылған әдебиеттер тізімі
-
Исследование и разработка методов извлечения именованных сущностей. В.В. Крастынь, 2017
-
Распознавание именованных объектов для казахского языка. Ж.М. Кожирбаев, Ж.А. Есенбаев, National Laboratory Astana г. Нур-Султан, Казахстан
-
Collobert, R., Weston, J., Bottou, L., Karlen, M., Kavukcuoglu, K., and Kuksa, P. (2011). Natural language processing (almost) from scratch. The Journal of Machine Learning Research, 12:2493–2537.
-
Introduction to the CoNLL-2003 Shared Task: Language-Independent Named Entity Recognition Erik F. Tjong Kim Sang and Fien De Meulder
-
Gulmira Tolegen, Alymzhan Toleu, and Zheng Xiaoqing. 2016. Named Entity Recognition for Kazakh Using Conditional Random Fields.