# യന്ത്രപഠനം

**ഇംഗ്ലീഷ് വിലാസം**

വസ്തുതകളിലൂന്നിയുള്ള നിർമ്മാണ-പഠന വ്യവസ്ഥിതിയാണ് കൃത്രിമബുദ്ധിയുടെ ഒരു ശാഖയായ **യന്ത്രപഠനം** അഥവാ മെഷീൻ ലേർണിങ് (machine learning). 'പഠിക്കുന്ന' രീതികൾ മനസിലാക്കുന്നതിനും നിർമ്മിക്കുന്നതിനുമായി നീക്കിവച്ചിരിക്കുന്ന ഒരു അന്വേഷണ മേഖലയാണ്, അതായത് ചില ടാസ്‌ക്കുകളിലെ പ്രകടനം മെച്ചപ്പെടുത്തുന്നതിന് ഡാറ്റയെ സ്വാധീനിക്കുന്ന രീതികൾ ഉൾപ്പെടുന്നു.ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിന്റെ ഭാഗമായാണ് ഇതിനെ കാണുന്നത്. മെഷീൻ ലേണിംഗ് അൽഗോരിതങ്ങൾ സാമ്പിൾ ഡാറ്റയെ അടിസ്ഥാനമാക്കി ഒരു മാതൃക നിർമ്മിക്കുന്നു, അത് വ്യക്തമായി പ്രോഗ്രാം ചെയ്യാതെ തന്നെ പ്രവചനങ്ങളോ തീരുമാനങ്ങളോ എടുക്കുന്നതിനെ ട്രേനിംഗ് ഡാറ്റ എന്നറിയപ്പെടുന്നു.മെഷീൻ ലേണിംഗ് അൽഗോരിതങ്ങൾ മെഡിസിൻ, ഇമെയിൽ ഫിൽട്ടറിംഗ്, സ്പീച്ച് റെക്കഗ്നിഷൻ, കമ്പ്യൂട്ടർ വിഷൻ എന്നിവ പോലുള്ള വിവിധ ആപ്ലിക്കേഷനുകളിൽ ഉപയോഗിക്കുന്നു, അവിടെ ആവശ്യമായ ജോലികൾ നിർവഹിക്കുന്നതിന് പരമ്പരാഗത അൽഗോരിതങ്ങൾ വികസിപ്പിക്കുന്നത് ബുദ്ധിമുട്ടുള്ളതോ അപ്രായോഗികമോ ആണ്.

മെഷീൻ ലേണിംഗിന്റെ ഒരു ഉപവിഭാഗം കമ്പ്യൂട്ടേഷണൽ സ്റ്റാറ്റിസ്റ്റിക്‌സുമായി അടുത്ത ബന്ധമുള്ളതാണ്, അത് കമ്പ്യൂട്ടറുകൾ ഉപയോഗിച്ച് പ്രവചനങ്ങൾ നടത്തുന്നതിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു; എന്നാൽ എല്ലാ മെഷീൻ ലേണിംഗും സ്റ്റാറ്റിസ്റ്റിക്കൽ ലേണിംഗ് അല്ല. ഗണിതശാസ്ത്ര ഒപ്റ്റിമൈസേഷന്റെ പഠനം മെഷീൻ ലേണിംഗ് മേഖലയിലേക്ക് രീതികളും സിദ്ധാന്തവും ആപ്ലിക്കേഷൻ ഡൊമെയ്‌നുകളും നൽകുന്നു. മേൽനോട്ടമില്ലാത്ത പഠനത്തിലൂടെ പര്യവേക്ഷണ ഡാറ്റാ വിശകലനത്തിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്ന അനുബന്ധ പഠന മേഖലയാണ് ഡാറ്റാ മൈനിംഗ്. മെഷീൻ ലേണിംഗിന്റെ ചില നിർവ്വഹണങ്ങൾ തലച്ചോറിന്റെ പ്രവർത്തനത്തെ അനുകരിക്കുന്ന തരത്തിൽ ഡാറ്റയും ന്യൂറൽ നെറ്റ്‌വർക്കുകളും ഉപയോഗിക്കുന്നു. ബിസിനസ്സ് പ്രശ്‌നങ്ങളിലുടനീളം അത് പ്രയോഗിക്കുമ്പോൾ, മെഷീൻ ലേണിംഗിനെ പ്രവചന വിശകലനം എന്നും വിളിക്കുന്നു.

