Natural Language Toolkit

...software, data sets and tutorials for natural language processing...

Ta:Preface

 

From NLTK

Jump to: navigation, search

Contents

முகவுரை

இயல் மொழி ஆக்கம் குறித்த புத்தகம் இது. "இயல் மொழி" என்கிறபொழுது, தமிழ், ஹிந்தி, சிங்களம் போன்ற மொழிகளை மக்கள் தங்கள் இயல்பான வாழ்வில் எவ்வாறு பயன்படுத்துகின்றனரோ அத்தகையது எனப் பொருள்கொள்கிறோம்.

நிரலாக்க மொழிகள் முதலிய செயற்கை மொழிகளைப் போல் அல்லாது இயல் மொழிகள் வாழையடி வாழையாய் தழைத்து வந்துள்ளமையால் குறிப்பிட்ட விதிகளைக் கொண்டு விளங்கிக் கொள்வது கடினம்.

சற்றே பரந்த நோக்கில் இயல் மொழி ஆக்கம் என்பதனை (சுருக்கமாக இ.மொ.ஆ) இயல் மொழியொன்றினை கணினியாக்கத்திற்கான எத்தகைய ஒரு பணியாகவும் எடுத்துக் கொள்வோம்.

ஒரு பக்கம் அது கொடுக்கப் பட்டுள்ளப் பத்தியில் 'ஆ' எத்தனை முறை வருகிறது எனக் கணக்கிடுவதாக இருக்கலாம். மற்றொரு பக்கம், இ.மொ.ஆ மனிதன் மொழிபவற்றை புரிந்து கொள்வதாய், குறைந்த பட்சம் அவர்களுக்கு பயனுள்ள பதில் அளிக்க வல்லதாய் அமையலாம்.

மொழியே மனிதனின் அறிவையும் எண்ணங்களையும் வெளிப்படுத்துவதற்கான கருவி. இ.மொ.ஆ வினைப் பயன்படுத்தும் தொழில்நுட்பங்கள் இன்று பிரபலமடைந்து வருகின்றன. உதாரணத்திற்கு கையடக்க கணினிகள் உரையினை முன்னனுமானிக்கவும் கையெழுத்துக்களை இனங்காணவும் செய்கின்றன. முறைப் படுத்தப் படாத வகையில் தகவல்களை உரை வடிவமாகத் தர இணைய தேடுபொறிகள் உதவுகின்றன. இயந்திர மொழிபெயர்ப்பின் மூலம் சீன மொழியினை எடுத்து ஸ்பானிஷ் மொழியாக நம்மால் வாசிக்க முடிகிறது. இயந்திர-கணினி இடைமுகப்புகளை இன்னும் அதிக இயல்பானதாக ஆக்குகிற பொழுதும், சேமிக்கப் பட்ட தகவல்களை அதிக ஆற்றலுடன் அணுகுகிற பொழுதும், தகவல்கள் பன்மொழியில் கிடைக்கக் கூடியதாயுள்ள சமூகத்தில் மொழியாக்கம் பிரதான பங்கு வகிக்கத் துவங்குகிறது.

இமொஆ வின் நுட்ப விஷயங்கள் மற்றும் கூறுகளை இயன்ற வரையில் உள்ளடக்கியதாகவும், செய்முறை விளக்கங்களோடு கூடியதாகவும் இப்புத்தகம் திகழ்கிறது. விளக்கப் பட்ட செய்முறைப் பயிற்சிகளையும் உதாரணங்களையும் இப்புத்தகம் தருகின்றது. இதனை தன்னறிதலின் பொருட்டோ அல்லது இயல் மொழி ஆக்கம் அல்லது கணினிசார் மொழியியலின் இளநிலை மற்றும் முதுநிலைப் பட்டப் படிப்பிற்கு பாடப் புத்தகமாவோ பயன்படுத்தலாம்.

யாருக்காக

எழுதப் படும் மொழியினை ஆராயும் பொருட்டு நிரல் இயற்றக் கற்றுக் கொள்ள விழைவோருக்கானது இப்புத்தகம். புதிதாக நிரல் இயற்ற விரும்புவோர் அணுகத் தக்கதாய் அதே சமயம் தேர்ச்சி பெற்ற நிரலாளர்கள் மிக எளிதில் இன்றியமையாத இ.மொ.ஆ நுட்பங்களை கற்க உகந்ததாய் இப்புத்தகம் வடிவமைக்கப் பட்டுள்ளது.

