සාදරයෙන් පිළිගනිමු! මෙම පාඨමාලාවේ පළමු මොඩියුලය වෙත ඔබව කැඳවාගෙන ඒම ගැන අපි සතුටු වෙමු. මෙතැන් සිට, අපි දත්ත විද්යාව (Data Science) සහ යන්ත්ර ඉගෙනුම (Machine Learning) නම් වූ විස්මිත ලෝකයට පිවිසෙන්නෙමු. ඔබ coding වලට අලුත් කෙනෙක් වුවත්, තාක්ෂණය ගැන එතරම් දැනුමක් නැති කෙනෙක් වුවත්, කිසිසේත්ම බිය විය යුතු නැත. මෙම මොඩියුලය නිර්මාණය කර ඇත්තේ ඉතාම සරල, එදිනෙදා ජීවිතයේ උදාහරණ භාවිතා කරමින්, ඔබට මෙම සංකීර්ණ විෂයයන්හි මූලික පදනම පැහැදිලි කිරීමටයි. අපි කිසිදු code එකක් ලිවීමට පෙර, අප කරන්නේ කුමක්ද සහ එය කරන්නේ ඇයි යන්න තේරුම් ගැනීම අත්යවශ්ය වේ. මෙම මොඩියුලය අවසානයේ, "Machine Learning" යන වචනය ඇසූ විට, ඔබට ඒ ගැන පැහැදිලි, නිවැරදි අදහසක් ඇති වනු ඇත.
ML කියන්නේ මොකක්ද? (What is Machine Learning?)
Machine Learning (ML) යනු අද වන විට ලෝකය පාලනය කරන තාක්ෂණයක් ලෙස හැඳින්වුවහොත් එය නිවැරදිය. නමුත් එහි අර්ථය කුමක්ද? අපි එය සරලවම බිඳ දමමු.
සාම්ප්රදායික ක්රමලේඛනය (Traditional Programming) vs Machine Learning
සාමාන්යයෙන් අපි පරිගණක වැඩසටහනක් (computer program) ලියන විට, අපි පරිගණකයට প্রতিটি පියවරක්ම (step-by-step instructions) පැහැදිලිව කියා දෙන්නෙමු. උදාහරණයක් ලෙස, ඊමේල් පණිවිඩයක් "Spam" ද නැද්ද යන්න තීරණය කිරීමට program එකක් ලියනවා යැයි සිතමු.
if ("මුදල් දිනුවා" in email_text) or ("නොමිලේ දීමනාව" in email_text) or ("හදිසි" in email_text):
mark_as_spam()
else:
move_to_inbox()
මෙහිදී, අපි නීති (rules) නිර්මාණය කර, ඒවා පරිගණකයට ලබා දෙන්නෙමු. පරිගණකය එම නීති අනුව දත්ත (data) සකසයි. නමුත් මෙහි ගැටළුවක් තිබේ. Spam පණිවිඩ එවන්නන් දිනපතාම ඔවුන්ගේ වචන වෙනස් කරයි. "මුදල් දිනුවා" වෙනුවට "Cash Prize" ලෙස එවිය හැකිය. එවිට අපගේ program එකට එය හඳුනාගත නොහැක. අපට සිදුවන්නේ නිරන්තරයෙන්ම මෙම නීති අතින් යාවත්කාලීන (manually update) කිරීමටයි. මෙය ඉතා වෙහෙසකර මෙන්ම අකාර්යක්ෂම ක්රියාවලියකි.
Machine Learning මෙම ගැටළුවට විසඳුම ගෙන එන්නේ සම්පූර්ණයෙන්ම වෙනස් ප්රවේශයකිනි. මෙහිදී, අපි පරිගණකයට නීති කියා දෙනවා වෙනුවට, අපි පරිගණකයට දත්ත (data) සහ එම දත්ත වලට අදාළ පිළිතුරු (answers) ලබා දෙන්නෙමු. ඉන්පසු, පරිගණකය විසින්ම එම දත්ත සහ පිළිතුරු අතර ඇති රටා (patterns) හඳුනාගෙන, නීති ඉගෙන ගනී.
සරල උපමාවක්: මෙය හරියට කුඩා දරුවෙකුට බල්ලන් සහ පූසන් හඳුනාගැනීමට උගන්වනවා වැනිය. අපි දරුවාට "කන් දෙකක්, වලිගයක්, සහ බුරන සතා බල්ලෙකි" යනුවෙන් නීති මාලාවක් කියා දෙන්නේ නැත. ඒ වෙනුවට, අපි දරුවාට බල්ලන්ගේ පින්තූර රාශියක් පෙන්වා "මේ බල්ලෙක්" ලෙසත්, පූසන්ගේ පින්තූර පෙන්වා "මේ පූසෙක්" ලෙසත් කියා දෙන්නෙමු (දත්ත + පිළිතුරු). කාලයත් සමඟ, දරුවාගේ මොළය විසින්ම බල්ලන්ගේ සහ පූසන්ගේ පොදු ලක්ෂණ (රටා) ඉගෙන ගනී. ඉන්පසුව, දරුවා මින් පෙර කිසිදා දැක නැති බල්ලෙකු දුටු විට වුවද, "මේ බල්ලෙක්" යැයි නිවැරදිව හඳුනා ගැනීමට ඔහුට හෝ ඇයට හැකියාව ලැබේ. Machine Learning ක්රියා කරන්නේද මේ ආකාරයටමය.
එබැවින්, Machine Learning යනු පැහැදිලිව වැඩසටහන්ගත නොකර (without being explicitly programmed), දත්ත වලින් ඉගෙන ගැනීමට සහ එම ඉගෙනීම මත පදනම්ව අනාවැකි (predictions) හෝ තීරණ (decisions) ගැනීමට පරිගණක වලට ඇති හැකියාවයි. අපගේ Spam filter උදාහරණයට නැවත ගියහොත්, ML ක්රමයේදී අපි පරිගණකයට Spam ඊමේල් දහස් ගණනක් සහ සාමාන්ය ඊමේල් දහස් ගණනක් ලබා දෙන්නෙමු. පරිගණකය විසින්ම Spam ඊමේල් වල බහුලව දක්නට ලැබෙන වචන, වාක්ය රටා, සහ යවන්නන්ගේ ලිපින වැනි ලක්ෂණ ඉගෙන ගනී. ඉන්පසු, අලුතින් ලැබෙන ඊමේල් එකක් එම ඉගෙනගත් රටා වලට ගැලපේදැයි බලා, එය Spam ද නැද්ද යන්න ඉහළ නිරවද්යතාවයකින් තීරණය කරයි.
Predictive Analytics කියන්නේ මොකක්ද?
Predictive Analytics, එනම් පුරෝකථන විශ්ලේෂණය යනු Machine Learning හි ඉතා වැදගත් සහ ප්රායෝගික යෙදුමකි. සරලවම කිවහොත්, මෙය අතීත සහ වර්තමාන දත්ත විශ්ලේෂණය කර, අනාගතයේ කුමක් සිදුවේදැයි අනාවැකි කීමේ ක්රියාවලියයි.
මෙය අහස දෙස බලා හෙට වහීදැයි අනුමාන කරනවා වැනි දෙයක් නොවේ. Predictive Analytics පදනම් වන්නේ සංඛ්යානය (statistics), දත්ත කැණීම (data mining), සහ Machine Learning යන ක්ෂේත්ර වල සිද්ධාන්ත මතයි. එහිදී සිදුවන්නේ, ඓතිහාසික දත්ත (historical data) තුළ සැඟවී ඇති සම්බන්ධතා සහ ප්රවණතා (trends) හඳුනාගෙන, එම රටා අනාගතයේදීත් එලෙසම සිදුවනු ඇතැයි යන උපකල්පනය මත අනාවැකි ගොඩනැගීමයි.
අපගේ පාඨමාලාව සහ Predictive Analytics
අපගේ "Student Exam Marks → Predict 1st Place Student" පාඨමාලාව යනු Predictive Analytics සඳහා කදිම උදාහරණයකි. මෙහිදී:
- අතීත දත්ත (Historical Data): අප සතුව ශිෂ්යයින්ගේ ගණිතය, විද්යාව, සහ ඉංග්රීසි විෂයයන් සඳහා වූ පසුගිය විභාග ලකුණු තිබේ.
- විශ්ලේෂණය (Analysis): අපි Machine Learning model එකක් භාවිතා කර, මෙම විෂය ලකුණු සහ ඔවුන් ලබාගත් අවසාන ලකුණ (Final Score) අතර ඇති සම්බන්ධතාවය ඉගෙන ගනිමු. සමහරවිට, ගණිතය සහ විද්යාව ලකුණු ඉහළ ශිෂ්යයින්ගේ අවසාන ලකුණද ඉහළ යාමේ රටාවක් model එක විසින් හඳුනාගනු ඇත.
- පුරෝකථනය (Prediction): එම ඉගෙනගත් රටාව මත පදනම්ව, model එකට ශිෂ්යයෙකුගේ විෂය ලකුණු ලබා දුන් විට, ඔහුගේ හෝ ඇයගේ අවසාන ලකුණ කෙබඳු වේවිදැයි පුරෝකථනය කිරීමට හැකියාව ලැබේ. ඉන්පසු, එම පුරෝකථනය කළ ලකුණු අතරින් ඉහළම අගය ලබා ගන්නා ශිෂ්යයා පළමු ස්ථානය දිනාගනු ඇතැයි අපට අනාවැකි කිව හැකිය.
Predictive Analytics ව්යාපාරික ලෝකයේදී අතිශයින්ම වටිනා මෙවලමකි. සමාගම් වලට තම පාරිභෝගිකයින්ගේ හැසිරීම්, වෙළඳපොළ ප්රවණතා, සහ මෙහෙයුම් අවදානම් කල්තියා හඳුනා ගැනීමට මෙය උපකාරී වේ.
Real-world use cases (සැබෑ ලෝකයේ යෙදුම්)
Machine Learning සහ Predictive Analytics යනු හුදෙක් න්යායාත්මක සංකල්ප පමණක් නොවේ. ඒවා අපගේ දෛනික ජීවිතයේ සෑම අංශයකටම පාහේ බලපෑම් ඇති කරයි. අපි උදාහරණ කිහිපයක් සලකා බලමු.
🎓 අධ්යාපනය (Education) - ශිෂ්ය ලකුණු
අපගේ පාඨමාලාවේ මාතෘකාවට අමතරව, අධ්යාපන ක්ෂේත්රයේ ML වලට තවත් බොහෝ දේ කළ හැකිය. විශ්වවිද්යාල වලට ශිෂ්යයෙකු පාඨමාලාව අතරමග නවතා දැමීමට (dropout) ඇති ඉඩකඩ කල්තියා හඳුනාගත හැකිය. ශිෂ්යයාගේ පැමිණීම, අභ්යන්තර ඇගයීම් වල ලකුණු, සහ මාර්ගගත ඉගෙනුම් පද්ධති (LMS) වල ක්රියාකාරීත්වය වැනි දත්ත විශ්ලේෂණය කිරීමෙන්, යම් ශිෂ්යයෙකුට අමතර උපකාර අවශ්ය දැයි හඳුනාගෙන, ගුරුවරුන්ට ඒ බව දැනුම් දීමට පද්ධති නිර්මාණය කළ හැකිය. එමගින්, එම ශිෂ්යයාට අවශ්ය සහයෝගය ලබා දී, ඔහුව හෝ ඇයව පාඨමාලාව තුළ රඳවා ගැනීමට අවස්ථාව ලැබේ.
📈 ව්යාපාර සහ විකුණුම් (Business & Sales)
ඔබ Amazon, eBay, বা Daraz වැනි වෙබ් අඩවියකින් යමක් මිලදී ගත් විට, "Customers who viewed this item also viewed" හෝ "Frequently bought together" ලෙස වෙනත් නිෂ්පාදන නිර්දේශ කරනවා ඔබ දැක ඇති. මෙය ක්රියාත්මක වන්නේ Recommendation Engine නම් ML පද්ධතියක් මගිනි. මෙම පද්ධති, ඔබ සහ ඔබ වැනිම රුචිකත්වයන් ඇති අනෙකුත් මිලියන ගණනක් පාරිභෝගිකයින්ගේ දත්ත (ඔවුන් බලන, මිලදී ගන්නා, සහ wish-list එකට එකතු කරන දේවල්) විශ්ලේෂණය කරයි. එමගින්, ඔබ මිලදී ගැනීමට වැඩි කැමැත්තක් දක්වනු ඇතැයි සිතන නිෂ්පාදන මොනවාදැයි පුරෝකථනය කර, ඒවා ඔබට පෙන්වයි. Netflix සහ YouTube වල ඔබට චිත්රපට සහ වීඩියෝ නිර්දේශ කරන්නේද මේ ආකාරයටමය. මෙය සමාගම් වලට තම විකුණුම් වැඩි කරගැනීමට ඉමහත් පිටිවහලක් වේ.
🌦️ කාලගුණය (Weather)
කාලගුණ අනාවැකි යනු Predictive Analytics හි පැරණිතම සහ සංකීර්ණම යෙදුමකි. කාලගුණ විද්යාඥයින් විසින් චන්ද්රිකා, කාලගුණ බැලූන, සහ ලොව පුරා ඇති දහස් ගණනක් සංවේදක (sensors) වලින් අති විශාල දත්ත ප්රමාණයක් (වායුගෝලීය පීඩනය, උෂ්ණත්වය, ආර්ද්රතාවය, සුළඟේ වේගය) එකතු කරනු ලබයි. මෙම දත්ත, සුපිරි පරිගණක (supercomputers) මත ක්රියාත්මක වන සංකීර්ණ ML models වලට ලබා දෙනු ලැබේ. එම models, අතීතයේදී යම් යම් කාලගුණික රටා ඇති වූ විට, ඉන් පසුව කුමක් සිදු වූයේද යන්න ඉගෙනගෙන ඇත. එම දැනුම මත පදනම්ව, ඉදිරි පැය, දින, සහ සති සඳහා කාලගුණ අනාවැකි ඉතා ඉහළ නිරවද්යතාවයකින් පුරෝකථනය කිරීමට ඒවාට හැකියාව ලැබේ.
❤️ සෞඛ්ය (Health)
සෞඛ්ය ක්ෂේත්රය තුළ Machine Learning විප්ලවීය වෙනසක් සිදු කරමින් පවතී.
- රෝග විනිශ්චය (Diagnosis): වෛද්යවරුන්ට පිළිකා සෛල හඳුනා ගැනීමට උපකාර කිරීම සඳහා ML models පුහුණු කර ඇත. X-ray, MRI, සහ CT scan වැනි වෛද්ය ප්රතිබිම්බ (medical images) දහස් ගණනක් විශ්ලේෂණය කිරීමෙන්, මිනිස් ඇසට හසු නොවන ඉතා කුඩා වෙනස්කම් පවා හඳුනා ගැනීමට මෙම models වලට හැකිය.
- පුද්ගලාරෝපිත ප්රතිකාර (Personalized Medicine): රෝගියෙකුගේ ජානමය තොරතුරු, ජීවන රටාව, සහ වෛද්ය ඉතිහාසය වැනි දත්ත විශ්ලේෂණය කර, එම රෝගියාට වඩාත්ම ඵලදායී වන ඖෂධය හෝ ප්රතිකාර ක්රමය කුමක්දැයි පුරෝකථනය කිරීමට ML වලට පුළුවන.
- නව ඖෂධ සොයා ගැනීම (Drug Discovery): නව ඖෂධයක් නිපදවීමේ ක්රියාවලිය ඉතා දීර්ඝ සහ මිල අධික එකකි. විවිධ රසායනික සංයෝග මිලියන ගණනක් විශ්ලේෂණය කර, යම් රෝගයකට ප්රතිකාර කිරීමට වඩාත්ම ඉඩ ඇති සංයෝග මොනවාදැයි පුරෝකථනය කිරීමට ML models යොදා ගැනීමෙන්, මෙම ක්රියාවලිය වේගවත් කිරීමට සහ පිරිවැය අඩු කිරීමට හැකි වී තිබේ.
මෙම උදාහරණ වලින් ඔබට පෙනී යනවා ඇති, Machine Learning යනු හුදෙක් පරිගණක විද්යාඥයින්ට පමණක් සීමා වූ දෙයක් නොවන බව. එය අප වටා ඇති ලෝකය වඩා හොඳින් තේරුම් ගැනීමටත්, වඩාත් බුද්ධිමත් තීරණ ගැනීමටත් අපට උපකාරී වන ප්රබල මෙවලමකි. මෙම පාඨමාලාව පුරාවට, අපි මෙම ප්රබල මෙවලම භාවිතා කරන ආකාරය, ඉතා සරල, ප්රායෝගික project එකක් හරහා ඉගෙන ගනිමු.