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

درجات الشذوذ

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

إجابة بنعم أو لا تُخفي مدى غرابة الصف. تمنح score_samples كل صف درجة: كلما انخفضت، زادت غرابته. بالنسبة إلى وصفات صيدلية:

forest = IsolationForest(random_state=0).fit(X)
rx["score"] = forest.score_samples(X)
print(rx.sort_values("score").head(3))

يطبع هذا أغرب ثلاث وصفات:

     pills  refills  price     score
17     300        0  120.0 -0.881478
88      28       11   11.5 -0.708524
120     30        1   64.0 -0.700620

مدرج تكراري لدرجات الشذوذ لـ 150 وصفة طبية: معظمها بين -0.55 و-0.35، مع عدد قليل يمتد إلى اليسار حتى -0.88، وخط عتبة أحمر متقطع عند -0.6 مع 4 حالات للتحقق منها

مكان القطع من اختيارك: كم صفًا يستطيع الشخص التحقق منه؟ رتّب لتصنيف الصفوف، وقارن بعتبة لتحديدها.

challenge icon

التحدي

متوسط

لدى المدقق وقت لمراجعة عدد قليل فقط من مطالبات النفقات. يدرّب البرنامج التمهيدي غابة عزل؛ ويقرأ البرنامج n وعتبة.

  1. احسب درجة كل مطالبة في عمود جديد score.
  2. اطبع أكثر n مطالبات غرابةً، بدءًا بالأغرب، كما هو موضح أدناه.
  3. اطبع عدد المطالبات التي تقل درجاتها عن العتبة.

لشركة أخرى، 2 و-0.6:

Most unusual claims:
  C003: 1960 EUR, score -0.763
  C040: 80 EUR, score -0.757
Below -0.6: 6 claims

جرّب بنفسك

import pandas as pd
from sklearn.ensemble import IsolationForest

# صف واحد لكل طلب تعويض عن المصروفات: المبلغ، والإيصالات، وساعة تقديم الطلب، وعدد الأيام بعد الرحلة
claims = pd.read_csv("claims.csv")
X = claims[["amount_eur", "items", "hour", "days_late"]]
n = int(input())
threshold = float(input())

# من Isolation Forest: النموذج المدرَّب على جميع طلبات التعويض
forest = IsolationForest(random_state=0).fit(X)

# اكتب شيفرتك أدناه
quiz iconاختبر نفسك

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

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

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