நிரலாக்கத்திற்கு புதியவரா? நிரலாக்கத்தில் முன்னனுபவம் இல்லாதவருக்கும் இப்புத்தகம் உகந்தது. ஆரம்பப் பாடங்கள் தாங்கள் நகலெடுத்து ஒட்டி பயிற்சி செய்யத் தக்க உதாரணங்களைக் கொண்டு விளங்குகிறது. தரம் பிரிக்கப் பட்ட பயிற்சிகளையும் கொண்டு விளங்குகிறது. பைதான் குறித்து ஆழமாக அறிந்து கொள்ளத் தாங்கள் விரும்பினால், லெர்னிங் பைதான் (ஓ'ரைல்லி) எனும் புத்தகத்தை இத்துடன் இணையாக வாசிக்குமாறு பரிந்துரைக்கின்றோம்.

பைதானுக்கு புதியவரா? நிரலாக்கத்தில் முன்னனுபவம் உள்ளவர்கள் இப்புத்தகத்தின் துணைக் கொண்டு அவசியமான பைதானைக் எளிதில் கற்று இயல் மொழியாக்கத்தில் மூழ்கி முத்துக் குளிக்கலாம். பைதானின் அனைத்து அவசிய அம்சங்களும் கவனத்துடன் விளக்கப்பட்டு விவரிக்கவும் பெற்றுள்ளன. இதன் மூலம் இத்துறைக்கு பைதானின் பொருத்தத்தை தாங்கள் எளிதில் உணர்ந்து கொள்வீர்கள்.

பைதான் பித்தராத் தாங்கள்? பைதான் அறிமுகப் பாடங்களைத் தவிர்த்து, chap-words_ பாடத்திலிருந்நது கிடைக்கப் பெறும் சுவாரஸ்யமான மொழி ஆராய்ச்சி பகுதிக்குள் நுழையுங்கள். இப்பயன்பாட்டுத் துறையில் தங்களின் ஆற்றல்களை விரைவில் வெளிப்படுத்தத் துவங்குவீர்கள்.

தாங்கள் கற்கவிருப்பது

இவ்வாவணத்தினை ஆழக் கற்பதன் மூலம்,

  • மொழித் தரவுகளை மிக எளிமையான நிரல்களைக் கொண்டு கையாள்வது மற்றும் ஆராய்வது எப்படி? அத்தகைய நிரல்களை இயற்றுவது எப்படி?
  • இ மொ ஆ மற்றும் மொழியியலின் முக்கியக் கூறுகள் எங்ஙனம் மொழியினை விவரிக்கவும் ஆராயவும் உதவுகின்றன?
  • தரவு முறைமைகளும் வழிமுறைகளும் இ மொ ஆவில் பயன்படுத்தப்படுவது எங்ஙனம்?
  • மொழித் தரவுகள் முறைப் படுத்தப்பட்டு சேமிக்கப் படும் விதம் மற்றும் இ மொ ஆ வின் நுட்பங்களை தேர்ந்தாராய தரவுகள் எங்ஙனம் பயன்படுத்தப் படுகின்றன?

முதலியற்றை அறிந்து கொள்ள முடியும்.

தங்களின் முன்னனுபவத்தினையும் இ மொ ஆவின் பால் உள்ள தங்களின் ஆர்வத்தினையும் கொண்டு, கீழ்காணும் படிக்கு பல்வகைப்பட்ட ஆற்றல்களையும் அறிதலையும் இப்புத்தகத்தின் வாயிலாகப் பெறுவீர்கள்:

+------------+--------------------------------+--------------------------------+
|            |                           முன்னனுபவம்                            |
+ இலக்கு      +--------------------------------+--------------------------------+
|            | கலைத் துறை            | அறிவியலும் பொறியியலும்        |
+------------+--------------------------------+--------------------------------+
| Language   | Programming to manage          | Language as a source           |
| Analysis   | language data, explore         | of interesting problems in     |
|            | linguistic models, and         | data modeling, data mining,    |
|            | test empirical claims          | and knowledge discovery        |
+------------+--------------------------------+--------------------------------+
| Language   | Learning to program, with      | Knowledge of linguistic        |
| Technology | applications to familiar       | algorithms and data structures |
|            | problems, to work in language  | for high quality, maintainable |
|            | technology or other technical  | language processing software   |
|            | field                          |                                |
+------------+--------------------------------+--------------------------------+

கருவியினைப் பதிவிறக்க...

இந்நூல் http://nltk.org/ தளத்திலிருந்து கட்டற்று பதிவிறக்கவல்ல மென்பொருள், சொற்களஞ்சியம் மற்றும் ஆவணத்தோடு கூடிய "இயல் மொழியாக்க கருவி" யின் துணைவனாகும்.

விண்டோஸ், மாகின்டோஷ் மற்றும் யுனிக்ஸ் தளங்களுக்கான வழங்கல்கள் கிடைக்கப்பெறுகின்றன.

நிரல் மூலத்தினைப் பெற http://nltk.org/nltk/ விடத்தினை அணுகவும்.

பைதானுடன் கூடிய அனைத்து இ மொ ஆ கருவிகளோடு பயனுள்ள பிற மென்பொருட்களையும் உள்ளடக்கிய வட்டின் பிம்பம் கிடைக்கப்பெறுகிறது. இதனைப் பதிவிறக்கி வட்டில் இயற்றி பிறருடன் பகிர்ந்து கொள்ளலாம். முதல் பாடத்தினுள் அடியெடுத்து வைக்குமுன் பைதான் மற்றும் இ மொ ஆ கருவியினை பதிவிறக்கிக் கொள்ளுமாறு கேட்டுக் கொள்கிறோம்.

கவனக்கூறுகள்

இ மொ ஆ விற்கு அனுபவத்தோடு கூடிய பயிற்சியினை அளிக்க இப்புத்தகம் முற்படுகிறது. உதாரணங்களைக் கொண்டு கற்று, நிரல்களை இயற்றி, சிந்திப்பதைச் செயல்படுத்தி பார்ப்பதன் மதிப்பினை உணர்வீர்கள். நிரலாக்கத்தில் முன்னனுபவம் இல்லாவிடில் இப்புத்தகம் தங்களுக்கு நிரலாக்கத்தினைக் கற்றுக் கொடுக்கும். ஏனைய நிரலாக்கப் புத்தகங்களைப் போலல்லாமல் இ மொ ஆ வுக்கானப் பரந்து பட்ட விளக்கங்களுடன் கூடிய பயிற்சினை நாங்கள் வழங்குகின்றோம்.

அதே சமயம் மொழியியல் மற்றும் கணினிவியல் ஆய்வுகளைப் புறந்தள்ளாத ஒரு முறையான அணுகுமுறையினை நாம் மேற்கொண்டுள்ளோம். ஏட்டுக்கும் கறிக்கும் உள்ள வேறுபாட்டினை ஈடு செய்ய முற்பட்டுள்ளோம். பாடங்களின் இடையே பலவிடங்களில் இணக்கங்களையும் பிணக்கங்களையும் இனங்கண்டு இவற்றிற்கிடையே உள்ள மாறுபாடுகளையும் உணர்த்த முற்பட்டுள்ளோம். தங்களுக்கென்றொரு ஆர்வம் இல்லாது போனால் இதனைத் தாண்டுவது கடினம் என்பதனையும் உணரந்துள்ளக் காரணத்தினால், ஊக்கமும் உற்சாகமும் தரவல்ல பல்வேறு பயன்பாடுகளையும் உதாரணங்களையும் உள்ளடக்க முயற்சித்துள்ளோம்.

வடிவமைப்பு

இப்புத்தகம் கீழ்காணும் படிக்கு மூன்று பகுதிகளாக வடிவமைக்கப் பட்டுள்ளது.

பகுதி 1 - அடிப்படை
இப்பகுதியில், உரையாக்கம், சொற்களை இனங்கண்டு வகைப் படுத்துதல் மற்றும் தேர்வு செய்யப்பட்ட அடிப்படையான மொழியாக்கப் பணிகள் முதலியவற்றிற்கு கவனம் கொடுக்கப் பட்டுள்ளது.
பகுதி 2 - பகுத்தல்
இங்கே உரையின் இலக்கணக் கட்டமைப்பு குறித்து ஆராய்கிறோம். எவ்வாறு சொற்கள் இணைந்து வாசகங்களாகவும் வாக்கியங்களாகவும் மாறுகினற்ன என்பது குறித்தும் தானாகவே எங்கனம் அவ்வரைகளை இத்தகையக் கட்டமைப்புகளுக்குள் பகுப்பது என்பது குறித்தும் அலசுகிறோம்.
பகுதி 3 - ஆழமானவை
இ மொ ஆ வின் தேர்வு செய்யப்பட்ட விடயங்களை ஆழமான முதிர் நிலையில் அலசும் பாடங்களைக் கொண்டது இக்கடைசி பகுதி. இவற்றிலுள்ள பாடங்களை ஒன்றை ஒன்று சாராது வாசிக்கும் படி வடிவமைக்கப்பட்டுள்ளது.

மூன்று பகுதியும் ஒத்த வடிவமைப்பினைக் கொண்டது. நிரலாக்கத்திற்கான ஒரு பாடத்தினை முதலாகக் கொண்டிருக்கும். இமொஆ வின் பல்வேறு கூறுகளை அலசும் மூன்று பாடங்கள் இதனைத் தொடரும். நிரலாக்கத்திற்கான பாடங்கள் அடிப்படையானவை. மேற்கொண்டுத் தொடர இதனைத் திறம்பட கற்பது மிகவும் முக்கியம்.

ஒவ்வொரு பாடமும் அறிமுகம் ஒன்றிலிருந்து துவங்கி, ஆரம்ப நிலையிலிருந்து அனுபவ நிலைக்கு இட்டுச் செல்லும் பகுதிகளை உள்ளிடக்கியதாய், இறுதியில் அனைத்தையும் தொகுத்து வழங்கி மேற்கொண்டு கற்பதற்கு உதந்த மேற்கோள்கள் தந்து நிறைவடையும். கீழ் காணும் படிக்கு தர வரிசைப் படுத்தப்பட்ட பயிற்சிகளை கொண்டு பெரும்பாலான பகுதிகள் கொண்டிருக்கும்.

|எளியவை| கொடுக்கப் பட்ட உதாரணங்களில் சிறு மாற்றங்கள் செய்து பயிற்சி செய்யத்தக்கவை இவ்வகையானவை. |இடைநிலை| கொடுக்கப் பட்ட பொருளை ஆழமாக அலசி ஆராய வல்லவை இடைநிலைப் பட்ட பயிற்சிகளில் காணலாம். |ஆழ்நிலை| கடினமான சுதந்தரமான சிந்தனையினை ஊக்குவிக்கவல்ல சோதனைகள் இதில் அடங்கும். (நிரலாக்கத்திற்கு புதியவராயின் இப்கயிற்சிகளை விடுத்து முன்னேறுவது பரிந்துரைக்கப் படுகிகிறது)

ஒவ்வொரு பகுதியிலும் சொல்லப் பட்டவைகளை உறுதி செய்து கொள்ள இப்பயிற்சிகள் உதவுகின்றன. மேற்கொண்டு முன்னேறும் முன் இப்பயிற்சிகளுள் சிலவற்றை செய்து பார்த்த பின் முன்னேறுமாறு பரிந்துரை செய்கின்றோம்.

பைதானின் அவசியம்?

மொழித் தரவுகளை ஆக்குவதற்கான சிறந்த செயற்பாடுகளைக் கொண்டதோடு எளிமையும் வலிமையும் நிறைந்த நிரலாக்க மொழியாகும் பைதான். கட்டேதும் இல்லாது http://www.python.org/ தளத்திலிருந்து பைதானை பதிவிறக்கிக் கொள்ளலாம்.

மாறியொன்றுக்கு சூட்டப்பட்ட வாக்கியத்திலிருந்து, தேன் என முடியும் சொற்களை மட்டும் எடுத்துக் கொடுக்கும் எளிய பைதான் நிரலினைக் கீழேக் காணலாம்.

    >>> vakkiyam = u"""பார்த்தேன் சிரித்தேன்
                   பக்கத்தில் அழைத்தேன்
                   அன்று உனைத்தேன் என நான் நினைத்தேன்
                   இந்த மலைத்தேன் இதுவென மலைத்தேன்"""    
    >>> for sol in vaakiyam.split():       # வாக்கியத்தினை சொற்களாகப் பிரிக்கப்பட்ட பின் கிடைக்கும் ஒவ்வொரு சொல்லிலும்
    ...     if sol.endswith(u"தேன"):     # சொல்லானது "தேன்" என முடிந்தால்
    ...             print sol             # சொல்லினை திரையிடவும் 


மேற்கண்ட நிரல் பைதானில் கிடைக்கக் கூடிய முக்கியமான வசதிகளைப் பற்றிய முன்னோட்டத்தினைத் தருகிறது. வெள்வெளி வரிகளுக்கிடையே தொடர்புகளை ஏற்படுத்துகிறது. if எனத் துவங்கும் வரி for எனத் துவங்கும் வரியின் வரம்பிற்குள் வருகிறது. இதன் மூலம் சொல்லானது தேன் என முடிகிறதா எனும் சோதனை ஒவ்வொரு சொல்லுக்கும் செய்யப் படுவது உறுதியாகிறது.

மேலும் பைதான் ஒரு பொருளொத்த நிரலாக்க மொழியாகும். பிரதியொரு மாறியும் பொருளாக பாவிக்கப்படுவதோடு அவ்வவற்றிற்குரிய பண்புகளையும் முறைகளையும் கொண்டு விளங்குகின்றன.

உதாரணத்திற்கு vakkiyam என்ற மாறி ஒரு சொற்சரத்தினை தமது மதிப்பாதக் கொண்டது என்பதையும் தாண்டி விரிகிறது.

சொற் சரப் பொருளாக பாவிக்கப்படும் இது தன்னகத்தே உள்ள split() எனும் பணியினைக் கொண்டு வரியினைச் சொற்களாக உடைக்க உதவுகின்றது. பொருளொன்றின் மீது அது செய்ய வேண்டிய பணியினை ஏவ பொருளின் பெயருக்கு பின் ஒரு புள்ளி வைத்தபின் அப்பணியின் பெயரை இடுகிறோம்.

மூன்றாவது, பணிகள் தங்கள் அடைப்புக் குறிகளுக்குள்ளே துப்புகளைக் கொண்டிருக்கும். மேற்கூறிய உதாரணத்தில் split() பணிக்கு துப்பேதும் தரப் படவில்லை. ஏனெனில் எங்கெல்லாம் வெளியிருக்கிறதோ அதனைப் பொறுத்து நாம் சொற் சரத்தினை உடைக்கின்றோம். ஆகையால் காலியானதொரு அடைப்புக் குறியினை நாம் இடுகின்றோம். சொற்சரத்தினை புள்ளியொன்றின் இருப்பை அடிப்படையாகக் கொண்டு நாம் உடைத்தோமாயின் split('.') என நாம் எழுதலாம். பைதான் எளிதில் விளங்கிக் கொள்ள வல்ல ஒரு மொழியாகையால் மேலெழுதப் பட்ட நிரலினை அதிக விளக்கமின்றி எளிமையாக தங்களால் புரிந்து கொள்ள இயலும்.

எளிதில் கற்க வல்லதாக, தெளிவான நெறிகளைக் கொண்டுள்ளமையாலும், சொற் சரங்களை திறம்பட கையாள வழி செயவதாளும் இ மொ ஆ கருவியினை நடைமுறைப் படுத்தும் மொழியாக பைதானைத் தேர்வு செய்தோம். நேர்நிரலாக்க மொழியாகையால் வரிவரியாக ஆராய பைதான் வகைச் செய்கிறது. பொருள் சார் நிரலாக்க மொழியாகையால் தரவுகளையும் பணிகளையும் என்காபஸுலேட் செய்து மீளுபயோகப் படுத்த அனுமதிக்கின்றது. பன்நிலை மொழியாகிறக் காரணத்தினால் பொருள்களுக்கு பண்புகளை நிகழ்கையிலேயே சேர்க்க வல்லதோடு மாறிகளை பலநிலைகளில் சேர்க்க பைதான் அனுமதிக்கின்றது. இது அதிவேக உருவாக்கத்திற்கு வழிகோள்கிறது. வரகலை நிரலாக்கம், எண்ணாக்கம் மற்றும் இணையத் தரவாக்கம் முதலியவற்றுக்கான நிலையான நிரலகங்களுடன் பைதான் கிடைக்கப் பெறுகிறது.

தொழிற்சாலைகள், அறிவியல் ஆராய்ச்சிகள் மற்றும் கல்வியின் நிமித்தம் பைதான் பரவலாகப் பயன்படுத்தப் படுகிறது. உற்பத்தி திறன், தரம் மற்றும் மெனபொருளின் பராமரிப்புத் தனமை முதலியவற்றுக்காக பைதான் போற்றப் படுகின்றது. பைதானின் வெற்றிப் பயனம் குறித்து அறிய http://www.python.org/about/success/ பக்கத்தினை அணுகவும்.

இமொஆ நிரல்களை இயற்ற இமொஆகருவி ஒருக் கட்டுமானத்தினை தருகிறது. இமொஆ சார்புடைய தரவுகளை பிரதிபலிக்கத் தேவையான அடிப்படை வகுப்புகளைத் தருகிறது. சொல் மூலமறிதல், இலக்கணக் குறிப்பிடுதல், நெறிக்குட்பட்ட பார்ஸிங் மற்றும் பிரதியொரு பணியையும் நிலையாக செயல்படுத்தக் கூடிய நிலையான இடைமுகப்புகளைத் தருகிறது. இவற்றை ஒருங்கிணைத்து கடினமான பிரச்சனைகளை களைய உதவுகிறது.

விரிவான ஆவணமாக்கத்துடன் இமொஆ கிடைக்கப் பெறுகிறது. தாங்கள் வாசித்துக் கொண்டிருக்கும் இப்புத்தகத்திற்கும் அப்பால் http://nltk.org/ தளமானது கருவியிலுள்ள தனியொரு பாகங்களையும், வகுப்புகளையும், செயற்பாடுகளையும் உதாரணங்களுடன் கவரத் தக்க API ஆவணமாக்கத்துடன் கிடைக்கப் பெறுகின்றது. கடுமையான சோதனை மாதிரிகளையும் உதாரணங்களையும் கொண்ட பாகங்களுக்கான துணையேடுகளையும் இத்தளம் வழங்குகிறது. பயனர்கள், உருவாக்குநர்கள் மற்றும் போதகர்கள் என அனைவருக்கும் உகந்தாகவும் திகழ்கிறது.

பைதான் கற்றலும் இமொஆகருவியும்

இப்புத்தகத்தில் தன் வேகத்திற்கேற்ற கற்பதற்கான ஆவணங்கள் உதாரணங்களுடனும் பயிற்சிகளிடனும் கிடைக்கப் பெறுகின்றது. பயிற்றுவிப்போர் மற்றும் ஏனைய மாள\ணாக்கரின் துணையுடன் இவ் வாவணங்களை பயிற்சி செயவதே இதனை திறம்பட கறபதற்கான வழிமுறையாகும். நிரல் துண்டுகள் பயிற்சிகளில் இருந்து வெட்டி ஒட்டி பயிலத் தக்கது. ஹச்டிஎம்எல் ஆவணம் ஒவ்வொரு நிரல் துண்டிற்கும் பின்னால் நீளப் பட்டையைக் கொண்டிருக்கும். அப்பட்டியின் மேல் சொடுக்குவதன் வாயிலாக பிடிப்புப் பலகைக்கு நிரலானது நகலெடுக்கப் படும். (உலாவிக்கு தக்க அரண் அமைப்புகள் ஏற்படுத்தப் பட்டதாகப் பாவித்து)

பைதான் உருவாக்கச் சூழல்கள்:

பைதான் நிரல் உருவாக்கத்தினைத் துவக்குவதற்கான எளிய வழி பைதானுடன் கிடைக்கப் பெறும் "IDLE" எனப்படும் வரைகலை வரியொடுக்கியின் துணைக் கொண்டு பயிற்சிகளைச் செய்து பார்ப்பதாகும். ஆயினும் மாற்று வழிகள் பல உள்ளன. அவை http://nltk.org/ முகவரியில் விவரிக்கப் பட்டுள்ளன.

இமொஆக சமுகம்:

பெருகி வரும் பயனர் குழுக்ளைக் கொண்டு இமொஆக திகழ்கிறது. உருவாக்குவோர் மற்றும் ஆசிரியர்களுக்கு இமொஆக குறித்த அறிவிப்புகளைத் தரும் பொருட்டு மடலாடற் குழுக்கள் உள்ளன. http://nltk.org/ பக்கத்தில் அகிலமனைத்திலுமிருந்து ஐம்பதுக்கும் மேற்பட்ட பாடத்திட்டங்கள் பட்டியலிடப்பட்டுள்ளன. இவ்விடங்களில் இமொஆக மற்றும் அதன் ஆவணங்கள் ஏற்கப்பட்டு பயனுள்ள வளமாக அதன் அளிக்கைகளும் பயிற்சிக்களும் பாவிக்கப் பட்டு வருகின்றன.

இமொஆகவின் கட்டமைப்பு

நான்கு பிரதான இலக்குகளை நினைவில் நிறுத்தி இமொஆக வடிவமைக்கப்பட்டுள்ளது:

எளிமை
தானேவிளங்கிக்கொள்ள வல்லதாவும் கவரத்தக்கதாகவும் உள்ள வார்ப்பினைத் தர நாங்கள் முயற்சித்துள்ளோம். உருவாக்கக் காரணிகளுடன் இதனை தர முயற்சித்திருப்பதன் மூலம் மாணாக்கருக்கு நடைமுறை அறிவினை பெற உதவுவதாய் மொழியாக்க பணிகளில் மொழித் தரவுகளை கையாளும் கடினமான முறைகளைக் களைவதாய் இருக்க முயற்சித்துள்ளோம். பல்வேறு தளங்களுக்கு ஏற்றதாய் மென்பொருளினைத் தந்து பிரதியொரு தளத்திற்குமான நிறுவல் குறிப்புகளையும் தந்து எளிமைப் படுத்தியுள்ளோம்.
நிலைத் தன்மை

அனைத்து தரவு வடிவமைப்புகளும் இடைமுகப்புகளும் நிலைத் தன்மை கொண்டதாக விளங்க குறிப்பிடத்தக்க முயற்சியினை நாங்கள் மேற்கொண்டுள்ளோம். இதன் மூலம் சீரானதொரு வார்ப்பினைப் பயன்படுத்தி பல்வேறு செயல்களை எளிதுடன் செய்ய இயலும்.

விரிவாக்கம்
செயற்பாடுகளை விரிவாக்கவோ மறுதலிக்கவோ கூடிய புதிய பாகங்களை எளிதில் சேர்க்கவல்லதாக இக்கருவித் திகழ்கிறது. கருவியின் கட்டமைப்பில் புதிய விரிவாக்கங்கள் எவ்விடத்துப் பொருந்தும் அனபது எளிதில் கணிக்கக் கூடியதாய் விளங்குகின்றது.
பகுத்தன்மை
கருவியின் பல்வேறு பாகங்களுக்கு இடையேயான தொடர்பு எளிமையான நன்கு விளக்கப்பட்ட இடை முகப்புகளைப் பயன்படுத்துகின்றது. தனியொரு திட்டத்தினை கருவியின் சிறியதொரு பகுதியின் துணைக் கொண்டே எளிதில் பூர்த்தி செய்து விடலாம். அது எங்ஙனம் கருவியின் பிற பகுதிகளுடன் தொடர்பு கொண்டுள்ளது என்பதைப் பற்றி அறிந்திருக்க வேண்டிய அவசியமில்லை. இது மாணாக்கருக்கு கருவியினைப் பயன்படுத்துவதை ஏற்றத்துடன் கற்க துணை நிற்கிறது. பகுத்தன்மையின் காரணமாக எளிதில் மாற்றவல்லதாகவும் விரிவாக்கம் செய்ய வல்லதாகவும் இக்கருவி இருக்கின்றது.

இவற்றுக்கு முரணான மூன்று இலக்குகளை நாங்கள் வேண்மென்றே தவிர்த்துள்ளோம். இக்கருவி பரவகைக் படப் செயற்பாடுகளை அளித்தாலும் இது ஒரு களஞ்சியமல்ல. பல்வேறு வகைகளில் மாணாக்கர்களால் கருவியினை விரிவிபடுத்த இயலும். இரண்டாவது அரத்தமுள்ள பணிகளை மேற்கொள்ள இக்கருவி மாணாக்கருக்கு பயன்பட்டாலும் நிகழுலக பயன்பாட்டிற்கு உகந்த அளவிற்கு மெம்படுத்த வேண்டிய அவசியமில்லை. கடினமான நிரல் கூறுகளை உள்ளடக்கியதாக சி சி++ உள்ளிட்ட நிரலாக்க மொழிகளை பயன்படுத்தக் கோரலாம். இங்னம் செய்வது இக்கருவியினை எளிதில் அணுக இயலாததாக நிறுவுவதற்கு அதிக சிக்கலுடையதாக ஆக்கலாம். கட்டவிழ்க்க கடினமாய் விளங்கும் சூட்சமங்களைக் காட்டிலும் தெளிவான நடைமுறைப் படுத்தல் உகந்தது என்றக் காரணத்தால் அதீத புத்திசாலித்தனமான நிரலாக்க முறைகளை நாங்கள் தவிர்த்துள்ளோம்.

பயிற்றுவிப்போருக்கு

ஒரு செமஸ்டர் பாடமாக இளநிலை மற்றும் முதுநிலை பட்டப் படிப்புகளில் இமொஆ பெரும்பாலும் பயிற்றுவிக்கப் படுகிறது. இச்சிறு காலகட்டத்திற்குள் ஏட்டோடு நடைமுறையையும் கற்பிப்பது கடினமாக இருப்பதாக பயிற்றுவிக்கும் பலர் கருதுகின்றனர். சில படிப்புகள் ஏட்டுக் கல்விக்கு அதிக முக்கியத்துவம் கொடுத்து மாணாக்கருக்கு மொழியாக்க வேண்டி நிரலாக்கம் செய்வதில் உள்ள துணிகரத்தோடு கூடிய பூரிப்பினை இல்லாது செய்துவிடுகின்றனர். மற்ற படிப்புகளோ மொழியாளர்களுக்கு வெறுமனே நிரலாக்கம் மட்டும் சொல்லிக் கொடுத்துவிட்டு இமொஆ குறித்து எடுத்துரைப்பதை தவிர்த்துவிடுகின்றனர். எந்தவொரு நிரலாக்க முன்னனுபவமும் இல்லாது இருப்பினும் கூட மாணாக்கர் நடைமுறையறிவோடு கூடிய ஏட்டுக் கல்விப் பெற வேண்டும் என்பதனை அடிப்படையாகக் கொண்டே இமொஆ கருவி முதன் முதலாக உருவாக்கப்பட்டது.

இமொஆ பாடத்திட்டத்தின் கணிசமாகப் பகுதி அடிப்படை தரவுக் கட்டமைப்பு மற்றும் நிரல்நெறிகளை உள்ளடக்குவதாக அமைந்துள்ளது. இவை சாதாரணமாக முறையான குறியீடுகளாலும் கடினமான வரைபடங்களின் துணையுடனும் பயிற்றுவிக்கப்படும். பெரிய வரைபடங்கள் பலகைக்கு நகலெடுக்கப் பட்டு மிக மெதுவாக தொகுக்கப்பட்டோ அல்லது அதிக சிரமத்துடன் அளிக்கைகளாகவோ தயாரிக்கப்படும்.

நிகழ் நேர செய்து காட்டலில் அவ் வரைப் படங்களை தருவித்து தானாகவே புதுப்பிப்பது அதிகத் திறம் வாய்ந்ததாக இருக்கும். இமொஆக உடனுரையாட வல்ல வரைக் கலை இடைமுகப்புகளை தருவாதால் நிரலின் நிலையினை காணவும் நிரல் இயக்கத்தினை படிப் படியாக ஆராயவும் இயலச் செய்கிறது.

பெரும்பாலான இமொஆக பாகங்கள் செயல்விளக்க முறையும் கொண்டிருப்பதால், பயனரின் சிறப்பானதொரு உள்ளீட்டினை கோராதவாறே சுவாரஸ்யமான செயலொன்றைச் செய்யும். "ஆனால் என்ன" போன்ற கேள்விகளுக்கு விடையாய் நிலில் சிறு மாற்றங்களையும் செய்ய இயலும். இதன் மூலம் இமொஆ வின் கூறுகளை மாணாக்கர் விரைவாகக் கற்பதுடன் தரவுக் கட்டமைப்புகள் மற்றும் நிரலாக்கநெறிகள் குறித்த ஆழமான புலமையும் பெற்று பிரச்சனைகளுக்கு தீர்வு காணும் திறன்களைப் பெறுகிறார்கள்.


இவ்வாவணத்தினைப் அளிக்கைசார் போதனைகளுக்கும் பயன்படுத்தப்படலாம். சில அளிக்கைகளை http://nltk.org/ விலிருந்து பதிவிறக்கிக் கொள்ளலாம். உதாரணங்களை உரையாடல் நடையோடு கூடிய விளக்கமுறையின் மூலமாகவும் பைதான் முனையத்தில் இட்டு அவை செய்பவற்றைக் கூர்ந்துகவனிப்பதன் வாயிலாகவும் ஏட்டளவிலானக் கேள்விகளை ஆராயும் பொருட்டு அவற்றை மாற்றுவதன் வாயிலாகவும் திறம்பட இவ்வாவணத்தை எடுத்தாளலாம்.

மாறுபடும் கடினத்துவத்தை உள்ளடக்கிய பயிற்சிப் பாடங்களை இமொஆ கொண்டுள்ளது. எளிமையானப் பயிற்சிப் பாடங்களில் இருக்கக் கூடிய பாகங்களில் மாணவர்கள் பல்வேறு இமொஆ கூறுகளை மாணவர்கள் செய்து பார்ப்பர். கிடைக்கக்கடிய செயல்விளக்கங்களில், இது நிரலாக்கமே இல்லாது கூட இருக்கலாம் அல்லது நிரலில் இரண்டொரு எளிய மாற்றம் செய்யத் தக்கதாக இருக்கலாம். மாணாக்கர் கருவியில் அதிக பரிசயம் கும் போது இருக்கும் பாகத்தினை மாற்றவோ அல்லது இருப்பதைக் கொண்டு புதிய பாகத்தினை உருவாக்கவோ கோரப்படுவர்.

பாகங்களை ஒருங்கிணைத்து விரிவாக்குதல் மற்றும் முற்றிலும் புதிய பாகங்களைச் சேர்த்தல் முதலியவற்றை உள்ளடிக்கிய பல்வேறு பாகங்களைக் கொண்ட அமைப்பினை உருவாக்குவது போன்ற முக்கியத்துவம் வாய்ந்த திட்டங்ளுக்கு வளைந்து கொடுக்கக் கூடிய வார்ப்பாகவும் இமொஆ விளங்குகிறது. இவ்விடத்தே இமொஆ அடிப்படையாகவுள்ள அனைத்து தரவுக் கட்டமைப்புகளையும் நிரல்நெறிகளையும் நிலையாக செயல்படுத்திக் காட்டுவதன் வாயிலாகவும், நிலையான சொற்களன்களுக்கு இடைமுகப்பினை வழங்குவதன் வாயிலாகவும், நிறைவான சொற்கள மாதொரிகளைத் தந்தும், வளைந்துக் கொடுக்க வல்ல விரிவாக்கத் தக்க கட்டமைப்பினைத் தந்தும் உதவுகின்றது. இமொஆ பயிற்றுமுறைக்கு, ஏட்டிற்கும் இயல்பிற்கும் இடையே இறுக்கமானத் தொடர்பினை ஏற்படுத்துவதன் வாயிலாக இமொஆக புதியதொரு பரிணாமத்தினை வழங்குவதைக் காணலாம்.

நிரலாக்க வரைமுறைகளுக்கு உட்பட்டு மாணாக்கருக்கு இமொஆ வினைக் கற்க தனித்தன்மை வாய்ந்த வார்ப்பினை இப்புத்தகம் தருமென நாங்கள் நம்புகின்றோம். பாடங்களோடு பயிற்சிகளையும் ஒரு சேர தந்துள்ள இவ் வாவணத்தினை, நிரலாக்க அனுபவம் இல்லாதோருக்கும் கூட, நடைமுறையறிவோடு கூடிய அறிமுகத்தினைத் தரவல்லதாக தனித்தன்மை வாய்ந்ததாக செய்கிறது. இதனை கற்று முடிக்கும் தருவாயில் மாணாக்கர் மான்னிங் மற்றும் ஸ்ஹுட்ஸின் "புள்ளியல் சார்ந்த இயல்மொழியாக்கம்" (எம்ஐடி அச்சகம் 2000) முதலிய இதனினும் மேம்பட்ட புத்தகங்களைத் தீண்ட தயார் நிலையில் இருப்பர்.

    =======================================  =========  ===================
    Course Plans; Lectures/Lab Sessions per Chapter
    -----------------------------------------------------------------------
    Chapter                                  Linguists  Computer Scientists
    =======================================  =========  ===================
    1 Introduction                           1          1
    2 Programming                            4          1
    3 Words                                  2-3        2
    4 Tagging                                2          2
    5 Language Engineering                   0-2        2
    6 Structured Programming                 2-4        1
    7 Chunking                               2          2
    8 Grammars and Parsing                   2-6        2-4
    9 Advanced Parsing                       1-4        3
    10-14 Advanced Topics                    2-8        2-16
    Total                                    18-36      18-36
    =======================================  =========  ===================

    Suggested Course Plans

சான்றுகள்

கணினிசார் மொழியியல் பாடத்திட்டத்தின் பகுதியாக, பெனிசில்வானியா பல்கலைக்கழகத்தின் கணினி மற்றும் தகவலறிவியல் துறையில் இமொஆக முதன் முதலில் 2001 ம் ஆண்டு உருவாக்கப்பட்டது. அது முதலாக அது பல்வேறு பங்களிப்பாளர்களின் உதவியுடன் உருவாக்கப்பட்டு விரிவாக்கப்பட்டு வருகிறது. தற்சமயம் பல்வேறு பல்கலைக் கழக பாடத்திட்டங்களில் ஏற்கப்பட்டு பல ஆய்வுத் திட்டங்களின் அடிப்படையாகத் திகழ்கின்றது.

குறிப்பாக கீழ்காணும் நபர்களுக்கு, அவர்களின் மறுமொழிகள், முந்தைய சரவைகளின் மீதானக் கருத்துக்கள், ஆலோசனைகள் மற்றும் பங்களிப்புகளுக்காக நன்றி சொல்லக் கடமைப்பட்டுள்ளோம் கடமைப்பட்டுள்ளோம்.

மிசேலா அட்டரர் கரெக் அவுமேன், கென்னத் பீஸ்லி, ஆன்தெஜ் போஜர், ட்ரெவோர் கோன், க்ரெவ் கார்பெட், ஜேம்ஸ் கர்ரன், ஜீன் மார்க் காவ்ரன், பாடன் ஹீக்ஸ், க்வில்லிம் லா, மார்க் லிபர்மேன், க்ரிஸ்டோபர் மலூப், ஸ்டீபன் முல்லர், ஸ்டுவர்ட் ராபின்சன், ஜுஸ்ஸி சல்மேலா, தாப் ஸ்பீர்.

இன்னும் பலரும் இக்கருவிக்காகப் பங்களித்துள்ளனர். அவர்களைப் பற்றிய விவரங்களை http://nltk.org/ பக்கத்தில் அறியலாம். உரைநடை குறித்த விமர்சனங்களுக்கு உடன் பணியாற்றும் பணியாளர் மற்றும் மாணாக்கருக்கு கடன்பட்டுள்ளோம்.

கீழ்காணும் ஏட்டிற்கும் நன்றி தெரிவித்துக் கொள்கிறோம் கார்பன்டர் மற்றும் சூ கரோலின் ஏசிஎல்-99 பேச்சுரையாடல் அமைப்புகளுக்கான பயிலேடு (பாடம் இரண்டில் உள்ள உதாரண உரையாடல்).

ஆசிரியர்கள் பற்றி

 +---------------------------------------------------+
 | |AuthorsPic|                                      |
 |                                                   |
 | Edward Loper, Ewan Klein, and Steven Bird,        |
 | Stanford, July 2007                               |
 +---------------------------------------------------+

.. |AuthorsPic| image:: ../images/authors.png

                   :scale: 85

ஸ்டீவன் பேர்ட் is Associate Professor in the Department of Computer Science and Software Engineering at the University of Melbourne, and Senior Research Associate in the Linguistic Data Consortium at the University of Pennsylvania. After completing his undergraduate training in computer science and mathematics at the University of Melbourne, Steven went to the University of Edinburgh to study computational linguistics, and completed his PhD in 1990 under the supervision of Ewan Klein. He later moved to Cameroon to conduct linguistic fieldwork on the Grassfields Bantu languages. More recently, he spent several years as Associate Director of the Linguistic Data Consortium where he led an R&D team to create models and tools for large databases of annotated text. Back at Melbourne University, he leads a language technology research group and lectures in algorithms and Python programming. Steven is editor of Cambridge Studies in Natural Language Processing, and was recently elected president of the Association for Computational Linguistics.

இவான் க்ளீன் is Professor of Language Technology in the School of Informatics at the University of Edinburgh. He completed a PhD on formal semantics at the University of Cambridge in 1978. After some years working at the Universities of Sussex and Newcastle upon Tyne, Ewan took up a teaching position at Edinburgh. He was involved in the establishment of Edinburgh's Language Technology Group 1993, and has been closely associated with it ever since. From 2000\ |ndash|\ 2002, he took leave from the University to act as Research Manager for the Edinburgh-based Natural Language Research Group of Edify Corporation, Santa Clara, and was responsible for spoken dialogue processing. Ewan is a past President of the European Chapter of the Association for Computational Linguistics and was a founding member and Coordinator of the European Network of Excellence in Human Language Technologies (ELSNET). He has been involved in leading numerous academic-industrial collaborative projects, the most recent of which is a biological text mining initiative funded by ITI Life Sciences, Scotland, in collaboration with Cognia Corporation, NY.


எட்வர்ட் லோபர் is a doctoral student in the Department of Computer and Information Sciences at the University of Pennsylvania, conducting research on machine learning in natural language processing. Edward was a student in Steven's graduate course on computational linguistics in the fall of 2000, and went on to be a TA and share in the development of NLTK. In addition to NLTK, he has helped develop other major packages for documenting and testing Python software, epydoc and doctest.

இவ் வாவணம் பற்றி...

ஸ்டீவன் பேர்டு, எவன் க்ளீன் மற்றும் எட்வர்ட் கூப்பர் முதலானோரின் இயல் மொழி ஆக்கம் - ஒரு அறிமுகம் [1] புத்தகத்தின் சரவையாகும் இப்பாடம். பதிப்புரிமை 2007 ஆசிரியர்களுக்குரியது. இது இயல் மொழியாக்கக் கருவியுடன் [2] கிரியேடிவ் காமன்ஸ் ஷேர் அலைக் உரிமத்தின் [3] நிபந்தனைகட்கு உட்பட்டு விநியோகிக்கப்படுகிறது.

Personal tools