അമേരിക്കക്കാരനായ കമ്പ്യൂട്ടർ ഗെയിം നിർമാതാവും ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ് വിദഗ്ദ്ധനുമായ ആർതർ സാമുവൽ ആണ് ഈ പേരിന്റെ ഉപജ്ഞാതാവ്. അപ്പോൾ 1959ൽ അദ്ദേഹം ഐബിഎമ്മിൽ എഞ്ചിനിയർ ആയി ജോലി ചെയ്യുകയായിരുന്നു.
ഇതിലൂടെ കമ്പ്യൂട്ടറുകളെ, നേരിട്ടുള്ള നിർദ്ദേശങ്ങൾ വഴിയല്ലാതെ, ഉദാഹരണങ്ങൾ മാത്രം ഉപയോഗിച്ച് പരിശീലിപ്പിക്കുകയും അത് വഴി തീരുമാനങ്ങളിലെത്താൻ പ്രാപ്തിയാക്കുകയും ചെയ്യുന്നു. ഉദാഹരണത്തിന്, ഇമെയിൽ സന്ദേശങ്ങളിൽ നിന്ന് പാഴ്‌മെയിലുകളെയും അല്ലാത്തവയെയും തിരിച്ചറിയാൻ യന്ത്രപഠന സമ്പ്രദായത്തെ പരിശീലിപ്പിക്കുകയാണെങ്കിൽ, പുതുതായി വരുന്ന മെയിൽ സന്ദേശങ്ങളെ പാഴ്‌മെയിലാണോയെന്ന് പരിശോധിച്ച് തരംതിരിക്കാൻ ഇതിലൂടെ സാധിക്കുന്നു.
സാമാന്യവത്കരണത്തെയും പ്രതിപാദനത്തെയും അടിസ്ഥാനമാക്കിയാണ് യന്ത്രപഠന വ്യവസ്ഥിതിയുടെ കാമ്പ് നിലനിൽക്കുന്നത്. ദത്തവിവര മാതൃകാ ചിത്രീകരണവും ഈ മാതൃകകളിൽ നിന്നും വിലയിരുത്തപ്പെട്ട പ്രവൃത്തികളും എല്ലാ യന്ത്രപഠന വ്യവസ്ഥിതികളുടെയും ഭാഗമാണ്. ഇതുവരെ കാണാത്ത ദത്തവിവര മാതൃകയിൽപ്പോലും നടപ്പിലാക്കാമെന്ന സവിശേഷതയാണ് സാമാന്യവത്കരണം; ഇത് സാധ്യമാക്കുന്ന അവസ്ഥകളെ കണക്കുകൂട്ടൽ പഠന സിദ്ധാന്ത ശാഖയുടെ ആണിക്കല്ലായി കണക്കാക്കാം.

## അവലോകനം

മുൻകാലങ്ങളിൽ നന്നായി പ്രവർത്തിച്ച സ്ട്രാറ്റജീസ്, അൽഗരിതങ്ങൾ, അനുമാനങ്ങൾ എന്നിവ ഭാവിയിലും നന്നായി പ്രവർത്തിക്കാൻ സാധ്യതയുണ്ട് എന്നതിന്റെ അടിസ്ഥാനത്തിലാണ് ലേണിംഗ് അൽഗോരിതങ്ങൾ പ്രവർത്തിക്കുന്നത്. "കഴിഞ്ഞ 10,000 ദിവസമായി എല്ലാ ദിവസവും രാവിലെ സൂര്യൻ ഉദിച്ചതിനാൽ, അത് നാളെ രാവിലെയും ഉദിക്കും" എന്നതുപോലുള്ള അനുമാനങ്ങളിലൂടെ വ്യക്തമാകും. "X% കുടുംബങ്ങൾക്ക് വർണ്ണ വകഭേദങ്ങളുള്ള ഭൂമിശാസ്ത്രപരമായി വേറിട്ട സ്പീഷീസുകൾ ഉണ്ട്, അതിനാൽ കണ്ടെത്താത്ത കറുത്ത ഹംസങ്ങൾ(black swans) നിലനിൽക്കാൻ Y% സാധ്യതയുണ്ട്" എന്നതുപോലുള്ള കാര്യങ്ങൾ സൂക്ഷ്മമായി പരിശോധിക്കാം.

