AI සහ ML හැඳින්වීම | Deep Learning | Real-world AI Applications | Sinhala Guide

ඉතින් කොහොමද යාලුවනේ! ❤️ අද අපි කතා කරන්න යන්නේ මේ දවස්වල හැමතැනම ඇහෙන, ලෝකයම වෙනස් කරමින් තියෙන විෂය ක්ෂේත්රයක් ගැන. ඒ තමයි Artificial Intelligence (AI) සහ Machine Learning (ML). ඇත්තටම මේවා මොනවද? අපේ එදිනෙදා ජීවිතයට මේවා කොහොමද බලපාන්නේ? මේ වගේ ප්රශ්න ගොඩකට අපි අද එකට උත්තර හොයමු.
ඔබ Netflix එකේ movie එකක් බලනකොට, YouTube එකේ වීඩියෝ බලනකොට, Siri හෝ Google Assistant එකෙන් ප්රශ්නයක් අහනකොට, ෆෝන් එකේ Face ID එකෙන් අන්ලොක් කරනකොට, ඒ හැම තැනකම මේ AI සහ ML තාක්ෂණයන් ක්රියාත්මක වෙනවා. මේවා අද අපේ ජීවිතේට කොච්චර සමීප වෙලාද කියනවා නම්, සමහර විට අපිට ඒක දැනෙන්නෙත් නැහැ.
මේ ලිපියෙන් අපි AI, Machine Learning සහ Deep Learning කියන සංකල්ප පැහැදිලිව තේරුම් ගනිමු. ඒවායේ ඉතිහාසය, එකිනෙක අතර තියෙන සම්බන්ධය සහ අපේ සැබෑ ලෝකයේ මේවා භාවිතා වන විදිහ ගැනත් කතා කරමු. අන්තිමට, මේ ක්ෂේත්රය කොහොමද ඉස්සරහට යන්නේ කියලා පොඩි අදහසකුත් ගමු. එහෙනම්, අපි පටන් ගමු!
කෘතිම බුද්ධිය (Artificial Intelligence - AI) යනු කුමක්ද?
මුලින්ම අපි තේරුම් ගනිමු මේ Artificial Intelligence (කෘතිම බුද්ධිය) කියන්නේ මොකක්ද කියලා. සරලවම කිව්වොත්, AI කියන්නේ මිනිස් බුද්ධිය අනුකරණය කරන, මිනිසුන්ට වගේ සිතන්නට, ඉගෙන ගන්නට, තීරණ ගන්නට සහ ගැටලු විසඳන්නට පුළුවන් විදියට පරිගණක පද්ධති නිර්මාණය කිරීමේ විෂය ක්ෂේත්රය.
AI වල ඉතිහාසය සහ පරිණාමය
AI කියන සංකල්පය අලුත් දෙයක් නෙවෙයි. 1950 ගණන්වලදි Alan Turing වගේ විද්යාඥයෝ මේ ගැන අදහස් ඉදිරිපත් කළා. 1956 දී Dartmouth Workshop එකේදී තමයි “Artificial Intelligence” කියන වචනය මුලින්ම පාවිච්චි කළේ. ඒත් එක්කම මුල් කාලීන AI පද්ධති හැදුවත්, ඒවට මූල්ය ආධාර අඩුවීමත්, තාක්ෂණික සීමාවන් නිසාත් “AI Winters” කියලා හඳුන්වන කාලවල් කිහිපයක් තිබුණා. ඒ කාලවල් වලදී AI ගැන තිබුණු උනන්දුව ටිකක් අඩු වුණා.
නමුත් 2000 ගණන්වලදී, දත්ත (data) විශාල වශයෙන් වැඩිවීමත්, පරිගණකවල සැකසුම් හැකියාව (processing power) වැඩිවීමත්, අලුත් ඇල්ගොරිතම (algorithms) සොයා ගැනීමත් එක්ක AI නැවතත් වේගයෙන් දියුණු වෙන්න පටන් ගත්තා.
AI වර්ග
සාමාන්යයෙන් AI ප්රධාන වර්ග 3කට බෙදන්න පුළුවන්:
- Narrow AI (හෝ Weak AI): මේවා නිර්මාණය කරලා තියෙන්නේ ඉතා නිශ්චිත කාර්යයක් කරන්න. උදාහරණයක් විදියට Siri, Google Assistant, chess-playing programs. මේවා එක කාර්යයක් හොඳට කළාට, වෙනත් කාර්යයක් කරන්න බැහැ. අද අපි දකින බොහෝ AI පද්ධති මේ වර්ගයට අයත්.
- General AI (හෝ Strong AI): මිනිසුන්ට වගේ ඕනෑම බුද්ධිමය කාර්යයක් කරන්න පුළුවන් AI පද්ධති මේකට කියනවා. තාමත් මේක න්යායාත්මක (theoretical) මට්ටමේ තියෙනවා, ප්රායෝගිකව හදලා නැහැ.
- Super AI: මිනිසුන්ට වඩා දක්ෂ AI පද්ධති මේකට අයත්. මේවා අනාගතයේදී ඇතිවිය හැකි දේවල් විදියට සැලකෙනවා.
Machine Learning (ML) හඳුනාගනිමු.
දැන් අපි කතා කරමු Machine Learning (ML) ගැන. ML කියන්නේ AI වල subset එකක්, නැත්නම් AI ක්ෂේත්රයේම කොටසක්. සරලවම කිව්වොත්, “පැහැදිලිව program නොකරම, දත්ත වලින් ඉගෙන ගන්න පුළුවන් විදියට පරිගණක පද්ධති නිර්මාණය කිරීම” තමයි Machine Learning කියන්නේ.
ඔබ සාමාන්යයෙන් පරිගණකයකට වැඩක් කරන්න නම්, ඒකට උපදෙස් (instructions) පියවරෙන් පියවර ලියන්න ඕනේ (program කරනවා කියන්නේ ඒකයි). ඒත් Machine Learning වලදී, අපි පරිගණකයට දත්ත (data) දෙනවා, ඊට පස්සේ පරිගණකය ඒ දත්ත වලින් තමන්ටම නීති (rules) හදාගෙන, පුරෝකථන (predictions) කරන්න හෝ තීරණ ගන්න ඉගෙන ගන්නවා.
Machine Learning ක්රියාත්මක වන ආකාරය
හිතන්න ඔබට ගෙවල්වල මිල පුරෝකථනය (predict) කරන system එකක් හදන්න ඕනේ කියලා. සාමාන්ය ක්රමයට නම් ඔබට මිලට බලපාන සාධක (කාමර ගණන, ප්රමාණය, පිහිටීම වගේ දේවල්) ගණන් බලාගෙන, ඒ අනුව මිල තීරණය කරන්න code ලියන්න වෙනවා. ඒත් ML වලදී, අපි මේ system එකට දැනටමත් විකුණලා තියෙන ගෙවල්වල දත්ත (මිල, කාමර ගණන, ප්රමාණය, පිහිටීම වගේ) දෙනවා. ඊට පස්සේ Machine Learning algorithm එකක් ඒ දත්ත වලින් ඉගෙනගෙන, අලුත් ගෙවල්වල මිල පුරෝකථනය කරන්න පුළුවන් වෙනවා.
Machine Learning වර්ග
ප්රධාන වශයෙන් Machine Learning වර්ග 3ක් තියෙනවා:
- Supervised Learning: මේකේදී අපි algorithm එකට labeled data දෙනවා. Labeled data කියන්නේ input එකට අදාළ නිවැරදි output එකත් එක්ක දෙන දත්ත. උදාහරණයක් විදියට, ඊමේල් spam ද නැද්ද කියලා හඳුනා ගන්න system එකක් හදනකොට, අපි කලින්ම spam කියලා ලේබල් කරපු ඊමේල් ගොඩක් algorithm එකට දෙනවා. Algorithm එක ඒ දත්ත වලින් ඉගෙනගෙන අලුත් ඊමේල් spam ද නැද්ද කියලා හඳුනා ගන්නවා. Regression සහ Classification කියන ඒවා Supervised Learning යටතේ එනවා.
- Unsupervised Learning: මේකේදී අපි algorithm එකට unlabeled data දෙනවා. ඒ කියන්නේ input එකට අදාළ නිවැරදි output එකක් නැති දත්ත. Algorithm එක ඒ දත්ත වල තියෙන patterns, structures හඳුනාගෙන ඒවා කාණ්ඩ (clusters) කරනවා. උදාහරණයක් විදියට, පාරිභෝගිකයින්ව ඔවුන්ගේ මිලදී ගැනීමේ රටාවන් අනුව කාණ්ඩ කරන එක. Clustering සහ Association කියන ඒවා Unsupervised Learning යටතේ එනවා.
- Reinforcement Learning: මේකේදී algorithm එකක් පරිසරයක් (environment) එක්ක අන්තර්ක්රියා කරමින්, trial and error ක්රමයට ඉගෙන ගන්නවා. Algorithm එක හොඳ තීරණ ගත්තොත් ඒකට reward එකක් ලැබෙනවා, වැරදි තීරණ ගත්තොත් penalty එකක් ලැබෙනවා. Gaming, robotics වගේ ක්ෂේත්රවල මේක භාවිතා වෙනවා.
සරල ML සංකල්පීය උදාහරණයක් (Supervised Learning)
අපි හිතමු අපිට 'X' අගයක් දුන්නාම, ඒකට අදාළ 'Y' අගය මොකක්ද කියලා පුරෝකථනය කරන්න ඕනේ කියලා. උදාහරණයක් විදියට, අපි 'ඉගෙන ගත් පැය ගණන' (X) දුන්නාම, 'ලැබෙන ලකුණු' (Y) පුරෝකථනය කරනවා කියලා හිතමු.
# දත්ත (Data) - මේවා තමයි අපි ML model එකට දෙන්නේ
# X - ඉගෙන ගත් පැය ගණන
# Y - ලැබුණු ලකුණු
data = [
{"hours_studied": 2, "score": 60},
{"hours_studied": 4, "score": 75},
{"hours_studied": 6, "score": 85},
{"hours_studied": 8, "score": 90},
{"hours_studied": 10, "score": 95}
]
# Machine Learning Model එකේ මූලික අදහස:
# මේකෙන් වෙන්නේ X සහ Y අතර තියෙන සම්බන්ධය හොයාගන්න එක.
# අපිට අලුත් X අගයක් (ඉගෙන ගත් පැය ගණනක්) දුන්නාම,
# ඒ Model එකෙන් අදාළ Y අගය (ලැබෙන ලකුණු) පුරෝකථනය කරන්න පුළුවන් වෙනවා.
def simple_prediction_model(new_hours_studied):
# මේක හරිම සරල උදාහරණයක්. ඇත්ත ML models ගොඩක් සංකීර්ණයි.
# අපි හිතමු අපේ දත්ත අනුව, පැය ගණන වැඩිවෙද්දී ලකුණුත් කෙලින්ම වැඩිවෙනවා කියලා.
# මෙතනදී අපි දත්ත අතරේ linear සම්බන්ධයක් තියෙනවා කියලා හිතමු (Y = mX + c වගේ)
# සරලවම, අපි දත්ත වලින් ඉගෙන ගත්තු රටාවට අනුව පුරෝකථනය කරමු.
if new_hours_studied == 2: return 60
elif new_hours_studied == 4: return 75
elif new_hours_studied == 6: return 85
elif new_hours_studied == 8: return 90
elif new_hours_studied == 10: return 95
else:
# මේක ඇත්ත ML model එකක interpolation/extrapolation වලට සමානයි.
# දැනට අපි දත්ත අතරමැද අගයකට ආසන්න අගයක් දෙමු.
# උදා: පැය 5ක් ඉගෙන ගත්තොත්, පැය 4ටයි 6ටයි අතර අගයක්
return 75 + ((85 - 75) / (6 - 4)) * (new_hours_studied - 4)
# අලුත් දත්තයක් දීලා පුරෝකථනය කරමු.
predicted_score = simple_prediction_model(5) # පැය 5ක් ඉගෙන ගත්තොත්?
print(f"පැය 5ක් ඉගෙන ගත්තොත් ලැබෙන ලකුණු: {predicted_score}")
predicted_score_new = simple_prediction_model(7) # පැය 7ක් ඉගෙන ගත්තොත්?
print(f"පැය 7ක් ඉගෙන ගත්තොත් ලැබෙන ලකුණු: {predicted_score_new}")
මේ උදාහරණයෙන් පෙන්නුම් කරන්නේ කොහොමද කලින් තිබුණු දත්ත (data
) පාවිච්චි කරලා, අලුත් දත්තයක (new_hours_studied
) ප්රතිඵලය (predicted_score
) පුරෝකථනය කරන්නේ කියලා. ඇත්ත Machine Learning models මේකට වඩා ගොඩක් සංකීර්ණ වුණත්, මූලික අදහස තමයි මේක: දත්ත වලින් ඉගෙනගෙන, අනාගතය ගැන පුරෝකථනය කිරීම.
Deep Learning (DL) වලට කිමිදෙමු.
හරි, දැන් අපි කතා කරමු Deep Learning (DL) ගැන. Deep Learning කියන්නේ Machine Learning වලම subset එකක්, නැත්නම් ML වලටත් වඩා විශේෂිත ක්ෂේත්රයක්. මේක විශේෂ වෙන්නේ මේක නිර්මාණය කරලා තියෙන්නේ මිනිස් මොළයේ ස්නායු ජාල (neural networks) ක්රියා කරන ආකාරය ආදර්ශයට අරගෙනයි.
Neural Networks යනු කුමක්ද?
Deep Learning algorithms, Artificial Neural Networks (ANNs) කියන දේ භාවිතා කරනවා. මේවා ස්ථර (layers) ගණනාවකින් සමන්විතයි. මේ ස්ථර අතරේ, දත්ත එක් ස්ථරයකින් තවත් ස්ථරයකට ගමන් කරනවා. මේ ස්ථර ගණන වැඩි වෙන තරමට (ඒ කියන්නේ network එක "deep" වෙන තරමට), ඒක Deep Learning network එකක් වෙනවා. මේවාට ඉතා සංකීර්ණ රටාවන් (patterns) දත්ත වලින් හඳුනා ගැනීමේ හැකියාව තියෙනවා.
Deep Learning මේ දවස්වල වේගයෙන් දියුණු වෙන්න ප්රධාන හේතු දෙකක් තියෙනවා:
- Big Data: විශාල වශයෙන් දත්ත ලබා ගැනීමට ඇති හැකියාව. Deep Learning models වලට හොඳට වැඩ කරන්න විශාල දත්ත ප්රමාණයක් ඕනේ.
- Computational Power: GPUs (Graphics Processing Units) වගේ දේවල් නිසා පරිගණකවල සැකසුම් හැකියාව ඉතා ඉහළ මට්ටමකට දියුණු වීම. මේවා Deep Learning models train කරන්න අත්යවශ්යයි.
Deep Learning වල යෙදීම්
Deep Learning අද ගොඩක් ක්ෂේත්රවල භාවිතා වෙනවා:
- Image Recognition: ෆෝන් එකේ Face ID, Google Photos වල තියෙන පුද්ගලයින් සහ වස්තූන් හඳුනා ගැනීම.
- Natural Language Processing (NLP): Google Translate, Siri, chatbots, Large Language Models (LLMs) වගේ දේවල් (ChatGPT වගේ).
- Self-driving Cars: පාරවල්, වාහන, පදිකයින් හඳුනා ගැනීම.
- Speech Recognition: කටහඬ හඳුනා ගැනීම.
AI, ML සහ Deep Learning අතර සම්බන්ධය
මේ තුන අතර තියෙන සම්බන්ධය ඉතාම සරලව රූපයකින් පෙන්වන්න පුළුවන්:
AI
(විශාලම සංකල්පය)
└── Machine Learning
(AI හි උප කුලකයක්)
└── Deep Learning
(Machine Learning හි උප කුලකයක්)
ඒ කියන්නේ:
- AI කියන්නේ පරිගණකවලින් බුද්ධිමත් හැසිරීම් අනුකරණය කරන, පුළුල්ම සංකල්පය.
- Machine Learning කියන්නේ පරිගණකවලට දත්ත වලින් ඉගෙන ගන්න පුළුවන් විදියට හදන ක්රමවේද. මේවා AI ක්ෂේත්රයේ ප්රධාන කොටසක්.
- Deep Learning කියන්නේ ස්නායු ජාල (Neural Networks) භාවිතා කරලා, විශාල දත්ත ප්රමාණයක් සමග වැඩ කරන, Machine Learning වලම දියුණු ආකාරයක්.
ඒ නිසා, සියලුම Deep Learning යනු Machine Learning වේ, සියලුම Machine Learning යනු AI වේ. නමුත් සියලුම AI යනු Machine Learning නොවේ, සහ සියලුම Machine Learning යනු Deep Learning නොවේ.
සැබෑ ලෝකයේ AI භාවිතයන් (Real-world Applications)
දැන් අපි බලමු මේ AI, ML, DL තාක්ෂණයන් අපේ එදිනෙදා ජීවිතයේ කොතනද භාවිතා වෙන්නේ කියලා. මේකෙන් ඔයාලට හොඳ අවබෝධයක් ලැබෙයි මේවා කෙතරම් ප්රායෝගිකද කියලා.
1. නිර්දේශ පද්ධති (Recommendation Systems)
- Netflix, YouTube, Spotify: ඔබ නරඹන, සවන් දෙන, හෝ මිලදී ගන්නා දේවල් මත පදනම්ව, ඔබට කැමති විය හැකි වෙනත් දේවල් නිර්දේශ කරනවා. මේවා Machine Learning වලට හොඳම උදාහරණ.
- e-commerce sites (Daraz, Amazon): ඔබ කලින් බැලූ නිෂ්පාදන, මිලදී ගත් දේවල් අනුව ඔබට අලුත් නිෂ්පාදන පෙන්වනවා.
2. කටහඬ සහායකයින් (Voice Assistants)
- Siri, Google Assistant, Amazon Alexa: ඔබේ කටහඬ හඳුනාගෙන, විධාන තේරුම් ගෙන ක්රියා කරනවා. මේවාට Natural Language Processing (NLP) සහ Speech Recognition වැනි Deep Learning තාක්ෂණයන් පදනම් වෙනවා.
3. ස්වයංක්රීය වාහන (Self-driving Cars)
- Tesla, Google's Waymo: කැමරා, sensors භාවිතයෙන් පරිසරය හඳුනාගෙන, තීරණ ගෙන, රිය පැදවීමට Deep Learning සහ Computer Vision තාක්ෂණයන් භාවිතා කරනවා.
4. වෛද්ය විද්යාව (Healthcare)
- රෝග හඳුනා ගැනීම: MRI scans, X-rays වැනි වෛද්ය රූප විශ්ලේෂණය කරලා රෝග හඳුනා ගැනීමට AI භාවිතා කරනවා. (පිළිකා හඳුනා ගැනීම).
- ඖෂධ සංවර්ධනය: නව ඖෂධ සොයා ගැනීම වේගවත් කිරීමට සහ ඒවායේ කාර්යක්ෂමතාව පුරෝකථනය කිරීමට AI භාවිතා කරනවා.
5. මුල්ය ක්ෂේත්රය (Finance)
- වංචා හඳුනා ගැනීම (Fraud Detection): Credit card ගනුදෙනු වල අසාමාන්ය රටාවන් හඳුනාගෙන වංචා වැළැක්වීමට Machine Learning භාවිතා කරනවා.
- Share Market පුරෝකථනය: Share market එකේ මිල ගණන් පුරෝකථනය කිරීමට.
6. ස්පෑම් හඳුනා ගැනීම (Spam Detection)
- Gmail, Outlook වැනි email සේවාවන් වලට එන spam emails ස්වයංක්රීයව හඳුනාගෙන block කිරීමට Machine Learning භාවිතා කරනවා.
7. Large Language Models (LLMs)
- ChatGPT, Google Bard (Gemini): මේවා අද දවසේ ඉතාම ජනප්රිය AI models. මේවා විශාල දත්ත ප්රමාණයකින් ඉගෙනගෙන, මිනිස් භාෂාව තේරුම් ගෙන, ප්රශ්න වලට උත්තර දෙන්න, ලිපි ලියන්න, code ලියන්න වගේ දේවල් කරන්න පුළුවන්. මේවා Deep Learning තාක්ෂණය මත පදනම් වෙලා තියෙනවා.
අවසාන වශයෙන්
ඉතින් යාලුවනේ, අද අපි කෘතිම බුද්ධිය (AI), Machine Learning සහ Deep Learning කියන දේවල් ගැන ඉතා සරලව තේරුම් ගත්තා. ඒවගේම මේවා එකිනෙකට කොහොමද සම්බන්ධ වෙන්නේ කියලත්, අපේ එදිනෙදා ජීවිතයට කොහොමද බලපාන්නේ කියලත් අපි දැක්කා.
මේ ක්ෂේත්රය අද ලෝකයේ වේගයෙන්ම දියුණු වන ක්ෂේත්ර වලින් එකක්. ඔබත් software engineering හෝ IT ක්ෂේත්රයේ ඉන්නවා නම්, මේ ගැන හොඳ අවබෝධයක් ලබාගැනීම අනාගතයේදී ඔබට විශාල වාසියක් වෙයි. මේක ආරම්භයක් විතරයි! තවත් ගොඩක් දේවල් මේ ක්ෂේත්රයේ ඉගෙන ගන්න තියෙනවා.
ඔබට මේ ලිපිය ප්රයෝජනවත් වෙන්න ඇති කියලා හිතනවා. ඔබට AI, ML, Deep Learning ගැන මොනවා හරි ප්රශ්න තියෙනවා නම්, නැත්නම් මේ ගැන ඔබේ අත්දැකීම් බෙදාගන්න කැමති නම්, පහළින් comment එකක් දාන්න. අපි ඊළඟ ලිපියකින් හමුවෙමු! සුබ දවසක්! 👋