Menu
CoddyTech
flag Ar iconالعربيةdown icon

انشر النموذج

جزء من قسم التعلّم الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 54 من 58.

انتظرت بطاريق الاختبار طوال المشروع. أوائم خط المعالجة المضبوط على صفوف التدريب، ثم أقيّمه على بطاريق الاختبار مرة واحدة: الرقم الصادق.

ثم انظر أين يخطئ. يصنّف نموذج عيادة الحالات إلى سليم أو زكام أو إنفلونزا؛ الصفوف تمثل الحقيقة، والأعمدة تخميناته:

مصفوفة التباس 3 في 3 لنموذج عيادة's على 60 مريضًا للاختبار، سليم وزكام وإنفلونزا: يحتوي القطر على 20 و14 و17 إجابة صحيحة، وصُنّفت 5 حالات زكام على أنها إنفلونزا

بطريق جديد هو جدول من صف واحد يحتوي على أعمدة التدريب. تحدد predict فئته، وتبيّن predict_proba(new).max() مدى الثقة: حصة الفئة الفائزة، أي نسبة الجيران المتفقين في k-NN.

challenge icon

التحدي

متوسط

خط النهاية. model هو خط الأنابيب الذي ضبطته؛ يقرأ البرنامج الابتدائي بطريقًا جديدًا إلى new_penguin.

  1. درّب النموذج على صفوف التدريب. اطبع دقته على الاختبار (3 منازل عشرية) وعدد البطاريق في الاختبار التي سمّاها بشكل صحيح.
  2. ارسم مصفوفة الالتباس لتنبؤات الاختبار على ax واعرضها.
  3. حدّد نوع البطريق الجديد ومدى ثقة النموذج، بالنسبة المئوية.

لمستعمرة في محطة أخرى:

Test accuracy: 0.960 (72 of 75 penguins)
New penguin: Gentoo (86% sure)

ومصفوفتها:

مصفوفة التباس بعنوان «بطاريق الاختبار» لمحطة أخرى: صُنّف 29 من بطاريق أديلي و16 من بطاريق الذقن و27 من بطاريق جنتو بشكل صحيح، وصُنّف بطريق أديلي واحد على أنه بطريق ذقن، وبطريقان من بطاريق الذقن على أنهما بطاريقا أديلي

بعدها يعرض Coddy نتيجتك. قاس النجم من درس Meet the Penguins القيم 47.2 و18.0 و194 و3650، في دريم، وهي أنثى. شغّل برنامجك باستخدام بياناتها: ما نوعها؟

جرّب بنفسك

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.compose import ColumnTransformer
from sklearn.pipeline import make_pipeline
from sklearn.impute import SimpleImputer
from sklearn.preprocessing import StandardScaler, OneHotEncoder
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import ConfusionMatrixDisplay

# مستعمرة البطاريق من Meet the Penguins، وخصائصها وتصنيفها
penguins = pd.read_csv("penguins.csv")
numbers = ["bill_length_mm", "bill_depth_mm", "flipper_length_mm", "body_mass_g"]
text = ["island", "sex"]
X = penguins[numbers + text]
y = penguins["species"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, stratify=y, random_state=0)

# من Prepare the Data: المساران
number_steps = make_pipeline(SimpleImputer(strategy="median"), StandardScaler())
text_steps = make_pipeline(SimpleImputer(strategy="constant", fill_value="unknown"), OneHotEncoder())
prep = ColumnTransformer([("numbers", number_steps, numbers), ("words", text_steps, text)])

# من Choose a Model and Tune the Winner: ‏k-NN بقيمة k = 7
model = make_pipeline(prep, KNeighborsClassifier(n_neighbors=7))

# بطريق جديد من الميدان، في جدول من صف واحد بالأعمدة نفسها
new_penguin = pd.DataFrame({
    "bill_length_mm": [float(input())],
    "bill_depth_mm": [float(input())],
    "flipper_length_mm": [float(input())],
    "body_mass_g": [float(input())],
    "island": [input()],
    "sex": [input()],
})

fig, ax = plt.subplots()
ax.set_title("Test Penguins")

# اكتب الكود الخاص بك أدناه
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس التعلّم الخاضع للإشراف

تدرّب بنفسك: مترجم Python عبر الإنترنت