മെഷീൻ ലേണിംഗ് പ്രോഗ്രാമുകൾക്ക് വ്യക്തമായി പ്രോഗ്രാം ചെയ്യാതെ തന്നെ ജോലികൾ ചെയ്യാൻ കഴിയും. നൽകിയിരിക്കുന്ന ഡാറ്റയിൽ നിന്ന് കമ്പ്യൂട്ടറുകൾ പഠിക്കുന്നത് അതിൽ ഉൾപ്പെടുന്നു, അങ്ങനെ അവ ചില ജോലികൾ നിർവഹിക്കുന്നു. കമ്പ്യൂട്ടറുകളിൽ നിയുക്തമാക്കിയിട്ടുള്ള ലളിതമായ ജോലികൾക്കായി, പ്രശ്നം പരിഹരിക്കുന്നതിന് ആവശ്യമായ എല്ലാ ഘട്ടങ്ങളും എങ്ങനെ നിർവഹിക്കണമെന്ന് മെഷീനോട് പറയുന്ന അൽഗരിതങ്ങൾ പ്രോഗ്രാം ചെയ്യാൻ സാധിക്കും; കമ്പ്യൂട്ടറിന്റെ ഭാഗത്ത്, പ്രത്യേക പഠനമൊന്നും ആവശ്യമില്ല. കൂടുതൽ നൂതനമായ ജോലികൾക്കായി, ആവശ്യമായ അൽഗോരിതങ്ങൾ സ്വമേധയാ സൃഷ്ടിക്കുന്നത് ഒരു മനുഷ്യന് വെല്ലുവിളിയാകാം. പ്രായോഗികമായി, മനുഷ്യ പ്രോഗ്രാമർമാർ ആവശ്യമായ എല്ലാ ഘട്ടങ്ങളും വ്യക്തമാക്കുന്നതിനുപകരം, മെഷീന്റെ സ്വന്തം അൽഗോരിതം വികസിപ്പിക്കാൻ സഹായിക്കുന്നതിന് ഇത് കൂടുതൽ ഫലപ്രദമാണ്.

## തരംതിരിവുകൾ

യന്ത്രപഠനം പ്രധാനമായും മൂന്ന് തരത്തിലാണുള്ളത്.

* മാർഗദർശിത യന്ത്രപഠനം (സൂപ്പർവൈസ്ട് ലേണിംഗ്)
* സ്വയംചലിത യന്ത്രപഠനം (അൺസൂപ്പർവൈസ്ട് ലേണിംഗ്)
* ചുവടുവപ്പ് യന്ത്രപഠനം (റീഇൻഫോഴ്സ്ട് ലേണിംഗ്)

### മാർഗദർശിത യന്ത്രപഠനം (സൂപ്പർവൈസ്ട് ലേണിംഗ്)

മാർഗദർശിത യന്ത്രപഠനത്തിൽ മുൻപുള്ള ഉദാഹരണങ്ങളിലെ ഇൻപുട്ട് ഔട്പുട്ട് ബന്ധങ്ങൾ യന്ത്രത്തിൻറെ പരിശീലന ഘട്ടത്തിൽ ലഭ്യമായിരിക്കണം. വിവരത്തെ പല വിഭാഗങ്ങളായ് വേർതിരിക്കുന്നത് ഈ തത്ത്വം പ്രയോഗിച്ചുകൊണ്ടാണ്.

### സ്വയംചലിത യന്ത്രപഠനം (അൺസൂപ്പർവൈസ്ട് ലേണിംഗ്)

