يسعدني أن أعلن إصدار حزمة Python الأولى ، englishidioms
. هذه الحزمة هي أداة قوية لتحديد التعبيرات الإنجليزية والعبارات والأفعال الجهرية داخل الجمل ، مع قاعدة بيانات من 22،209 تعبيرات فريدة.
الخلفية: كجزء من مشروع معالجة اللغة الطبيعية الشخصية (NLP) ، وجدت الحاجة إلى حزمة بيثون قادرة على التعرف على التعبيرات الاصطلاحية في الجمل الإنجليزية. لدهشتي ، لم أتمكن من العثور على حل مناسب ، لذلك قررت بناء واحد من نقطة الصفر.
التثبيت: يمكنك بسهولة تثبيت الحزمة باستخدام PIP: pip install englishidioms
كيفية استخدامه:
>>> from englishidioms import find_idioms
>>> sentence = "The plan didn't work, but I'll give you an a for effort for trying."
>>> results = find_idioms(sentence, limit=1)
>>> print(results)
[{'phrase': '*an A for effort', 'definition': 'acknowledgement for having tried to do something, even if it was not successful. (*Typically: get ~; give someone ~.) _ The plan didn’t work, but I’ll give you an A for effort for trying.'}]
الحجج
sentence
(STR) - الجملة الإنجليزية التي تريد تحليلها (مطلوب).limit
(int) - الحد الأقصى لعدد النتائج ، المطلوبة بنقاط المطابقة (الافتراضي: 10).html
(BOOL) - عبارة الإرجاع والتعريف في HTML Markup للحفاظ على التنسيق الأصلي من القاموس (افتراضي: خطأ).span
(Bool) - إرجاع مطابقة المدى في الجملة (الافتراضي: خطأ).entry_range
BOOL) - سطر/نهاية القاموس الإرجاع لتصحيح الأخطاء (الافتراضي: خطأ).entry_id
(Bool) - معرف إدخال القاموس في العبارات. json للتصحيح (الافتراضي: خطأ).كيف يعمل (مبسط):
تم تطوير هذه الحزمة عن طريق تحليل جميع إدخالات القاموس في "قاموس McGraw-Hill من التعابير الأمريكية والأفعال الجليدية". باستخدام مكتبات Python مثل Python-Docx والاستفادة من التنسيق المحدد مسبقًا ، قمت باستخراج النقاط الرئيسية من كل إدخال. تشمل هذه النقاط الرئيسية:
الثوابت: فئات ثابتة من الكلمات التي تشكل جوهر التعبير الاصطلاحي. المتغيرات: فئات متغيرة من الكلمات التي يمكن مطابقتها على نطاق واسع. الثوابت الاختيارية: كلمات أو عبارات اختيارية إضافية ضمن تعبير احتمال واحد. الأفعال: الأفعال التي تسبق عادة العبارة الاصطلاحية.
على سبيل المثال ، فكر في إدخال القاموس:
*A (Dead) Ringer (بالنسبة لشخص ) الشكل. تشبه بشكل وثيق في المظهر لشخص آخر. (*عادة: كن ~ ؛ تبدو مثل ~.) _ أنت متأكد من أن رينجر ميت لأخي. _ أليست رينجر لتشاك؟
لهذا الإدخال ، نحدد:
مع كل مكالمة إلى طريقة "find_idioms" ، تفحص خوارزمية البحث هذه النقاط الرئيسية في 22،209 من إدخالات القاموس وتطابقها مع الجملة المحددة ، مع الأخذ في الاعتبار الاختلافات النحوية وترتيب الكلمات. ثم يعيد قائمة الإدخالات المتطابقة.
أداء:
لقد اختبرت هذه الحزمة على 40،442 جملة من الكتاب ، واكتشفت إدخال القاموس المطابق الصحيح في 91 ٪ من الحالات. بالإضافة إلى ذلك ، يبلغ متوسط وقت التنفيذ لمعالجة الجملة حوالي 3 ثوانٍ.
تفاصيل المشروع
ينقسم هذا المشروع إلى عدة خطوات رئيسية:
1. الحصول على البيانات:
نبدأ بالحصول على مادة المصدر من "قاموس McGraw-Hill للتعابير الأمريكية والأفعال الجهرية." يمكنك الوصول إلى نسخة من هذا المورد بتنسيق PDF هنا.
بعد ذلك ، نقوم بتحويل PDF إلى تنسيق أكثر قابلية للاستخدام ، وهو مستند DOCX يسمى "Clean-Output.docx." نعيد تنسيقه من تصميم عمود إلى نص واحد. يرجى ملاحظة أن التفاصيل الفنية لعملية التحويل هذه لم تتم مناقشة في هذه الوثائق.
2. إعداد البيانات:
نمر بسلسلة من اثني عشر خطوة لمعالجة البيانات وصقلها من "clean-output.docx" وحفظها في "phrases.json". تتم إدارة كل خطوة بواسطة وحدة بيثون محددة:
من المهم تشغيل هذه الوحدات بالترتيب المحدد لإنشاء الإصدار النهائي من "phrases.json" ، وهي قاعدة بيانات شاملة للبيانات من "clean-output.docx." على Windows CMD ، يمكنك تشغيلها بالتتابع باستخدام هذا الأمر:
python A_breakitup.py && python A_splitrandom.py && python B_breakitup.py && python C_readit.py && python D_readit.py && python E_tidyup.py && python F_tidyup.py && python FF_manualoverride.py && python G_asterisk.py && python H_hyphenated_words.py && python I_getpatterns.py && python J_getwordforms.py && python K_getexamples.py
3. الوظيفة الأساسية:
قلب المشروع هو وحدة "l_algorithm.py". يستخدم "عبارات. json" لمطابقة التعبيرات الاصطلاحية مع الجمل الإنجليزية. تعتبر هذه الوحدة أمرًا بالغ الأهمية للحزمة ، مما يتيح تحديد التعبيرات والعبارات والأفعال الجهرية في الجمل.
قلب المشروع هو وحدة "l_algorithm.py" ، والتي تقع في دليل "EnglishIdioms". يستخدم "عبارات. json" لمطابقة التعبيرات الاصطلاحية مع الجمل الإنجليزية. إن الحفاظ على "l_algorithm.py" و "phrases.json" في دليل "EnglishIdioms" يخدم غرضًا مزدوجًا:
حجم الحزمة المنخفض: من خلال عزل هذه المكونات الأساسية ، نجعل الحزمة أصغر من حيث مساحة القرص. هذا يعني أن المستخدمين يحتاجون فقط إلى تثبيت المكونات الأساسية ، مما يجعل الحزمة أكثر خفيفة الوزن وفعالية.
التبعيات المصورة: يتطلب مجموعة "l_algorithm.py" و "phrases.json" تبعيات خارجية أقل مقارنة بالحزمة بأكملها. هذا يبسط عملية التثبيت للمستخدمين النهائيين ، مما يقلل من الحاجة إلى تثبيت مكتبات ومتطلبات إضافية قد لا تكون ضرورية لاستخدامها المحدد.
يتضمن دليل "EnglishIdioms" أيضًا ثلاثة موارد NLTK ضرورية مطلوبة من أجل تشغيل "L_AlgorithM.Py"
من خلال تبني هذا النهج المبسط ، نضمن أن يمكن للمستخدمين الوصول بسرعة وسهولة إلى الوظيفة الأساسية للحزمة دون أي عام غير ضروري.
4. التحقق والاختبار:
لضمان جودة البيانات وفعالية خوارزمية البحث في "l_algorithm.py" ، نستخدم ثلاث وحدات إضافية:
يرجى ملاحظة أنه بالنسبة للمستخدمين النهائيين الذين يتطلعون إلى استخدام الحزمة ، هناك حاجة فقط إلى "l_algorithm.py" و "phrases.json". الوحدات الأخرى هي في المقام الأول لمعالجة البيانات والتحقق منها أثناء التطوير.
كيفية المساهمة:
المشروع بأكمله مفتوح المصدر ومتوفر على جيثب. لا تتردد في استكشاف الكود ، وإجراء التحسينات ، والمساهمة في تطورها.
إخلاء المسئولية: تم تصميم حزمة Python هذه لتزويد المستخدمين بإمكانية الوصول إلى مجموعة من التعابير والأفعال الجهرية كما تظهر في "قاموس McGraw-Hill من التعابير الأمريكية والأفعال الجهرية". يرجى ملاحظة أن هذه الحزمة لا يتم تأييدها أو التصريح بها من قبل McGraw-Hill Companies ، Inc. ، حامل حقوق الطبع والنشر للقاموس.
إشعار حقوق الطبع والنشر: "قاموس McGraw-Hill للتعابير الأمريكية والأفعال الجهرية" هو مواد محمية بحقوق الطبع والنشر ، ويخضع استخدامه لمصطلحات حقوق الطبع والنشر التي أنشأتها McGraw-Hill Companies ، Inc. تعتمد هذه الحزمة على المحتوى المستمدة من نسخة شخصية من الكتاب.
الاستخدام المقصود: هذه الحزمة Python مخصصة لأغراض تعليمية وبحثية فقط ، والاستخدام الشخصي وغير التجاري. ليس مخصصًا للتطبيقات التجارية.
مسؤولية المستخدم: باستخدام حزمة Python هذه ، فإنك تقر أنه يجب عليك الامتثال لقوانين حقوق الطبع والنشر وشروط الاستخدام الموضحة في العمل الأصلي. يُسمح لك باستخدام هذه الحزمة لأغراض شخصية وغير تجارية فقط. قد يتطلب أي تطبيق أو توزيع تجاري لإخراج هذه الحزمة موافقة خطية مسبقة من الناشر ، The McGraw-Hill Companies ، Inc.. ومن المهم أن يتم تشجيع المستخدمين الذين يعتزمون استخدام هذه الحزمة على أساس منتظم النظر في شراء نسختهم الشخصية الخاصة بهم "قاموس McGraw-Hill من التعابير الأمريكية والأفعال الجهلة" لدعم المؤلفين والالتزام بقوانين حقوق الطبع والنشر.
دعم المؤلف: إذا كنت تنوي استخدام محتوى هذه الحزمة لأغراض تجارية ، فإنني أوصي بشدة بالحصول على الأذونات والتراخيص اللازمة من McGraw-Hill Companies ، شراء نسختك الشخصية من "قاموس McGraw-Hill من التعابير الأمريكية والأفعال الجهلة".
المسؤولية: لا يتحمل المبدعون والمحللون في حزمة بيثون هذه المسؤولية عن أي انتهاك لحقوق الطبع والنشر أو إساءة استخدام الحزمة. المستخدمون مسؤولون عن الالتزام بجميع المتطلبات القانونية وحقوق الطبع والنشر عند استخدام هذه الحزمة.
أشجع الاستخدام الأخلاقي والقانوني لهذه الحزمة ، فيما يتعلق بحقوق أصحاب حقوق الطبع والنشر والمؤلفين. الرجاء استخدامه بمسؤولية.