TF-IDF dengan scikit-learn
Vektorkan korpus dalam beberapa baris
TF-IDF dengan scikit-learn ialah pelajaran NLP Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran NLP Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus NLP Academy merangkumi sejumlah 4 pelajaran.
Tidak Perlu Menulis Kod Secara Manual
Anda telah memahami matematiknya, jadi sekarang biarkan scikit-learn melakukan tugas berat. TfidfVectorizer menukar dokumen mentah menjadi matriks berwajaran dalam beberapa baris.
Import Pemvektor
Semuanya berada dalam modul feature_extraction.text. Import TfidfVectorizer dan anda bersedia untuk memvektorkan sebarang senarai rentetan teks.
from sklearn.feature_extraction.text import TfidfVectorizerKorpus Anda ialah Senarai
Korpus hanyalah senarai rentetan Python, satu bagi setiap dokumen. Setiap entri ialah teks penuh yang mahu anda berikan skor dan bandingkan.
corpus = [
"the cat sat on the mat",
"the dog chased the cat",
]Padankan dan Tukarkan
Panggil fit_transform untuk mempelajari kosa kata dan mengira TF-IDF dalam satu langkah. Ia mengembalikan matriks ciri berwajaran yang jarang.
vec = TfidfVectorizer()
X = vec.fit_transform(corpus)
print(X.shape)Perkara yang Dipelajari oleh fit
Langkah fit membina kosa kata dan nilai IDF daripada korpus anda. Selepas itu, pemvektor mengetahui setiap istilah dan tahap kelangkaannya.
Periksa Kosa Kata
Anda boleh menyenaraikan nama ciri yang dipelajari untuk melihat lajur-lajurnya. get_feature_names_out memaparkan setiap perkataan mengikut susunan kosa kata. 🔎
print(vec.get_feature_names_out())Output Bersifat Jarang
Kebanyakan dokumen hanya menggunakan beberapa perkataan, jadi matriks itu sebahagian besarnya terdiri daripada sifar. scikit-learn menyimpannya sebagai matriks jarang yang menjimatkan memori secara lalai.
Lihat Nombor Sebenar
Tukarkan satu baris kepada tatasusunan padat untuk membaca wajaran tersebut. Perkataan pengisi yang hampir sifar dan perkataan topik akan kelihatan dengan jelas.
print(X.toarray()[0].round(3))Laraskan dengan Parameter
Pilihan yang berguna membolehkan anda membuang istilah yang jarang atau biasa dengan serta-merta. Tetapkan min_df dan stop_words untuk membersihkan kosa kata semasa anda memvektorkan teks.
vec = TfidfVectorizer(stop_words="english", min_df=2)Gunakan Semula pada Teks Baharu
Lakukan fit sekali pada data latihan, kemudian panggil transform pada dokumen baharu. Teks baharu dipetakan ke dalam kosa kata dan skala IDF yang sama tepat.
new_docs = ["a new cat appeared"]
X_new = vec.transform(new_docs)Sedia untuk Model
Matriks berwajaran ini boleh terus digunakan oleh mana-mana pengelas scikit-learn. Ciri TF-IDF ialah garis dasar yang kukuh dan pantas untuk tugasan teks sebenar.
Semakan Pantas
Kaedah manakah yang mempelajari kosa kata dan mengira matriks TF-IDF secara bersama?
Rumusan
Anda telah mengimport TfidfVectorizer, melakukannya fit pada korpus, memeriksa output yang jarang, dan belajar menggunakannya semula pada teks baharu. Matematiknya kini hanya memerlukan satu baris kod. ✅
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “TF-IDF dengan scikit-learn” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran NLP Academy, termasuk “TF-IDF dengan scikit-learn”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus NLP Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “TF-IDF dengan scikit-learn”?
Vektorkan korpus dalam beberapa baris Anda berlatih NLP Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan NLP Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran NLP Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “TF-IDF dengan scikit-learn” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran NLP Academy ini?
Ya. Setiap pelajaran NLP Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Masalah dengan Kiraan Mentah
- Kekerapan Istilah dan Kekerapan Dokumen Songsang
- TF-IDF dengan scikit-learn
- Mencari Perkataan Paling Penting