സ്വയംചലിത യന്ത്രപഠനത്തിലാകട്ടെ ഇൻപുട്ടുകൾ മാത്രം ഉപയോഗിച്ചുകൊണ്ട് ഭാവിയിലെ ഔട്പുട്ട് മൂല്യം അല്ലെങ്കിൽ ഇൻപുട്ട് ഔട്പുട്ട് ബന്ധത്തെക്കുറിച്ച് അറിയാൻ സാധിക്കുന്നു. ക്ലസ്റ്ററിംഗ് ഈ ഗണത്തിൽപ്പെടുന്നു. ഒറ്റ നോട്ടത്തിൽ ഒരു ബന്ധവും തോന്നാൻ ഇടയില്ലാത്ത വിവര മാനദണ്ഡങ്ങളെ ചേർത്ത് സാമ്യതയുള്ളവയെ കൂട്ടങ്ങളായി വകതിരിക്കാൻ ക്ലസ്റ്ററിംഗിലൂടെ കഴിയും.

### ചുവടുവപ്പ് യന്ത്രപഠനം (റീഇൻഫോഴ്സ്ട് ലേണിംഗ്)

ചുവടുവപ്പ് യന്ത്രപഠനം കൃത്രിമ ബുദ്ധിയുടെ ഒരു പ്രമുഖ വശമാണ്. ഓരോ ഘട്ടത്തിലും അപ്പപ്പോഴത്തെ മാനദണ്ഡങ്ങൾ വിലയിരുത്തി അടുത്ത നീക്കം ഏറ്റവും ദക്ഷതയോടെ തിരഞ്ഞെടുക്കാൻ യന്ത്രത്തെ പരിശീലിപ്പിക്കുക എന്നതാണ് ഇതിനു പിന്നിലെ തത്ത്വം. കളികൾ, ഓൺലൈൻ' പരീക്ഷകൾ, സ്വയംചലിത വാഹന നിർമ്മാണം എന്നീ മേഖലകളിൽ ചുവടുവപ്പ് യന്ത്രപഠനത്തിനു ഏറെ പ്രാധാന്യമുണ്ട്.

## ഘടകങ്ങൾ

പ്രധാനമായും ആറ് ഘടകങ്ങളാണ് ഒരു യന്ത്രപഠന സങ്കേതത്തിൽ ഉണ്ടാവുക

* വിവരം (Data)
* കർത്തവ്യം (Task)
* മാതൃക (Model)
* നഷ്ടം (Loss)
* പഠനം (Learning)
* വിലയിരുത്തൽ (Evaluation)

### വിവരം

ഒരു യന്ത്രപഠന മാതൃകയെ പരിശീലിപ്പിക്കാൻ വലിയ അളവിലുള്ള വിവരം (ഡാറ്റ) ആവശ്യമാണ്. വിവരം (ഡാറ്റാ) ലഭ്യമല്ലെങ്കിൽ യന്ത്രപഠനം സാധ്യമല്ല. ഇന്റർനെറ്റിലും മറ്റും ലഭ്യമായ, ദിവസേന വർദ്ധച്ചുകൊണ്ടിരിക്കുന്ന ഡാറ്റയാണ് ഒരർത്ഥത്തിൽ യന്ത്രപഠനം സാധ്യമാക്കുന്നത്.

### കർത്തവ്യം

ധാരാളം വിവരങ്ങൾ (ഡാറ്റ) ലഭ്യമായാൽ അതിൽ നിന്ന് എന്ത് കർത്തവ്യമാണ് നാം നിർവഹിക്കാൻ പോവുന്നത് എന്ന് മുൻകൂട്ടി തീരുമാനിക്കേണ്ടതുണ്ട്. ഉദാഹരണത്തിന് സ്താനാർബുദം ഉണ്ടോ എന്ന് പരിശോധിച്ച ആയിരം രോഗികളുടെ പ്രായം, ട്യൂമറിന്റെ വലിപ്പം അർബുദം ആയിരുന്നോ അല്ലയോ എന്നൊക്കെ ഉള്ള ഡാറ്റ ഉണ്ടെന്ന് കരുതുക. പുതിയ ഒരാളുടെ പ്രായം, ട്യൂമറിന്റെ വലിപ്പം എന്നിവ തന്നാൽ അയാൾക്ക് ക്യാൻസർ ഉണ്ടോ ഇല്ലയോ എന്ന് പ്രവചിക്കുകയാകാം ഒരു യന്ത്രപഠന കർത്തവ്യം (Machine Learning Task).

