Բնական լեզվի մշակում

Վիքիպեդիայից՝ ազատ հանրագիտարանից

Բնական լեզվի մշակում, (անգլ.՝ Natural Language Processing) համակարգչային գիտության, տեղեկատվական տեխնոլոգիաների և արհեստական բանականության ոլորտ, որը վերաբերում է համակարգիչների և մարդկային (բնական) լեզուների փոխազդեցությանը, մասնավորապես, ինչպես համակարգչային ծրագրերի միջոցով մշակել և վերլուծել մեծ քանակությամբ բնական լեզուների տվյալներ։ Բնական լեզուների մշակումը ապահովում է համակարգիչ մարդ շփումը։ Օրինակ՝ ԲԼՄ(NLP)-ն հնարավորություն է տալիս համակարգիչներին կարդալ տեքստեր, լսել խոսք և մեկնաբանել այն, չափել զգացմունքները և որոշել, թե որ մասերն է կարևոր[1]։

Պատմություն[խմբագրել | խմբագրել կոդը]

«Բնական լեզվի մշակումը Python ծրագրավորման լեզվով» 2րդ հրատարակություն (անգլերեն)

Բնական լեզուների մշակման պատմությունը հիմնականում սկսվել է 1950-ական թվականներին, չնայած աշխատանքներ կարելի է գտնել ավելի վաղ ժամանակաշրջանից։ 1950 թվականին Ալան Թյուրինգը հրատարակեց «Intelligence» վերնագրով հոդված, որը ինչ այժմ կոչվում է «Թյուրինգի թեստ», որը համարվում է բանականության թեստի չափանիշ։

1954 թվականին Ջորջթաունի փորձը ներառում էր ավելի քան 60 ռուսերեն նախադասությունների ամբողջապես ավտոմատ թարգմանում անգլերենի։ Հեղինակները պնդում էին, որ 3-5 տարվա ընթացքում մեքենայական թարգմանության խնդիրը կլուծվի։ Այնուամենայնիվ, առաջընթացը շատ դանդաղ էր և 1966 թվականին ԱԼՊԱԿ (ALPAC) զեկույցից հետո պարզվեց, որ տասնամյա հետազոտությունները չեն արդարացրել սպասելիքները, իսկ մեքենաների թարգմանության ֆինանսավորումը զգալիորեն կրճատվել է։ Մեքենայական թարգմանության հետագա ուսումնասիրությունները իրականացվել են մինչև 1980-ականները, երբ առաջին վիճակագրական մեքենաների թարգմանության համակարգեր էին մշակվել։

1970-ական թվականներին շատ ծրագրավորողներ սկսեցին ներկայացնել գաղափարային ներկայացումներ (անգլ.՝ conceptual ontologies), որոնք համակարգում էին իրական աշխարհի տեղեկատվությունը համակարգչային տվյալների մեջ։ Օրինակներ են ՝ MARGIE (Schank, 1975), SAM (Cullingford, 1978), PAM (Wilensky, 1978), TaleSpin (Meehan, 1976), QUALM (Lehnert, 1977), Politics (Carbonell, 1979) և Plot Units։ Այս ընթացքում շատ ծրագրեր գրվեցին ՝ ներառյալ PARRY, Racter և Jabberwacky[2]:

2010 թվականին հատկությունների ուսուցման և խոր նեյրոնային ցանցերի մեքենայական ուսուցման մեթոդները լայն տարածում գտան բնական լեզվի մշակման ոլորտում, ինչը ցույց տվեց, որ նման տեխնիկաները կարող են հասնել բարձր արդյունքների շատ լեզուների լեզվական խնդիրների մեջ, օրինակ` լեզվական մոդելավորման, վերլուծություն և շատ այլ բաներ։ Հանրաճանաչ տեխնիկան ներառում է բառակապակցությունների օգտագործումը, բառերի իմաստային հատկություններ գրավելու և ավելի բարձր մակարդակի առաջադրանքները վերջնական ավարտի բարձրացման (օրինակ `հարցի պատասխանը) փոխարինումը առանձին միջանկյալ խնդիրների (օրինակ՝ մաս-խոսքի տեքստի և կախվածության վերլուծությունից)[3]։

Կանոններով ընդդեմ վիճակագրությամբ բնական լեզվի մշակում[խմբագրել | խմբագրել կոդը]

Նախկինում, շատ լեզուների մշակման համակարգեր մշակվել էին ձեռքով ծրագրավորմամբ, օրինակ` գրելով գրքեր կամ ծագումնաբանական կանոններ։ Այնուամենայնիվ, սա հազվադեպ էր բավարար արդյունք տալիս բնական լեզուների հետ աշխատելիս։ Սկսած այսպես կոչված «վիճակագրական հեղափոխությունից»՝ 1980-ականների և 1990-ականների կեսերից, բնական լեզվով մշակված շատ հետազոտություններ մեծապես հիմնված էին մեքենայական ուսուցման վրա։ Շատ տարբեր լեզուների մշակման առաջադրանքներում կիրառվել են մեքենայական ուսուցման ալգորիթմների տարբեր դասեր։ Այս ալգորիթմները ներառում են որպես մուտքային տվյալների հիման վրա ստեղծվող «առանձնահատկությունների» մեծ շարք։ Վաղուց օգտագործված ալգորիթմերից որոշները, ինչպիսիք են որոշման ծառերը (decision trees), բարդ համակարգեր, որոնք արտադրում այնպիսի կանոններ, որոնք նման են գրավոր համակարգերին, որոնք այն ժամանակ տարածված էին։ Սակայն հետազոտությունները կենտրոնացած են վիճակագրական մոդելների վրա, որոնք հիմնված են իրական արժեքավոր կշիռների յուրաքանչյուր մուտքային հատկանիշի վրա։ Նման մոդելները առավելություն ունեն այն է, որ նրանք կարող են արտահայտել տարբեր բազմաթիվ հնարավոր պատասխանների հարաբերական հստակություն, այլ ոչ թե միայն մեկ։ Համակարգչային ուսուցման ալգորիթմների վրա հիմնված համակարգերը շատ առավելություններ ունեն «ձեռքով գրված» կանոնների ու ալգորիթմենրի նկատմամբ.

  • Մեքենայական ուսուցման ընթացքում օգտագործվող ուսուցման ընթացակարգերը ավտոմատ կերպով կենտրոնանում են ամենատարածված դեպքերի վրա, մինչդեռ ձեռքով գրելու ժամանակ հաճախ ամենատարածված դեպքերը ակնհայտ չեն և ջանքերը են պետք գտնելու համար։
  • Այն համակարգերը, որոնք հիմնված են ավտոմատ կերպով կանոնները սովորելու վրա կարող են ավելի ճշգրիտ պատասխան ստանալ քան ձեռքով գրված կանների վրա հիմնված համակարգերը, որոնք ավելացնելով ճշգրտություն դարձնում են այն ավելի բարդ։

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. «Machine Learning vs. Natural Language Processing». Lexalytics (ամերիկյան անգլերեն). 2012 թ․ փետրվարի 8. Վերցված է 2019 թ․ հունվարի 8-ին.
  2. «Jumping NLP Curves: A Review of Natural Language Processing Research [Review Article] - IEEE Journals & Magazine». ieeexplore.ieee.org (ամերիկյան անգլերեն). Վերցված է 2019 թ․ հունվարի 8-ին.
  3. «Machine learning | artificial intelligence». Encyclopedia Britannica (անգլերեն). Վերցված է 2019 թ․ հունվարի 8-ին.

Գրականություն[խմբագրել | խմբագրել կոդը]

Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]