සිංහලෙන් Machine Learning

  


හැදින්වීම

කෘතීම බුද්ධිය හා සම්බන්ධ ප්‍රධානතම විෂයකි Machine Learning හෙවත් යන්ත්‍රවලට ඉගෙන ගැනීමට පුරුදු කිරීම හා සම්බන්ධ විෂය ක්ෂේත්‍රය. කෘතීම බුද්ධිය පිළිබද මගේ පෙර ලිපියට මෙතැනින් පිවිසෙන්න.
"Machine learning (මැෂින් ලර්නින් - ML) යනු අත්දැකීම් තුළින් ස්වයංක්‍රීයව වැඩිදියුණු වන පරිගණක ඇල්ගොරිතම පිළිබද අධ්‍යයනය කිරීමයි."

විකිපීඩියා විශ්වකෝෂයේ Machine Learning නිර්වචනය කරන්නේ එලෙසයි. වෙනත් වචන වලින් කිවහොත්, Machine Learning යනු යම් ගැටළුවක විසඳීමේ ඇල්ගොරිතමය නැතහොත් එහි විසදුම් ක්‍රමය හෙවත් තර්කනය (Logic) සම්පූර්ණයෙන්ම කේතනය කරනවා (Hard-coded) වෙනුවට, එම ගැටලුවට අදාළ දත්ත හරහා පරිගණකයට ම  ගැටලුවේ විසදුම හෙවත් ඇල්ගොරිතමය සොයා ගැනීමට ඉඩ සලසා දීමයි. ගැටළුවට අදාළ දත්ත වැඩි වැඩියෙන් නිරාවරණය කිරීමෙන් යම් ගැටළුවක් සඳහා විසඳුම් ඇල්ගොරිතමය වඩා නිරවද්‍යව සොයා ගැනීමට පරිගණකයට හැකි වේ.

වෙනත් වචන වලින් කිවහොත්, Machine-learning ඉගෙනුම් ක්‍රම  විශාල දත්ත තුළ සැගවී ඇති විවිධ රටාවන් සොයා ගැනීමට විවිධ සංඛ්‍යානන (statistical) හැසිරීම් භාවිත කරයි. මෙහිදී "දත්ත (Data)" යන ගණයට බොහෝ දේ ඇතුළත් වේ - අංක (numbers), වචන (words), රූප (images), හැසිරීම් (behaviors), ක්‍රියාකාරී අයිතම (action items), සංවේදක දත්ත (Sensor data) සහ තවත් බොහෝ දේ. යම් දත්තයක් ඩිජිටල් නැත්නම් පරිගණක සඥාවක් ලෙස නිරුපණය කළ හැකි නම්, එය machine-learning ඇල්ගොරිතමයක් සදහා යොදා ගත හැකිය.

Machine Learning විෂය පථයේ දී මිනිස් ක්‍රියාකරුවකුගේ (ML programmer) ප්‍රධාන කාර්යභාරය වන්නේ,

  • ගැටළුවට අදාළ ගුණාත්මක හා ප්‍රමානාත්මක දත්ත කට්ටලයක් (Data-set එකක්) සොයා ගැනීම
  • සුදුසු ඉගෙනුම් ඇල්ගොරිතමයක් (learning/ training algorithm) තෝරා ගැනීම
  • ඉගෙනුම්-ඇල්ගොරිතමයේ පරාමිතීන් නිසි පරිදි සුසර කිරීම
  • ගැටලුවට සදහා ගැලපෙන සුදුසු අංග (features) හඳුනා ගෙන ඒවා දත්තවලින් උකහා ගැනීම - feature engineering


සාමාන්‍ය ක්‍රමලේඛන (Traditional Programming) සමග සැසදීමක් 

ඔබ ML වෙත ආධුනිකයෙක් නම්, පහත උදාහරණය මඟින් ML සැබවින්ම ක්‍රියා කරන ආකාරය පිළිබඳ මූලික අවබෝධයක් ලබා දෙනු ඇත.

