Özet: Spam Filtresi
Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 20 / 58.
Görev
OrtaBu 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.
- Test için verilerin dörtte birini ayır (
random_state=0), eğitim satırlarına ölçeklendirme uygula ve birLogisticRegressionmodeli eğit; test doğruluğunu yazdır (3 ondalık basamak). - 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.
- 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
1İlk Modeliniz
Örneklerden ÖğrenmeEğitim ve Test KümeleriUydurma ve Tahmin EtmeBir Modeli PuanlamaÖzet: Tohum Sınıflandırıcı4Lojistik Regresyon
Evet-Hayır TahminleriKarar EşiğiKanıt Olarak AğırlıklarBirden Fazla SınıfÖzet: Spam Filtresi2En Yakın Komşular
k-NN Nasıl Karar Verirk'yi SeçmekKarar SınırlarıKomşular İçin ÖlçeklemeÖzet: Şarap Komşuları5Sınıflandırıcıları Değerlendirme
Karmaşıklık MatrisiKesinlik ve DuyarlılıkF1 SkoruDengesiz SınıflarROC EğrileriÖzet: Tarama Testi8Çapraz Doğrulama
K-Katlı DoğrulamaModelleri Adil Bir Şekilde KarşılaştırmaIzgara AramasıÖzet: Kaykay Tamiri11Proje: Penguen Türleri
Penguenlerle TanışınVerileri HazırlayınBir Model SeçinEn İyisini AyarlayınModeli Yayına AlınKendi başına pratik yap: Online Python derleyicisi