Contoh Naive Bayes dalam Python
Python ialah bahasa pengaturcaraan yang ringkas dan mudah dipelajari dengan perpustakaan pengkomputeran saintifik yang kaya dan alatan pemprosesan data. Antaranya, algoritma Naive Bayes, sebagai kaedah pembelajaran mesin klasik, juga digunakan secara meluas dalam bahasa Python. Artikel ini akan menggunakan contoh untuk memperkenalkan penggunaan dan langkah Naive Bayes dalam Python.
- Pengenalan kepada Naive Bayes
Algoritma Naive Bayes ialah algoritma pengelasan berdasarkan teorem Bayes Idea terasnya ialah menggunakan data latihan yang diketahui Ciri-ciri set digunakan untuk membuat kesimpulan keputusan klasifikasi data baharu. Dalam aplikasi praktikal, algoritma Naive Bayes sering digunakan dalam senario seperti klasifikasi teks, penapisan spam dan analisis sentimen.
Ciri algoritma Naive Bayes ialah ia menganggap bahawa setiap ciri adalah bebas antara satu sama lain. Andaian ini selalunya tidak benar dalam situasi sebenar, jadi algoritma Naive Bayes dipanggil "naif". Walaupun andaian ini, Naive Bayes masih menunjukkan prestasi yang baik dalam masalah seperti klasifikasi teks pendek.
- Menggunakan Pengelas Naive Bayes
Dalam Python, langkah-langkah untuk menggunakan Pengelas Naive Bayes boleh diringkaskan seperti berikut:
2.1 Sediakan data
Pertama, anda perlu menyediakan data latihan dan data ujian untuk diklasifikasikan. Data ini boleh dalam bentuk teks, gambar, audio dan sebagainya, tetapi ia perlu ditukar kepada bentuk yang boleh difahami oleh komputer. Dalam masalah klasifikasi teks, selalunya perlu untuk menukar teks kepada perwakilan vektor.
2.2 Model latihan
Seterusnya, anda perlu menggunakan set data latihan untuk membina pengelas Naive Bayes. Terdapat tiga pengelas Bayes naif yang biasa digunakan dalam Python:
- GaussianNB: sesuai untuk pengelasan data berterusan.
- BernoulliNB: Sesuai untuk klasifikasi data binari.
- MultinomialNB: Sesuai untuk pengelasan data multivariate.
Mengambil klasifikasi teks sebagai contoh, anda boleh menggunakan kelas TfidfVectorizer yang disediakan oleh perpustakaan sklearn untuk menukar teks kepada perwakilan vektor dan menggunakan pengelas MultinomialNB untuk latihan.
2.3 Model ujian
Selepas latihan selesai, set data ujian perlu digunakan untuk menilai prestasi model. Biasanya, set data ujian dan set data latihan adalah bebas. Perlu diingatkan bahawa data daripada set data latihan tidak boleh digunakan semasa ujian. Anda boleh menggunakan fungsi accuracy_score yang disediakan oleh perpustakaan sklearn untuk mengira ketepatan model.
- Contoh: Pengelasan teks berdasarkan Naive Bayes
Untuk menunjukkan aplikasi praktikal pengelas Naive Bayes, artikel ini menggunakan pengelasan teks berasaskan Naive Bayes Contohnya.
3.1 Sediakan data
Pertama, cari dua set data teks daripada Internet, iaitu "Berita Sukan" dan "Berita Teknologi", setiap set data mengandungi 1000 teks. Letakkan dua set data ke dalam folder yang berbeza dan labelkan teks sebagai "Sukan" dan "Teknologi" masing-masing.
3.2 Gunakan perpustakaan sklearn untuk pengelasan
Seterusnya, gunakan pengelas Bayes naif yang disediakan oleh perpustakaan sklearn untuk pengelasan.
(1) Import perpustakaan berkaitan
from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.naive_bayes import MultinomialNB from sklearn.metrics import accuracy_score import os
(2) Baca data teks dan anotasinya
def read_files(path): text_list = [] label_list = [] for root, dirs, files in os.walk(path): for file in files: file_path = os.path.join(root, file) with open(file_path, 'r', encoding='utf-8') as f: text = ''.join(f.readlines()) text_list.append(text) if '体育' in file_path: label_list.append('体育') elif '科技' in file_path: label_list.append('科技') return text_list, label_list
(3) Tukar teks kepada perwakilan vektor
def text_vectorizer(text_list): vectorizer = TfidfVectorizer() X = vectorizer.fit_transform(text_list) return X, vectorizer
(4) Latih model dan kembalikan ketepatan
def train(text_list, label_list): X, vectorizer = text_vectorizer(text_list) y = label_list X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) clf = MultinomialNB() clf.fit(X_train, y_train) y_pred = clf.predict(X_test) acc = accuracy_score(y_test, y_pred) return clf, vectorizer, acc
(5) Uji model
def predict(clf, vectorizer, text): X = vectorizer.transform(text) y_pred = clf.predict(X) return y_pred[0]
3.3 Analisis keputusan
Jalankan kod di atas untuk mendapatkan ketepatan pengelas ialah 0.955. Apabila melakukan pengelasan sebenar, anda hanya perlu memasukkan teks untuk diklasifikasikan ke dalam fungsi ramalan untuk mengembalikan kategori yang dimilikinya. Sebagai contoh, masukkan teks "iPhone 12 akhirnya dikeluarkan!" untuk kembali ke kategori "Teknologi".
- Ringkasan
Sebagai algoritma pengelasan yang mudah dan berkesan, algoritma Naive Bayes juga digunakan secara meluas dalam Python. Artikel ini memperkenalkan kaedah dan langkah menggunakan pengelas Naive Bayes dan mengambil pengelasan teks berdasarkan Naive Bayes sebagai contoh untuk menunjukkan aplikasi praktikal pengelas tersebut. Dalam proses aplikasi sebenar, prapemprosesan data, pemilihan ciri dan operasi lain juga diperlukan untuk meningkatkan ketepatan pengelas.
Atas ialah kandungan terperinci Contoh Naive Bayes dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penegasan dalam Python ialah alat yang berguna untuk pengaturcara untuk menyahpepijat kod mereka. Ia digunakan untuk mengesahkan bahawa keadaan dalaman program memenuhi jangkaan dan menimbulkan ralat penegasan (AssertionError) apabila syarat ini palsu. Semasa proses pembangunan, penegasan digunakan semasa ujian dan penyahpepijatan untuk menyemak sama ada status kod sepadan dengan hasil yang dijangkakan. Artikel ini akan membincangkan punca, penyelesaian dan cara menggunakan penegasan dengan betul dalam kod anda. Punca ralat penegasan Pas ralat penegasan

