திங்கள், 25 மே, 2020

இயற்கைமொழி ஆய்வு ( Natural Language Processing - NLP)

இயற்கைமொழி ஆய்வு ( Natural Language Processing - NLP) கணினிமொழியியல்( Computational Linguistics) , மொழித்தொழில்நுட்பம் ( Language Technology)
--------------------------------------------------------------------------------------
இயற்கைமொழி ஆய்வு என்பதுபற்றி ஒரு சிறிய விளக்கத்தை அளிக்கும்படி எனது நண்பர் பேராசிரியர் அ. சங்கரசுப்பிரமணியம் அவர்கள் கேட்டிருந்தார்கள். அதனடிப்படையில் இப்பதிவை இடுகிறேன்....

பெரும்பாலும் நாம் உருவாக்குகிற தொழில்நுட்பக் கருவிகள் அல்லது சாதனங்கள் நமது உடல் உறுப்புகளின் செயல்பாட்டுத் திறன்களை மேலும் மேலும் வளர்த்தெடுக்க உதவுகின்றன. கைகள், கால்கள், கண்கள், காதுகள், வாய், தலை ஆகியவற்றிற்கு உதவுவதற்காகவும் அவற்றின் திறன்களைக் கூட்டுவதற்காகவும் திருகி (ஸ்க்ரூ டிரைவர்) , ஈருளி (சைக்கிள்), தானிகள் ( ஸ்கூட்டர், பைக், சிற்றுந்து, பேருந்து, வானூர்தி, கப்பல்) ) , கண் கண்ணாடிகள், நுண்நோக்கி, தொலைநோக்கி ( மைக்ராஸ்கோப், டெலஸ்கோப் ) , ஒலிபெருக்கி, ஒலிவாங்கி , தலைக்கவசம், முகக்கவசம், கையுறைகள், காலுறைகள், காலணிகள் ..... அடுக்கிக்கொண்டே செல்லலாம் .. உற்பத்தி செய்கிறோம். இதையே பொதுவாகத் தொழில்நுட்பச் சாதனங்கள் ( Technological innovations or instruments) .
மேலே குறிப்பிட்ட உடல் உறுப்புகளில் மிக முக்கியமான ஒன்று ... அனைத்து உடல் உறுப்புகளையும் கட்டுப்படுத்திச் செயல்பட வைக்கிற ஒன்று... நமது மூளையே. எனவே பிற உறுப்புகளுக்கு உதவுவதற்காக அல்லது அவற்றின் திறன்களைக் கூட்டுவதற்காகப் பல சாதனங்களை உருவாக்குவதுபோல ... மூளையும் தனது பணிகளைச் செய்ய உதவியாகப் பல சாதனங்களை உருவாக்குகிறோம்.. கணிப்பான், கணினி போன்றவையெல்லாம் இதில் அடங்கும். ஒரு பெரிய கணக்கை ... எடுத்துக்காட்டாக 87894 x 34567 = ? ... என்பதற்குச் சரியான விடையை ... மிக வேகமாகச் செய்துதர ... கணிப்பானைப் ( Numerical processing tool) பயன்படுத்துகிறோம். இதுபோன்று, எண்களை மட்டுமல்லாமல்... எழுத்துகளையும் கையாளுவதற்குத் ( Alphabets and Numerals processing - Alpha-numeric tool) தற்போது கணினி பயன்படுகிறது. மேலும் மூளைக்கு உதவியாக எண்ணற்ற தரவுகளை... அறிவை... சேமித்துவைக்கவும் தேவைப்படும்போது எடுத்துக் கையாளவும் கணினி பயன்படுகிறது.
மனித மூளையின் மற்றொரு முக்கியச் செயல்பாடு மொழிவழிக் கருத்துப்புலப்படுத்தம் ( communication through language). நாம் சிந்திக்கவும், சிந்தித்ததைப் பிறருக்கு வெளிப்படுத்தவும், பிறர் வெளிப்படுத்த விரும்புவதை புரிந்துகொள்ளவும்... மொழியே பயன்படுகிறது ( அப்படியென்றால், மொழியிழப்பு அல்லது பேச்சிழப்பு உள்ளவர்கள் சிந்திக்கவில்லையா என்று கேள்வி எழலாம். அதுபற்றிப் பின்னர் மற்றொரு பதிவில் விளக்குகிறேன்) .இந்த மொழித்திறனே நமது சமூக வாழ்க்கைக்கும் மிக அடிப்படையாக அமைகிறது.
மேற்குறிப்பிட்ட மொழித்திறனைப் பெற்றுள்ள மனித மூளைக்கு உதவியாக ... மொழித்திறன் தளத்தில் ... கணினியையும் பயன்படுத்தலாம் அல்லவா? கணினி நிரல்கள் என்பவை... மனிதன் செய்கிற சிந்தனைத் திறனை உள்ளடக்கிய வேலைகளைக் கணினியும் செய்வதற்குத் தேவையான கட்டளைகளைக் கொடுப்பதுதான்! ஆனால் இன்று ... கணினிக்கு நிரல்களை .. நமது கட்டளைகளை .. மனிதனின் இயற்கைமொழிகளில் ( ஆங்கிலமோ, தமிழோ, இந்தியோ, ஜெர்மானியமோ, மாண்டெரினோ எதுவாகவும் இருக்கட்டும்) நாம் அளிக்கவில்லை; அளிக்க இயலவில்லை! மாறாக, கணினிக்கென்றே உருவாக்கப்பட்டுள்ள சி, சி பிளஸ், பாஸ்கல், போர்ட்ரான், பைதான், பேர்ல் என்று பல செயற்கைமொழிகளைத்தான் பயன்படுத்தி வருகிறோம். இந்த மொழிகளைப் பயின்றவர்கள்தான் நமது கட்டளைகளைக் கணினிக்கு நிரலாக்கம் செய்து கொடுக்கமுடியும்.
ஏன் இந்த நிலை? செயற்கைமொழிகளைப் புரிந்துகொள்கிற கணினிக்கு.. வியக்கத்தக்க செயல்களை மிகச் சிறப்பாகச் செய்கிற கணினிக்கு... மூளைக்குப் போட்டியாகச் செயல்படுகிற கணினிக்கு ( காஸ்பரோவுக்கும் கணினிக்கும் இடையில் நிகழ்ந்த சதுரங்கம் ஆட்டத்தை மனதில் கொள்ளலாம்!) ஏன் மனிதனின் இயற்கைமொழிக்களைப் புரிந்துகொள்ளமுடியவில்லை? புரிய வைக்க முடியாதா?
மேற்கண்ட வினாவுக்கு விடையளிக்க முயலும் ஒரு துறையே இயற்கைமொழி ஆய்வு! ஒரு பணியைச் செய்யக் கணினிக்கு நாம் செய்யவேண்டியது .. நிரலாக்கத்தில் செய்வது... அப்பணியை எவ்வாறு நாம் செய்கிறோம் என்பதைத் தெளிவாக எடுத்துக்கூறுவதே ஆகும். இதுபோன்று... மனித மொழிவழிக் கருத்தாடல் எவ்வாறு மூளையால் நிகழ்த்தப்படுகிறது என்பதை நாம் புரிந்துகொண்டால்... அந்த வழிமுறையையும் அதற்கான திறனையும் கணினிக்கு நிரல்கள்வழியே அளிக்கலாம் அல்லவா? பேசுவது, பேச்சை எழுத்துவடிவத்தில் மாற்றியமைப்பது, உரையாடுவது, மொழிபெயர்ப்பது, மெய்ப்புத் திருத்துவது -- இவ்வாறு பல்வேறு மொழிசார்ந்த பணிகளைக் கணினிகள் செய்யலாம் அல்லவா?
இதில் உள்ள சிக்கல் என்ன? பிரச்சினை என்ன? ஒருவர் மொழிவழியே கூறுவதை நமது மூளை எவ்வாறு புரிந்துகொள்கிறது? மூளையில் உள்ள மொழித்திறன் என்பதோடு, மூளையில் நீடிக்கிற உலக அறிவும் உதவுகிறது. '' அந்தத் துணி பச்சையாக இருக்கிறது'' , '' அந்தக் குழந்தை பச்சைக் குழந்தை '', ''அந்தப் பெண் பச்சை உடம்புக்காரி'', '' அவர் சொல்வது பச்சைப் பொய்'' , '' அவர் பச்சை பச்சையாகப் பேசுகிறார்'' ... '' பச்சை'' என்ற சொல்லுக்குப் பல பொருள்கள் உள்ளன. இருந்தாலும் இந்தப் பொருள் மயக்கம் மனித மூளைக்கு ஒரு பிரச்சினையே இல்லை! இந்தச் சொல் பயின்றுவருகிற குறிப்பிட்ட தொடரில் இச்சொல்லுக்கு முன்னும் பின்னும் வருகிற சொல்கள் ஆகிய மொழிசார் கூறுகளோடு... இச்சொல் பேசப்படுகிற மொழிசாராக் கூறுகளான ''பொது உலக அறிவுயும்'' நமக்கு உதவுகிறது!
'' குமரன் செல்வியைத் தொலைநோக்கியுடன் அந்த மலையில் பார்த்தான்'' - இதற்கு இரண்டு பொருள்கள் கூறலாம். ''குமரன் தன்கைகளில் தொலைநோக்கியை வைத்துக்கொண்டு, செல்வியைப் பார்த்தான்'' '' குமரன் தன் கைகளில் தொலைநோக்கியை வைத்திருந்த செல்வியைப் பார்த்தான்''. எனவே இரண்டு வேறுபட்ட பொருள்களுக்கு இத்தொடரில் வாய்ப்பு உள்ளது. ஆனால் '' மருத்துவர் செல்வியை ஸ்டெதாஸ்கோப்புடன் சோதித்தார்'' - இங்கு இரண்டு பொருள்களுக்கு வாய்ப்பு இருந்தாலும், நமது பொது அறிவானது -- மருத்துவர்தான் அக்கருவியை வைத்துச் சோதிப்பார் என்ற பொது அறிவானது நமக்குப் பொருள் மயக்கம் இல்லாமல், தொடரைப் புரிந்துகொள்ள உதவுகிறது! இந்த உலக அறிவை மனித மூளை தனது முயற்சியால் பெற்று, தனக்குள் சேமித்துவைக்கிறது. ஆனால் கணினிக்கு இந்தப் பொது அறிவு இல்லை. (தற்போது இந்த அறிவையும் பல வழிகளில் கணினிக்குக் கொடுக்க முயற்சிகள் மேற்கொள்ளப்பட்டுவருகின்றன!).
இவ்வாறு ஒரு சொல்லுக்குப் பல பொருள்கள் இருந்தாலும்... ஒரு தொடருக்குப் பல பொருள்கள் இருந்தாலும்.. மனிதமூளைக்குச் சிக்கல் இல்லை! ஆனால் கணினிக்குச் சிக்கல்! இந்தச் சிக்கல்களை எவ்வாறு தீர்ப்பது? சொல்பொருள் மயக்கம், தொடர்ப்பொருள் மயக்கம், மேலும் பல மொழிநிலைகளில் ஏற்படுகிற பொருள் மயக்கம்... இவற்றையெல்லாம் தீர்க்கக் கணினிக்கு நாம் எவ்வாறு உதவுவது? இயற்கைமொழிகளின் அமைப்பிலேயே இதற்குச் சில தீர்வுகள் உள்ளன! ''மாடுகன்று வாங்கினேன்'' , ''மாட்டுக்கன்று வாங்கினேன்'' - உம்மைத்தொகை, வேற்றுமைத்தொகை என்ற ஒரு இலக்கணக்கூறு வெளிப்பட்டு, நமக்குப் பொருள் மயக்கம் இல்லாமல், தொடரைப் புரியவைக்கிறது. '' முக்கியத் தலைவர்'' ''முக்கிய தலைவர் '' - எது சரி? இரண்டுமே சரிதான்! '' கட்சியில் முக்கியமான ( முக்கியம் என்ற பெயர்ச்சொல்லின் பெயரடை வடிவம்) தலைவர் '' என்றால் ''த்'' என்ற மெய் ஒற்று இடையில் வரும். ''வயிற்றுவலியால் முக்கிய ( முக்கு என்ற வினையின் பெயரெச்ச வடிவம்) தலைவர் '' என்றால் ஒற்று வராது! பாருங்கள், சந்திக்கு - புணர்ச்சிக்கு - எவ்வளவு பெரிய வலிமை உள்ளது பொருள் மயக்கத்தைத் தீர்ப்பதற்கு!
இதுபோன்ற பல மொழிநுட்பங்களைக் கணினிக்குக் கற்றுக்கொடுக்கவேண்டும்! இதற்குத் தேவையானவை ... மனித மூளையில் குழந்தைப் பருவத்தில் எவ்வாறு மொழி வளர்கிறது? எவ்வாறு சேமித்துவைக்கப்படுகிறது? எவ்வாறு பயன்படுத்தப்படுகிறது? போன்ற வினாக்களுக்கான விடைகளைத் தருகிற மொழியியல் துறை அறிவு! மொழித்திறன் சார்ந்த மூளையின் இந்தச் செயல்பாடுகளைப் புரிந்துகொண்டு.. அதைக் கணினிக்கு ஏற்ற நிரல்களாக உருவாக்கி... கணினிக்குக் கொடுக்கவேண்டும். மூளையின் மொழித்திறன், செயல்பாடுபற்றியும் தெரியவேண்டும்! கணினியின் திறன், செயல்பாடுபற்றியும் தெரியவேண்டும். இந்த இரண்டு திறன்களையும்பற்றிய அறிவையும் இணைத்த ஒரு அறிவியல்துறையே இயற்கைமொழி ஆய்வு (Natural Language Processing - NLP), கணினிமொழியியல் ( Computational Linguistics) , மொழித்தொழில்நுட்பம் (Language Technology) ஆகும்!