### മാതൃക

ഇൻപുട്ടിൽ നിന്ന് ഔട്ട്പുട്ടിലേക്കുള്ള ഒരു സങ്കീർണ്ണമായ ഗണിത സമവാക്യം കണ്ടെത്തുകയാണ് യന്ത്രപഠനം ചെയ്യുന്നത്. ഈ ഗണിത സമവാക്യത്തിന്റെ സങ്കീർണ്ണത എത്രത്തോളമാവണം, ഏത് മാതൃകയിലുള്ള ഗണിത സമവാക്യം വേണം എന്നതൊക്കെ ഇവിടെ തീരുമാനിക്കപ്പെടുന്നു. ഉദാഹരണത്തിന് മാതൃ ഒരു രേഖീയസമവാക്യമായിരിക്കണോ (Linear Equation) അതോ ബഹുപദമായിരിക്കണോ (Polynomial) എന്ന് തീരുമാനിക്കപ്പെടുന്നു.

### നഷ്ടം

മാതൃക (ഗണിത സമവാക്യത്തിന്റെ മാതൃക) തീരുമാനിച്ച് കഴിഞ്ഞാൽ സമവാക്യത്തിലെ ഗുണാങ്കങ്ങൾ (Parameters) കണ്ടുപിടിക്കലാണ് അടുത്തത്. ഗുണാങ്കങ്ങൾക്ക് ആകസ്‌മിക (Random) വിലകൾ നൽകി, വിലകൾക്ക് ചെറിയ മാറ്റങ്ങൾ വരുത്തി പഠനത്തിന് ലഭ്യമായ വിവരങ്ങളലൂടെ കൂടതൽ മെച്ചപ്പെട്ട ഗൂണാങ്കങ്ങളിൽ എത്തിച്ചേരുകയാണ് വേണ്ടത്. ഇത് സാധിക്കണമെങ്കിൽ നമുക്ക് എത്തിച്ചേരേണ്ട ഉത്തരവും നിലവിൽ പ്രവചിക്കുന്ന ഉത്തരവും തമ്മിലുള്ള അന്തരം നിർവചിക്കണം. ഈ നിർവചനത്തെയാണ് നഷ്ടം (Loss) എന്ന് വിളിക്കുന്നത്. വർഗ്ഗ ശരാശരി നഷ്ടം ( Mean Squared Error), ക്രോസ്സ് എൻട്രോപ്പി ലോസ്സ് (Cross Entropy Loss) എന്നിവയാണ് പൊതുവായി ഉപയോഗിക്കുന്നത്.

### പഠനം

ലഭ്യമായ വിവരങ്ങളിലൂടെ ഗണിത സമവാക്യത്തിലെ ഗുണാങ്കങ്ങളുടെ പറ്റുന്നതിൽ ഏറ്റവും മെച്ചപ്പെട്ട വിലകൾ കണ്ടെത്തുന്ന ഘട്ടമാണിത്. നഷ്ടം (Loss) പരമാവധി കുറഞ്ഞ ഗുണാങ്ക വിലകൾ വേണം കണ്ടെത്താൻ. ഇതി വിവിധ ഒപ്റ്റിമൈസേഷൻ അൽഗോരിതങ്ങൾ ഉപയോഗിക്കുന്നു. ഗ്രോഡിയന്റേ ഡിസന്റ് എന്ന അൽഗോരിതം ആണ് വ്യാപകമായി ഇപയോഗിക്കുന്നത്.

### വിലയിരുത്തൽ

പഠനത്തിലൂടെ കണ്ടെത്തിയ യന്ത്രപഠന മാതൃകയുടെ കൃത്യതയെ ഒരു പരിശോധനാ വിവരങ്ങൾ(Test Data Set) വെച്ച് വിലയിരുത്തുന്നു. വർഗ്ഗ ശരാശരി നഷ്ടം ( Mean Squared Error), ആക്യുറസി (Accuracy Score) എന്നീ മാനദണ്ഡങ്ങളുപയോഗിച്ചാണ് വിലയിരുത്തൽ നടത്തുന്നത്.

## അവലംബം