සාම්ප්‍රදායික ක්‍රමලේඛනයේදී අප කරන්නේ, යම් ගැටළුවක් විසඳීම සඳහා අවශ්‍ය ඇල්ගොරිතමය නැත්නම් විසදුම, තර්කනය, විසදුම් ශ්‍රිතය මිනිස් programmer කෙනෙකු විසින් සම්පුර්ණයෙන් ම ලියන අතර (hard-coded) පසුව අපි වැඩසටහනට (program එකට) අදාළ ප්‍රදාන නැත්නම් ආදාන (inputs) ලබා දෙන සෑම විටම අප (programmer) විසින් ලියන ලද ඇල්ගොරිතමයට අනුව ප්‍රතිදානය (output) නැත්නම් පිළිතුර අපට ලබා දීමයි. programmer විසින් ලියන ලද ඇල්ගොරිතමයේ ගුණාත්මකභාවය මත වැඩසටහනේ (program එකේ) ගුණාත්මකභාවය රඳා පවතී. 

සාම්ප්‍රදායික ක්‍රමලේඛන ක්‍රමය පහත පරිදි පියවර එකක ක්‍රියාවලියකි.
 

රූපය 1: සාම්ප්‍රදායික ක්‍රමලේඛන ක්‍රියාවලිය


සාම්ප්‍රදායික ක්‍රමලේඛන මෙන් නොව, ML හිදී අපට ඇල්ගොරිතමය හෙවත් විසදුම් ශ්‍රිතය යෙදීමට යන පද්ධතිය මඟින් ජනනය කරන බොහෝ ආදාන-ප්‍රතිදාන (input-output) දත්ත ලක්ෂ්‍යයන් අවශ්‍ය වේ. මෙම දත්ත භාවිතයෙන් ML ඉගෙනුම් ඇල්ගොරිතමය, අදාළ පද්ධතිය ක්‍රියාකරන ඇල්ගොරිතමය හෙවත් පද්ධති ශ්‍රිතය ස්වයංක්‍රීයව සොයා ගනු ඇත. එබැවින් මෙහිදී, විසඳුමේ ගුණාත්මකභාවය රදා පවතින්නේ ප්‍රධාන ලෙසම ඉගෙනීමේ ඇල්ගොරිතමය සහ ඉගෙනීමට යොදා ගන්නා දත්තවල ගුණාත්මකබව මතයි. (එනම් දත්ත කට්ටලය තුළ පද්ධතියට අදාළ සියළු අවස්ථා (scenarios) ආවරණය වී තිබිය යුතුය). සාම්ප්‍රදායික ක්‍රමලේඛයට සාපේක්ෂව ML ක්‍රියාවලියට අදියර දෙකක් ඇත,
  1. ඉගෙනීමේ (Learning) හෙවත් පුහුණුකිරීමේ (Training) අදියරය
  2. පුරෝකථනය (Prediction) හෙවත්  අනුමාන (Inference) අදියරය

ඉගෙනීමේ (Learning) හෙවත් පුහුණුකිරීමේ (Training) අදියරය

පුරෝකථනය (Prediction) හෙවත් අනුමාන (Inference) අදියරය
රූපය 2: ML ක්‍රියාවලිය

මොනවද මේ දත්තවල Features ?

අපි මුලින් ම සදහන් කල පරිදි ML හිදී මිනිස් ක්‍රියාකරුවකුගේ එක ප්‍රධාන කාර්යභාරයක් වන්නේ, 
"ගැටලුවට සදහා ගැලපෙන සුදුසු අංග (features - ෆීචර්ස්) හඳුනා ගෙන ඒවා දත්තවලින් උකහා ගැනීම "
යන්නයි. මෙම කොටසේදී අපි බලමු දත්තවලින් උකහා ගන්නා Features  මොනවද කියලා.

Features යනු මැනිය හැකි නැත්නම් සංඛ්‍යාමය වටිනාකමක් ඇති දත්තවල පවතින විවිධ ලාක්ෂණික වේ. ML වලදී වඩා සාර්ථක ප්‍රතිඵල ලබා ගැනීමට නම් වැඩි තොරතුරු ප්‍රමාණයක් අන්තර්ගත වන, එකිනෙකින් ස්වායක්ත Features තෝරා ගැනීම තීරණාත්මක පියවරකි. Features සාමාන්‍යයෙන් සංඛ්‍යාත්මක ය (numeric). පහත උදාහරණය බලන්න.

