Rumah > pembangunan bahagian belakang > Tutorial Python > Cara menggunakan Jieba untuk statistik kekerapan perkataan dan pengekstrakan kata kunci dalam Python

Cara menggunakan Jieba untuk statistik kekerapan perkataan dan pengekstrakan kata kunci dalam Python

WBOY
Lepaskan: 2023-05-02 19:46:05
ke hadapan
4403 orang telah melayarinya

1 Statistik kekerapan perkataan

1.1 Statistik kekerapan perkataan ringkas

1 Import pustaka jieba dan tentukan teks

import jieba
text = "Python是一种高级编程语言,广泛应用于人工智能、数据分析、Web开发等领域。"
Salin selepas log masuk

2 >

words = jieba.cut(text)
Salin selepas log masuk

Langkah ini akan membahagikan teks kepada beberapa perkataan dan mengembalikan objek penjana

, yang boleh digunakan untuk menggelungkan semua perkataan. wordsfor3. Kira kekerapan perkataan

word_count = {}
for word in words:
    if len(word) > 1:
        word_count[word] = word_count.get(word, 0) + 1
Salin selepas log masuk

Langkah ini adalah untuk merentasi semua perkataan, mengira bilangan kemunculan setiap perkataan dan menyimpannya ke kamus

. Apabila mengira kekerapan perkataan, pengoptimuman boleh dilakukan dengan mengalih keluar perkataan henti Di sini, perkataan dengan panjang kurang daripada 2 ditapis sahaja.

word_count4. Output hasil

for word, count in word_count.items():
    print(word, count)
Salin selepas log masuk

Cara menggunakan Jieba untuk statistik kekerapan perkataan dan pengekstrakan kata kunci dalam Python1.2 Tambah perkataan henti

Untuk mengira kekerapan perkataan dengan lebih tepat, kita boleh mengira kekerapan perkataan dalam statistik kekerapan perkataan Tambah perkataan henti untuk mengalih keluar beberapa perkataan biasa tetapi tidak bermakna. Langkah-langkah khusus adalah seperti berikut:

Tentukan senarai perkataan henti

import jieba

# 停用词列表
stopwords = ['是', '一种', '等']
Salin selepas log masuk

Sahkan teks dan tapis perkataan henti

text = "Python是一种高级编程语言,广泛应用于人工智能、数据分析、Web开发等领域。"
words = jieba.cut(text)
words_filtered = [word for word in words if word not in stopwords and len(word) > 1]
Salin selepas log masuk

Kira kekerapan perkataan dan keluarkan hasilnya

word_count = {}
for word in words_filtered:
    word_count[word] = word_count.get(word, 0) + 1
for word, count in word_count.items():
    print(word, count)
Salin selepas log masuk

Selepas menambah perkataan henti, hasil output ialah:

Cara menggunakan Jieba untuk statistik kekerapan perkataan dan pengekstrakan kata kunci dalam PythonSeperti yang anda lihat, perkataan yang dilumpuhkan

tidak dipaparkan.

一种2 Pengekstrakan Kata Kunci

2.1 Prinsip Pengekstrakan Kata Kunci

Berbeza daripada statistik kekerapan perkataan yang hanya mengira perkataan, prinsip pengekstrakan kata kunci jieba adalah berdasarkan TF-IDF ( Kekerapan Istilah- Kekerapan Dokumen Songsang) algoritma. Algoritma TF-IDF ialah kaedah pengekstrakan ciri teks yang biasa digunakan yang boleh mengukur kepentingan sesuatu perkataan dalam teks.

