كيفية جعل الكلمات في فئة. (البرمجة اللغوية العصبية)

StackOverflow https://stackoverflow.com/questions/1695841

  •  18-09-2019
  •  | 
  •  

سؤال

I love to eat chicken.
Today I went running, swimming and played basketball.

هدفي هو العودة غذاء و رياضات فقط عن طريق تحليل هذه الجملتين. كيف يمكنك أن تفعل ذلك؟

أنا على دراية NLP و Wordnet. ولكن هل هناك شيء أكثر رفيعة المستوى / العملية / الحديثة؟

هل هناك أي شيء يصنف تلقائيا الكلمات لك، في "المستويات"?

الأهم من ذلك، ما هو المصطلح التقني لهذه العملية؟

هل كانت مفيدة؟

المحلول

من الصعب حل تلك المشكلة من الناحية الإجرائية، ولكن تم إحراز تقدم كبير في المنطقة مؤخرا.

تبدأ معظم معالجة اللغة الطبيعية في قواعد اللغة (التي قد تكون أو لا تكون خالية من السياق.) لها مجموعة من قواعد البناء التي توضح كيف يتم إجراؤ المزيد من الأشياء العامة من أكثر تحديدا.

مثال السياق الحرة GRAMMAR:

Sentence ::= NounPhrase VerbPhrase
NounPhrase ::= ["The"] [Adjective] Noun
Adjective ::= "big" | "small" | "red" | "green"
Noun ::= "cat" | "man" | "house"
VerbPhrase ::= "fell over"

من الواضح أن هذا مبكئا، ولكن مهمة صنع قواعد قواعد كاملة لتحديد جميع اللغة الإنجليزية هائلة، ومعظم النظم الحقيقية تحدد فقط بعض المجموعة الفرعية التي تنطبق على مجال مشكلة.

بمجرد تحديد قواعد قواعد، (أو تعلمت استخدام الخوارزميات المعقدة المعروفة فقط لأمثال Google) سلسلة، تسمى "Exemplar" تحليل وفقا لقواعد النحوية. التي توضح كل كلمة مع أجزاء الكلام. لن يكون للقواعد المعقدة للغاية أجزاء الكلام التي تعلمتها في المدرسة، ولكن فئات مثل "مواقع الويب" "أسماء كبار السن" و "المكونات".

يمكن أن تكون هذه الفئات مبنية بشدة في قواعد اللغة من قبل البشر أو استنتجا باستخدام أشياء مثل النمذجة النمذجة أو ماكينات ناقلات الدعم. في كل منها، سيتم تعريف أشياء مثل "الدجاج"، "كرة القدم"، "BBQ"، و "الكريكيت" على أنها نقاط في مساحة عالية جدا، مع ملايين النقاط الأخرى، ثم خوارزميات التجميع، ستحدد المجموعات فقط بناء على مواقف تلك النقاط المتعلقة ببعضها البعض. ثم قد يحاول المرء استنتاج أسماء المجموعات من المثال النص.

رابط النصيسرد البحث Google هذا العديد من التقنيات المستخدمة في NLP، ويمكنك أن تتعلم الكثير منهم.

تحرير فقط لحل هذه المشكلة، قد يزحف المرء الويب عن جمل النموذج "_ هو _"بناء قاعدة بيانات لعلاقات فئة البند. ثم تحليل سلسلة مثل أعلاه، والبحث عن الكلمات المعروفة للعناصر في قاعدة البيانات

نصائح أخرى

مجموعات جوجل هل بعض هذا، وهناك بعض نقاش التي تذكر الخليط. ومع ذلك، لم أر حقا أي تفاصيل فنية هناك، فقط الأفكار والمناقشة.

ربما هذا يمكن أن يساعد على الأقل بحثك ...

السؤال الذي تطرحه هو مجال أبحاث كامل يسمى تصنيف النص الموضعي. نظرة عامة رائعة على التقنيات "تعلم الجهاز في تصنيف النص الآلي" في استطلاعات الحوسبة ACM، بواسطة Fabrizio Sebastiani.. وبعد واحدة من أبسط التقنيات (على الرغم من أنها ليست بالضرورة أفضل أداء) هي الحصول على العديد من الأمثلة (مئات) العديد من الجمل في كل فئة، ثم تدريب مصنف بايزي ساذج على تلك الجمل العينة. NLTK يحتوي على مصنف بايزي ساذج في الوحدة nltk.classify.naivebayes.

قد نلقي نظرة على نطاقات wordnet. مورد من قبل الناس من FBK. إنه امتداد من Wordnet المصمم لاستخدامه في تصنيف نصوص النص و Disambigation. انها تسمح بدرجات مختلفة من الحبيبية.

http://wndomains.fbk.eu/

قد يكون أحد الطرق الممكنة لتطبيقه على مهمتك هو الحصول على قطع NP من الجمل الخاصة بك، والحصول على كلمات رأسهم ومنهم الحصول على الفئات من مجالات WordNet.

tenqyu. حلها باستخدام python والتعلم الآلي.

  1. لديك مجموعة بيانات من النص
  2. تطبيق TF-IDF Vectorization. وزن المصطلح الذي يحدث في وثيقة هو ببساطة متناسبة
    إلى مصطلح التردد. (افتراض LUHN 1957) يمكن تحديد خصوصية المصطلح كدالة عكسية لعدد المستندات التي يحدث فيها.
  3. نموذج الفضاء المتجه
  4. تصنيف الابناء الأصليين

العملية بمزيد من التفاصيل هي هنا:https://hackernoon.com/how-to-better-classify-coachella-with-machine-learning-part-1-dc84c53d1a9c.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top