Uber හෝ PickMe වැනී කුලී රථ සේවයක ගාස්තුව තීරණය කිරීමට භාවිත කරන Features වන්නේ ආරම්භක සහ ගමනාන්තය අතර දුර, දවසේ වේලාව - දවසේ විවිධ වේලාවන්හි විවිධ ගාස්තු ඇති නිසා, සතියේ දිනයක් ද සති අන්තයේ දිනයක් ද යන්න, නිවාඩු දිනයක් ද නැද්ද යන්න, මාර්ග තදබදය, ගමනට යොදාගත් වාහන වර්ගය (ත්‍රි රෝද රථයක්ද - Uber-Tuk, සාමාන්‍ය රථයක්ද - Uer-Zip, සුඛෝපබෝගී රථයක්ද - UberGo or UberX) යනාදිය යි. වෙනත් රටවල නම් කාලගුණික තත්ත්වය ආශ්‍රිත Features වැනි තවත් විවිධ Features යොදා ගනු ලැබේ. එනම් හිම වැටෙනවාද නැද්ද යන්න වැනි සාධකයන් ය. මන්ද හිම වැටෙන විට කුලී රථ ගාස්තු ඉහළ යයි. එබැවින් ML ක්‍රම භාවිතා කරමින් කුලී රථ ගාස්තු තීරණය කිරීමේ ශ්‍රිතය පුරෝකථනය කිරීමට ඔබ උත්සාහ කරන්නේ නම් ඔබ භාවිත කල යුතු Features කෙසේ විය යුතුදැයි ඔබට දැන් අවබෝධයක් ඇත. 

එනම් Features යනු වෙනත් ආකාරයකින් කිවහොත්,  
ඔබ පුරෝකථනය හෝ ඇස්තමේන්තු කිරීමට යන පද්ධතියේ ප්‍රතිදානය (output) කෙරෙහි බලපාවි යයි අපේක්ෂිත සාධකයන් හෝ විචල්‍යයන් ය.  
එබැවින් ඔබේ ML ගැටලුව big-data හෝ data-science හා සම්බන්ධ ගැටළුවක් නම්, බොහෝ විට ඒ හා සම්බන්ධ Features තෝරා ගැනීම ඉහත කුලී රථ ගාස්තු තීරණය කිරීමේ ගැටළුව හා සමාන වනු ඇත.

Machine Vision (රූප සහ වීඩියෝ - images and videos) ආශ්‍රිත ML ගැටළු සැලකු විට, එයට විශේෂ වූ Features ඇත. උදාහරණ ලෙස ඔබට රූපයක පික්සල් අගයන්, රුපයක දාර-කොන්-රවුම් හැඩ (edges, corners and blobs) ආදියේ පිහිටීම, HOG Features, SIFT Features, SURF Features, Optical Flow features ආදිය මෙහිදී Features ලෙස භාවිත කළ හැකිය. Machine Vision සම්බන්ධ මූලික හැදින්වීමක් මගේ මෙම ලිපියෙන් ඔබට ලබා ගත හැකිය. 

ඒ වගේම ස්වාභාවික භාෂා සැකසීමේදී හෙවත් Natural Language Processing හා සම්බන්ධ ML ගැටලුවලට ඊට ආවේණික විශේෂ වෙනත් Features ඇත.


රූපය 3: Machine Vision වල Optical Flow Features

රූපය 4: Machine Vision වල Edge Features

සරල උදාහරණයක්

සත්‍ය වශයෙන්ම y = mx + c (නමුත් අප කලින් නොදන්නා) ලෙස හැසිරෙන පද්ධතියක ක්‍රියා කරන ශ්‍රිතය හෙවත් ඇල්ගොරිතමය සොයා ගැනීමට අපට අවශ්‍ය යැයි උපකල්පනය කරන්න. මේ ගැටළුව විසදීම සදහා ML හා සම්බන්ධ එක් ඉගෙනුම් ක්‍රමයක් (Learning Method එකක්)  භාවිත කර බලමු.

