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

نقاط الضوضاء

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

لا تنضم كل نقطة إلى مجموعة. يصنّف DBSCAN تلك النقاط على أنها -1: ضوضاء. في حديقة، تكون النزهات مجموعات، ويكون الأشخاص الجالسون بمفردهم ضوضاء:

خريطة لحديقة تضم أربع نزهات على شكل مجموعات متقاربة من نقاط ملوّنة، بأحجام 16 و12 و20 و14، وتسعة أشخاص بمفردهم ممثّلين بعلامات x رمادية متناثرة بينها

احسب كليهما:

labels = DBSCAN(eps=3, min_samples=4).fit_predict(X)
print((labels == -1).sum())
print(labels.max() + 1)

يطبع هذا 9 و4. الضوضاء هي -1، لذا تظل أكبر تسمية هي التي تحصي الحشود.

الضوضاء ليست إخفاقًا. غالبًا ما تكون النقاط المنفردة هي القصة: متنزّه خارج المسار، أو قراءة تختلف عن سائر القراءات.

challenge icon

التحدي

متوسط

ترتدي حيوانات الرنة أطواق GPS. القطعان مجموعات؛ وقد يكون حيوان الرنة المنفرد تائهًا أو مصابًا، لذا يزور الراعي تلك الحيوانات أولًا. يشغّل البرنامج الابتدائي DBSCAN مع قراءة min_samples من الإدخال.

  1. اطبع عدد القطعان.
  2. اطبع عدد حيوانات الرنة المنفردة.
  3. اطبع معرّفات أطواقها في قائمة، للاطمئنان عليها.

بالنسبة إلى أطواق راعٍ آخر:

Herds: 2
Lone reindeer: 3
Check on: ['R011', 'R027', 'R040']

جرّب قيمة أكبر لـ min_samples: فقاعدة التجمع الأكثر صرامة تجعل مزيدًا من حيوانات الرنة منفردة.

جرّب بنفسك

import numpy as np
import pandas as pd
from sklearn.cluster import DBSCAN

# أطواق GPS عند الفجر: معرّف كل رنّة وموقعها بالكيلومترات
reindeer = pd.read_csv("reindeer.csv")
X = np.column_stack([reindeer["east_km"], reindeer["north_km"]])
min_samples = int(input())
labels = DBSCAN(eps=0.6, min_samples=min_samples).fit_predict(X)

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

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

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

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