Menu
CoddyTech

Skor Anomali

Termasuk bagian Pembelajaran Tanpa Pengawasan dalam perjalanan Machine Learning di Coddy. Pelajaran 37 dari 51.

Jawaban ya atau tidak menyembunyikan betapa anehnya sebuah baris. score_samples memberikan skor untuk setiap baris: makin rendah skornya, makin aneh barisnya. Untuk resep di apotek:

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

Ini mencetak tiga data paling tidak biasa:

     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

Histogram skor anomali dari 150 resep: sebagian besar berada antara -0.55 dan -0.35, beberapa memanjang ke kiri hingga -0.88, dan ambang batas garis putus-putus merah di -0.6 dengan 4 yang perlu diperiksa

Kamu yang menentukan batasnya: berapa banyak baris yang bisa diperiksa seseorang? Urutkan untuk memberi peringkat, lalu bandingkan dengan ambang batas untuk menandai.

challenge icon

Tantangan

Sedang

Auditor hanya punya waktu untuk memeriksa beberapa klaim pengeluaran. Kode awal melatih isolation forest; program membaca n dan sebuah ambang batas.

  1. Beri skor pada setiap klaim di kolom baru score.
  2. Cetak n klaim yang paling tidak biasa, dimulai dari yang paling aneh, seperti di bawah ini.
  3. Cetak jumlah klaim yang skornya di bawah ambang batas.

Untuk perusahaan lain, 2 dan -0.6:

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

Coba sendiri

import pandas as pd
from sklearn.ensemble import IsolationForest

# Satu baris untuk setiap klaim pengeluaran: jumlah, tanda terima, jam pengajuan, dan jumlah hari setelah perjalanan
claims = pd.read_csv("claims.csv")
X = claims[["amount_eur", "items", "hour", "days_late"]]
n = int(input())
threshold = float(input())

# Dari Isolation Forest: model forest yang dilatih menggunakan setiap klaim
forest = IsolationForest(random_state=0).fit(X)

# Tulis kodemu di bawah ini
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pembelajaran Tanpa Pengawasan

Latihan sendiri: Compiler Python online