පියවර 1:
පද්ධතියට ලබා දිය හැකි මුළු ආදාන පරාසයම (input range) ආවරණය වන පරිදි විවිධ ආදාන (inputs) ලබා දී පද්ධතියෙන් බොහෝ ආදාන-ප්‍රතිදාන දත්ත ලක්ෂ්‍ය (input-output data points) ප්‍රමාණයක් ලබා ගැනීම.

රූපය 5: සටහන් කර ගන්නා ලද දත්ත ලක්ෂ්‍යයන්


පියවර 2:
එකතු කරන ලද දත්ත ලක්ෂ්‍ය භාවිතයෙන් පුහුණුව කිරීමේ ක්‍රමවේදය (Learning Method) අපි (ML programmer) විසින් තීරණය කරන අතර, ඒ ඇසුරින් පද්ධතිය ක්‍රියාත්මක වන ශ්‍රිතය (Driving function) හඳුනා ගැනීම සඳහා පරිගණකයට/ ML ඇල්ගොරිතමයට ම ඉඩ දෙනු ලැබේ. 

මෙම උදාහරණයේ දී භාවිත වන්නේ Linear Regression නම් ඒකජ බහුපදයක් සොයා ගැනීම සදහා භාවිත කල හැකි සරළ ML ඉගෙනුම් ඇල්ගොරිතමයකි. 

මෙහිදී පද්ධතියේ ශ්‍රිතය y = mx + c ලෙස මුලින් උපකල්පනය කර, එම සම්බන්ධතාවයේ m සහ c අගයන් නිවැරදිව හඳුනා ගැනීම සිදී කරනු ලබයි. මෙම m සහ c අගයන් සොයා ගැනීමේ කොටස මෙම ගැටලුවට අදාළව ඉගෙනීමේ (Learning) හෙවත් පුහුණුකිරීමේ (Training) අදියරය යි .

m සහ c සෙවීමේ ක්‍රියාවලියේදී සරලවම සිදු වන්නේ අප (ML programmer) විසින් අර්ථ දක්වන ලද, ගැටලුවට ගැළපෙන යම් කිසි විශේෂිත ශ්‍රිතයක්  (පද්ධතියේ ශ්‍රිතය වන y = mx + c නොවේ) වන  Loss function එකක අගය අවම කිරීම හෝ Cost function එකක අගය උපරිම කිරීමයි (Solving an Optimization problem).

පියවර 3:
මේ වන විට අපි පද්ධතිය ක්‍රියා කරන ශ්‍රිතය (Driving Function) සොයා ගෙන ඇති බැවින්, දැන් අපට පද්ධතියට ඕනෑම ආදානයක් (Input) ලබා දී ඊට අදාළ පිළිතුර, නැතිනම් ප්‍රතිදානය (Output) ලබා ගත හැකිය. මෙය මෙම උදාහරණයට අදාල පුරෝකථනය (Prediction) හෙවත් අනුමාන (Inference) අදියරය ලෙස හැඳින්වේ.
රූපය 6: ML ඉගෙනුම් අවධිය (Learning Phase) සහ අනුමාන අවධිය (Regression Phase)


සාම්ප්‍රදායික ක්‍රමලේඛනයේදී (traditional programming), අප වෙනත් ක්‍රමයකින් පද්ධතියේ ධාවන ශ්‍රිතය (Driving Function) සොයා ගත යුතුය. එබැවින් Machine Learning (ML) යනු වචනයේ පරිසමාප්ත අර්ථයෙන් ම පරිගණකය විසින් අප වෙනුවෙන් ඉගෙනීමේ කොටස ඉටු කර දීමේ විධික්‍රමයකි.