Teknik Persampelan Berstrata dalam Persampelan Python ialah kaedah pengumpulan data yang biasa digunakan dalam statistik Ia boleh memilih sebahagian daripada sampel daripada set data untuk dianalisis untuk membuat kesimpulan ciri-ciri keseluruhan set data. Dalam era data besar, jumlah data adalah besar, dan menggunakan keseluruhan sampel untuk analisis adalah memakan masa dan tidak praktikal dari segi ekonomi. Oleh itu, pemilihan kaedah persampelan yang sesuai dapat meningkatkan kecekapan analisis data. Artikel ini terutamanya memperkenalkan teknik persampelan berstrata dalam Python. Apakah persampelan berstrata? Dalam persampelan, persampelan berstrata

Gambaran keseluruhan cara membangunkan pengimbas kerentanan melalui Python Dalam persekitaran hari ini yang meningkatkan ancaman keselamatan Internet, pengimbas kerentanan telah menjadi alat penting untuk melindungi keselamatan rangkaian. Python ialah bahasa pengaturcaraan popular yang ringkas, mudah dibaca dan berkuasa, sesuai untuk membangunkan pelbagai alat praktikal. Artikel ini akan memperkenalkan cara menggunakan Python untuk membangunkan pengimbas kerentanan untuk menyediakan perlindungan masa nyata untuk rangkaian anda. Langkah 1: Tentukan Sasaran Imbasan Sebelum membangunkan pengimbas kerentanan, anda perlu menentukan sasaran yang ingin anda imbas. Ini boleh menjadi rangkaian anda sendiri atau apa sahaja yang anda mempunyai kebenaran untuk menguji

