Data Science හිදී යොදාගන්නා වැදගත් Machine Learning Techniques

November 5, 2021 | Piumika Gunarathne

Data Science යනු මේ වන විට බොහෝ ව්‍යාපාර වල ග්‍රහණයට ලක් වී ඇති විෂය පථයක් වන අතර Data Scientist යනු ඉතා වේගයෙන් දියුණු වෙමින් පවතින data-oriented ආයතනවල භාරදූර කාර්යභාරයක් ඉටුකරනු ලබන වෘත්තියක් වේ. දත්ත විද්‍යාවේ යෙදුම් සදහා Machine Learning, Big Data Development, Prediction Analysis, Image and Object Recognition, AI වැනි තාක්‍ෂණයන් භාවිතා කරයි.

මෙම ලිපියෙන් දත්ත විද්‍යාඥයින් බහුලව භාවිත කරන Statistical හා විශ්ලේෂණාත්මක තාක්‍ෂණයන් වෙත අපි අවධානය යොමු කරමු.මේ සමහර දත්ත සියවස් ගණනාවක් තිස්සේ ක්‍රියාත්මක ඒවා වන අතර අනෙක්වා ඊට සාපේක්ෂව අළුත් අතර නවතම පර්යේෂණ ප්‍රතිඵල මගින් භාවිතය පුළුල් වූවාය.

1. Regression

මෙය Supervised Machine Learning කාණ්ඩයට අයත් වේ.පූර්ව දත්ත සමූහයක් මත පදනම්ව යම් සංඛ්‍යාත්මක අගයක් ගැන පුරෝකථනය කිරීමට හෝ පැහැදිලි කිරීමට එමගින් උදවු වේ, උදාහරණයක් ලෙස දේපලක් සඳහා කලින් මිල ගණන් පදනම් කරගෙන වර්තමාන මිල පුරෝකථනය කිරීම. මෙම ක්‍රමය නම් Linear Regression ය, එහිදී අපි දත්ත සමුහය ආකෘතිකරණය කිරීම සඳහා රේඛාවේ ගණිතමය සමීකරණය වන (y = m * x + b) භාවිතා කරයි. දත්ත යුගල (x,y)කීපයක් මගින් දත්ත හා රේඛාව අතර මුළු දුර අවම කරන රේඛාවක position හා slope ගණනය කිරීමෙන් රේඛීය ආකෘතියක් ගොඩනගනු ලැබේ. වෙනත් වචන වලින් කිවහොත්,දත්ත වල නිරීක්‍ෂණ වඩාත් හොඳින් අනුරූපණය වන රේඛාවක් සඳහා Slope සහ Interception ගණනය කිරීම මෙහිදී සිදුවේ.

තවදුරටත් අපි උදාහරණයක් සලකා බලමු.

යම් ගොඩනැගිල්ලක බලශක්ති පරිභෝජනය (kWh) පුරෝකථනය කිරීම සඳහා ගොඩනැගිල්ලේ වයස,වර්ග අඩි ගණ සහ සම්බන්ධිත බිත්ති ගණන එකට එකතු කර Linear Regression ආකෘතිය භාවිතා කර ඇත.

Input Variables එකකට වඩා තිබුණු හෙයින් බහු විචල්‍ය Linear Regression භාවිතා කිරීම සුදුසුය. මෙම මූලධර්මය සරල රේඛාවක් ලබාදෙන්නක් වූවත්, මේ අවස්ථාවේ දී විචල්‍ය ගණන පදනම් කරගෙන රේඛාව නිර්මාණය කළේ Multi Dimensional Space එකකය.

ගොඩනැගිල්ලේ සැබෑ බලශක්ති පරිභෝජනයට Linear Regression මූලධර්මය කෙතරම් දුරට ගැලපේද යන්න පහත රූපයෙන් දැක්වේ. දැන් ඔබට ගොඩනැගිල්ලක ලක්‍ෂණ (වයස,වර්ග අඩි ආදිය) සඳහා දත්ත ඇතැයි සිතන්න,නමුත් ඔබ බලශක්ති පරිභෝජනය දන්නේ නැත. මෙම අවස්ථාවෙහිදී,ඕනෑම ගොඩනැගිල්ලක බලශක්ති පරිභෝජනය දළ වශයෙන් ගණනය කිරීම සඳහා Fitted රේඛාව භාවිතා කළ හැකිය.