මෙම උදාහරණය ඔබට ML පිළිබඳ දළ අවබෝධයක් ලබා දුන්නා යැයි මම සිතමි. මෙහිදී අප සාකච්චා කළේ ML හි සරලත ම ඉගෙනුම් ක්‍රමයකි. නමුත් ML හි, වඩාත් සංකීර්ණ ගැටළු විසදීමට සමත් විවිධ ඉගෙනුම් ක්‍රම පවතී. ඒවා අපි ඉදිරි ලිපිවලින් කතා කරමු.

විවිධ ML ගැටළු වර්ග

ප්‍රධාන වශයෙන් ML ගැටළු ආකාර දෙකක් තිබේ.
  1. වර්ගීකරණ ගැටළු (විවික්ත පද්ධති ශ්‍රිත පුරෝකථනය කිරීම) - Classification problems
  2. සන්තතික පද්ධති ශ්‍රිත පුරෝකථනය කිරීමේ ගැටළු - Regression problems

වර්ගීකරණ ගැටළු - Classification problems

වර්ගීකරණ ගැටළුවක් යනු, අපි සෙවීමට යන පද්ධති ශ්‍රිතයට (Driving/ System function) ගත හැක්කේ ප්‍රතිදාන අගයන් පරිමිත ප්‍රමාණයක් පමණක් වන ගැටලුවකි. එනම් පද්ධති ශ්‍රිතයේ සහවසම හෙවත් Co-domain එක නිඛිල (Integers) හෝ වෙනත් විවික්ත සංඛ්‍යා කුලකයකි.

උදාහරණයක් ලෙස මිනිසුන්ගේ ස්ලේශ්මල පටල දත්ත අධ්‍යයනය කර කොවිඩ් 19 (COVID-19) හදුනාගැනීමේ ගැටළුවක් ගත හොත්, එයට තිබිය හැක්කේ ප්‍රතිදාන (Outputs) දෙකක් පමණි. එනම් කොවිඩ් පොසිටිව් (COVID Positive) හෝ කොවිඩ් නෙගටිව් (COVID Negative) යන්නයි. 

වෙනත් වචන වලින් කිවහොත් වර්ගීකරණ ගැටළුවක් හෙවත් Classification ගැටළුවක් යනු විවික්ත ශ්‍රිතයක් (Discrete Function) පුරෝකථනය කිරීමේ ගැටලුවකි.

රූපය 7: වර්ගීකරණ කිරීමක්

සන්තතික පද්ධති ශ්‍රිත පුරෝකථනය කිරීමේ ගැටළු - Regression problems

යම් පද්ධතියක ප්‍රතිදානයට (Output) සන්තතික පරිමාණයෙන් අගයන් ගත හැකි නම් එය Regression ගැටළුවක් ලෙස විසදිය යුතු වේ. එනම් පද්ධති ශ්‍රිතයේ සහවසම හෙවත් Co-domain එක බොහෝ විට තාත්වික සංඛ්‍යා (Real numbers) කුලකයයි. 

උදාහරණ ලෙස ඉතිහාසික දත්ත මත පදනම්ව සමාගමක කොටස් මිල පුරෝකථනය කිරීම, හෙට දවසේ උෂ්ණත්වය පුරෝකථනය කිරීම වැනි ගැටළු ගත හැකිය. ඉහත අප සාකච්ඡා කළ y=mx+c පද්ධතිය පුරෝකථනය කිරීමේ උදාහරණය ද Regression ගැටළුවකට උදාහරණයකි.

රූපය 8: සන්තතික ශ්‍රිත පුරෝකතනයක් 

සමහර ML ගැටළු, වර්ගීකරණය (Classification) හෝ සන්තතික ශ්‍රිත පුරෝකතන (Regression) ගැටළු විය හැකි අතර  තවත් සමහර ගැටළු  මේ මූලික ගැටළු ආකාර දෙකෙහි මිශ්‍රණයක් ලෙස තිබිය හැකිය.

උදාහරණයක් ලෙස වස්තු හදුනා ගැනීමේ හෙවත් Object Detection ගැටළුවක් සැලකුවොත් එහි වස්තුව ස්ථානගත කර ගැනීමේ (Object Localization - Finding the Bounding Box) කොටස  Regression ගැටළුවක් එකක් වන අතර වස්තුව කුමක්දැයි වෙන් කිරීම (Object classification) Classification ගැටළුවකි.

රූපය 9: වස්තු හදුනා ගැනීමේ (Object Detection) ගැටළුවක්

ප්‍රධාන ML ඉගෙනුම් ක්‍රම

අපට කතා කළ හැකි ප්‍රධාන ML ඉගෙනුම් ක්‍රම තුනක් තිබේ.
  1. Supervised Learning  - අධීක්ෂණයක් යටතේ ඉගෙනීම
  2. Unsupervised Learning - අධීක්ෂණය නොකළ ඉගෙනීම
  3. Reinforcement Learning - වැරදි වලින් ඉගෙනීම

Supervised Learning - අධීක්ෂණයක් යටතේ ඉගෙනීම

මෙම ක්‍රමයේදී අප (ML programmer) විසින් විවරණය හෙවත් ලේබල් කරන ලද (Annotated/ Labeled)  වීශාල ආදාන-ප්‍රතිදාන (input-output) දත්ත ප්‍රමාණයක් (Training data-set) ඉගෙනුම් ඇල්ගොරිතමයට ලබා දිය යුතු අතර, ඉගෙනුම් ඇල්ගොරිතමය අප ලබා දුන් දත්තවලට අනුව ආදාන හා ප්‍රතිදාන අතර ශ්‍රිතය හෙවත් සම්බන්ධතාවය පුරෝකථනය කරනු ලබයි. ප්‍රමාණවත් නිරවද්‍යතාවක් ලැබෙන තුරු නැවත නැවත පුහුණු කිරීම සිදු කල යුතු වේ. නිරවද්‍යතාව පරික්ෂා කිරීමට වෙනත් දත්ත කට්ටලයක් (Test data-set) තිබිය යුතු ය.

