Menu
CoddyTech

Özet: Spam Filtresi

Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 20 / 58.

challenge icon

Görev

Orta

Bu bölümün başında oluşturduğun spam filtresini yap. emails.csv dosyasında 200 e-posta bulunur: links, exclaims, caps_words, from_contact (bilinen bir göndericiyse 1), words ve spam. Program bir eşik değeri okur.

  1. Test için verilerin dörtte birini ayır (random_state=0), eğitim satırlarına ölçeklendirme uygula ve bir LogisticRegression modeli eğit; test doğruluğunu yazdır (3 ondalık basamak).
  2. Eşik değerinde, spam klasörüne gönderilen test e-postalarını, bunların arasındaki gerçek e-postaları ve filtreden geçen spam e-postalarını say.
  3. En güçlü spam kanıtını ve ağırlığını yazdır (2 ondalık basamak).

Başka bir hizmet ve 0.7 için:

Test accuracy: 0.884
At 0.7: 15 emails to spam (1 of them real), 4 spam let through
Strongest spam evidence: links (1.38)

Kendin dene

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression

emails = pd.read_csv("emails.csv")
features = ["links", "exclaims", "caps_words", "from_contact", "words"]
threshold = float(input())

# Kodunuzu aşağıya yazın

Denetimli Öğrenme bölümündeki tüm dersler

Kendi başına pratik yap: Online Python derleyicisi