Okunabilirlik testleri

Python ile NLP için Özellik Mühendisliği

Rounak Banik

Data Scientist

Okunabilirlik testlerine genel bakış

  • İngilizce bir pasajın okunabilirliğini belirler
  • Ölçek: ilkokuldan üniversite mezununa
  • Sözcük, hece ve cümle sayısını kullanan matematiksel formül
  • Sahte haber ve görüş spamı tespitinde kullanılır
Python ile NLP için Özellik Mühendisliği

Okunabilirlik test örnekleri

  • Flesch okuma kolaylığı
  • Gunning fog indeksi
  • Simple Measure of Gobbledygook (SMOG)
  • Dale-Chall skoru
Python ile NLP için Özellik Mühendisliği

Okunabilirlik test örnekleri

  • Flesch okuma kolaylığı
  • Gunning fog indeksi
  • Simple Measure of Gobbledygook (SMOG)
  • Dale-Chall skoru
Python ile NLP için Özellik Mühendisliği

Flesch okuma kolaylığı

  • En eski ve en yaygın testlerden biri
  • Ortalama cümle uzunluğu arttıkça metni okumak zorlaşır
    • "This is a short sentence."
    • "This is longer sentence with more words and it is harder to follow than the first sentence."
  • Bir kelimedeki ortalama hece sayısı arttıkça metni okumak zorlaşır
    • "I live in my home."
    • "I reside in my domicile."
  • Puan yükseldikçe okunabilirlik artar
Python ile NLP için Özellik Mühendisliği

Flesch okuma kolaylığı skoru yorumu

Okuma kolaylığı skoru Sınıf düzeyi
90-100 5
80-90 6
70-80 7
60-70 8-9
50-60 10-12
30-50 Üniversite
0-30 Üniversite mezunu
Python ile NLP için Özellik Mühendisliği

Gunning fog indeksi

  • 1954'te geliştirildi
  • Ortalama cümle uzunluğuna da bağlıdır
  • Karmaşık kelime yüzdesi arttıkça metni okumak zorlaşır
  • Dizin yükseldikçe okunabilirlik azalır
Python ile NLP için Özellik Mühendisliği

Gunning fog indeksi yorumu

Fog indeksi Sınıf düzeyi
17 Üniversite mezunu
16 Üniversite 4. sınıf
15 Üniversite 3. sınıf
14 Üniversite 2. sınıf
13 Üniversite 1. sınıf
12 Lise 4. sınıf
11 Lise 3. sınıf
Fog indeksi Sınıf düzeyi
10 Lise 2. sınıf
9 Lise 1. sınıf
8 8. sınıf
7 7. sınıf
6 6. sınıf
Python ile NLP için Özellik Mühendisliği

readability kütüphanesi

# Download nltk punkt module
import nltk
nltk.download('punkt_tab')
# Import the Readability class
from readability import Readability

# Create a Readability Object readability_scores = Readability(text)
# Generate scores gf = readability_scores.gunning_fog() print(gf.score())
16.26
Python ile NLP için Özellik Mühendisliği

Hadi pratik yapalım!

Python ile NLP için Özellik Mühendisliği

Preparing Video For Download...