Cara menggunakan Python untuk menulis dan melaksanakan skrip dalam Linux Dalam sistem pengendalian Linux, kita boleh menggunakan Python untuk menulis dan melaksanakan pelbagai skrip. Python ialah bahasa pengaturcaraan ringkas dan berkuasa yang menyediakan banyak perpustakaan dan alatan untuk menjadikan skrip lebih mudah dan lebih cekap. Di bawah ini kami akan memperkenalkan langkah asas cara menggunakan Python untuk penulisan dan pelaksanaan skrip dalam Linux, dan menyediakan beberapa contoh kod khusus untuk membantu anda memahami dan menggunakannya dengan lebih baik. Pasang Python

Contoh penggunaan dan kod fungsi sqrt() dalam Python 1. Fungsi dan pengenalan fungsi sqrt() Dalam pengaturcaraan Python, fungsi sqrt() ialah fungsi dalam modul matematik, dan fungsinya adalah untuk mengira punca kuasa dua bagi nombor. Punca kuasa dua bermaksud nombor yang didarab dengan sendirinya sama dengan kuasa dua nombor itu, iaitu, x*x=n, maka x ialah punca kuasa dua bagi n. Fungsi sqrt() boleh digunakan dalam atur cara untuk mengira punca kuasa dua. 2. Cara menggunakan fungsi sqrt() dalam Python, sq

Amalan pengaturcaraan Python: Cara menggunakan API Peta Baidu untuk menjana fungsi peta statik Pengenalan: Dalam masyarakat moden, peta telah menjadi bahagian yang amat diperlukan dalam kehidupan manusia. Apabila bekerja dengan peta, kami selalunya perlu mendapatkan peta statik kawasan tertentu untuk dipaparkan pada halaman web, apl mudah alih atau laporan. Artikel ini akan memperkenalkan cara menggunakan bahasa pengaturcaraan Python dan API Peta Baidu untuk menjana peta statik dan menyediakan contoh kod yang berkaitan. 1. Kerja-kerja penyediaan Bagi merealisasikan fungsi penjanaan peta statik menggunakan API Peta Baidu, I

Pengaturcaraan Python untuk menganalisis fungsi penukaran koordinat dalam dokumentasi API Peta Baidu Pengenalan: Dengan perkembangan pesat Internet, fungsi penentududukan peta telah menjadi bahagian yang amat diperlukan dalam kehidupan orang moden. Sebagai salah satu perkhidmatan peta paling popular di China, Peta Baidu menyediakan satu siri API untuk digunakan oleh pembangun. Artikel ini akan menggunakan pengaturcaraan Python untuk menganalisis fungsi penukaran koordinat dalam dokumentasi API Peta Baidu dan memberikan contoh kod yang sepadan. 1. Pengenalan Dalam pembangunan, kita kadangkala melibatkan isu penukaran koordinat. AP Peta Baidu

Bagaimana untuk menulis algoritma analisis komponen utama PCA dalam Python? PCA (Analisis Komponen Utama) ialah algoritma pembelajaran tanpa pengawasan yang biasa digunakan untuk mengurangkan dimensi data untuk memahami dan menganalisis data dengan lebih baik. Dalam artikel ini, kita akan belajar cara menulis algoritma analisis komponen utama PCA menggunakan Python dan memberikan contoh kod khusus. Langkah-langkah PCA adalah seperti berikut: Seragamkan data: Sifarkan min setiap ciri data dan laraskan varians kepada julat yang sama untuk memastikan
