Machine learning model එකක් train
කරන්න කලින් අපි ලඟ තියෙන dataset එක ප්රධාන
ලෙස කොටස් දෙකකට බෙදා ගන්නවා.
එක කොටසක්
බෙදා ගන්න පුළුවන් Model එක train කරන්න. අනිත් කොටස බෙදා ගන්න පුළුවන් model එක test කරන්න.
ඇයි මේ
විදියට data set එක බෙදා ගන්නේ හා කොහොම ද බෙදා
ගන්නේ කියලා මේ post එකෙන් කතා කරනවා.
අපි මේක
පැහැදිලි කරන්න පහත සඳහන් කුඩා dataset
එක ගන්න පුළුවන්
ඉහත දක්වලා
තියන dataset එකේ තියනවා පාඩම් කරන පැය ගණන අනුව ලැබෙන ප්රතිඵලය.
කවුරු හරි
කෙනෙකු පාඩම් කරන පැය ගණන ලබා දුන්නම එයාට ඒකට ලැබෙන ප්රතිඵලය කියන්න පුළුවන්
වෙන්න ඕනි.ඒකට අපි machine learning
model එක train කරනවා එතකොට අපි ආදාන විදියට පැය ගණන දුන්නම ලැබිය හැකි ප්රතිඵලය ලබා
දෙන්න ඕනි.
එතකොට අපි
කොහොම ද දැනගන්නේ මේ model එකෙන් හරිම ප්රතිඵලය දෙනවා කියලා. ඒකට තමයි අපි මේ dataset එක කොටස්
දෙකකට බෙදා ගන්නේ. එක කොටසකින් මේ model එක train කරනවා.
අනිත් කොටසින් මේ model
එක test කරලා
බලනවා මේ model
එක කොච්චර දුරට සාර්ථකයි ද කොච්චර දුරට නිවැරදිද
කියලා. දැන් අවබෝධ වුනා ද මේ dataset එක බෙදා ගන්නේ ඇයි කියලා.
මෙතනදී dataset එකේ data තෝර ගනිද්දී අහඹු
වශයෙන් data තෝරා ගන්න ඕනි.
මෙතන
තියෙන්නේ ඉතා අඩු දත්ත ප්රමාණයක්. නමුත් ඇත්තටම අපිට විශාල දත්ත සමඟ වැඩ කරන්න
වෙනවා. එතකොට තෝර තෝර දත්ත ගන්න අමාරුයි. එතකොට අපි කරන්න ඕනි අහඹු ලෙස දත්ත තෝරා
ගැනීමයි.
දැන් අපි
බලමු හදා ගන්න model එකේ නිවැරදිතාවය කොහොමද ගණනය කරන්නේ කියලා.අපි මුලින්ම කරන්නේ මේ Train dataset එකේන් model එක train කරනවා. ඒ Model එකෙන් තමයි නිවැරදිතාව
බලන්නේ test කරන්න ගත්ත dataset එකක් භාවිතා කරලා.
ඉහත පෙන්වලා
තියෙන්නේ Test කරන්න ගත්ත dataset එක.
අපි ගත්ත model එකට අපි දෙනවා Test කරන්න ගත්ත dataset එකේ X values. ඒ දත්ත
ටික දුන්නම එ් model එකෙන් දෙන ප්රතිදානය වන්නේ model
එක predict
කරන output
එක. පහත රූප සටහනේ පෙන්වලා තියනවා
ඉහත ප්රතිදානයේ
predicted output එක බැලුවම පැය 16 පාඩම් කරන කෙනාගේ Test data වල ප්රතිදානය A වන අතර ඒ පැය ගණන model එකට දීලා train
කරලා ලැබුන predicted
එකත් A. ඒ වගේම පැය 12 හා පැය 7 data
වලත් output
වල වෙනසක් නැහැ. නමුත් පැය 6 ක test data එකේ C ඒක model එකට දුන්නම ලැබුන output එක B. මේකදී ප්රතිදාන 3 ක් වෙනසක් නැහැ. එකක් විතරක් වෙනස්. ඒ කියන්නේ නිවැරදිභාවය
75%යි.
අපිට මේ කතා
කරපු දේවල් කරන්න පුළුවන් ලෙසියෙන්ම Python
Library භාවිතා කරලා. අපි බලමු දැන් Python භාවිතා කරලා
මේක කරන්නේ කොහොම ද කියලා.
python code
import numpy as np
from sklearn.model_selection import train_test_split
x=np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])
y=np.array(['S','S','C','C','S','C','C','B','C','B','B','A','A','B','A','A','A','B','A','A'])
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.2) #train කරන data වලින් 20%
print(x_train) #randomly select values
print(y_train)
print(x_test)
print(y_test)
output
0 Comments