NLP Academy · Pelajaran

TF-IDF dengan scikit-learn

Vektorkan korpus dalam beberapa baris

Pelajaran 3 daripada 413 langkah

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 TfidfVectorizer

Korpus 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. ✅

Percuma untuk bermula

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

  1. Masalah dengan Kiraan Mentah
  2. Kekerapan Istilah dan Kekerapan Dokumen Songsang
  3. TF-IDF dengan scikit-learn
  4. Mencari Perkataan Paling Penting
← Kembali ke NLP Academy