2. Classification

Supervised Machine Learning හි තවත් කාණ්ඩයක් වන Classification Method මඟින් class value පුරෝකථනය කිරීම හෝ පැහැදිලි කිරීම සිදුවේ.

උදාහරණයක් වශයෙන්,පාරිභෝගිකයෙක් නිෂ්පාදනයක් මිලට ගනීද නැද්ද යන්න ගැන අනාවැකි කීමට මෙය යොදාගත හැකිය.

Output එක ඔව් හෝ නැත විය හැකිය. නමුත් Classification Method එපමණකට සීමා නොවේ. උදාහරණයක් ලෙස,දෙන ලද රූපයක ඇත්තේ කුමක්දැයි තක්සේරු කිරීමට මෙය උපකාරී වේ.

රූපයේ කාරයක් හෝ ට්‍රක් රථයක් අඩංගු වී ඇති අවස්ථාවක් ගත් විට.මෙහිදී ප්‍රතිදානය අගයන් 3 ක් වනු ඇත:

1) රූපය කාරයක් ඇත

2) රූපයේ ට්‍රක් රථයක් ඇත හෝ

3) රූපයේ කාරයක් හෝ ට්‍රක් රථයක් නැත.

මෙම සරල Classification Method ඇල්ගොරිතමය නම් Logistic Regression ය. එයින් පෙනෙන්නේ Regression ක්‍රමය,නමුත් මෙය එය නොවේ. Logistic Regression මගින් inputs එකක් හෝ කිහිපයක් පදනම් කරගත් සිදුවීමක සම්භාවිතාව තක්සේරු කරයි

නිදසුනක් වශයෙන්, Logistic Regression එකක් මගින් ශිෂ්‍යයෙකු විභාගයක විෂයන් දෙකක් සදහා ගත් ලකුණු දෙකක් ඇතුළත් කිරීම මගින් ශිෂ්‍යයා යම් විද්‍යාලයකට ඇතුළත් වීමේ සම්භාවිතාව තක්සේරු කිරීම කළ හැක.

ඒ Estimation සම්භාවිතාවක් වන හෙයින්,ප්‍රතිදානය 0 සහ 1 අතර සංඛ්‍යාවක් වේ. Estimation Probability 0.5 ට වඩා වැඩි නම්, ඔහු හෝ ඇය ඇතුළත් කර ගනු ඇතැයි අපට පුරෝකථනය කළ හැක. Estimation Probability 0.5 ට වඩා අඩු නම්, ඔහු හෝ ඇය ප්‍රතික්ෂේප කරනු ඇතැයි අපට පුරෝකථනය කිරීමට සිදුවේ.

පහත දැක්වෙන ප්‍රස්ථාරය මඟින් කලින් ඇතුළත් කරගත් ශිෂ්‍යයින්ගේ ලකුණු හා ඔවුන් ඇතුළත් කර ගත්තාද යන්න පෙන්වා ඇත.

3. Clustering

Clustering ක්‍රමය Unsupervised Machine Learning ගණයට වැටෙන්නේ ඒවායේ ඉලක්කය වන්නේ සමාන ලක්‍ෂණ ඇති groups හෝ clusters නිරීක්‍ෂණය වන නිසාය. Clustering සඳහා මෙම ක්‍රම මඟින් ප්‍රතිදාන තොරතුරු භාවිතා නොකරන නමුත් ඒ වෙනුවට ප්‍රතිදාන ඇල්ගොරිතමය define කිරීම සිදුවේ. Clustering ක්‍රම වලදී අපට visualizations භාවිතා කළ හැක්කේ විසඳුමේ ගුණාත්මකභාවය පරීක්‍ෂා කිරීමට පමණි.

වඩාත් ජනප්‍රිය Clustering ක්‍රමය වන්නේ K-means වන අතර එහිදී "K" මඟින් Userතෝරා ගන්නා clusters ගණන නියෝජනය කරයි.

( Elbow ක්‍රමය වැනි තවත් විවිධ techniques K අගය සෙවීම සඳහා තිබෙන බව සලකන්න.)

දළ වශයෙන්,K-means දත්ත වලින් සිදු කරනුයේ:

