الذكاء الاصطناعي العام وذكاء المستقبل
نماذج اللغة الكبيرة مع Scikit-learn: دليل شامل ل Scikit-LLM
من خلال دمج قدرات معالجة اللغة المتقدمة للنماذج مثل ChatGPT مع إطار Scikit-learn المتعدد الاستخدامات والمعروف جيدًا، يقدم Scikit-LLM مجموعة لا مثيل لها لاستكشاف تعقيدات البيانات النصية.
يتم الوصول إلى Scikit-LLM من خلال مستودع GitHub الرسمي مستودع GitHub، ويمثل اندماجًا بين – الذكاء الاصطناعي المتقدم للنماذج اللغة الكبيرة (LLM) مثل GPT-3.5 من OpenAI وبيئة Scikit-learn المريحة للمستخدم. هذا الحزمة البرمجية بالبايثون، المصممة خصيصًا لتحليل النص، تجعل معالجة اللغة الطبيعية المتقدمة متاحة وفعالة.
لماذا Scikit-LLM؟
对于 من هم على دراية بمنظور Scikit-learn، يشعر Scikit-LLM وكأنه تطور طبيعي. إنه يحافظ على واجهة برمجة التطبيقات المألوفة، مما يسمح للمستخدمين باستخدام وظائف مثل .fit() و .fit_transform() و .predict(). قدرته على دمج المقدرات في трубة Sklearn تظهر مرونته، مما يجعله نعمة لأولئك الذين يبحثون عن تحسين مشاريع التعلم الآلي بفهم اللغة المتقدم.
في هذه المقالة، نستكشف Scikit-LLM، من تثبيته إلى تطبيقه العملي في مهام تحليل النص المختلفة. سوف تتعلم كيفية إنشاء مصنفات نصية خاضعة للإشراف وبدون إشراف، وكذلك استكشاف الميزات المتقدمة مثل تعيين النص والتصنيف.
Scikit-learn: الركن الأساسي للتعلم الآلي
قبل الغوص في Scikit-LLM، دعونا نلقي نظرة على أساسه – Scikit-learn. وهو اسم مشهور في التعلم الآلي، يتميز Scikit-learn بمجموعة خوارزمية شاملة وبساطة وسهولة الاستخدام. يغطي طيفًا من المهام من الانحدار إلى التجميع، ويعتبر Scikit-learn أداة الذهاب إلى العديد من علماء البيانات.
مبني على أساس مكتبات بايثون العلمية (NumPy و SciPy و Matplotlib)، يبرز Scikit-learn بدمجه مع مكدس بايثون العلمي وفعاليته مع مصفوفات NumPy ومتحولات SciPy النادرة.
في جوهره، يركز Scikit-learn على التوحيد وسهولة الاستخدام. بغض النظر عن الخوارزمية التي تختارها، تظل الخطوات متسقة دائمًا – استيراد الفئة، استخدام طريقة “التناسب” مع بياناتك، وتطبيق “التنبؤ” أو “التحويل” لاستخدام النموذج. هذه البساطة تقلل من منحنى التعلم، مما يجعله نقطة انطلاق مثالية لأولئك الجدد في التعلم الآلي.
إعداد البيئة
قبل الغوص في التفاصيل، من المهم إعداد بيئة العمل. في هذه المقالة، سيكون Google Colab هو منصة الاختيار، مما يوفر بيئة قابلة للوصول وقوية لتشغيل كود بايثون.
التثبيت
%%capture !pip install scikit-llm watermark <p>%load_ext watermark %watermark -a "اسم المستخدم الخاص بك" -vmp scikit-llm
الحصول على مفاتيح API وتكوينها
يتطلب Scikit-LLM مفتاح API من OpenAI للوصول إلى النماذج اللغة الكبيرة الأساسية.
from skllm.config import SKLLMConfig <p>OPENAI_API_KEY = "sk-****" OPENAI_ORG_ID = "org-****"</p> <p>SKLLMConfig.set_openai_key(OPENAI_API_KEY) SKLLMConfig.set_openai_org(OPENAI_ORG_ID)</p>
مصنف GPT من غير إشراف
مصنف ZeroShotGPTClassifier هو ميزة ملحوظة في Scikit-LLM، يستفيد من khảية ChatGPT في تصنيف النص根据 التسميات الوصفية، دون الحاجة إلى تدريب نموذجي تقليدي.
استيراد المكتبات وبيانات التعلم
from skllm import ZeroShotGPTClassifier from skllm.datasets import get_classification_dataset <p>X, y = get_classification_dataset()
تحضير البيانات
تقسيم البيانات إلى مجموعات تدريب واختبار:
def training_data(data): return data[:8] + data[10:18] + data[20:28] <p>def testing_data(data): return data[8:10] + data[18:20] + data[28:30]</p> <p>X_train, y_train = training_data(X), training_data(y) X_test, y_test = testing_data(X), testing_data(y)</p>
تدريب النموذج والتنبؤ
تعريف وتنفيذ ZeroShotGPTClassifier:
clf = ZeroShotGPTClassifier(openai_model="gpt-3.5-turbo") clf.fit(X_train, y_train) predicted_labels = clf.predict(X_test)
التقييم
تقييم أداء النموذج:
from sklearn.metrics import accuracy_score
<p>print(f"الدقة: {accuracy_score(y_test, predicted_labels):.2f}")</p>
تلخيص النص مع Scikit-LLM
تلخيص النص هو ميزة حاسمة في مجال معالجة اللغة الطبيعية، ويعتمد Scikit-LLM على قدرة GPT في هذا المجال من خلال وحدة GPTSummarizer. تتميز هذه الميزة bằng مرونتها، مما يسمح لها بالاستخدام كأداة مستقلة لإنشاء ملخصات أو كخطوة مسبقة في سير عمل أوسع.
تطبيقات GPTSummarizer:
- التلخيص المستقل: يمكن لـ
GPTSummarizerإنشاء ملخصات موجزة من وثائق طويلة، وهو أمر قيم للتحليل السريع للمحتوى أو استخراج المعلومات الرئيسية من كميات كبيرة من النص. - المرحلة المسبقة للعمليات الأخرى: في سير العمل التي تتضمن عدة مراحل من تحليل النص، يمكن استخدام
GPTSummarizerلتقليل حجم البيانات النصية. هذا يقلل من التحميل الحاسوبي ويبسط خطوات التحليل اللاحقة دون فقدان المعلومات الأساسية.
تنفيذ تلخيص النص:
يتضمن عملية تنفيذ تلخيص النص في Scikit-LLM ما يلي:
- استيراد
GPTSummarizerوالبيانات ذات الصلة. - إنشاء مثيل من
GPTSummarizerمع معلمات محددة مثلmax_wordsللتحكم في طول الملخص. - تطبيق طريقة
fit_transformلإنشاء الملخصات.
من المهم ملاحظة أن معامل max_words يخدم كدليل وليس حدًا صارمًا، مما يضمن أن تظل الملخصات متسقة ومهمة، حتى لو تجاوزت قليلًا العدد المحدد من الكلمات.
الآثار الأوسع ل Scikit-LLM
تتنوع ميزات Scikit-LLM، بما في ذلك تصنيف النص و تلخيصه وتعيينه وترجمته، وتنوع تطبيقاته في معالجة البيانات غير الموصوفة، مما يجعله أداة شاملة لتحليل النص المختلفة. هذه المرونة وسهولة الاستخدام تخدم كل من المبتدئين والمتخصصين في مجال الذكاء الاصطناعي والتعلم الآلي.
التطبيقات المحتملة:
- تحليل反馎ذات العملاء: تصنيف反馎ذات العملاء إلى فئات مثل إيجابي، سلبي، أو محايد، مما يمكن أن ي告ي تحسينات خدمة العملاء أو استراتيجيات تطوير المنتج.
- تصنيف مقالات الأخبار: فرز مقالات الأخبار إلى مواضيع مختلفة لتقديم الأخبار المخصصة أو تحليل الاتجاهات.
- ترجمة اللغة: ترجمة الوثائق لأغراض تشغيل متعددة الجنسيات أو للاستخدام الشخصي.
- تلخيص الوثائق: فهم جوهر الوثائق الطويلة بسرعة أو إنشاء إصدارات أقصر للنشر.
مميزات Scikit-LLM:
- الدقة: فعالية مثبتة في مهام مثل تصنيف النص من غير إشراف و تلخيصه.
- السرعة: مناسب للمهام في الوقت الفعلي بسبب كفاءته.
- القدرة على التوسع: قادر على التعامل مع كميات كبيرة من النص، مما يجعله مثاليًا لتطبيقات البيانات الكبيرة.
الخلاصة: تبني Scikit-LLM لتحليل النص المتقدم
باختصار، يعتبر Scikit-LLM أداة قوية ومتعددة الاستخدامات وسهلة الاستخدام في مجال تحليل النص. قدرته على دمج النماذج اللغة الكبيرة مع سير العمل التقليدية للتعلم الآلي، بالإضافة إلى طبيعته المفتوحة المصدر، يجعله موردًا قيمًا للباحثين والمطورين والشركات على حد سواء. سواء كان ذلك لتحسين خدمة العملاء أو تحليل اتجاهات الأخبار أو تسهيل التواصل المتعدد اللغات أو استخراج المعلومات الأساسية من وثائق طويلة، يقدم Scikit-LLM حلًا قويًا.