இத்துறையில் இரு பிரிவுகள் உள்ளன. ஒன்று மொழித் தொழில்நுட்பம் ( Language Technology) . இரண்டு, பேச்சுத் தொழில்நுட்பம் (Speech Technology) . மொழித்தொழில்நுட்பத்தில் ஒரு மொழியின் அத்தனைக் கூறுகளையும் - மிக நுண்ணிய கூறுகளிலிருந்து ( micro-level) பெரிய அளவிலான கூறுகள்வரை (macro-level) - ஆராய்ந்து, அவற்றைக் கணினிக்கு அளிப்பதற்கான முயற்சி. இந்த முயற்சியின் வெற்றியைப்பொறுத்தே தானியங்கு பிழை திருத்தியிலிருந்து (Proof Reading) மொழிபெயர்ப்பு (Machine Translation) , கணினி-மனிதன் கருத்தாடல்வரை (Human-Machine Interaction) ... அத்தனைக்கும் கணினிநிரல்களை உருவாக்கமுடியும். இந்தப் பிரிவில் பல அணுகுமுறைகள் பின்பற்றப்படுகின்றன. இதன் பயனாககவே பல மொழிகளுக்குப் பலவகை மொழிக்கருவிகள் உருவாக்கப்பட்டுள்ளன. ஆனாலும் மனித மூளை அளவுக்கு மொழியைக் கணினி கையாள ஆய்வு முன்னேறவில்லை. . அடுத்து, பேச்சுத் தொழில்நுட்பம்.... நமது பேச்சை மின்னலைகளாக மாற்றி, பின்னர் கணினியானது அதனை எழுத்துரையாக ( Speech to Text) மாற்றியமைப்பது ஆகும் ( . அதுபோல எழுத்துகளில் அமைந்துள்ள ஒரு உரையை மின்னலைகளாக மாற்றி, பின்னர் அதைப் பேச்சாக - பேச்சொலிகளாக - மாற்றுவது ஆகும் (Text to Speech) . இந்தப் பிரிவு பெரும்பான்மையாக இயற்பியலைச் சார்ந்துள்ளதால், அதிகமான வெற்றி கிட்டியுள்ளது. ஆனால் நாம் பேசுவதை எழுத்துகளில் மாற்றியமைப்பதோடு, அந்தத் தொடரின் பொருளையே... பொருண்மையையே ... கணினி புரிந்துகொள்ளவேண்டும் (Speech Understanding) . இதற்கு முன்கூறிய மொழித்தொழில்நுட்பத்தின் வளர்ச்சி தேவைப்படுகிறது. அதனுடைய வெற்றியைப் பொறுத்துத்தான் பேச்சுப் புரிதலைக் கணினி பெறமுடியும். இந்த இரண்டு பிரிவுகளிலும் மொழியியல் அணுகுமுறை (Linguistic approach) மட்டுமல்லாமல், புள்ளியல் அணுகுமுறை (statistical approach), தரவகமொழியியல் அணுகுமுறை (Corpus linguistic approach) , ஆழ்ந்துகற்றல (Deep Learning) , செயற்கை அறிவுத்திறன் ( Artificial Intelligence, Neural Network) போன்ற பல அணுகுமுறைகள் பின்பற்றப்பட்டு வருகின்றன. ஆனால் இந்தியமொழிகளுக்குப் போதிய ஆய்வுகள் நடைபெறவில்லை. குறிப்பாக, தமிழ்மொழிக்கு இத்துறை அறிவு குறிப்பிடத்தக்க அளவுக்கு வளரவில்லை. இன்னும் அடிப்படையிலேயே இருக்கிறோம். அதற்குக் காரணம். இதன் முக்கியத்துவத்தை இங்குள்ளவர்கள் இன்னும் சரியாகப் புரிந்துகொள்ளவில்லை.

0 கருத்துகள்:

கருத்துரையிடுக

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Hot Sonakshi Sinha, Car Price in India