ابھی بزور ورڈ ہے۔ مشین سیکھنے کی مدد سے کچھ ناقابل یقین چیزیں کی جارہی ہیں۔ ہمارے ہونے سے ذاتی معاون ، فیصلہ کرنے کے لئے ہمارے سفری راستے ، ہماری خریداری میں مدد ، اپنے کاروبار کو چلانے میں ، اپنی دیکھ بھال کرنے میں ہماری مدد کرنا صحت و تندرستی، مشینی سیکھنے کو ہمارے روزمرہ وجود کو اس طرح کی بنیادی سطحوں پر مربوط کیا جاتا ہے ، کہ زیادہ تر وقت ہمیں یہ احساس تک نہیں ہوتا ہے کہ ہم اس پر بھروسہ کرتے ہیں۔ اس مضمون میں ، ہم ازگر میں ایک مشین لرننگ کلاسیفائر کو معیاری طور پر نافذ کرنے کے لئے ابتدائی نقطہ نظر پر عمل کریں گے۔
پھینک اور پھینک کے درمیان جاوا فرق
مشین لرننگ کا جائزہ
مشین لرننگ ایک ایسا تصور ہے جو مشین کو مثالوں اور تجربات سے سیکھنے کی اجازت دیتا ہے ، اور وہ بھی واضح طور پر پروگرام کیے بغیر۔ لہذا آپ کوڈ لکھنے کے بجائے ، آپ کیا کرتے ہو کہ آپ عام الگورتھم کو ڈیٹا کھلا رہے ہیں ، اور الگورتھم / مشین دیئے گئے ڈیٹا کی بنیاد پر منطق تیار کرتی ہے۔
مشین لرننگ میں مشینوں کے فیصلے لینے ، ان کے افعال کے نتائج کا جائزہ لینے ، اور بہتر طور پر بہتر نتائج حاصل کرنے کے ل their اپنے طرز عمل کو بہتر بنانے کی صلاحیت شامل ہے۔
سیکھنے کا عمل تین بڑے طریقوں سے ہوتا ہے
- زیر نگرانی سیکھنا
- غیر سروے شدہ سیکھنا
- کمک سیکھنا
مشین لرننگ کلاسیفائرز کے لئے ایک ٹیمپلیٹ
مشین سیکھنے کے اوزار ایک آتھر کی لائبریری میں آسانی سے فراہم کیے گئے ہیں جس کا نام سائنٹ سیکھنا ہے ، جس تک رسائی اور اس کا اطلاق بہت آسان ہے۔
کمانڈ پرامپٹ کے ذریعہ اسککیٹ لرن انسٹال کریں:
پائپ انسٹال کریں - یو اسکائٹ سیکھیں
اگر آپ ایناکونڈا کے صارف ہیں تو ، ایناکونڈا پرامپٹ پر آپ استعمال کرسکتے ہیں:
کونڈا انسٹال سائنس - سیکھنا
انسٹالیشن کے لئے آپ کے سسٹم میں NumPy اور SciPy پیکیجز کی پہلے سے تنصیب کی ضرورت ہے۔
پیشگی کارروائی: کسی بھی مشین لرننگ پر مبنی ڈیٹا تجزیہ کا پہلا اور سب سے ضروری اقدام پریپروسیسنگ حصہ ہے۔ ایم ایل ماڈل کو اچھی طرح سے تربیت دینے اور اس کی صلاحیت کے مطابق کارکردگی کا مظاہرہ کرنے کے لئے اعداد و شمار کی صحیح نمائندگی اور صفائی کرنا بالکل ضروری ہے۔
مرحلہ نمبر 1 - ضروری لائبریریاں درآمد کریں
plp بطور پی ڈی درآمد matplotlib.pyplot بطور NP درآمد پانڈا نپٹائیں درآمد کریں
مرحلہ 2 - ڈیٹاسیٹ درآمد کریں
ڈیٹاسیٹ = pd.read_csv ()
پھر ہم ڈیٹاسیٹ کو آزاد اور منحصر متغیر میں تقسیم کرتے ہیں۔ آزاد متغیر ان پٹ ڈیٹا ہوگا ، اور منحصر متغیر آؤٹ پٹ ڈیٹا ہے۔
X = dataset.iloc []. قدریں y = dataset.iloc []. قدریں
مرحلہ 3 غائب ڈیٹا کو ہینڈل کریں
ڈیٹاسیٹ میں خالی یا کالع قدریں ہوسکتی ہیں ، جو ہمارے نتائج میں غلطیاں پیدا کرسکتی ہیں۔ لہذا ہمیں اس طرح کے اندراجات سے نمٹنے کی ضرورت ہے۔ ایک عام مشق یہ ہے کہ کالم کی اصلی معنی یا کثرت والی قدر کی طرح ، خالی اقدار کو ایک عام قدر کے ساتھ بدلنا ہے۔
منجانب sklearn.preprocessing درآمد لگانے والا درآمد = imputer (غائب_قائمات = 'NaN' ، حکمت عملی = 'مطلب' ، محور = 0) imputer = imputer.fit (X []) X [] = imputer.transfor (X [])
مرحلہ 4 - متغیر متغیرات کو عددی متغیر میں تبدیل کریں
sklearn.pre پروسیسنگ کی درآمد سے LabelEncoder le_X = LabelEncoder () X [] = le_X.fit_transform (X []) labelencoder_y = LabelEncoder () y = labelencoder_y.fit_transfor (y)
اب ، انکوڈنگ کے بعد ، یہ ہوسکتا ہے کہ مشین عددی ڈیٹا کو انکوڈ شدہ کالموں کی درجہ بندی کے طور پر قبول کرے۔ یوں ، مساوی وزن فراہم کرنے کے ل we ، ہمیں ون ہاٹ اینکوڈر کلاس کا استعمال کرتے ہوئے ، نمبروں کو ایک گرم ویکٹر میں تبدیل کرنا ہوگا۔
اسکیلرن.پیرپروسیسنگ امپورٹ سے OneHotEncoder oneHE = OneHotEncoder (زمرہ_فاصلات = []) X = oneHE.fit_transform (X) .toarray ()
مرحلہ 5 - اسکیلنگ انجام دیں
یہ اقدام متغیر کے متوازن ترازو سے پیدا ہونے والی تضادات سے نمٹنے کے لئے ہے۔ لہذا ، ہم ان سب کو ایک ہی حد میں پیمانہ کرتے ہیں ، تاکہ ماڈل میں ان پٹ ہوتے ہوئے بھی ان کا وزن برابر ہو۔ ہم اس مقصد کے لئے معیاری اسکیلر کلاس کے کسی شے کا استعمال کرتے ہیں۔
اسکلیرین ڈاٹ پی آر پروسیسنگ کی درآمد سے اسٹینڈرڈ اسکیلر sc_X = معیاری اسکیلر () X = sc_X.fit_transform (X)
مرحلہ 6 - ڈیٹاسیٹ کو تربیت اور جانچ کے اعداد و شمار میں تقسیم کریں
کھڑکیوں میں جاوا کا راستہ طے کریں
پری پروسیسنگ کے آخری مرحلے کے طور پر ، ڈیٹاسیٹ کو ٹریننگ سیٹ اور ٹیسٹ سیٹ میں تقسیم کرنے کی ضرورت ہے۔ ٹرین ٹیسٹ میں تقسیم کا معیاری تناسب 75٪ -25٪ ہے۔ ہم ضرورت کے مطابق ترمیم کرسکتے ہیں۔ ٹرین_ٹیسٹ_اسپلٹ () فنکشن ہمارے لئے یہ کام کرسکتا ہے۔
sklearn.model_selection درآمد ٹرین_ٹیسٹ_اسپلٹ X_train ، X_test ، y_train ، y_test = train_test_split (X ، y ، test_size = 0.25)
ماڈل بلڈنگ: یہ قدم دراصل بہت آسان ہے۔ ایک بار جب ہم فیصلہ کرتے ہیں کہ ڈیٹا پر کونسا ماڈل لاگو کیا جائے تو ، ہم اس سے متعلقہ کلاس کا کوئی آبجیکٹ بناسکتے ہیں ، اور اپنے ٹریننگ سیٹ میں اس چیز کو فٹ کرسکتے ہیں ، X_train کو ان پٹ اور y_train کو آؤٹ پٹ سمجھتے ہوئے۔
اسکیلرن سے درآمد درجہ بندی کرنے والا = () درجہ بندی کرنے والا۔ سوٹ (X_train ، y_train)
ماڈل اب تربیت یافتہ اور تیار ہے۔ اب ہم اپنے ماڈل کو ٹیسٹ سیٹ پر لاگو کرسکتے ہیں ، اور پیش گوئی شدہ آؤٹ پٹ تلاش کرسکتے ہیں۔
y_pred = classifier.predict (X_test)
نتائج دیکھنے: درجہ بندی کی کارکردگی کا اندازہ درستگی ، صحت سے متعلق ، یاد کرنے اور ایف 1 اسکور کے پیرامیٹرز کے ذریعے لگایا جاسکتا ہے۔ ان اقدار کو ایک ایسے طریقہ کار کا استعمال کرتے ہوئے دیکھا جاسکتا ہے جسے درجہ بندی_ریپورٹ () کہا جاتا ہے۔ ٹی کو ایک کنفیوژن میٹرکس کے طور پر بھی دیکھا جاسکتا ہے جو ہمیں یہ جاننے میں مدد کرتا ہے کہ کس قسم کے ڈیٹا کو صحیح درجہ سے درجہ بندی کیا گیا ہے۔
sklearn.metrics سے درآمد الجھن_میٹریکس سینٹی میٹر = کنفیوژن_میٹرکس (y_یسٹ، y_pred) پرنٹ (سینٹی میٹر) sklearn.metics درآمد کی درجہ بندی_ریپورٹ ٹارگٹ_نیمز [[] پرنٹ (درجہ بندی_ریپورٹ (y_یسٹ، y_pred، ہدف_امین = ٹارگٹ نام))
مشین سیکھنے کی درجہ بندی کرنے والا مسئلہ
ہم بہت مشہور اور سادہ ایرس ڈیٹاسیٹ کا استعمال کریں گے ، جس میں 3 زمروں میں آئرس - سیٹوسا ، آئیرس ورسکولر ، اور آئرس ورجینیکا شامل ہیں۔ ڈیٹاسیٹ میں 150 اندراجات ہیں۔
# لائبریریوں کو درآمد کرنا NP درآمد matplotlib.pyplot کے طور پر plt درآمد پنڈوں کی حیثیت سے پی ڈی کی حیثیت سے درآمد کرتے ہیں۔ # ڈیٹاسیٹ ڈیٹاسیٹ = pd.read_csv ('iris.csv') درآمد کرنا
آئیے ابھی ڈیٹاسیٹ دیکھیں۔
ڈیٹاسیٹ ہیڈ ()
ہمارے پاس 4 آزاد متغیر ہیں (ID کو چھوڑ کر) ، کالم نمبر 1-4 ، اور کالم 5 انحصار متغیر ہے۔ لہذا ہم ان کو الگ کرسکتے ہیں۔
ایکس = ڈیٹاسیٹ.لوک [:، 1: 5]. ویلیوز ی = ڈیٹاسیٹ.لوک [:، 5].
اب ہم ڈیٹاسیٹ کو ٹریننگ اور ٹیسٹنگ میں تقسیم کرسکتے ہیں۔
# ڈیٹاسیٹ کو ٹریننگ سیٹ میں تقسیم کرنا اور اسکیلرن ڈاٹ ماڈل سے انتخاب درآمد ٹرین_ٹیسٹ_اسپلٹ X_train ، X_test ، y_train ، y_test = train_test_split (X، y، test_size = 0.25)
اب ہم ڈیٹاسیٹ میں لاجسٹک ریگریشن کلاسیفائر کا اطلاق کریں گے۔
# sklearn.linear_model درآمد سے ماڈل بنانا اور ان کی تربیت کرنا LogisticRegression classifier = LogisticRegression () classifier.fit (X_train، y_train) # ٹیسٹ سیٹ کے نتائج کی پیش گوئی کرنا y_pred = classifier.predict (X_test)
آخری قدم تربیت یافتہ ماڈل کی کارکردگی کا تجزیہ کرنا ہوگا۔
# اسکیلرن سے کنفیوژن میٹرکس بنانا
اس سے ہمیں پتہ چلتا ہے کہ ماڈل کے ذریعہ پہلی قسم کے 13 اندراجات ، دوسرے کی 11 اور تیسری قسم کے 9 اندراجات کی صحیح پیش گوئی کی گئی ہے۔
جاوا میں پروگرام کو روکنے کے لئے کس طرح
# sklearn.metics درآمد کی درجہ بندی_ریپورٹ ٹارگٹ_ینیمز = ['آئرش-سیٹوسہ' ، 'آئرش - ورجینیکا' ، 'آئریس-ورجنیکا'] سے پرنٹ (درجہ بندی_پورٹ (y_یسٹ ، y_pred ، ٹارگٹ_نیمز = ٹارگٹ نام)) سے درستگی ، صحت سے متعلق ، یاد اور f1 اسکور پیدا کرنا )
رپورٹ میں ہمارے ٹیسٹ سیٹ پر ماڈل کی صحت سے متعلق ، یاد کرنے ، ایف 1 اسکور اور درستگی کی اقدار کو دکھایا گیا ہے ، جو 38 اندراجات (25٪ ڈیٹاسیٹ) پر مشتمل ہے۔
مبارک ہو ، آپ نے کامیابی کے ساتھ اپنے پہلی مشین لرننگ کلاسیفائر کو ازگر میں بنایا اور نافذ کیا! پر گہرائی سے علم حاصل کرنے کے لئے اس کی مختلف ایپلی کیشنز کے ساتھ ، آپ 24/7 سپورٹ اور زندگی بھر تک رسائی کے ساتھ براہ راست ازگر آن لائن ٹریننگ کے لئے اندراج کرسکتے ہیں۔