ഹലോ സുഹൃത്തുക്കളെ,
ഈ പംക്തിയിൽ ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിനെ(artificial intelligence-നെ)
കുറിച്ച് നമ്മുക്ക് കുറച്ച് കാര്യങ്ങൾ പഠിക്കാം .
പ്രാരംഭത്തിൽ നിന്ന് തുടങ്ങാം .
ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence) എന്താണെന്ന് മനസിലാക്കാൻ ആദ്യം നമുക്ക് ശ്രമിക്കാം.
എന്റെ സ്വന്തം നിർവചനത്തിൽ, ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence)
ബുദ്ധിമുട്ടുള്ള പ്രോഗ്രാമുകൾ(programs) എഴുതുന്നതിനാണ്.
ബുദ്ധിമുട്ടുള്ള പ്രോഗ്രാമുകൾ(programs) ? അതെ, എന്ന് നിങ്ങൾ വിചാരിച്ചേക്കാം.
വളരെ ബുദ്ധിമുട്ടുള്ള പ്രോഗ്രാം(program) എന്നതിനർത്ഥം
വളരെ, വളരെ അവ്യക്തമായ,
മികച്ച ചാതുര്യം ഉള്ള ആളുകൾക്ക് മാത്രം എഴുതാൻ കഴിയുന്ന ഒന്ന്,
ഏറ്റവും ബുദ്ധിമാനായ ആളുകൾക്ക്
മനസിലാക്കാൻ കഴിയുന്ന ഒന്ന് എന്നതല്ല . മറിച്ച്
ബുദ്ധിമുട്ടുള്ള എന്നതിന്റെ അർത്ഥം,
ഈ ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിന്റെ(artificial intelligence-ന്റെ) ഭാഷയിൽ,
കമ്പ്യൂട്ടറുകൾക്ക്(computer-കൾക്ക്) ചെയ്യാൻ കഴിയാത്ത,
മനുഷ്യർക്ക് വളരെ എളുപ്പത്തിൽ ചെയ്യാൻ കഴിയുന്ന ഒന്നാണ്.
ഉദാഹരണത്തിന്, എന്റെ നാല് വയസുള്ള മകള്‍ ഒരു കാർ കാണുമ്പോള്‍
അത് പുതിയ കാര്‍ ആണെന്ന് മനസ്സില്ലാക്കുന്നു .
ഉദാഹരണത്തിന്, അവൾ ഒരു മാരുതി വാന്‍ കാണുമ്പോള്‍ അത്,
സെഡാൻ എന്നു മനസ്സിലാക്കുകയും,
മാരുതി 800 കാർ കടന്നുപോകുമ്പോള്‍ ,
അത് വാനിൽ നിന്നു വളരെ വ്യത്യസ്തമാണെങ്കിലും,
അത് ഒരു കാറാണെന്ന് അവൾ തിരിച്ചറിയുകയും ചെയ്യും.
ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാമിന്(computer program-ന്) അത് ചെയ്യാൻ കഴിയുമോ?
ഉത്തരം കേള്‍ക്കാന്‍ ആഗ്രഹിക്കുന്ന ഒരു ചോദ്യമാണിത്.
ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence) കൊണ്ട് ഉദ്ദേശിക്കുന്നത് അതാണ്,
ആളുകൾ ചില സമയങ്ങളിൽ ചെയ്യുന്ന മികച്ച കാര്യങ്ങൾ , കമ്പ്യൂട്ടർ(computer) കൊണ്ട് എങ്ങനെ സാധിക്കാം .
നമുക്ക് ഒരു കാര്യം കൂടി മനസ്സില്ലാകേണ്ടതുണ്ട് .
ഉദാഹരണത്തിന്, വർഷങ്ങൾക്കുശേഷം നിങ്ങൾ ഒരു സുഹൃത്തിനെ കണ്ടുമുട്ടുകയും
സുഹൃത്തിന്റെ ശരീരം മൊത്തത്തിൽ എല്ലാ തലങ്ങളിലും വികസിച്ചിട്ടുട്ടെങ്കിലും,
നിങ്ങൾക്ക് ഇപ്പോഴും അവനെ തിരിച്ചറിയാൻ കഴിയും.
നിങ്ങൾ അത് എങ്ങനെ ചെയ്തു ? നിങ്ങൾ എപ്പോഴെങ്കിലും അതിനെക്കുറിച്ച് ചിന്തിച്ചിട്ടുണ്ടോ?
നിങ്ങൾ ചെയ്യുന്നതെന്താണെന്ന് നിങ്ങൾ സ്വയം ചോദിച്ചേക്കാം…
നിങ്ങൾ ഇത് എങ്ങനെ ചെയ്തുവെന്ന് ശരിക്കും അറിയില്ല അല്ലേ ?
ഒരു കമ്പ്യൂട്ടർ(computer) ഇത് ചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ,
അത് ചെയ്യുന്നതിന് നിങ്ങൾ എങ്ങനെ ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാം(computer program) എഴുതും?
അതാണ് ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence) .
ഈ പംക്തിയിൽ ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിനെ(artificial intelligence-നെ) കുറിച്ച് കുറച്ച്
കാര്യങ്ങൾ പഠിക്കാം .
വാസ്തവത്തിൽ, ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിന്റെ(artificial intelligence-ന്റെ) ആമുഖത്തോടെ
ആരംഭിക്കാം . ഈ പ്രത്യേക പംക്തിയിൽ ,
ഇത് എന്തിനുവേണ്ടിയാണെന്നും
അത് ഇതുവരെ നേടിയതെന്താണെന്നും നമ്മുക്ക് കാണാം .
അതിനാൽ, ഇതിനകം സൂചിപ്പിച്ച ചില പ്രശ്നങ്ങളിൽ
നിന്ന് നമുക്ക് ആരംഭിക്കാം .
പ്രത്യേക ശ്രദ്ധയോടെ അവയെ പ്രശ്നങ്ങൾ എന്ന് വിളിക്കുന്നു.
ഈ പ്രശ്‌നങ്ങൾ പരിഹരിക്കാൻ കമ്പ്യൂട്ടറുകൾക്ക്(computer-കൾക്ക്) എന്തുകൊണ്ടാണ് ബുദ്ധിമുട്ടായിരിക്കുന്നത് ?
ഈ പ്രശ്‌നങ്ങൾ പരിഹരിക്കുന്നതിനായി കമ്പ്യൂട്ടറുകൾ(computer) രൂപകൽപ്പന ചെയ്‌തിട്ടില്ലെന്ന്
ഞാൻ ആവർത്തിക്കട്ടെ.
വോൺ ന്യൂമാൻ ആർക്കിടെക്ചർ(Von Neumann architecture) എന്ന പേരിലാണ് ഇവ രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് ,
അവിടെ പ്രോസസ്സറുകളും(processor-കളും) വളരെ വേഗതയുള്ള പ്രോസസ്സറുകളും(processor-കളും) ഉണ്ട്,
അവ തുടർച്ചയായ രീതിയിൽ കാര്യങ്ങൾ നിർവ്വഹിക്കുന്നു.
അതിൽ നിന്ന് വ്യത്യസ്തമായി മനുഷ്യ മസ്തിഷ്കത്തിൽ ന്യൂറോണുകൾ(neuron-കൾ) അടങ്ങിയിരിക്കുന്നു,
ഏകദേശം നൂറു ബിലിയന്‍ ന്യൂറോണുകൾ(neuron-കൾ) ഉണ്ട്,
പത്ത് മുതൽ പതിനാല് വരെ ഇന്റർകണക്ഷനുകൾ(interconnections) ,
ഡൈനാമിക് ഇന്റർകണക്ഷനുകൾ(interconnections) .
അവ സാധാരണയായി കാഴ്ചയുമായും, ശബ്ദവുമായി ബന്ധപ്പെട്ടതും
വളരെ സമാന്തര പ്രവര്‍ത്തിത ക്രമീകരണം(പാരലൽ പ്രോസസ്സിംഗ്) ആവശ്യമുള്ളതും ആണ് .
ഇത്തരം കാര്യങ്ങൾ തലച്ചോറിന് നിയന്ത്രിക്കാൻ കഴിയും.
നേരെമറിച്ച് കമ്പ്യൂട്ടർ(Computer) നടപടികൾ എല്ലാം അങ്ങനെ നല്ലതല്ല .
അവ ഇത്തരം ഉയർന്ന പാരലൽ പ്രോസസ്സിംഗിന്(parallel processing-ന്) ഉചിതം അല്ല.
കമ്പ്യൂട്ടറുകളെക്കാൾ(computers-കളെക്കാൾ) വളരെ വ്യത്യസ്തമായ രൂപത്തിലാണ് മനുഷ്യ മസ്തിഷ്കം(Human brain) വിവരങ്ങൾ സംഭരിക്കുന്നത്.
ഉദാഹരണത്തിന്, ഞാൻ നിങ്ങളോട്
70 വയസ് പ്രായമുള്ള ഒരു ഹിന്ദി സിനിമാ നടനും
വെളുത്ത താടിയും കണ്ണട ധരിച്ച ആള്‍ ആരാണെന്ന് ചോദിച്ചാൽ
നിങ്ങൾ ഉടനെ അമിതാഭ് ബച്ചൻ എന്ന് നടനെ ഓർമ്മിക്കുന്നു.
ഈ പ്രക്രിയ ചെയ്യാൻ കഴിയുന്ന ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാം(computer program) എഴുതാമോ?
ആളുകൾ ഇത് അനുകരിക്കാൻ ശ്രമിച്ചു, പക്ഷേ ഇത് വളരെ കഠിനമാണ്.
അല്ലെങ്കിൽ ഉദാഹരണത്തിന്, ഞാൻ കുറച്ച് സംഗീതോപകരണം വായിക്കുന്നു,
അതിനുശേഷം നിങ്ങൾ അത് ആവാറാഹൂൺ എന്ന പാട്ട് അല്ലെങ്കിൽ വേറെ എന്തോ ആണെന്ന് മനസ്സിലാക്കുന്നു.
ശരി… അത് നിങ്ങൾ എങ്ങനെ ചെയ്തു?
നിങ്ങൾക്കെങ്ങനെ… നോക്കൂ, നമ്മുക്ക് പാട്ടുകളുടെ ഒരു വലിയ ഡാറ്റാബേസ്(database) ഉണ്ട്,
കൂടാതെ പാട്ടുകളുമായി ബന്ധപ്പെട്ട മറ്റ് ധാരാളം വിവരങ്ങളും നമ്മളുടെ പക്കലുണ്ട്,
മാത്രമല്ല സംഗീതത്തിന്റെ ചില ഭാഗങ്ങൾ പാട്ടിന്റെ ചില ഭാഗങ്ങൾ നമ്മൾ വീണ്ടും കേൾക്കുമ്പോള്‍ …
ഓർമ്മയിൽ നിന്നു അവ പുറത്തു വരുന്നു .
നമ്മൾ ഇത് എങ്ങനെ ചെയ്യുന്നു?
ശരിക്ക് ചിന്തിച്ചാൽ ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence) എന്നാൽ മനുഷ്യന്റെ മസ്തിഷ്ക പ്രവർത്തനത്തെ അനുകരിക്കാൻ കഴിയുന്ന പ്രോഗ്രാമുകൾ(programs)
എഴുതുക എന്നതാണ്… ഇത് പ്രോ… പ്രോഗ്രാം(program) പരിഹരിക്കാൻ കഴിയും,
ഇത് മനുഷ്യ മസ്തിഷ്കത്തിന് ചെയ്യാൻ കഴിയുന്ന പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ കഴിയും .
നമുക്ക് ഇതിന്റെ ചില നിർവചനങ്ങൾ നോക്കാം.
എലൈൻ റിച്ച് അവളുടെ ഒരു ജനപ്രിയ പുസ്തകത്തിൽ പറയുന്നു,
ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസ്(artificial intelligence) എഐ(AI) ആളുകൾ ഇപ്പോൾ ചെയ്യുന്ന മെച്ചപ്പെട്ട പ്രോഗ്രാമുകളെ(programs-കളെ) കുറിച്ചുള്ള പഠനമാണ് .
വേറൊരു രചയിതാവ് ഇങ്ങനെ പറയുന്നു:
എഐ(AI) മനുഷ്യരെപ്പോലെ മനസിലാക്കാനും
നിരീക്ഷിക്കാനും പ്രവചിക്കാനും കൃത്രിമം കാണിക്കാനും കഴിയുന്ന
പ്രവര്‍ത്തങ്ങളുടെയോ നിർമ്മാണ അസ്തിത്വത്തിന്റെയോ പഠനമാണ് .
എന്തുകൊണ്ട്? നിങ്ങൾ ഒരു പുസ്തകം, പുതിയ പുസ്തകം വായിച്ചു പുതിയ അര്ത്ഥം കണ്ടെത്തുന്നു .
ഒരു വാക്കിന് നൂറു അര്ത്ഥം ഉണ്ടെങ്കില്ലും,
ഒരു അര്‍ത്ഥവും നൂറു ശതമാനം ശരിയല്ല.
കാരണം ബുദ്ധിയെ നിർവചിക്കുന്നത് വളരെ കഠിനവും
ആർട്ടിഫിഷ്യൽ ഇന്റലിജൻസിനെ(artificial intelligence-നെ) നിർവചിക്കുന്നതു ഒരു പടി കൂടി
കഠിനവുമാണ്.
അതിനാൽ , ഇപ്പോൾ നിർവചനം പൂര്‍ണ്ണമാക്കാൻ ശ്രമിക്കുന്നില്ല .
നമ്മള്‍ എന്താണ് ഉദ്ദേശിക്കുന്നതെന്ന് മനസിലാക്കാൻ ശ്രമിക്കാം.
ഒരിക്കൽ കൂടി , ഞാൻ സംസാരിക്കാൻ പോകുന്നുവെന്ന് ... ബുദ്ധിമുട്ടുള്ള പ്രവര്‍ത്തനത്തെ കുറിച്ചാണ്
അല്ലാതെ, ബുദ്ധിപരമായ പ്രവര്‍ത്തനത്തെ കുറിച്ചല്ല .
ഉദാഹരണത്തിന്, ഒരു റോബോട്ട്(robot) ബ്രെത്ത്(breth) ചെയ്യുവാന്‍ അനുവദിക്കുന്ന ഒരു പ്രോഗ്രാം
എഴുതാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ,
ഇത് ഒരു ബുദ്ധിപരമായ കാര്യമാണെന്ന് നിങ്ങൾ കരുതുന്നുണ്ടോ?
ഉണ്ടെന്ന് തോന്നുന്നില്ല.
റോബോട്ട്(robot) ടൂത്ത് ബ്രഷ് അമിതമായി അമർത്തില്ലെന്ന്
എങ്ങനെ ഉറപ്പാക്കാമെന്ന് നിങ്ങൾക്കറിയില്ലെങ്കിൽ,
അത് തകരും
അല്ലെങ്കിൽ ഉദാഹരണത്തിന്, ഒരു ചോക്ക് സ്റ്റിക്ക് എടുക്കുന്നത് .
ഒരു പ്രോഗ്രാമർക്ക്(programmer) റോബോട്ടുകൾ(robots) ഉപയോഗിച്ച് ഇത്തരം കാര്യങ്ങള്‍ പ്രോഗ്രാം(program) ചെയ്യുന്നത് വളരെ ബുദ്ധിമുട്ടാണ്.
ടേബിൾ ടെന്നീസ് കളിക്കുന്ന ഒരു റോബോട്ടിനെ(robot-നെ) കുറിച്ച് ചിന്തിക്കുക.
നിങ്ങൾക്ക് ഒരു പ്രോഗ്രാം(program) എഴുതാമോ?
വാസ്തവത്തിൽ, ആരും ഇതുവരെ ഇതിൽ വിജയിച്ചിട്ടില്ല. എന്തുകൊണ്ട്?
കാരണം ഇത് വളരെ കഠിനമാണ്.
എന്തുകൊണ്ടാണിത് വളരെ ബുദ്ധിമുട്ട് തോന്നുന്നത് ? എന്തുകൊണ്ടാണ് ഇത് വളരെ ബുദ്ധിമുട്ടുള്ളതെന്ന് നമുക്ക് മനസിലാക്കാൻ ശ്രമിക്കാം.
വാസ്തവത്തിൽ, AD… AI എന്നത് മനുഷ്യനെ അനുകരിക്കാൻ ഇഷ്ടപ്പെടുന്ന ഒരു പ്രക്രിയ ആയി ,
കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ(computer programs) വഴി ബുദ്ധിപരമായി പ്രശ്ന നിര്‍ണയം
രോഗനിർണയം അല്ലെങ്കിൽ ടേബിൾ ടെന്നീസ് കളിക്കുക,
അല്ലെങ്കിൽ ചെസ്സ് കളിക്കുക തുടങ്ങിയ കാര്യങ്ങള്‍
ചെയ്യാൻ കഴിയുമെന്ന് ഉറപ്പുവരുത്തുക.
ചില ലക്ഷ്യങ്ങൾ, അതെ, നേടി, ചില ലക്ഷ്യങ്ങൾ ഇല്ല, എന്തുകൊണ്ട്?
ശരി.
ഇത് കമ്പ്യൂട്ടറുകൾ(computers) മനുഷ്യ മസ്തിഷ്കത്തേക്കാൾ വളരെ വ്യത്യസ്തമായി
പ്രവര്‍ത്തിക്കുന്നതിനാലാണിത്.
മനുഷ്യ മസ്തിഷ്കം അനലോഗ് സിഗ്നലുകൾ(analog signals) ഉപയോഗിച്ച് പ്രവര്‍ത്തിക്കാൻ രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു.
മനുഷ്യ മസ്തിഷ്കം കൃത്യമല്ലാത്തതും തെറ്റായതും അപൂർണ്ണവുമായ വിവരങ്ങളുമായി പ്രവർത്തിക്കാൻ
രൂപകൽപ്പന ചെയ്തിട്ടുള്ളതാണ്.
കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ(Computer programs) അങ്ങനെ അല്ല.
കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ ഒരു മനുഷ്യന് സമാനമായ എന്തെങ്കിലും ചെയ്യാൻ നമ്മള്‍ ആഗ്രഹിക്കുന്നുവെങ്കിൽ,
നമ്മള്‍ കാര്യങ്ങൾ പഠിക്കേണ്ടതുണ്ട്, അതായത് എഐ ടെക്നിക്കുകൾ(AI techniques) എന്ന് വിളിക്കുന്ന വിദ്യകൾ.
കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ(computer programs) മനുഷ്യനെപ്പോലെ പ്രവർത്തിക്കാൻ സഹായിക്കുന്ന
സാങ്കേതികതകളാണ് എഐ ടെക്നിക്കുകൾ(AI techniques) .
ശരി, അടുത്തതായി എI ടെക്നിക്സിനെ(AI techniques-നെ) കുറിച്ച് പഠിക്കാം.
എന്നാൽ അതിനുമുമ്പ്, എന്തുകൊണ്ടാണ് നമ്മള്‍ എI(AI) പഠിക്കേണ്ടതെന്ന് എന്നു നോക്കാം .
ഇത് അറുപതുകളിൽ ആരംഭിച്ചു, ഇത് ആളുകൾ ഉറപ്പുവരുത്തുന്നതിനായി രൂപകൽപ്പന ചെയ്തിട്ടുള്ളതാണ്…
ക്ഷമിക്കണം, കമ്പ്യൂട്ടറുകൾക്ക്(computers-കൾക്ക്) മനുഷ്യർക്ക് ചെയ്യാൻ കഴിയുന്ന
എന്തെങ്കിലും ചെയ്യാൻ കഴിയുമെന്ന് ഉറപ്പാക്കാനാണ് ഇത് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്.
പ്രാരംഭത്തിൽ, എല്ലാവര്‍ക്കും വളരെയധികം ഉത്സാഹം ആയിരുന്നു .
ആളുകൾ പ്രോഗ്രാമുകൾ(programs) എഴുതി,
നടപ്പിലാക്കുന്നു, ഒപ്പം കുറച്ച് വിജയങ്ങളും ഉണ്ടായിരുന്നു.
എന്നാൽ 50 ഓളം വർഷങ്ങൾ നീണ്ട
ഒരു നീണ്ട യാത്രയിൽ അത് ചെയ്യേണ്ടത് ചെയ്തു തീർക്കാൻ‌ അതിന് കഴിഞ്ഞില്ല.
താഴെ ചർച്ച ചെയ്യുവാന്‍ പോകാൻ‌ .
പോകുന്ന പ്രശ്‌നങ്ങൾ‌ കാരണം ഇതിന് നിർ‌ദ്ദേശിച്ചതെന്തും ചെയ്യാൻ‌ കഴിഞ്ഞില്ല
എന്നാൽ അത് അങ്ങനെ, പൂർണ്ണമായും പരാജയവും അല്ലായിരുന്നു .
നമുക്ക് യഥാർത്ഥത്തിൽ . മനുഷ്യനെ പോലെ ചെയ്യുവാന്‍ കഴിയുന്ന പ്രോഗ്രാമുകൾ(programs)
എഴുതാൻ കഴിയുന്നില്ലെങ്കിലും… പക്ഷേ മനുഷ്യനെപ്പോലെ തന്നെ,
ഒപ്പ് തിരിച്ചറിയാൻ കഴിയുന്ന പ്രോഗ്രാമുകൾ(programs) ഉണ്ട് ,
ഫോട്ടോകൾ/ചിത്രം തിരിച്ചറിയാൻ കഴിയുന്ന പ്രോഗ്രാമുകൾ(programs) ഉണ്ട് , മനുഷ്യരുമായി
സംസാരിക്കാൻ അർദ്ധ മനുഷ്യരീതിയിൽ കഴിയുന്ന പ്രോഗ്രാമുകളും(programs)
ഉണ്ട് .
അതിനാൽ, ഒരു പരിധി വരെ നമ്മള്‍ വിജയിച്ചു,
വാസ്തവത്തിൽ വളരെ പ്രധാനപ്പെട്ട ചില പ്രശ്നങ്ങൾ പരിഹരിക്കപ്പെട്ടു,
അത് നമ്മള്‍ കാണുന്നു…
നമ്മുക്ക് എഐ(AI) യുടെ യാത്രയെക്കുറിച്ച് ചർച്ച ചെയ്യുമ്പോളും കാണാം.
പ്രോഗ്രാമുകളിൽ നടപ്പിലാക്കാൻ ആഗ്രഹിക്കുന്ന എഐ ടെക്നിക്സുകൾ(AI techniques)
നിരവധി ഉണ്ടെന്ന് പറഞ്ഞു.
അവ എന്താകുന്നു? നമുക്ക് നോക്കാം …
ആദ്യം ഒരു എഐ പ്രോഗ്രാം(AI program) എഴുതാൻ ശ്രമിക്കുമ്പോഴെല്ലാം
അൽഗോരിതം(algorithm) ഇല്ല. ഉദാഹരണത്തിന്,
ഞാൻ ചോദിച്ചാൽ, എങ്ങനെ നിങ്ങള്‍ നിങ്ങളുടെ സുഹൃത്തിനെ ഓര്‍മ്മിച്ചു ?
നിങ്ങള്ക്ക് എങ്ങനെ അത് അറിയാം?
നിങ്ങൾക്ക് ഉത്തരം നൽകാൻ കഴിയില്ല. കാരണം അൽഗോരിതം(algorithm) ഇല്ല.
ശരി നിങ്ങൾ ചെസ്സ് കളിക്കുകയും നിങ്ങൾ എന്തെങ്കിലും ചെയ്യുകയും വിജയിക്കുകയും ചെയ്താൽ,
നിങ്ങൾ പിന്തുടരുന്ന അൽഗോരിതം(algorithm) എന്താണെന്ന് ഞാൻ നിങ്ങളോട് ചോദിച്ചാൽ?
നിങ്ങൾ അത് കണ്ടെത്തുകയില്ല.
എഐ പ്രോഗ്രാമുകൾക്ക്(AI program-കൾക്ക്) അൽഗോരിതം(algorithms) ഇല്ല.
അൽഗോരിതം(algorithm) ഇല്ലാത്തപ്പോൾ അതിനുള്ള വഴി കണ്ടെത്തുക എന്നതാണ്
ആദ്യത്തെ സാങ്കേതികത, അതായത് എI ടെക്നിക്(AI technique) .
നിങ്ങളുടെ പ്രോഗ്രാമിന്(program-ന്) അത്തരത്തിലുള്ള എന്തെങ്കിലും ചെയ്യാൻ പ്രാപ്തിയുണ്ടെങ്കിൽ,
അതെ, പ്രോഗ്രാമിന്(program-ന്) ഒരു ... ഒരു എI ടെക്നിക്(AI technique) പൂര്‍ത്തിയാക്കാന്‍ കഴിയും .
രണ്ടാമത്തേത്.
രണ്ടാമത്തെ പ്രശ്നം, ചിലപ്പോൾ അൽ‌ഗോരിതം(algorithm) ഉണ്ട്,
പക്ഷേ അൽ‌ഗോരിതം
തത്സമയം പൂർ‌ത്തിയാക്കാൻ‌ കഴിയാത്ത നിരവധി
കോമ്പിനേഷനുകളും(combinations-കളും) പെർ‌മ്യൂട്ടേഷനുകളും(permutations-കളും)
അല്‍ഗോരിതം(algorithm) ഒത്തു ചേര്‍ക്കേണ്ടതുണ്ട്.
ഉദാഹരണത്തിന്, ഒരു ട്രാവൽ സെയിൽസ്മാൻ പ്രശ്നം /പര്യടന വില്‍പ്പനക്കാരന്‍ പ്രശ്നം .
ഒരു 25 സിറ്റികൾക്കിടയിലെ ഏറ്റവും
ഹ്രസ്വമായ പാത കണ്ടെത്തണമെങ്കിൽ,
ഒരു യാത്ര സെയിൽ‌സ്മാൻ‌ ചുറ്റും നീങ്ങുകയും ആ 25 നഗരങ്ങൾ‌ക്കിടയിലുള്ള
ഏറ്റവും ചെറിയ പാത കണ്ടെത്തുകയും വേണം.
നിങ്ങൾ പരമ്പരാഗത കമ്പ്യൂട്ടിംഗ് ടെക്നിക്(computing technique) ഉപയോഗിക്കുകയാണെങ്കിൽ,
വില്‍പ്പനക്കാരന്റെ ജീവിതകാലത്ത് പ്രോഗ്രാം(program) പൂർത്തിയാക്കാൻ കഴിയില്ല .
അതിനാൽ ഇത് വളരെ ബുദ്ധിമുട്ടുള്ള കാര്യമാണ്,
പെർ‌മ്യൂട്ടേഷനുകളും കോമ്പിനേഷനുകളും(combinations and permutations-കളും) ,
അൽഗോരിതം(algorithm) വളരെ ലളിതമാണ്,
ഏറ്റവും ഹ്രസ്വ പാത കണ്ടെത്തൽ ,
നിങ്ങൾക്ക് അതിനായി ഒരു അൽഗോരിതം(algorithm) എഴുതാം.
എന്നാൽ അൽ‌ഗോരിതം(algorithm) തത്സമയം, തത്സമയം പൂർ‌ത്തിയാക്കാൻ‌ കഴിയില്ല .
അതിനാൽ അതൊരു പ്രശ്‌നമാണ്.
ഒരു കാര്യം കൂടി. ഞാൻ ചെസ്സിനെക്കുറിച്ച് സംസാരിച്ചു
നിങ്ങൾ ചെസ്സ് കളിക്കുകയാണെങ്കിൽ ,
കളിയുടെ അവസാനം വരെ സാധ്യമായ എല്ലാ പണയ നീക്കങ്ങളും
ഞാൻ കണ്ടെത്തേണ്ടതുണ്ട് എന്ന് നിങ്ങൾ കരുതുകയാണെങ്കിൽ,
കൂടാതെ നിങ്ങൾ ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാം(computer program) അതിനു വേണ്ടി എഴുതുകയാണെങ്കിൽ ,
നിങ്ങൾ ഏറ്റവും മികച്ച മൈക്രോപ്രൊസസ്സർ(microprocessor) ,
മികച്ച സൂപ്പർ കമ്പ്യൂട്ടർ(supercomputer) എടുത്ത്
തുടക്കം മുതൽ അവസാനം വരെ സാധ്യമായ
എല്ലാ നീക്കങ്ങളും കണക്കാക്കാൻ സൂപ്പർ കമ്പ്യൂട്ടറിന്(supercomputer-ന്) പ്രോഗ്രാം(program) നൽകിയാൽ,
സൂപ്പർ കമ്പ്യൂട്ടറിന്(supercomputer-ന്) തന്നെ അത് ചെയ്യാൻ കഴിയില്ല,
ഒരുപക്ഷേ നൂറു അഞ്ഞൂറ് വർഷം വരെ
അതിനാൽ അതാണ് പ്രശ്നം.
ക്രമമാറ്റങ്ങളുടെ(പെർ‌മ്യൂട്ടേഷനുകളുടെ) എണ്ണം കൂടുതലാണ്.
അതിനാൽ എഐ ടെക്നികിനെ(AI technique-നെ) കുറിച്ചുള്ള രണ്ടാമത്തെ കാര്യം ഈ കോമ്പിനേഷൻ(combination) കൈകാര്യം ചെയ്യാൻ കഴിയുന്ന എന്തെങ്കിലും കണ്ടെത്തുക എന്നതാണ്,
അതായത് ഏകീകരണവും ക്രമ മാറ്റവും/ കോം… കോമ്പി… കോമ്പിനേഷനുകളും പെർ‌മ്യൂട്ടേഷനുകളും(combinations and permutations-കളും) .
ഇനി, മൂന്നാമത്തെ പ്രശനം ഇതാണ് മിക്ക കേസുകളിലും,
മികച്ച ഉത്തരങ്ങൾ ശരിക്കും ആവശ്യമില്ല.
ഉദാഹരണത്തിന്, നമ്മള്‍ പുറത്തുപോകുമ്പോള്‍ കാർ എവിടെയെങ്കിലും നിര്‍ത്തുകയാണെങ്കിൽ,
മികച്ച പാർക്കിംഗ് സ്ഥലത്തിനായി നമ്മള്‍ നോക്കാൻ പോകുന്നില്ല,
മറിച്ച് കാർ പാർക്ക് ചെയ്യുന്നതിന് മതിയായ ഒരു സ്ഥലം നാം കണ്ടെത്തും,
കാര്‍ അവിടെ ഇടുകയും ചെയ്യും .
നമ്മുക്ക് ഒരു റസ്റ്റോറന്റിലേക്ക്(restaurant-ലേക്ക്) പോകണമെങ്കിൽ,
നഗരത്തിലെ മികച്ച റെസ്റ്റോറന്റ്(restaurant) നാം കണ്ടെത്തുകയില്ല.
മറിച്ച് നമ്മുടെ ആവശ്യങ്ങൾ നിറവേറ്റുന്ന ഒരു റെസ്റ്റോറന്റ്(restaurant) ലഭിച്ചാൽ മതി .
അതുപോലെ ഒരു സിനിമക്ക് പോകുകയാണെങ്കിൽ,
നഗരത്തിലെ ഏറ്റവും മികച്ച സിനിമയ്‌ക്കോ
മികച്ച നടനോ വേണ്ടി നാം പോകാറില്ല .
അത് അന്വേഷിക്കുന്നുമില്ല .
നമ്മളിൽ ഭൂരിഭാഗവും മികച്ച പരിഹാരങ്ങൾ തേടുന്നില്ല.
നമ്മിൽ മിക്കവരും നമ്മുടെ മനസ്സിലുള്ള
ചില മാനദണ്ഡങ്ങൾ പാലിക്കുന്ന പരിഹാരങ്ങൾ തേടുന്നു.
അതാണ് എഐ ടെക്നികിന്റെ(AI technique-ന്റെ) മറ്റൊരു സ്വഭാവം.
ഇത് ചെയ്യാൻ കഴിയുന്ന എന്തെങ്കിലും നിങ്ങൾക്ക് ഉണ്ടെങ്കിൽ ,
അത് വളരെ നല്ലത് .
ഇനി ഒരു കാര്യം കൂടി.
കോൺവെൻഷനൽ പ്രോഗ്രാമുകൾക്ക്(conventional programs-ന്) ലേണിംഗ് കോമ്പോണന്റുകൾ(learning component-കൾ) ഇല്ല.
മനുഷ്യർ എങ്ങനെയാണ് കാര്യങ്ങൾ ചെയ്യുന്നത്? അവർ എങ്ങനെ കാര്യങ്ങൾ ചെയ്യാന്‍ പഠിക്കുന്നു?
അവർ അതിൽ പ്രവർത്തിക്കുകയും
പരിശീലനം നടത്തുകയും മികച്ചവരാകുകയും ചെയ്യുന്നതിലൂടെ കാര്യങ്ങൾ ചെയ്യാൻ പഠിക്കുന്നു.
അത് പോലെ ചെയ്യാൻ കഴിയുന്ന കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ(computer programs-കൾ) ഉണ്ടോ?
സ്വന്തമായി പഠിക്കാൻ കഴിയുന്ന കമ്പ്യൂട്ടർ പ്രോഗ്രാം(computer program) ഉണ്ടെങ്കിൽ
പ്രോഗ്രാമർമാർ(programmers) ആവശ്യമില്ല.
ഉദാഹരണത്തിന്, നിങ്ങൾ ഒരു അക്കൗണ്ടന്റിന്(accountant-ന്) ഒരു പ്രോഗ്രാം(program) നൽകുന്നു,
അക്കൗണ്ടന്റ്(accountant) തന്റെ ജോലി ചെയ്യുന്നു, അക്കൗണ്ടുകൾ(accounts) എങ്ങനെ കണക്കാക്കാമെന്ന് പ്രോഗ്രാം മനസിലാക്കുന്നു.
അങ്ങനെ. നമ്മുക്ക് പ്രോഗ്രാമർമാരെ(programmers-നെ) ആവശ്യമില്ല,
പക്ഷേ അത് അസാധ്യമാണ്. നമ്മളുടെ ലേണിംഗ് കോമ്പോണന്റ്(learning component)
വളരെ വളരെ ബുദ്ധിമുട്ടുള്ള കാര്യമാണ് .
മറ്റൊന്ന് വളരെ ശരി ശരി ശരി ഒരു പ്രധാന കാര്യം.
ഞങ്ങൾ പിന്നീട് പഠിക്കാൻ പോകുന്നു
അത് ഉറപ്പാക്കാനുള്ള ചില മാർഗ്ഗങ്ങൾ ഞങ്ങൾ കാണും കമ്പ്യൂട്ടർ പ്രോഗ്രാം പഠിക്കുന്നു.
ശരി ഒരു പ്രധാന കാര്യം കൂടി.
ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാം(computer program) നൽകിയാൽ,
അത് ഒരു എഐ പ്രോഗ്രാം(AI program) ആണ്,
അത് ഒരു ഡോക്ടറെ അനുകരിക്കാൻ കഴിയും,
മാത്രമല്ല ഇത് നിങ്ങളുടെ ലക്ഷണങ്ങളെ നോക്കുകയും
നിങ്ങൾക്ക് കാൻസർ(cancer) ഉണ്ടെന്ന് നിർണ്ണയിക്കുകയും ചെയ്യുന്നു. പക്ഷേ നിങ്ങൾ വിശ്വസിക്കുമോ?
നിങ്ങൾ ചെയ്യില്ല. എന്തുകൊണ്ട്?
നിങ്ങൾക്കു മതിയായ തെളിവുകൾ
നൽകിയില്ലെങ്കിൽ ആരും ഇത് വിശ്വസിക്കില്ലെന്ന് വ്യക്തം.
ഇതിനെ വിശദീകരണം എന്ന് വിളിക്കുന്നു.
വേറെ ഒരു ഉദാഹരണം നൽകാം, നമുക്ക് ക്യാൻസറിനെക്കുറിച്ച് വേണ്ട ,
പക്ഷേ ഒരു ഡോക്ടറുടെ അടുത്തേക്ക് പോകുമ്പോള്‍ നിങ്ങൾക്ക് മലേറിയ ഉണ്ടെന്ന് പറയുകയാണെങ്കിൽ,
എന്തുകൊണ്ടെന്ന് നമ്മള്‍ ചോദിക്കും.
ഇതര ദിവസങ്ങളിൽ നിങ്ങൾക്ക് ജലദോഷം ഉണ്ടെന്ന് അദ്ദേഹം പറയും, നിങ്ങൾക്ക് പനി ഉണ്ട്,
നിങ്ങൾക്ക് ബലഹീനത തോന്നുന്നു, മിക്കവാറും നിങ്ങളുടെ രക്ത റിപ്പോർട്ട് അങ്ങനെ ആകും .
അപ്പോൾ അത് നമ്മള്‍ സ്വീകരിക്കും.
ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാമിന്(computer program-ന്) അതിന്റെ യുക്തി വിശദീകരിക്കാമോ?
ഒരു കമ്പ്യൂട്ടർ പ്രോഗ്രാമിന്(computer program-ന്) അതിന്റെ ഫലങ്ങൾ വിശദീകരിക്കാമോ?
അങ്ങനെയാണെങ്കിൽ, ബുദ്ധിപരമായ ഒരു പ്രോഗ്രാമായി(program-ആയി) അംഗീകരിക്കാൻ ഇതിന് കൂടുതൽ സാധ്യതയുണ്ട്.
ശരി അതിനാൽ ഇത്. ഒരു എഐ ടെക്നിക്(AI technique) ചെയ്യേണ്ട ഒരു കാര്യം കൂടിയാണ്.
ശരി, ഇത് എങ്ങനെ ചെയ്യുന്നു?
ഉദാഹരണത്തിന്, എല്ലാ എഐ പ്രോഗ്രാമുകളിൽ(AI program-കളിൽ)
ഉടനീളമുള്ള മിക്കവാറും എല്ലാ എഐ പ്രോഗ്രാമുകളിലും(AI programs-കളിലും) വളരെ സജീവമായ കാണുന്ന കാര്യത്തെ ഹ്യൂറിസ്റ്റിക്(Heuristic) അടിസ്ഥാനമാക്കിയുള്ള തിരയൽ എന്ന് വിളിക്കുന്നു.
ഇപ്പോൾ, എന്താണ് ഹ്യൂറിസ്റ്റിക്(Heuristic) ?
ഹ്യൂറിസ്റ്റിക്(Heuristic) എന്നത് ഒരു പെരുമാറ്റച്ചട്ടമാണ്,
ഇത് സാധ്യതകളുടെ എണ്ണം കുറയ്ക്കാൻ സഹായിക്കുന്നു.
ഉദാഹരണത്തിന്, നിങ്ങൾ ചെസ്സ് കളിക്കുകയാണെങ്കിൽ,
നിങ്ങൾ ചെസ്സ് ചെസ്സ് നീക്കങ്ങളെക്കുറിച്ച് ചിന്തിക്കില്ല .
നിങ്ങൾ കുറച്ച് മാത്രമേ നോക്കുകയുള്ളൂ.
എന്തുകൊണ്ടാണ് നിങ്ങൾ അങ്ങനെ ചെയ്തത്?
കാരണം അത് നിങ്ങളുടെ മനസ്സിന് ഉള്ളിൽ പ്രവർത്തിക്കുന്ന ഒന്നാണ്.
ഉദാഹരണത്തിന്, നിങ്ങൾ‌ക്ക് മധ്യഭാഗത്ത് നിയന്ത്രണം
ഉണ്ടായിരിക്കാൻ‌ താൽ‌പ്പര്യമുണ്ട്,
അല്ലെങ്കിൽ ചെക്ക് അല്ലെങ്കിൽ‌ അല്ലെങ്കിൽ‌ അത്തരത്തിലുള്ള എന്തെങ്കിലും എന്ന് വിളിക്കുന്ന
മറുവശത്തെ രാജാവിനെ പിടിക്കുക .
അത് , എന്താണെന്ന് നിങ്ങൾക്കറിയാം… മറ്റുള്ളവയുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ ഏത് നീക്കങ്ങളാണ് നല്ലത്.
ഈ അറിവ് ഹ്യൂറിസ്റ്റിക്(Heuristic) ആണ്.
അതിനാൽ നിങ്ങൾ… നിങ്ങൾക്ക് ഹ്യൂറിസ്റ്റിക്(Heuristic) ഉണ്ടെങ്കിൽ, മറ്റുള്ളവരുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ,
ഏത് നീക്കങ്ങളാണ് മികച്ചതെന്ന് നിങ്ങൾക്കറിയാം,
കൂടാതെ നിങ്ങൾക്ക് ഈ നീക്കങ്ങൾ നടത്താനും കളി വിജയിക്കാനും അല്ലെങ്കിൽ നന്നായി ചെയ്യാനും കഴിയും…
അതിനാൽ ഹ്യൂറിസ്റ്റിക്(Heuristic) എന്നത് ഇതാണ്.
വാസ്തവത്തിൽ, ഹ്യൂറിസ്റ്റിക്(Heuristic) , ഡൊമെയ്ൻ നോളജിനെ(domain knowledge-നെ) കുറിച്ചാണ്.
ഡൊമെയ്ൻ നോളജ്(domain knowledge) എങ്ങനെ നേടാം?
നിങ്ങൾ എങ്ങനെ ഒരു വിദഗ്ദ്ധനാകും?
ഇതിനകം ഇത് മുന്‍പ് സൂചിപ്പിച്ചുട്ടുണ്ട് . നിങ്ങൾ ഒരു മനുഷ്യനാണെങ്കിൽ,
പരിശീലനത്തിലൂടെ നിങ്ങൾക്ക് വിദഗ്ദ്ധനാകാം.
ശരി . അതിനാൽ ഇത് കൊണ്ട് നിങ്ങൾ പരിശീലനം നടത്തുക മാത്രമല്ല,
നിങ്ങളുടെ പരീക്ഷണഫലങ്ങൾ
നിങ്ങളുടെ മനസ്സിൽ പ്രയോഗിക മാതൃക ആയി ശേഖരിക്കുകയും ചെയ്യുന്നു.
ഉദാഹരണത്തിന്, എതിരാളി എക്സ് കളിക്കുകയാണെങ്കിൽ,
അവൻ അപകടകാരിയാകുമെന്ന് നിങ്ങൾക്കറിയാം,
നിങ്ങൾ കൂടുതൽ ജാഗ്രത പുലർത്തുന്നു,
അതിൽ നിന്ന് സ്വയം രക്ഷിക്കാൻ നിങ്ങൾ Y കളിക്കേണ്ടി വരുമെന്ന് നിങ്ങൾക്കറിയാം.
കാരണം അതാണ് അനുഭവം നിങ്ങളോട് പറഞ്ഞത്.
നിങ്ങൾ അങ്ങനെ ചെയ്യുകയാണെങ്കിൽ,
അത് ഹ്യൂറിസ്റ്റിക്(Heuristic) ഉപയോഗിക്കുന്നതിനുള്ള ഒരു ഉദാഹരണമാണ്.
വേറൊരു ഒരു ഉദാഹരണം കൂടി നൽകുന്നു.
ഉദാഹരണത്തിന്, ദാഹിച്ചാൽ .
മല കയറുമ്പോള്‍
നിങ്ങൾ മുകളിലേക്ക് പോകില്ല, മറിച്ച് നിങ്ങൾ താഴേക്ക് പോകും . എന്തുകൊണ്ട്?
കാരണം മലയുടെ താഴെ വെള്ളം കണ്ടെത്താനുള്ള സാധ്യത കൂടുതലാണ്.
അതിനാൽ ഇത് ഒരു ഹ്യൂറിസ്റ്റിക്(Heuristic) ആണ്.
ഇവ രണ്ടും ഹ്യൂറിസ്റ്റിക്(Heuristic) ഉദാഹരണങ്ങളാണ്.
രണ്ടാമത്തെ കാര്യം, എഐ ടെക്നിക്കുകളെ(AI technique-കളെ) കുറിച്ച് സംസാരിക്കുമ്പോൾ
മറ്റൊരു കാര്യം നമ്മള്‍ ഈ വിവരങ്ങൾ എങ്ങനെ സംഭരിക്കും,
അതിൽ നിന്ന് എങ്ങനെ അനുമാനിക്കും?
ഉദാഹരണത്തിന്, ഒരു പ്രോലോഗ് പ്രോഗ്രാം(Prolog program) ഉണ്ട്.
ഇന്റലിജൻസ് ഡൊമെയ്‌നിൽ(artificial intelligence domain-ഇൽ) വളരെ ഉപയോഗപ്രദവും
പ്രബലവുമായ ഒരു ഭാഷയാണ് പ്രോലോഗ്.
മൂന്ന് പ്രവചനങ്ങളുണ്ടെന്ന് പിപിടിയിൽ(PPT) നിങ്ങൾക്ക് കാണാൻ കഴിയും .
ആദ്യത്തേത് അമ്മ, ദേവകി, കൃഷ്ണ,
രണ്ടാമത്തേത് സഹോദരൻ, കംസ , ദേവകി,
മൂന്നാമത്തേത് മാമ എക്സ്, വൈ സഹോദരൻ എക്സ്, ഇസഡ്, അമ്മ ഇസഡ്, വൈ ആണെങ്കിൽ .
ഇപ്പോൾ, ഇത് നോക്കുകയാണെങ്കിൽ,
കംസ കൃഷ്ണന്റെ ഒരു മാമയാണെന്ന് തെളിയിക്കാൻ കഴിയുമെന്ന് നിങ്ങൾക്ക് എളുപ്പത്തിൽ സ്വയം ബോധ്യപ്പെടുത്താൻ കഴിയും .
-
അപ്പോള്‍ അതിനെ അനുമാനമെന്ന് വിളിക്കുന്നു.
ആദ്യ മൂന്ന് ഘട്ടങ്ങൾ
വസ്തുത വിവരിക്കുന്നു,
അറിവ്
നമ്മൾ തെളിയിച്ചതിനെ അനുമാനം എന്ന് വിളിക്കുന്നു.
അതിനാൽ, നാം എങ്ങനെ വിവരങ്ങൾ സംഭരിക്കുന്നു,
അതിൽ നിന്ന് എന്തു നേടുന്നു എന്നതാണ്
എഐ ടെക്നിക്കിൽ(AI technique-ക്കിൽ) ആവശ്യമുള്ളത് .
ഫ്രെയിമുകൾ(frames) എന്ന് വിളിക്കുന്ന മറ്റ ഒരെണ്ണം ഉണ്ട്.
വാസ്തവത്തിൽ, അറിവിനെ പ്രതിനിധീകരിക്കുന്നതിനുള്ള ഒരു മാർഗമാണ് പ്രവചന യുക്തി.
മറ്റേതിനെ ഫ്രെയിമുകൾ(frames) എന്ന് വിളിക്കുന്നു.
C++(സി ++) , ജാവ(Java) എന്നിവയും അതുപോലുള്ള ഭാഷകളും പഠിക്കുന്ന നമ്മളിൽ മിക്കവർക്കും അറിയാം,
ഈ ഭാഷകൾ ഒബ്ജക്റ്റ്-ഓറിയന്റഡ് റെപ്രസെന്റഷന്റെ(object-oriented representation-ന്റെ)
രൂപത്തിൽ വിവരങ്ങൾ സംഭരിക്കുന്നുവെന്ന്.
ഒബ്ജക്റ്റ്-ഓറിയന്റഡ് റെപ്രസെന്റഷനിൽ(object-oriented representation-നിൽ) വിവരങ്ങൾ സംഭരിക്കുമ്പോൾ,
ക്ലാസ്, ഒബ്ജക്റ്റ് എന്നിവയുടെ രൂപത്തിലും മറ്റും കാര്യങ്ങൾ വിവരിക്കുന്നു.
ഫ്രെയിം(frame) ഇതിനോട് വളരെ സാമ്യമുള്ളതാണ്.
വാസ്തവത്തിൽ ഫ്രെയിം(frame) ഒബ്ജക്റ്റ് ഓറിയന്റഡ് പ്രോഗ്രാമിംഗിന്റെ(object oriented programming-ന്റെ) മുൻഗാമിയാണ്.
ഫ്രെയിമുകളെ(frames-കളെ) കുറിച്ച് കുറച്ചുകൂടി പഠിക്കുകയാണെങ്കിൽ,
((ഫ്രെയിമുകൾ|frames-കൾ രൂപകൽപ്പന ചെയ്യുമ്പോൾ,
ഒബ്ജക്റ്റ് ഓറിയെന്റഡ് കമ്പ്യൂട്ടിംഗിനെ(object-oriented computing-നെ) കുറിച്ച് ഒരു ധാരണയും ഉണ്ടായിരുന്നില്ല. അത് പിന്നീട് വന്നതാണ് .
എന്തായാലും ,ഇത്
അനുദിനം വളരുന്ന ഒരു മേഖല ആണ് .
അവയെ സോഫ്റ്റ്വെയർ റോബോട്ടുകൾ(software robots) അല്ലെങ്കിൽ ബോട്ടുകൾ എന്ന് വിളിക്കുന്നു,
കൂടാതെ മൊബൈൽ ഏജന്റുകൾ(mobile agents) എന്ന് വിളിക്കുന്ന ഒന്നും കൂടെയുണ്ട് .
വാസ്തവത്തിൽ, ഞാൻ പിഎച്ച്ഡി(PhD) ചെയ്യുമ്പോൾ,
ഒരു നുഴഞ്ഞുകയറ്റം കണ്ടെത്തൽ സംവിധാനം എഴുതി, അതായത്
എന്റെ മെഷീനിൽ റോബോട്ടുകൾ(robots) ഇരുന്നു, തുടർന്ന് നെറ്റ്വർക്കിലൂടെ(network) സഞ്ചരിച്ചു,
മറ്റ് മെഷീനിൽ ഇരുന്നു അവിടത്തെ വിവരങ്ങൾ ശേഖരിക്കുക.
ഇതിനെ മൊബൈൽ ഏജന്റ്(mobile agent) എന്ന് വിളിക്കുന്നു.
എഐയിൽ(AI-ൽ) മൊബൈൽ ഏജന്റുമാരെ(mobile agents) നെറ്റ്‌വർക്കിൽ(network-ഇൽ) ഉടനീളം നീങ്ങാനും
മറ്റൊന്നിലേക്ക് പോകാനും വിവരങ്ങൾ ശേഖരിക്കാനും വിദൂര സ്ഥലത്ത് നിന്നു പോലും
വിവരങ്ങള്‍ ശേഖരിക്കാനും അനുവദിക്കുന്ന നിരവധി സാങ്കേതിക വിദ്യകൾ രൂപകൽപ്പന ചെയ്തിട്ടുണ്ട് .
അതിനാൽ അവ വീണ്ടും, അറിവിനെ പ്രതിനിധീകരിക്കുന്നതിനും
പ്രോസസ്സ് ചെയ്യുന്നതിനുമുള്ള വളരെ ശക്തമായ സംവിധാനമാണ്.
ഏതെങ്കിലും തരത്തിലുള്ള എന്റിറ്റി റിലേഷൻഷിപ്പ് ഡയഗ്രം(entity relationship diagram)
ഉപയോഗിക്കുന്നതാണ് ഇത് ചെയ്യുന്നതിനുള്ള ഒരു പ്രധാന രീതി .
ഇത് നമ്മൾ ഉപയോഗിക്കുന്ന ഇആർ ഡയഗ്രാം(ER diagram) അല്ല… മറിച്ച് വേറെ ആണ് .
സെമാന്റിക് നെറ്റ്‌വർക്ക്(semantic network) എന്ന് വിളിക്കുന്ന എന്തോ ഒന്ന് ഉണ്ട്.
എന്റിറ്റികളെ(entities-കളെ) അർത്ഥവത്തായ രീതിയിൽ അർത്ഥവ്യാപ്തമായി
ബന്ധിപ്പിക്കുന്നതിനാണ് സെമാന്റിക് നെറ്റ്‌വർക്ക്(Semantic network) .
അതിനാൽ അതിൽ എന്റിറ്റികളും(entities-കളും) അവ തമ്മിലുള്ള ചില ബന്ധങ്ങളും അടങ്ങിയിരിക്കുന്നു.
അവയെക്കുറിച്ച് പിന്നീട് പഠിക്കാം.
അറിവിനെ പ്രതിനിധീകരിക്കുന്നതിനുള്ള നിരവധി മാർഗങ്ങള്‍ ,
കമ്പ്യൂട്ടർ സിസ്റ്റങ്ങൾക്കു(computer systems-ന്)
നൽകേണ്ടതുണ്ട്.
ഇപ്പോൾ ഇവ എങ്ങനെ നൽകണം, അറിവിനെ എങ്ങനെ പ്രതിനിധീകരിക്കണം, എങ്ങനെ അനുമാനിക്കണം,
ഇത് ശരിക്കും… ഇതിന് ഒരു മാതൃക വികസിപ്പിച്ച് ഇത് ചെയ്യാൻ ഒരാൾ ആവശ്യമാണ്.
വിദഗ്ദ്ധ സംവിധാനങ്ങളെക്കുറിച്ച് പിന്നീട് പഠിക്കുമ്പോള്‍ ,
അവിടെ ഇത് കൂടുതൽ ആഴത്തിൽ പരിശോധിച്ചു, ഇത് കൂടുതൽ വിശദമായി ചര്ച്ച ചെയ്യാം .
ഒരു എഐ ടെക്നികിന്റെ(AI technique-ന്റെ) വളരെ പ്രധാനപ്പെട്ട
ഒരു സ്വഭാവം അപൂർണ്ണമായ വിവരങ്ങള്‍ യുക്തിസഹമാക്കുക എന്നതാണ്.
അത് അത്ര എളുപ്പമല്ല.
ഉദാഹരണത്തിന്, ചിലപ്പോൾ നിങ്ങൾ ഊഹിക്കേണ്ടതുണ്ട്.
ഉദാഹരണത്തിന്, നിങ്ങൾ കാർഡുകൾ വച്ച് കളിക്കുമ്പോള്‍ ,
നിങ്ങൾക്ക് എതിരാളിയുടെ കയ്യിൽ എന്താണ് ഉള്ളത് എന്നു അറിയുന്നില്ല.
നിങ്ങള്ക്ക് എന്തറിയാം ?
വാസ്തവത്തിൽ, നിങ്ങൾക്കറിയില്ല, നിങ്ങൾ ഊഹിക്കുകയും തുടർന്ന് കളിക്കുകയും
തുടർന്ന് നിങ്ങളുടെ ഊഹത്തെ പരിഷ്കരിക്കുകയും ചെയ്യണം .
അതിനാൽ ഇത് അപൂർണ്ണമായ വിവരങ്ങളുടെ ഒരു ഉദാഹരണമാണ്,
പക്ഷേ മറ്റ് നിരവധി കേസുകളുണ്ട്.
ഉദാഹരണത്തിന്, നിങ്ങൾ ഒരു ക്രിക്കറ്റ് മത്സരം കണ്ടുകൊണ്ടിരിക്കുമ്പോള്‍
നിങ്ങളുടെ സുഹൃത്തിനെ കാണുന്നു.
പക്ഷേ സുഹൃത്തിന്റെ മുഖം ഒരു വശം മാത്രമേ നിങ്ങൾ കാണുന്നുള്ളൂ .
നിങ്ങൾക്ക് സമ്പൂർണ്ണ വിവരങ്ങളില്ല,
പക്ഷേ നിങ്ങളുടെ ഡാറ്റാബേസ്(database) , നോളജ് ബേസ്(knowledge base) , നിങ്ങളുടെ ഇൻഫെറെൻസ് എഞ്ചിൻ(inference engine) എന്നിവ വളരെ ശക്തമാണ്,
അത് നിങ്ങൾ ഇതിനകം കണ്ട ചങ്ങാതിയുടെ സവിശേഷതകളുമായി പൊരുത്തപ്പെടുത്തി ,
നിങ്ങൾ ഡാറ്റാബേസിൽ(database-ൽ) സംഭരിച്ച ,
ആ വിവരങ്ങൾ പുറത്തു കൊണ്ട് വന്നു പറയും അവൻ നിങ്ങളുടെ ചങ്ങാതിയാണെന്ന്.
നിങ്ങൾ അപൂർണ്ണമായ വിവരങ്ങള്‍ ഉപയോഗിച്ച് ന്യായവാദം ചെയ്തു,
ശരി ഉത്തരം നൽകുന്നു .
ഒരു ഉദാഹരണം കൂടി ,
നിങ്ങൾക്ക് ഒരു പുതിയ ഫോൺ ലഭിക്കുകയും
അലാറം സജ്ജീകരിക്കാൻ ആഗ്രഹിക്കുകയും ചെയ്യുന്നുവെന്ന് കരുതുക, നിങ്ങൾക്ക് സാധ്യതകൾ അറിയില്ല,
പക്ഷേ നിങ്ങൾ സാധ്യതകള്‍ നോക്കുകയാണെങ്കിൽ, ഉദാഹരണത്തിന്, …
അതിൽ ഫോണും മറ്റ് കുറച്ച് ക്രമീകരണങ്ങളും ഉണ്ട്,
നിങ്ങൾ ഫോണ്‍ തിരയും
അല്ലെങ്കിൽ ക്രമീകരണങ്ങൾ തിരയും ,
പക്ഷേ ഒരിക്കലും നിങ്ങൾ പ്രൊഫൈലുകൾക്കായി(profiles-നായി) തിരയുന്നില്ല.
അത് അവിടെ കാണില്ല എന്നു നിങ്ങൾക്കറിയാം. നിങ്ങൾക്കെങ്ങനെ അത് അറിയാമായിരുന്നു?
നിങ്ങൾക്ക് അപൂർണ്ണമായ വിവരങ്ങളുണ്ട്, പക്ഷേ എങ്ങനെ ന്യായവാദം ചെയ്യണമെന്ന് നിങ്ങൾക്കറിയാമോ .
നിങ്ങൾ ഫോണിലൂടെ തിരയുമ്പോള്‍ നിങ്ങൾ കണ്ടെത്തിയേക്കാം.
ശരി, അത് അപൂർണ്ണമായ വിവരങ്ങളുമായി പ്രവർത്തിക്കുന്നതിനെക്കുറിച്ചാണ്.
എഐ ടെക്നിക്സും(AI technique-ഉം)
ഒരു തെറ്റായ സഹിഷ്ണുതയോടെ പ്രവർത്തിക്കാൻ പ്രാപ്തമാണ്.
തെറ്റ് സഹിഷ്ണുത എന്നാൽ എന്താണ് അർത്ഥമാക്കുന്നത്?
വളരെ കുറച്ചു വിവരങ്ങൾ
..ക്ഷമിക്കണം ഭാഗികമായി
തെറ്റായ വിവരങ്ങൾ ആണ് നൽകുന്നത്
എന്നു സങ്കല്‍പ്പിക്കുക
ഉദാഹരണത്തിന്, എന്റെ ഒരു സുഹൃത്ത് ,
അദ്ദേഹം രത്‌ലാം സൊസൈറ്റി(Ratlam society) എന്ന സമൂഹത്തിലാണ് താമസിക്കുന്നതെന്ന് എന്നോട് പറഞ്ഞു.
അത് ഫോണിലൂടെ ഞാന്‍ കേട്ടു.
ഞാൻ ആ സമൂഹത്തെ കുറിച്ച് അന്വേഷിച്ചു .
ഞാൻ പാൻവാലയോട് ചോദിച്ചു, ഈ രത്‌ലാം സൊസൈറ്റി(Ratlam society) എവിടെ ആണ് ?
സമീപത്ത് രത്‌ലാം സൊസൈറ്റി(Ratlam society) ഇല്ലെങ്കിലും
ഇവിടെ ഒരു സത്നാം സൊസൈറ്റി(Satnam society) ഉണ്ടെന്നും പാൻവാല പറഞ്ഞു.
ആ പാൻവാല എങ്ങനെ യഥാർത്ഥ ഉത്തരം കണ്ടെത്തി ?
ഞാൻ അദ്ദേഹത്തിന് ശരിയായ വിവരങ്ങള്‍ നൽകിയിട്ടില്ല …
പക്ഷേ പാൻവാലയ്ക്ക് അത് കണ്ടുപിടിക്കാനായി , എങ്ങനെ?
കാരണം തെറ്റായ വിവരങ്ങൾ പ്രവര്‍ത്തനം ചെയ്യാനും
ശരിയായ ഉത്തരം നേടാനും അവന്റെ മനസ്സിന് കഴിവുണ്ടായിരുന്നു.
നമ്മുക്ക് അത് ചെയ്യാൻ കഴിയുമോ?
നമ്മുടെ പ്രോഗ്രാമുകൾ(programs) … നമുക്കെല്ലാവർക്കും വാസ്തവത്തിൽ അത് ചെയ്യാൻ കഴിയും,
പക്ഷേ നമ്മളുടെ പ്രോഗ്രാമിന്(program-ന്) അത് ചെയ്യാൻ കഴിയുമോ?
എന്റെ ഡാറ്റാബേസ്(database) , എനിക്ക് ഒരു ഡാറ്റാബേസ്(database) ഉണ്ടെങ്കിൽ,
എന്റെ ഡാറ്റാബേസ്(database) ഉപഭോക്തൃ നാമത്തിൽ സൂചികയിലാക്കിയിട്ടുണ്ടെന്ന് കരുതുക,
പക്ഷേ ഞാൻ ഒരു തെറ്റായ ഉപഭോക്തൃ നാമം നൽകിയാൽ,
ശരിയായ ഡാറ്റയുമായി(data-യുമായി) എന്റെ ഡാറ്റാബേസ്(database) മടങ്ങാനാകുമോ?
ചിന്തിക്കുക. ഇത്… ചെയ്യാൻ കഴിയുമെങ്കിൽ,
പ്രോഗ്രാമിന്(program-ന്) ഇത് ചെയ്യാൻ കഴിയുമെങ്കിൽ,
അത് എഐ ടെക്നിക്ക്(AI technique) പ്രദർശിപ്പിക്കുന്നു.
ശരി അത് ഒരു പോയിന്റാണ്.
… മറ്റൊരു കാര്യം…
ഉദാഹരണത്തിന്, ഞാൻ ഒരു ക്ലാസ്സിലേക്ക് പോകുന്നു,
സ്കൂൾ കുട്ടികളോട് ,
and I pose a question ഞാൻ ഒരു ചോദ്യം ഉന്നയിക്കുന്നു.
ഇടയ്ക്കിടെ വെള്ളത്തിൽ നിന്ന് പുറത്തുവന്ന്
വായു ശ്വസിക്കുകയും,
ശ്വാസകോശവുമുള്ള ഒരു വലിയ മത്സ്യമുണ്ട്.
അപ്പോൾ ആരെങ്കിലും പറയും,
നിങ്ങൾ തിമിംഗലത്തെക്കുറിച്ചാണ് സംസാരിക്കുന്നതെന്ന്,
പക്ഷേ സർ അത് മത്സ്യമല്ല, മറിച്ച് മാമ്മൽ(mammal) ആണ്.
ആ വിദ്യാർത്ഥിയുടെ മസ്തിഷ്കം എങ്ങനെ അത് കണ്ടു പിടിച്ചു? തെറ്റായ വിവരങ്ങൾ പ്രവര്‍ത്തിപ്പിച്ച്
ശരിയായ ഉത്തരം ലഭിച്ചു .
ഒരു സ്കൂൾ കുട്ടി, ഞാൻ വളരെ ബുദ്ധിമാനായ ഒരാളെക്കുറിച്ചല്ല സംസാരിക്കുന്നത് .
പക്ഷേ, അങ്ങനെയാണെങ്കിൽപ്പോലും,
ഒരു സ്കൂൾ കുട്ടിയ്ക്ക് ശരിയായ ഉത്തരം ലഭിക്കുന്നത് സാധ്യമാണ്.
അതിനാൽ, ഇവയെല്ലാം … എഐ ടെക്നിക്കിന്റെ(AI technique-ന്റെ) ഉദാഹരണമാണ്.
പഠിച്ച കാര്യങ്ങൾ വേഗത്തിൽ വീണ്ടും സംക്ഷേപിച്ചു പറയാം .
പ്രയാസകരമായ പ്രോഗ്രാമുകൾ(programs)
എങ്ങനെ എഴുതാം എന്നു എഐ(AI) പരിശീലിപ്പിക്കുന്നു.
ബുദ്ധിമുട്ടുള്ളത് എന്നു പറഞ്ഞാൽ ബുദ്ധിപരമായത് എന്ന അര്‍ഥമില്ല .
ബുദ്ധിമുട്ടുള്ളത് എന്നു പറഞ്ഞാൽ കമ്പ്യൂട്ടറിന്റെ(computer-ന്റെ) തന്നെ
രൂപകല്‍പന കാരണം പ്രോഗ്രാം(program) ചെയ്യാൻ വരുന്ന ബുദ്ധിമുട്ടുകള്‍ ആണ് .
പ്രോഗ്രാമുകളുടെ(programs-കളുടെ) ബുദ്ധിമുട്ട് മനുഷ്യരെപ്പോലെ പ്രവർത്തിക്കാനുള്ള കഴിവില്ലായ്മയിലാണ്.
ഹ്യൂറിസ്റ്റിക്സ്(heuristics) തിരയാല് നയങ്ങളെ ഉപയോഗിക്കാം.
വാസ്തവത്തിൽ അങ്ങനെ ചെയ്യുന്നില്ലെങ്കിൽ,
അവർ കോമ്പിനേറ്റോറിയൽ സ്ഫോടനത്തിൽ(combinatorial explosion-ൽ) കുടുങ്ങി പോകും .
ധാരാളം കോമ്പിനേഷനുകളും പെർ‌മ്യൂട്ടേഷനുകളും(combinations and permutations-കളും) .
അവർക്ക് അന്ധമായി തിരയാൻ കഴിയില്ല. വാസ്തവത്തിൽ,
അവർക്ക് വിശദീകരണ ഉപായങ്ങള്‍ ആവശ്യമാണ് ,
അവർക്ക് അപൂർണ്ണമായ വിവരങ്ങളുമായി പ്രവർത്തിക്കേണ്ടതുണ്ട്,
തെറ്റായ വിവരങ്ങളുമായി ചിലപ്പോൾ പ്രവർത്തിക്കേണ്ടതുണ്ട്.
അങ്ങനെ പലവിധ ആവശ്യങ്ങൾ .
ന്യൂറൽ നെറ്റ്‌വർക്ക്(neural network) അധിഷ്‌ഠിത രീതികൾ എന്ന് വിളിക്കപ്പെടുന്ന ചിലത് ഉണ്ട്,
അത് പിന്നീട് ഒൻപത് മൊഡ്യൂളിൽ(module-ൽ) പഠിക്കാം,
അവ എങ്ങനെ ഈ തെറ്റ് സഹിഷ്ണുത പുലർത്തുന്നുവെന്ന് കാണാം .
ഈ സാങ്കേതികള്‍ പ്രോഗ്രാം(program) ശക്തമാക്കുന്നു,
ഇതിലെ, മിക്ക കാര്യങ്ങളെയും എഐ ടെക്നിക്കുകൾ(AI techniques) എന്ന് വിളിക്കുന്നു.
ശരി, അവയിൽ പലതും യഥാസമയം പഠിക്കാം . നന്ദി!