දත්ත තුළ අහඹු ලෙස K Centers තෝරා ගනී. අහඹු ලෙස සමීපතම centers වලට වෙත එක් එක් දත්ත assign කරයි. එක් එක් clusters වල means නැවත ගණනය කරයි. Centers වෙනස් නොවන්නේ නම් (හෝ ඉතා සුළු වශයෙන් වෙනස් වුවහොත්)ක්‍රියාවලිය අවසන් වේ. එසේ නැත්නම් පියවර 2 වෙත ආපසු යෑමට සිදුවේ. (centers දිගටම වෙනස් වුවහොත් Infinity loops වැළැක්වීම සඳහා උපරිම iterations ගණනක් කල් ඇතිව සැකසිය යුතුවේ). ඊළඟ plot එක වන්නේ ගොඩනැගිලි දත්ත කට්ටලයකට K-means අදාළ කිරීම වේ. බිම් කැබැල්ලේ ඇති සෑම තීරුවකම සෑම ගොඩනැගිල්ලකම Efficiency පෙන්නුම් කරයි.

මෙහි මිනුම් හතර වන්නේ වායු සමීකරණය, plug in උපකරණ (මයික්‍රෝවේව්,ශීතකරණ, ආදිය …), domestic gas සහ heating gas ය. Clustering සඳහා K = 2 තෝරා ගත් විට, එමඟින් එක් cluster එකක් Efficiency සහිත ගොඩනැගිලි සමූහයක් ලෙසත් අනෙක් cluster එක Inefficiency ගොඩනැගිලි සමූහය ලෙසත් අර්ථ දැක්වීම පහසු කරයි. වම් පසින් ඔබට ගොඩනැගිලිවල පිහිටීම දැකිය හැකිය සහ දකුණුපසින් ඔබ යෙදවුම් ලෙස භාවිතා කළ dimensions හතරෙන් දෙකක් ඔබට පෙනේ: plug in උපකරණ සහ heating gas.

ඔබ තවදුරටත් clusters ගවේෂණය කරන විට, Density-Based Spatial Clustering of Applications with Noise (DBSCAN), Mean Shift Clustering, Agglomerative Hierarchical Clustering වැනි ඉතා ප්‍රයෝජනවත් ඇල්ගොරිතමයන් හමුවනු ඇත.

4. Word Embeddings

TFM සහ TFIDF යනු සලකා බලන text document වල සංඛ්‍යාත්මක නිරූපණයන් පමණි. ඊට වෙනස්ව,Word Embedding මඟින් text document එකක වචන අතර ඇති සමානකම මැනිය හැකි අතර එමඟින් අපට වචන සමඟ Arithmetic Operations කිරීමට ඉඩ සැලසේ.

Word2Vec යනු neural nets මත පදනම් වූ ක්‍රමයක් වන අතර එය ඇති වචන සංඛ්‍යා Vector එකට සිතියම් ගත කරයි.අපට මෙම vector භාවිතා කර සමාන පද සෙවීමට, වචන වලින් Arithmetic Operations කිරීමට හැකියාව ලැබෙනු ඇත.

උදාහරණයක් වශයෙන්, word embedding තක්සේරු කිරීම සඳහා තරමක් විශාල text documents භාවිතා කරන බව ගත් විට; king, queen, man සහ woman යන වචන එහි කොටස්යැයි උපකල්පනය කරමු.

Vector(‘word’) යනු වචනය නියෝජනය කරන Numerical Vector යැයි කියමු. vector(‘woman’) estimate කිරීමට අපට vectors මඟින් පහත Arithmetic Operation එක කළ හැකිය:

vector(‘king’)+ vector(‘woman’)— vector(‘man’)~ vector(‘queen’)

මෙහි මීට අමතරව Reinforcement, Dimensionality Reduction, Ensemble Methods, Neural Nets and Deep Learning, Transfer Learning, Reinforcement Learning, Natural Language Processing වැනි බොහෝ වැදගත් තොරතුරු ආවරණය කිරීමට ඉතිරිව ඇත.

ඉදිරි ලිපි වලදී ඒවා ඉතිරිපත් කිරීමට අප සූදානම්.

සටහන - පියුමිකා ගුණරත්න