اذهب إلى المحتوى
  • 0

تطبيق الترميز TF-IDF  باستخدام مكتبة Sklearn

Meezo ML

السؤال

Recommended Posts

  • 1

TfidfVectorizer هو مقياس إحصائي يُقال إنه أصلح المشكلات مع CountVectorizer بطريقة ما.
يتكون من جزأين، TF (تردد المدى) مضروبًا في IDF (تردد المستند العكسي).
يقيس TF (تكرار المصطلح) عدد مرات ظهور مصطلح أو كلمة في مستند معين.
يقيس IDF (تكرار  المستند العكسي) أهمية المصطلح عبر مجموعة.
درجة TF-IDF هي نتاج هذين المصطلحين. وبالتالي ، درجة TF-IDF  = TF * IDF
يمكن تطبيق هذا الترميز بسهولة في مكتبة Sklearn، حيث يتم استخدام هذا الكلاس كالتالي:
fit_transform(data) نستخدمه للقيام بعملية ال fitting (الترميز) و ال transform  (تطبيق الترميز -تحويل البيانات من شكلها الحالي إلى الشكل الجديد اعتماداً على الترميز الذي تم إنشاؤه في مرحلة ال fitting-) على البيانات.
إذا أردت استعراض النص بعد الترميز استخدم التابع toarray كما فعلت في المثال:

# استيراد الكلاس
from sklearn.feature_extraction.text import TfidfVectorizer
# إنشاء مجموعة بيانات
data = [
     'This is a Hsoub website.',
     'Where is the company headquarters?',
     'Is this the first example?',
     'Is this the first document?',
 ]
# أخذ غرض من الكلاس 
vectorizer = TfidfVectorizer()
#والتحويل fitting تطبيق ال 
X = vectorizer.fit_transform(data)
# عرض أسماء الميزات
print(vectorizer.get_feature_names())
# طباعة النصوص المرمزة بهذا الترميز
print(X.toarray())

##################################### Output #############################################

['company', 'document', 'example', 'first', 'headquarters', 'hsoub', 'is', 'the', 'this', 'website', 'where']

[[0.         0.         0.         0.         0.         0.61087812
  0.31878155 0.         0.38991559 0.61087812 0.        ]
 [0.52130524 0.         0.         0.         0.52130524 0.
  0.2720387  0.33274238 0.         0.         0.52130524]
 [0.         0.         0.60759891 0.47903796 0.         0.
  0.31707032 0.38782252 0.38782252 0.         0.        ]
 [0.         0.60759891 0.         0.47903796 0.         0.
  0.31707032 0.38782252 0.38782252 0.         0.        ]]

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...