විවරණය හෙවත් ලේබල් කරන ලද දත්ත (Annotated/ Labeled data) යනු, යම් අදානයකට (input) පැමිණිය යුතු ප්‍රතිදානය (output) සලකුණු කර තිබීමයි. වර්ගීකරණ (Classification) ගැටළු යටතේ අපි කතා කළ කොවිඩ්-19 (COVID-19) පොසිටිව් හෝ නෙගටිව් තීරණය කිරීමේ ගැටලුව මෙම ඉගෙනුම් ක්‍රමයෙන් විසදන්නේ නම්, ඔබට පුහුණු  කිරීමට භාවිත කරන දත්ත කට්ටලය විවරණය හෙවත් ලේබල් කිරීමට (Annotate/ Label) සිදු වේ. එනම් ඔබේ දත්ත කට්ටලයේ එක එක දත්තය ගෙන, "මෙය කොවිඩ් පොසිටිව් සාම්පලයක්", "මෙය කොවිඩ් නෙගටිව් සාම්පලයක්" ලෙස සියලුම දත්ත ඔබට ලේබල් කිරීමට සිදු වනු ඇත. මෙම ඉගෙනුම් ක්‍රමයේදී ඉගෙනීමෙ කටයුත්ත සිදු කරන්නේ දත්ත කට්ටලයේ ඇති ආදානවල (InputFeatures (ලිපියේ මුලින් සාකච්චා කරන ලද) සහ ඒවාට අදාල විවරණ හෙවත් ලේබල් භාවිතයෙනි. එනම් මෙම ඉගෙනුම් ක්‍රියාවලියට බාහිර අධීක්ෂණයක් (Supervision) අවශ්‍ය වේ.

Supervised Learning ඉගෙනුම් ක්‍රම සදහා උදාහරණ: RegressionDecision TreeRandom ForestKNNLogistic Regression ආදිය.

රූපය 10: Supervised Learning  - අධීක්ෂණයක් යටතේ ඉගෙනීමේ ක්‍රියාවලිය
source:https://datafloq.com/read/machine-learning-explained-understanding-learning/4478

Unsupervised Learning - අධීක්ෂණය නොකළ ඉගෙනීම

මෙම ඉගෙනුම් ක්‍රමයේ ප්‍රධානත ම වෙනස වන්නේ අපි ඉගෙනුම් ඇල්ගොරිතමයට ලබා දෙන්නේ හුදු විවරණය හෙවත් ලේබල් නොකරන ලද දත්ත සමුහයකි (Non-annotated/ Unlabeled  data). එනම් ආදානවල (InputFeatures පමණි. මෙම ඉගෙනුම් ඇල්ගොරිතම මගින් දත්ත ලක්ෂ්‍යවල පිහිටීම අධ්‍යයනය කර, යම් යම් නිර්ණායකයන්ට (Criteria) අනුව ඒවා විවිධ වූ පොකුරුව්ලට (Clusters) නැත්නම් කණ්ඩායම්වලට (Groups) වෙන් කරනු ලබයි. 

මෙම ඉගෙනුම් ක්‍රම භාවිත වන්නේ පොකුරුව්ලට වෙන් කිරීමේ (Clustering Problems) ගැටළු විසදීම සදහා ය. එනම්ව ර්ගීකරණ (Classification) ගැටළු විසදීමට ය.

Unsupervised Learning ඉගෙනුම් ක්‍රම සදහා උදාහරණ: K-means Clustering

රූපය 11: Unsupervised Learning - අධීක්ෂණය නොකළ ඉගෙනීමේ ක්‍රියාවලිය
source:https://datafloq.com/read/machine-learning-explained-understanding-learning/4478

Reinforcement Learning - වැරදි වලින් ඉගෙනීම

මෙම වර්ගයේ ඇල්ගොරිතම භාවිතා කරමින්, යම් නිශ්චිත තීරණ ගැනීමට යන්ත්‍ර පුහුණු කරනු ලැබේ. එය මේ ආකාරයට සිදු කරයි: යන්ත්‍රය නිරන්තරයෙන් වැරදි වැරදි ඉගෙන ගත හැකි  (Trial and Error) පරිසරයකට නිරාවරණය කරනු ලැබේ. මෙම ඉගෙනුම් ඇල්ගොරිතම අතීත අත්දැකීම් වලින් ඉගෙන ගන්නා අතර කාලයත් සමග වැරදි අඩුවෙන් සිදු කරමින් යම් කර්තව්‍යක් කිරීමට ඉගෙන ගනී.

පරිපුර්ණ කෘතීම බුද්ධියක් (Perfect AI) නිර්මාණය කිරීමෙහිලා ඉතා වැදගත් ම වන ඉගෙනුම් ක්‍රමය වන්නේ මෙම ඉගෙනුම් ක්‍රමයයි. අදවන විට වඩාත්ම සාර්ථක යැයි සලකනු ලබන General Purpose AI එක වන ගුගල් ආයතනයේ Google DeepMind කෘතීම බුද්ධිය පුහුණු කිරීමට යොදා ගෙන ඇත්තේද මෙම ඉගෙනුම් ක්‍රමයයි. කෘතීම බුද්ධිය පිළිබද තවත් තොරතුරු දැන ගැනීම සදහා මගේ පෙර ලිපියට මෙතනින් පිවිසෙන්න

Reinforcement Learning ඉගෙනුම් ක්‍රම සදහා උදාහරණ: Monte Carlo, Q-learning, DDPG

රූපය 12: Reinforcement Learning - වැරදි වලින් ඉගෙනීමේ ක්‍රියාවලිය
source:https://datafloq.com/read/machine-learning-explained-understanding-learning/4478

ML ඇල්ගොරිතම් වර්ග

කාලයත් සමඟ බොහෝමයක් ML ඇල්ගොරිතම හෙවත් ML ඉගෙනුම් ක්‍රම අදවන විට සංවර්ධනය වී ඇත. එම සියල්ල ඉහත සාකච්චා කරන ලද ප්‍රධාන ඉගෙනුම් ක්‍රම තුනට අයත් වේ. සමහර ජනප්‍රිය ඇල්ගොරිතමයන් ලෙස පහත ඒවා දැක්විය හැකි ය.

Comments

Post a Comment