Secara khusus, algoritma TF-IDF mengandungi dua bahagian:

    Kekerapan Jangka: merujuk kepada bilangan kali perkataan muncul dalam teks, biasanya menggunakan statistik Mudah perwakilan nilai, seperti kekerapan perkataan, kekerapan perkataan bigram, dsb. Kekerapan perkataan mencerminkan kepentingan sesuatu perkataan dalam teks, tetapi mengabaikan kelaziman perkataan dalam keseluruhan korpus.
  • Kekerapan Dokumen Songsang: merujuk kepada songsangan kekerapan perkataan yang muncul dalam semua dokumen, dan digunakan untuk mengukur kelaziman sesuatu perkataan. Semakin besar kekerapan dokumen songsang, semakin biasa sesuatu perkataan dan semakin rendah kepentingannya, semakin kecil kekerapan dokumen songsang, semakin unik perkataan itu dan semakin tinggi kepentingannya;
  • Algoritma TF-IDF mengira kepentingan setiap perkataan dalam teks dengan mempertimbangkan secara menyeluruh kekerapan perkataan dan kekerapan dokumen songsang untuk mengekstrak kata kunci. Dalam jieba, pelaksanaan khusus pengekstrakan kata kunci termasuk langkah berikut:

    Lakukan pembahagian perkataan pada teks dan dapatkan hasil pembahagian perkataan.
  • Hitung bilangan kali setiap perkataan muncul dalam teks dan hitung kekerapan perkataan.
  • Hitung bilangan kali setiap perkataan muncul dalam semua dokumen dan hitung kekerapan dokumen songsang.
  • Memandangkan kekerapan perkataan dan kekerapan dokumen songsang, kira nilai TF-IDF bagi setiap perkataan dalam teks.
  • Isih nilai TF-IDF ​​dan pilih perkataan dengan markah tertinggi sebagai kata kunci.
Contohnya

: F (Kekerapan Jangka) merujuk kepada kekerapan perkataan tertentu muncul dalam dokumen. Formula pengiraan adalah seperti berikut: T F = (bilangan kali perkataan muncul dalam dokumen) / (jumlah bilangan perkataan dalam dokumen)
Sebagai contoh, dalam dokumen yang mengandungi 100 perkataan, perkataan tertentu muncul 10 kali , maka TF perkataan ialah
10 / 100 = 0.1
IDF (Kekerapan Dokumen Songsang) merujuk kepada timbal balik bilangan dokumen di mana perkataan tertentu muncul dalam koleksi dokumen. Formula pengiraan adalah seperti berikut:
I D F = log (jumlah bilangan dokumen dalam koleksi dokumen / bilangan dokumen yang mengandungi perkataan)
Sebagai contoh, dalam koleksi dokumen yang mengandungi 1,000 dokumen, perkataan tertentu muncul dalam 100 documents , maka IDF perkataan ialah l o g ( 1000 / 100 ) = 1.0
TFIDF ialah hasil darab TF dan IDF Formula pengiraan adalah seperti berikut:
T F I D F = T F ∗ 🎜>
Perlu diingatkan bahawa algoritma TF-IDF hanya mempertimbangkan kemunculan perkataan dalam teks dan mengabaikan korelasi antara perkataan. Oleh itu, dalam beberapa senario aplikasi tertentu, kaedah pengekstrakan ciri teks lain perlu digunakan, seperti vektor perkataan, model topik, dsb.

2.2 Kod pengekstrakan kata kunci
import jieba.analyse

# 待提取关键字的文本
text = "Python是一种高级编程语言,广泛应用于人工智能、数据分析、Web开发等领域。"

# 使用jieba提取关键字
keywords = jieba.analyse.extract_tags(text, topK=5, withWeight=True)

# 输出关键字和对应的权重
for keyword, weight in keywords:
    print(keyword, weight)
Salin selepas log masuk

Dalam contoh ini, kami mula-mula mengimport modul

dan kemudian menentukan teks

untuk diekstrak. Seterusnya, kami menggunakan fungsi

untuk mengekstrak kata kunci, dengan parameter

menunjukkan bilangan kata kunci yang akan diekstrak dan parameter jieba.analyse menunjukkan sama ada untuk mengembalikan nilai berat kata kunci. Akhir sekali, kami mengulangi senarai kata kunci dan mengeluarkan setiap kata kunci dan nilai berat yang sepadan. textHasil keluaran fungsi ini ialah: jieba.analyse.extract_tags()topKwithWeight

Seperti yang anda lihat, jieba mengekstrak beberapa kata kunci dalam teks input berdasarkan algoritma TF-IDF dan mengembalikan nilai berat setiap kata kunci.

Atas ialah kandungan terperinci Cara menggunakan Jieba untuk statistik kekerapan perkataan dan pengekstrakan kata kunci dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan