Naha anjeun badé ngamimitian learning mesin?
Kuring geus dijieun tutorial basajan tur gampang pikeun beginners lengkep. Babarengan, urang bakal ngalangkungan léngkah-léngkah dasar pikeun ngalatih modél pembelajaran mesin.
Nalika ngajelaskeun léngkah-léngkah ngalatih modél hiji-hiji, kuring ogé bakal masihan conto anu paling dasar ngeunaan masalah pembelajaran mesin ogé. Janten, upami anjeun hoyong ngiringan, anjeun tiasa ngaunduh conto set data tina ieu link.
Ieu ngan ukur conto set data pikeun ngabantosan anjeun ngamimitian diajar mesin.
Kami ngagaduhan 18 nilai jalma tina umur sareng gender anu béda-béda anu ngagaduhan musik karesepna. Kalayan ngagunakeun fitur "umur" sareng "gender" urang bakal nyobian nebak genre musik mana anu karesepna.
Catetan: 1 sareng 0 ditugaskeun ka gender salaku awéwé sareng lalaki dina set data ieu.
Nanging, upami anjeun henteu hoyong nuturkeun conto éta, éta ogé saé. Kuring bakal ngajelaskeun sadayana léngkah ieu sacara rinci. Janten, hayu urang teuleum!
Hal-hal munggaran anu kedah terang
Sateuacan lebet kana léngkah-léngkah ngalatih modél, hayu urang jelaskeun sababaraha poin. Pembelajaran mesin mangrupikeun kacerdasan buatan disiplin anu museurkeun kana ngamekarkeun algoritma anu tiasa diajar tina data.
Jang ngalampahkeun ieu, modél machine learning dilatih dina susunan data nu ngajarkeun model kumaha carana sangkan prediksi bener atawa klasifikasi on seger, data saméméhna kanyahoan.
Ku kituna, naon model ieu? A modél pembelajaran mesin sarua jeung resep anu ngagunakeun komputer pikeun ngahasilkeun prediksi data atawa pilihan.
Hiji model, kawas resep, nuturkeun sakumpulan parentah pikeun evaluate data sarta ngahasilkeun prediksi atawa judgments dumasar kana pola kapanggih dina data. Langkung seueur data modél dilatih, langkung akurat prediksi na.
Jenis Modél Anu Urang Bisa Ngalatih?
Hayu urang tingali naon model pembelajaran mesin dasar.
- Regresi Linier: modél anu ngaramalkeun variabel udagan kontinyu tina hiji atawa leuwih variabel input.
- Jaringan saraf: jaringan titik numbu nu bisa diajar ngadeteksi pola pajeulit dina data.
- Tangkal Kaputusan: pendekatan-nyieun kaputusan diwangun dina ranté branching pernyataan lamun-lain.
- Clustering: sakumpulan modél anu ngagolongkeun titik data anu dibandingkeun dumasar kana kasaruaan.
- Regresi Logistik: modél pikeun masalah klasifikasi binér dimana variabel udagan ngagaduhan dua nilai poténsial.
- Tangkal Kaputusan: pendekatan-nyieun kaputusan diwangun dina ranté branching pernyataan lamun-lain.
- Random Forest: modél ensemble anu diwangun ku sababaraha tangkal kaputusan. Éta sering dianggo pikeun aplikasi klasifikasi sareng régrési.
- K-Nearest Neighbors: model anu ngaramalkeun variabel target ngagunakeun titik data k-pangcaketna dina set latihan.
Gumantung kana masalah sareng set data urang, urang mutuskeun modél pembelajaran mesin mana anu paling cocog sareng kaayaan urang. Acan, urang bakal uih deui ka ieu engké. Ayeuna, hayu urang ngamimitian ngalatih modél urang. Kuring miharep anjeun geus diundeur teh susunan data upami anjeun hoyong nuturkeun conto urang.
Ogé, kuring nyarankeun gaduh Notebook Jupyter dipasang dina mesin lokal anjeun sareng dianggo pikeun proyék pembelajaran mesin anjeun.
1: Nangtukeun masalah
Tahap kahiji dina latihan mesin learning model nangtukeun masalah nu bakal direngsekeun. Ieu ngandung harti milih variabel anu anjeun hoyong ramalan (katelah variabel target) sareng variabel anu bakal dianggo pikeun ngahasilkeun ramalan éta (katelah fitur atanapi prediktor).
Anjeun oge kedah mutuskeun naon jenis masalah mesin-learning anjeun nyobian alamat (klasifikasi, regression, clustering, jeung saterusna) jeung naon tipe data anjeun bakal kudu ngumpulkeun atawa meunang ngalatih model anjeun.
Jenis modél anu anjeun gunakeun bakal ditangtukeun ku jinis masalah pembelajaran mesin anu anjeun tuju pikeun direngsekeun. Klasifikasi, régrési, sareng klaster mangrupikeun tilu kategori primér tantangan learning mesin. Nalika anjeun hoyong ngaduga variabel categorical, sapertos naha email mangrupikeun spam atanapi henteu, anjeun nganggo klasifikasi.
Nalika anjeun badé ngaramalkeun variabel kontinyu, sapertos harga bumi, anjeun ngagunakeun régrési. Clustering dipaké pikeun ngumpulkeun data comparable item dumasar kana commonalities maranéhanana.
Lamun urang nempo conto urang; tantangan urang pikeun nangtukeun gaya musik pikaresep hiji jalma ti gender jeung umur maranéhanana. Kami bakal ngagunakeun set data tina 18 jalma pikeun conto ieu sareng inpormasi ngeunaan umur, gender, sareng gaya musik karesepna.
2. Nyiapkeun data
Saatos Anjeun netepkeun masalah, anjeun kedah nyiapkeun data pikeun ngalatih modél. Ieu merlukeun beberesih sarta ngolah data. Janten, urang tiasa mastikeun yén éta aya dina format anu algoritma mesin learning tiasa anggo.
Ieu tiasa kalebet kagiatan sapertos mupus nilai anu leungit, ngarobih data katégori kana data numerik, sareng skala atanapi normalisasi data pikeun mastikeun yén sadaya ciri dina skala anu sami.
Contona, ieu kumaha anjeun mupus nilai leungit:
import pandas as pd
# Load the data into a pandas DataFrame
data = pd.read_csv('data.csv')
# Check for missing values
print(data.isnull().sum())
# Drop rows with missing values
data.dropna(inplace=True)
# Check that all missing values have been removed
print(data.isnull().sum())
Catetan saeutik: Dina garis o "import pandas as pd",
urang ngimpor perpustakaan Pandas jeung napelkeun eta alias "pd" sangkan leuwih gampang rujukan fungsi sarta objék engké dina kode.
Pandas mangrupikeun modul anu terkenal pikeun Python pikeun manipulasi sareng analisa data, khususna nalika damel sareng data terstruktur atanapi tabular.
Dina conto urang nangtukeun genres musik. Urang ngimpor heula set data. Kuring geus ngaranna éta music.csv, kumaha oge, Anjeun bisa ngaranan eta kumaha ogé rék.
Pikeun nyiapkeun data pikeun ngalatih modél pembelajaran mesin, urang ngabagi kana atribut (umur sareng gender) sareng tujuan (genre musik).
Urang ogé bakal ngabagi data kana set latihan sareng uji 80:20 pikeun meunteun kinerja modél urang sareng ngahindarkeun overfitting.
# Import necessary libraries
import pandas as pd
from sklearn.model_selection import train_test_split
# Load data from CSV file/code>
music_data = pd.read_csv('music.csv')
# Split data into features and target
X = music_data.drop(columns=['genre'])
y = music_data['genre']
# Split data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
3. Pilih modél pembelajaran mesin.
Saatos nyiapkeun data, anjeun kedah milih modél pembelajaran mesin anu cocog sareng tugas anjeun.
Aya sababaraha algoritma pikeun dipilih, sapertos tangkal kaputusan, régrési logistik, mesin vektor dukungan, jaringan saraf, sareng anu sanésna. Algoritma anu anjeun pilih bakal ditangtukeun ku jinis masalah anu anjeun badé ngajawab, jinis data anu anjeun gaduh, sareng kabutuhan kinerja anjeun.
Urang bakal nganggo klasifikasi tangkal kaputusan pikeun conto ieu kusabab urang nuju damel sareng masalah klasifikasi (ngaramalkeun data katégori).
# Import necessary libraries
from sklearn.tree import DecisionTreeClassifier
Ieu mangrupikeun visualisasi kumaha Decision Tree Classifier jalanna:
4. Ngalatih modél
Anjeun tiasa ngamimitian ngalatih modél nalika anjeun milih algoritma pembelajaran mesin anu tiasa ditampi. Ieu ngabutuhkeun ngagunakeun data anu didamel sateuacana pikeun ngadidik algoritma ngeunaan cara ngadamel prediksi dina data anu énggal, anu teu katingali sateuacana.
Algoritma bakal ngarobih parameter internalna salami latihan pikeun ngaleutikan bédana antara nilai anu diprediksi sareng nilai saleresna dina data latihan. Kuantitas data anu digunakeun pikeun latihan, kitu ogé parameter husus algoritma, sadayana tiasa gaduh pangaruh kana akurasi model hasilna.
Dina conto husus urang, ayeuna urang geus mutuskeun dina metoda, urang bisa ngalatih model urang jeung data latihan.
# Train the decision tree classifier
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
5. Evaluasi modél
Saatos modél dilatih, éta kedah dievaluasi dina data énggal pikeun mastikeun yén éta akurat sareng tiasa diandelkeun. Ieu merlukeun nguji model jeung data nu teu garapan salila latihan jeung ngabandingkeun nilai projected na kana nilai sabenerna dina data tés.
Tinjauan ieu tiasa ngabantosan dina ngaidentipikasi naon waé cacad modél, sapertos overfitting atanapi underfitting, sareng tiasa nyababkeun sagala rupa-tuning anu diperyogikeun.
Nganggo data tés, urang bakal meunteun kabeneran modél urang.
# Import necessary libraries
from sklearn.metrics import accuracy_score
# Predict the music genre for the test data
predictions = model.predict(X_test)
# Evaluate the model's accuracy
accuracy = accuracy_score(y_test, predictions)
print("Accuracy: ", accuracy)
Skor akurasi henteu parah pikeun ayeuna. 🙂 Pikeun ngaronjatkeun skor akurasi Anjeun, Anjeun salawasna bisa ngabersihan data leuwih atawa coba model mesin-learning béda pikeun nempo mana nu mere skor pangluhurna.
6. Sempurnakeun modél
Upami efisiensi modél henteu cekap cekap, anjeun tiasa nyéépkeunana ku cara ngarobih sababaraha parameter algoritma atanapi ku ékspérimén sareng algoritma énggal.
Prosedur ieu tiasa kalebet ékspérimén sareng tingkat diajar alternatif, ngarobih setélan regularisasi, atanapi ngarobih jumlah atanapi ukuran lapisan disumputkeun dina jaringan saraf.
7. Paké modél
Sakali anjeun resep kana kinerja modél, anjeun tiasa mimitian nganggo éta pikeun ngahasilkeun prediksi data anyar.
Ieu mungkin butuh nyoco data anyar kana modél sareng ngamangpaatkeun parameter diajar modél pikeun ngahasilkeun prediksi data éta, atanapi ngahijikeun modél kana aplikasi atanapi sistem anu langkung lega.
Urang tiasa nganggo modél urang pikeun ngahasilkeun prediksi ngeunaan data énggal saatos urang resep kana akurasina. Anjeun tiasa nyobian nilai béda tina gender jeung umur.
# Test the model with new data
new_data = [[25, 1], [30, 0]]
predictions = model.predict(new_data)
print("Predictions: ", predictions)
Bérésan
Kami parantos ngalatih modél pembelajaran mesin munggaran urang.
Kuring miharep anjeun geus kapanggih eta mangpaat. Anjeun ayeuna tiasa nyobian nganggo modél pembelajaran mesin anu béda sapertos Linear Regression atanapi Random Forest.
Aya seueur set data sareng tantangan Kaggle upami anjeun hoyong ningkatkeun coding sareng pamahaman anjeun ngeunaan pembelajaran mesin.
Leave a Reply