AI ගණිතය: සම්භාවිතාව සහ සංඛ්යාලේඛන | Sinhala Guide

AI වලට ගණිතය අත්යවශ්ය ඇයි? සම්භාවිතාව සහ සංඛ්යාලේඛන වල වැදගත්කම
ආයුබෝවන් යාළුවනේ! අද අපි කතා කරන්න යන්නේ AI (Artificial Intelligence) සහ Machine Learning වලට නැතුවම බැරි විෂය ක්ෂේත්රයක් ගැන. ඒ තමයි සම්භාවිතාව (Probability) සහ සංඛ්යාලේඛන (Statistics). සමහරවිට ඔයාලට හිතෙයි, "අපෝ! ගණිතයද?" කියලා. ඒත් බයවෙන්න එපා, මම මේක සරලව, ඔයාලට තේරෙන භාෂාවෙන් කියලා දෙන්නම්.
AI කියන්නේ දත්ත වලින් ඉගෙනගෙන, තීරණ ගන්න පුළුවන් පද්ධති හදන එකනේ. ඉතින්, දත්ත කියන්නේ අනිශ්චිත (uncertain) දේවල් ගොඩක් තියෙන තැනක්. ඒ අනිශ්චිතතාවය තේරුම් ගන්නත්, ඒකෙන් නිවැරදි තීරණ ගන්නත් අපිට Probability සහ Statistics අවශ්ය වෙනවා. හිතන්න, ඔයා අනාගතය ගැන පුරෝකථනය කරනවා වගේ වැඩක්!
මේ tutorial එකෙන් අපි, AI සහ Machine Learning වලට අත්යවශ්ය මූලික සංකල්ප කිහිපයක් ගැඹුරින් තේරුම් ගමු:
- සම්භාවිතා ව්යාප්ති (Probability Distributions) මොනවද සහ ඒවා AI වලට වැදගත් වෙන්නේ කොහොමද?
- බේයිස් ප්රමේයය (Bayes' Theorem) කියන්නේ මොකක්ද සහ ඒක AI වලට කොහොමද පාවිච්චි කරන්නේ?
- සංඛ්යාන අනුමානය (Statistical Inference) කියන්නේ මොකක්ද සහ දත්ත වලින් තීරණ ගන්නේ කොහොමද?
- කල්පිත පරීක්ෂාව (Hypothesis Testing) මගින් අපේ නිගමන කොච්චර විශ්වාසදායකද කියලා බලන්නේ කොහොමද?
ඉතින්, අපි පටන් ගමු නේද?
සම්භාවිතාව (Probability) සහ එහි මූලිකාංග (Fundamentals)
සම්භාවිතාව කියන්නේ යම් සිදුවීමක් (event) සිදුවීමේ අවස්ථාව (chance) සංඛ්යාත්මකව මනින ක්රමයක්. ඒක 0 (සිදුවීමට කිසිසේත් ඉඩක් නැත) සිට 1 (නිසැකවම සිදුවේ) දක්වා අගයක් ගන්නවා. උදාහරණයක් විදියට, කාසියක් උඩ දාලා 'මුද්රාව' (Heads) වැටීමේ සම්භාවිතාව 0.5 (50%) කියලා අපි දන්නවා.
- සිදුවීම (Event): අපි උනන්දු වන ප්රතිඵලය (outcome). උදා: කාසියක් උඩ දැමූ විට මුද්රාව වැටීම.
- නියැදි අවකාශය (Sample Space): සිදුවිය හැකි සියලුම ප්රතිඵල එකතුව. උදා: කාසියක් උඩ දැමූ විට {මුද්රාව, අගය} ({Heads, Tails}).
- ප්රතිඵලය (Outcome): තනි සිදුවීමක්. උදා: මුද්රාව වැටීම.
කොන්දේසිගත සම්භාවිතාව (Conditional Probability)
මේක ටිකක් වැදගත් සංකල්පයක්. කොන්දේසිගත සම්භාවිතාව කියන්නේ, එක් සිදුවීමක් (Event A) සිදුවීමේ සම්භාවිතාව, තවත් සිදුවීමක් (Event B) දැනටමත් සිදුවී ඇති බව දැන සිටින විට. මේක ලියන්නේ P(A|B)
විදියටයි. ඒ කියන්නේ "B සිදුවී ඇති විට A සිදුවීමේ සම්භාවිතාව".
උදාහරණයක් විදියට, ඔයාට උණ (fever) තියෙනවා කියලා හිතමු. ඒත් උණ හැදෙන්නේ ගොඩක් ලෙඩ රෝග නිසා. ඒත් ඔයාට 'ඩෙංගු' හැදිලා තියෙනවා කියලා දැනගත්තොත්, ඔයාට උණ හැදීමේ සම්භාවිතාව ගොඩක් වැඩි වෙනවා. මේ වගේ අවස්ථාවලදී Conditional Probability වැදගත් වෙනවා.
සම්භාවිතා ව්යාප්ති (Probability Distributions): AI හි හදවත
Probability distribution එකක් කියන්නේ යම් විචල්යයක (variable) විවිධ අගයන් සිදුවීමේ සම්භාවිතාවන් කොහොමද බෙදී යන්නේ කියලා පෙන්වන සටහනක් හෝ ශ්රිතයක් (function) විදියට හඳුන්වන්න පුළුවන්. AI models, විශේෂයෙන්ම Generative Models, මේ distributions වලින් තමයි ඉගෙනගෙන අලුත් data generate කරන්නේ.
විවිධ වර්ගයේ සම්භාවිතා ව්යාප්ති
ප්රධාන වශයෙන් වර්ග දෙකක් තියෙනවා:
- විච්ඡින්න සම්භාවිතා ව්යාප්ති (Discrete Probability Distributions): මේවා ගණන් කළ හැකි (countable) ප්රතිඵල සඳහා යොදා ගන්නවා. උදාහරණයක් විදියට, දාදු කැටයක් දමන විට වැටෙන අගය (1, 2, 3, 4, 5, 6).
- සන්තතික සම්භාවිතා ව්යාප්ති (Continuous Probability Distributions): මේවා අඛණ්ඩ (uncountable) ප්රතිඵල සඳහා යොදා ගන්නවා. උදාහරණයක් විදියට, පුද්ගලයෙකුගේ උස, උෂ්ණත්වය.
වැදගත් Discrete Distributions
- බර්නූලි ව්යාප්තිය (Bernoulli Distribution): සාර්ථක (success) හෝ අසාර්ථක (failure) වැනි ප්රතිඵල දෙකක් පමණක් ඇති අත්හදා බැලීම් සඳහා. උදා: කාසියක් උඩ දැමීම.
- ද්විපද ව්යාප්තිය (Binomial Distribution): ස්වාධීන බර්නූලි අත්හදා බැලීම් කිහිපයකින් (n) සාර්ථකත්වයන් ගණන (k) ලැබීමේ සම්භාවිතාව. උදා: කාසි 10ක් උඩ දමා 'මුද්රා' 7ක් ලැබීමේ සම්භාවිතාව.
- පොයිසන් ව්යාප්තිය (Poisson Distribution): යම් නිශ්චිත කාල පරිච්ඡේදයක් තුළ හෝ ප්රදේශයක් තුළ සිදුවීම් ගණනක සම්භාවිතාව. උදා: එක් දිනක් තුළ බැංකුවකට පැමිණෙන පාරිභෝගික සංඛ්යාව.
වැදගත් Continuous Distributions
- මධ්යන්යය (Mean / μ): දත්තවල මධ්ය ලක්ෂ්යය. Bell curve එකේ මුදුන.
- සම්මත අපගමනය (Standard Deviation / σ): දත්ත, මධ්යන්යයෙන් කොතරම් දුරට විසිරී ඇත්දැයි පෙන්වයි. කුඩා Standard Deviation එකක් කියන්නේ දත්ත මධ්යන්යයට ආසන්නව තියෙනවා කියන එකයි, විශාල එකක් කියන්නේ දත්ත වැඩිපුර විසිරී ඇති බවයි.
- ඒකාකාර ව්යාප්තිය (Uniform Distribution): යම්කිසි පරාසයක් (range) තුළ ඇති ඕනෑම අගයකට එකම සම්භාවිතාවක් ඇති විට. උදා: 1 සිට 6 දක්වා දාදු කැටයක් දැමීම (Discrete Uniform), හෝ 0 ත් 1 ත් අතර අහඹු සංඛ්යාවක් (Continuous Uniform).
ප්රමාණික ව්යාප්තිය (Normal Distribution / Gaussian Distribution):මේක සමහරවිට ඔයාලා ගොඩක්ම අහලා ඇති. Normal Distribution එක "bell curve" එකක් වගේ පෙනෙන, සමමිතික (symmetric) ව්යාප්තියක්. ස්වභාවික ලෝකයේ බොහෝ දත්ත Normal Distribution එකකට අනුව බෙදී යනවා (උස, බර, IQ scores). Machine Learning වලදීත් මේක ගොඩක් වැදගත්. ගොඩක් ML algorithms මේ data distribution එක උපකල්පනය කරනවා.Normal Distribution එක තීරණය වෙන්නේ ප්රධාන පරාමිති දෙකකින්:උදාහරණයක්: Python භාවිතයෙන් Normal Distribution එකක් බලමු
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats
# Normal Distribution එකේ පරාමිති
mean = 0 # මධ්යන්යය
std_dev = 1 # සම්මත අපගමනය
# අහඹු Normal Distribution data 10000ක් generate කරමු
data = np.random.normal(mean, std_dev, 10000)
# Histogram එකක් මගින් distribution එක බලමු
plt.hist(data, bins=50, density=True, alpha=0.6, color='g', label='Histogram of Data')
# Normal Distribution PDF (Probability Density Function) එක අඳිමු
xmin, xmax = plt.xlim()
x = np.linspace(xmin, xmax, 100)
p = stats.norm.pdf(x, mean, std_dev)
plt.plot(x, p, 'k', linewidth=2, label='Normal Distribution PDF')
plt.title('Normal Distribution (Gaussian Distribution)')
plt.xlabel('Value')
plt.ylabel('Probability Density')
plt.legend()
plt.grid(True)
plt.show()
print(f"Generated data Mean: {np.mean(data):.2f}")
print(f"Generated data Standard Deviation: {np.std(data):.2f}")
මේ කෝඩ් එක රන් කරාම ඔයාලට පෙනෙයි bell curve එකක් වගේ histogram එකක් හැදෙනවා. ඒකෙන් පෙන්නන්නේ වැඩිපුරම data points තියෙන්නේ mean එක වටා කියන එකයි, mean එකෙන් ඈතට යන්න යන්න data points අඩු වෙනවා කියන එකයි.
බේයිස් ප්රමේයය (Bayes' Theorem): AI හි රහස් ආයුධය
බේයිස් ප්රමේයය කියන්නේ දත්ත වලින් අලුත් තොරතුරු ලැබෙනකොට අපේ විශ්වාසයන් (beliefs) යාවත්කාලීන කරන්න උදව් වෙන ගණිතමය සූත්රයක්. මේක Conditional Probability එකේම දියුණු සංකල්පයක්. විශේෂයෙන්ම Naive Bayes Classifier වගේ Machine Learning algorithms වලදී මේක ප්රබලව යොදා ගන්නවා.
මේ තමයි Bayes' Theorem එකේ සූත්රය:
P(A|B) = P(B|A) * P(A) / P(B)
P(A|B)
: පශ්චාත් සම්භාවිතාව (Posterior Probability) - B සිදුවී ඇති විට A සිදුවීමේ සම්භාවිතාව. (අපිට දැනගන්න ඕනෑ දේ)P(B|A)
: සම්භාවිතාව (Likelihood) - A සිදුවී ඇති විට B සිදුවීමේ සම්භාවිතාව. (අපිට දත්ත වලින් ලැබෙන සාක්ෂි)P(A)
: පූර්ව සම්භාවිතාව (Prior Probability) - B සිදුවීමට පෙර A සිදුවීමේ මුල් සම්භාවිතාව. (අපේ මුල් විශ්වාසය)P(B)
: සාක්ෂි (Evidence) - B සිදුවීමේ සම්භාවිතාව. (B සිදුවීමට ඇති සමස්ත අවස්ථාව)
සරල උදාහරණයක්: Spam Email හඳුනා ගැනීම
ඔයාට ලැබෙන Email එකක් 'Spam' ද 'Not Spam' ද කියලා හඳුනා ගන්න Bayes' Theorem එක යොදා ගන්න පුළුවන්. හිතන්න, 'Viagra' කියන වචනය Email එකක තියෙනවා කියලා.
A
: Email එක Spam වීම.B
: Email එකේ 'Viagra' යන වචනය තිබීම.P(A)
: සාමාන්යයෙන් ලැබෙන Email වලින් Spam වන සම්භාවිතාව (Prior - අපේ මුල් විශ්වාසය). උදා: 0.1 (10%).P(B|A)
: Spam Email එකක 'Viagra' යන වචනය තිබීමේ සම්භාවිතාව (Likelihood). උදා: 0.5 (50%) - Spam Email වල 'Viagra' බහුලයි.
දැන් P(B)
ගණනය කරමු. P(B) = P(B|Spam)P(Spam) + P(B|Not Spam)P(Not Spam)
.
Not Spam Email එකක 'Viagra' තියෙන සම්භාවිතාව (P(B|Not Spam)) ගොඩක් අඩුයි, උදා: 0.001. P(Not Spam) = 1 - P(Spam) = 1 - 0.1 = 0.9.
P(B) = (0.5 * 0.1) + (0.001 * 0.9) = 0.05 + 0.0009 = 0.0509
දැන් අපි P(A|B)
ගණනය කරමු. ඒ කියන්නේ 'Viagra' කියන වචනය තිබ්බොත් ඒක Spam Email එකක් වීමේ සම්භාවිතාව.
P(Spam|'Viagra') = P('Viagra'|Spam) * P(Spam) / P('Viagra')
P(Spam|'Viagra') = 0.5 * 0.1 / 0.0509 = 0.05 / 0.0509 ≈ 0.982
දැන් හරි! 'Viagra' කියන වචනය තියෙන Email එකක් Spam වෙන්න 98.2%ක වගේ ඉහළ සම්භාවිතාවක් තියෙනවා! (මුලින් තිබ්බ 10%ට වඩා ගොඩක් වැඩියි). මේකෙන් පෙන්නන්නේ අලුත් data (Viagra කියන වචනය) ලැබුණාම අපේ විශ්වාසය කොහොමද වෙනස් වෙන්නේ කියන එකයි.
සංඛ්යාන අනුමානය (Statistical Inference) සහ දත්ත වලින් ඉගෙන ගැනීම
Statistical Inference කියන්නේ අපිට තියෙන දත්ත නියැදියක් (sample) පාවිච්චි කරලා, ඒ දත්ත ගත්ත මහා ජනගහනයක් (population) ගැන නිගමනවලට එළඹෙන එක. AI models වලදිත් අපි කරන්නේ පුහුණු දත්ත (training data - sample) වලින් ඉගෙනගෙන, මුළු ලෝකයම (population) ගැන අනාවැකි කියන එක.
- ජනගහනය (Population): අපි අධ්යයනය කිරීමට කැමති සියලුම දේවල් එකතුව. උදා: ලංකාවේ සියලුම සිසුන්.
- නියැදිය (Sample): ජනගහනයෙන් තෝරාගත් කුඩා කොටසක්. උදා: ලංකාවේ පාසල් 10කින් තෝරාගත් සිසුන් 500ක්.
මධ්යම සීමා ප්රමේයය (Central Limit Theorem - CLT)
මේක Statistical Inference වල ඉතාම වැදගත් ප්රමේයයක්. CLT එකෙන් කියන්නේ, අපි ඕනෑම distribution එකක් තියෙන population එකකින් විශාල නියැදි (large samples) ගණනාවක් අරගෙන, ඒ හැම නියැදියකම මධ්යන්යය (mean) ගණනය කළොත්, ඒ නියැදි මධ්යන්යයන්ගේ distribution එක Normal Distribution එකකට ආසන්න වෙනවා කියන එකයි. මේක තමයි Hypothesis Testing වලට පදනම වෙන්නේ.
කල්පිත පරීක්ෂාව (Hypothesis Testing): තීරණ ගැනීම
Hypothesis Testing කියන්නේ අපිට තියෙන දත්ත පාවිච්චි කරලා, යම්කිසි ප්රකාශයක් (hypothesis) සත්යද නැත්ද කියලා සංඛ්යානමය වශයෙන් තීරණය කරන ක්රමයක්. AI models වල කාර්ය සාධනය (performance) ඇගයීමේදී හෝ නව feature එකක බලපෑම තක්සේරු කිරීමේදී මේක ගොඩක් ප්රයෝජනවත්.
ප්රධාන සංකල්ප
- ශූන්ය කල්පිතය (Null Hypothesis - H0): අපි ප්රතික්ෂේප කරන්න උත්සාහ කරන ප්රකාශය. සාමාන්යයෙන් "කිසිම වෙනසක් නැත" හෝ "කිසිම සම්බන්ධයක් නැත" වැනි දෙයක්. උදා: "අලුත් ML model එක පැරණි model එකට වඩා හොඳ නැත."
- විකල්ප කල්පිතය (Alternative Hypothesis - H1): අපි ඔප්පු කිරීමට උත්සාහ කරන ප්රකාශය. සාමාන්යයෙන් H0 ට ප්රතිවිරුද්ධයි. උදා: "අලුත් ML model එක පැරණි model එකට වඩා හොඳය."
- වැදගත්කමේ මට්ටම (Significance Level - α): මේක තමයි අපිට Null Hypothesis එක වැරදියට ප්රතික්ෂේප කිරීමේ අවස්ථාව. සාමාන්යයෙන් 0.05 (5%) හෝ 0.01 (1%) වගේ අගයක් ගන්නවා. ඒ කියන්නේ Null Hypothesis එක සත්ය වුවත්, අපි වැරදියට ප්රතික්ෂේප කරන්න 5%ක අවස්ථාවක් දෙනවා කියන එකයි.
- P-value: Null Hypothesis එක සත්ය යැයි උපකල්පනය කළ විට, අපට ලැබුණු දත්ත වලට වඩා අන්ත (extreme) ප්රතිඵලයක් ලැබීමේ සම්භාවිතාව. P-value එක Significance Level (α) එකට වඩා අඩු නම්, අපි Null Hypothesis එක ප්රතික්ෂේප කරනවා.
උදාහරණයක්: අලුත් වෙබ් අඩවි නිර්මාණයක් හොඳද? (A/B Testing)
හිතන්න, ඔයාලා අලුත් වෙබ් අඩවි නිර්මාණයක් (New Design) හැදුවා, පරණ නිර්මාණයට (Old Design) වඩා හොඳද කියලා බලන්න. ඔයාලා පරීක්ෂණයක් කරනවා:
- කල්පිත සකස් කිරීම:
H0
: අලුත් නිර්මාණය සහ පැරණි නිර්මාණය අතර Conversion Rate එකේ (උදා: භාණ්ඩයක් මිලදී ගන්නා අයගේ ප්රතිශතය) සංඛ්යානමය වශයෙන් සැලකිය යුතු වෙනසක් නැත.H1
: අලුත් නිර්මාණයට පැරණි නිර්මාණයට වඩා වැඩි Conversion Rate එකක් ඇත.
- දත්ත එකතු කිරීම: අහඹු ලෙස පරිශීලකයින් දෙකට බෙදා, එක් කණ්ඩායමකට Old Design එකත්, අනෙක් කණ්ඩායමකට New Design එකත් පෙන්නලා Conversion Rate එක සටහන් කරනවා.
- Test Statistic ගණනය කිරීම: දත්ත මත පදනම්ව, T-test හෝ Z-test වැනි සංඛ්යානමය පරීක්ෂණයක් (statistical test) භාවිතයෙන් Test Statistic එකක් ගණනය කරනවා.
- P-value තීරණය කිරීම: Test Statistic එකෙන් P-value එක ගණනය කරනවා.
- නිගමනය:
- P-value < α (උදා: 0.05) නම්: අපි Null Hypothesis එක ප්රතික්ෂේප කරනවා. ඒ කියන්නේ අලුත් නිර්මාණය ඇත්තටම හොඳයි කියලා අපිට සංඛ්යානමය සාක්ෂි තියෙනවා.
- P-value ≥ α නම්: අපි Null Hypothesis එක ප්රතික්ෂේප කරන්නේ නැහැ. ඒ කියන්නේ අලුත් නිර්මාණය හොඳයි කියන්න තරම් ප්රමාණවත් සාක්ෂි නැහැ.
මේ ක්රමවේදය Machine Learning model එකක දෙවර්ගයේ වැරදි (Type I and Type II errors) අවම කරගන්නත්, model selection වලදීත් ඉතා ප්රයෝජනවත් වෙනවා.
- Type I Error (False Positive): Null Hypothesis එක සත්ය වුවත්, එය ප්රතික්ෂේප කිරීම. (නිරෝගී කෙනෙක්ට රෝගය තියෙනවා කියනවා වගේ).
- Type II Error (False Negative): Null Hypothesis එක අසත්ය වුවත්, එය ප්රතික්ෂේප නොකිරීම. (රෝගය තියෙන කෙනෙක්ට රෝගය නැහැ කියනවා වගේ).
අවසාන වචනය
ඉතින් යාළුවනේ, මේ tutorial එකෙන් ඔයාලට Probability සහ Statistics වල මූලික සංකල්ප, විශේෂයෙන්ම ඒවා AI සහ Machine Learning වලට කොච්චර වැදගත්ද කියලා පැහැදිලි කරන්න මම උත්සාහ කළා. අපි Probability Distributions, Bayes' Theorem, Statistical Inference, සහ Hypothesis Testing වගේ දේවල් ගැන කතා කළා.
මේ සංකල්ප, AI models වල තියෙන අනිශ්චිතභාවය (uncertainty) තේරුම් ගන්න, දත්ත වලින් අර්ථවත් නිගමන ගන්න, සහ නිවැරදි අනාවැකි කියන්න නැතුවම බැරි දේවල්. මේවා තමයි AI ලෝකයේ අපේ ගමනට තියෙන පාරේ අඩිතාලම. හරියට සිංහල කෑමක් හදනකොට තුනපහ නැතුව බෑ වගේ, AI වලට Probability & Statistics නැතුව බෑ!
මේක ආරම්භයක් විතරයි. මේ සංකල්ප තව දුරටත් ගවේෂණය කරලා, ඒවා ප්රායෝගිකව යොදාගෙන බලන්න ඔයාලට පුළුවන්. දත්ත එක්ක වැඩ කරනකොට, Machine Learning models හදනකොට මේ හැමදෙයක්ම ඔයාලට උදව් වෙයි.
මේ tutorial එක ගැන ඔයාලගේ අදහස්, ප්රශ්න පහළින් කමෙන්ට් කරන්න. තව මොන වගේ topics ගැනද ඔයාලට ඉගෙනගන්න ඕනෑ කියලා කියන්නත් අමතක කරන්න එපා. අපි ඊළඟ tutorial එකකින් හමුවෙමු!