Best Python Libraries for Machine Learning

August 01, 2021 | Ashen Ranaweera

වර්තමානයේ භාවිතා වන programming languages අතරින් ඉහලින්ම තියෙන්නේ python language එක. ඒකට හේතුව තමයි පසු ගිය වසර කිහිපය තුල python language එක stable ව පැවතීම. ඒ වගේමuser-friendly syntax තිබීම නිසා programming වලට ආධුනිකයෙකුට පවා ඉතාමත් පහසුවෙන් මෙම language එක ඉගෙන ගන්න පුලුවන්. ඒ කියන්නේ English language එකට සමානව syntax භාවිතා කිරීම නිසා මේ language එක තේරුම් ගැනීම පහසු වෙලා තියෙනවා. C/C++ හෝ java සමඟ සංසන්දනය කිරීමෙන් එය හොඳින් හඳුනා ගැනීමට පුලුවන්. Python කියන්නෙ multi-purpose programming language එකක්. උදාහරණයක් විදියට AI, Data Science, Web Development සහ Machine Learning යන එක් එක් කාර්යයන් වලට python යොදා ගන්නවා. ඒවාගේම python භාවිතා කිරීමෙන් කාලය ඉතුරු කර ගන්න වගේම ඵලදායීතාව වැඩි කර ගන්න පුළුවන්.


You tube, Instagram, Spotify, Dropbox සහ Pinterest කියන්නේ වර්තමානයේ ප්‍රධාන වශයෙන් භාවිතා වන python වලින් නිර්මාණය කරන ලද website කීපයක්. Python කියල කියන්නේ developersලා අතරේ ඉතාමත් ජනප්‍රිය programming language එකක්. Developersලා අතර python ජනප්‍රිය වීමට බලපාන හේතු සාධක රාශියක් තිබෙනවා. ඒ අතරින් ප්‍රධානතම හේතුවක් ලෙස විශාල community එකක් තිබීම දක්වන්න පුළුවන්. ඒ වගේම පහත දක්වා ඇති සාධකත් විශාල වශයෙන් බලපා ඇති බව නොරහසක්.


1.Python සතු අධික Libraries සහ Framework සංඛ්‍යාව

2.Cloud computing, Machine Learning වැනි ක්ෂේත්‍ර සදහා පහසුවෙන් භාවිතා කල හැකි වීම.

3.Interpreted Language එකක් වීම (ලින්ක් කරන්න)


Data Science හා Machine Learning ක්ෂේත්‍ර වලට python මගින් සපයා ඇති libraries ගැන අද මේ ලිපියෙන් කතා කරමු.

1.Tensorflow


Machine Learning, Deep learning සදහා ජනප්‍රියම python library එක tensorflow කිව්වොත් නිවැරදියි. මේ library එක Google සමාගම විසින් 2015දී නිර්මාණය කරන ලද අතරම machine learning සම්බන්ධ වන සියලු ම google application වල tensorflow ඇතුළත් වෙනවා. අනෙකුත් libraries වලට වඩා පහසු syntax සහ graphical visualisation සහිත වීමත් විශාල community එකක් සහිත වීමත් මෙහි ජනප්‍රියත්වය වැඩි වීමට හේතුවක් වී තිබෙනවා. GPU සහාය දක්වන නිසා Nvidia CUDA පරිගණකය තුල ස්ථාපිත කිරීමෙන් model training ඉතා ඉක්මනින් සිදු කර ගැනීමට හැකියි. Tensorflow මගින් NLP (Natural Language Processing), recurrent neural networks, image recognition, word embedding පවා ඉතා පහසුවෙන් කළ හැකියි. මෙමගින් සපයා ඇති tensorboard tool එක මගින් model visualize කිරීමටත් හැකි වනවා.

2.Scikit Learn


2007 දී David Cournapeau විසින් google summer project එකක් ලෙසින් scikit learn නිර්මාණය කරනවා. මේ library එක numpy සහ scipy යන libraries වල එකතුවක්. මෙය සංකීර්ණ දත්ත සමග ගනුදෙනු කිරීමේදි යොදා ගත හැකි හොදම ආදේශකයක්. දිනෙන් දින අලුත් වන නිසා බොහෝ පරිශීලකයන් scikit learn භාවිතා කිරීමට පෙලඹෙනවා. Classification, Regression, Clustering වැනි ML techniques සදහා Randomforest, XGBooster වැනි algorithms පහසුවෙන් භාවිතා කිරීමට මෙමගින් අවකාශ ලබා දී තිබෙනවා.

3.Keras


Machine learning සදහා ඇති හොඳම, පහසුම හා ජනප්‍රියතම library එක ලෙස keras හඳුන්වා දෙන්න පුළුවන්. ඔබ machine learning වෙත ආධුනිකයෙකු නම් Keras සමඟ ආරම්භය පහසුවක් වෙනවා. Keras හි backend සදහා theano හෝ tensorflow භාවිතා කර තිබෙනවා. මෙමගින් Model compile කිරීම, data visualisation සහ data pre-processing පහසුවෙන් සිදු කරගත හැකි functions විශාල ප්‍රමාණයක් සපයා තිබෙනවා. ඒ වගේම Resnet, VGG, MNIST, SqueezeNet වැනි pre trained model රාශියක් අඩංගු වෙනවා. Convolutional හා recurrent neural networks වලට සහය දැක්වීමත් keras සතු විශේෂත්වයක්. Keras වෙතින් සපයා ඇති Dropout layers මගින් model overfitting වලක්වා ගැනීමටත් පුළුවන්. Netflix, Uber, Yelp, Instacart, Zocdoc, Square වැනි application සදහා keras යොදා ගෙන තිබීම මෙහි ජනප්‍රියත්වයට කදිම නිදසුනක්. CERN NASA වැනි ආයතන ද deep learning සදහා keras භාවිතා කරනවා. අනෙකුත් libraries හා සැසදීමේදි keras තරමක් මන්දගාමි වීම් මෙහි ඇති අවාසියක් ලෙස දක්වන්න පුලුවන්.

4.Pytorch


මෙම machine learning library එක c programming language එක මගින් නිම වූ torch මත පාදක වී ගොඩනගා තිබෙනවා. 2017 දි හඳුන්වා දුන් pytorch පරිශීලකයන්ගේ ආකර්ෂණය ඉතා වේගයෙන් ලබා ගැනීමට සමත් වී තිබෙනවා. NLP නැතිනම් Natural Language Processing application සඳහා pytorch බහුලව යොදා ගැනෙනවා. වර්තමානයේ වැඩි වශයෙන් ජනප්‍රිය tensorflow හි කාර්යක්ෂමතාවටත් වඩා වැඩි කාර්යක්ෂමතාවක් ලබා දීමට හැකි වීම නිසා බොහෝ දෙනාගේ අවධානය ලබාගන්නට pytorchට හැකියාව ලැබී තිබෙනවා. GPU සහාය ද pytorch මඟින් ලැබෙන තවත් වාසියක්.

සටහන - අශේන් රණවීර