۳۰ پرسش و پاسخ دربارهی پردازش زبانهای طبیعی
انسانها حیواناتی اجتماعی هستند و زبان وسیلهی اصلیشان برای برقراری ارتباط است. ولی چه میشد اگر ماشینها نیز میتوانستند متوجه زبان ما شوند و براساس آن عمل کنند؟ پردازش زبان طبیعی (Natural Language Processing) یا به طور مختصر «NLP» دانشی است که به کمک آن میتوانیم به ماشینها یاد بدهیم چگونه زبان ما انسانها را بفهمند.
در این مقاله آزمونی آمدهاست که 817 نفر در آن شرکت کردهاند. این آزمون برای محک زدن دانش شما در زمینهی پردازش زبان طبیعی طراحی شدهاست. اگر شما یکی از آن افرادی هستید که این آزمون را از دست دادهاید، در اینجا سوالها و جوابهای آنها آمدهاست.
سوالها و جوابهای آزمون NLP
1) کدام یک از تکنیکهای زیر برای نرمالسازی کلمات کلیدی و تبدیل آنها به حالت اصلیشان استفاده میشود؟
- بنواژهسازی (Lemmatization)
- Levenshtein
- ریشهیابی (stemming)
- Soundex
- 1 و 2
- 2 و 4
- 1 و 3
- 1، 2 و 3
- 2، 3 و 4
- 1، 2، 3 و 4
پاسخ: C
تکنیکهای بنواژهسازی و «Levenshtein» برای نرمالسازی کلمات کلیدی استفاده میشوند و تکنیکهای ریشهیابی و «Soundex» برای تطابق رشتهها مورد استفاده قرار میگیرند.
2) به ترکیب N کلمهی کلیدی باهم N-gram گفته میشود. از جملهی زیر چند bi-gram میتوان تولید کرد؟
«Analytics Vidhya is a great source to learn data science»
- 7
- 8
- 9
- 10
- 11
پاسخ: C
Bigramهای استخراج شده از این متن عبارتند از:
Analytics Vidhya، Vidhya is، is a، a great، great source، source to، to learn، learn data، data science
3) پس از اعمال مراحل زیر برروی متن، چند trigram میتوان از آن تولید کرد؟
- حذف کلمات بی اثر
- تعویض نشانهها با فاصله
«#Analytics-vidhya is a great source to learn @data_science.»
- 3
- 4
- 5
- 6
- 7
پاسخ: C
پس از حذف کلمات بی اثر و جایگذاری نشانهها، متن به این شکل در میآید:
«Analytics vidhya great source learn data science»
Trigramهای استخراج شده از آن عبارتند از:
Analytics vidhya great، vidhya great source، great source learn، source learn data، learn data source
4) از کدام یک از عبارات با قاعده (Regular expression) زیر میتوان برای پیدا کردن تاریخها در متن داده شده استفاده کرد؟
«The next meetup on data science will be held on 2017-09-21, previously it happened on 31/03, 2016»
- \d{4}-\d{2}-\d{2}
- (19|20)\d{2}-(0[1-9]|1[0-2])-[0-2][1-9]
- (19|20)\d{2}-(0[1-9]|1[0-2])-([0-2][1-9]|3[0-1])
- هیچکدام
پاسخ: D
هیچکدام از این عبارات قادر به پیدا کردن تاریخها در این متن نیستند.
سوالات 5 تا 6 را براساس توضیحات زیر پاسخ دهید.
حدود 10،000 سطر متن توییت شده بدون هیچ اطلاعات دیگری جمعآوری کردهاید. حالا میخواهید هر کدام این توییتها را در 3 دستهبندی مثبت، منفی و بیطرف قرار دهید.
5) کدام یک از مدلهای زیر میتواند دستهبندی را براساس توضیحات بالا انجام دهد؟
- Native Bayes
- SVM
- هیچکدام
پاسخ: C
با توجه به اینکه فقط اطلاعات توییت را دارید و اطلاعات دیگری ندارید، پس هیچ متغیر هدفی نیز ندارید، در نتیجه نمیتوانید از مدلهای یادگیری نظارتشده استفاده کنید. هردو الگوریتم «SVM» و «Naive Bayes» تکنیکهای یادگیری نظارتشده هستند.
6) یک ماتریس اصطلاحات سند (document term matrix) از روی دادهها ساختهاید و هر توییت را به عنوان یک سند در نظر گرفتهاید. با توجه به این موضوع، کدام یک از موارد زیر صحیح است؟
- حذف کلمات بی اثر برروی ابعاد داده تاثیر میگذارد.
- نرمالسازی کلمات باعث کاهش ابعاد داده میشود.
- تبدیل تمام کلمات به حالت کوچکشان تاثیری در ابعاد داده ندارد.
- فقط 1
- فقط 2
- فقط 3
- 1 و 2
- 2 و 3
- 1، 2 و 3
پاسخ: D
گزینههای A و B صحیح هستند، زیرا حذف کلمات بی اثر تعداد ویژگیهای ماتریس را کاهش میدهد، همچنین نرمالسازی کلمات، ویژگیهای زائد را کاهش میدهد و تبدیل تمام کلمات به حروف کوچک، ابعاد را کاهش میدهد.
7) کدام یک از ویژگیهای زیر میتواند برای بهبود دقت در مدلهای دستهبندیکننده، استفاده شود؟
- تعداد تکرار اصطلاحات
- نمادگذاری برداری جمله (Vector Notation)
- برچسبگذاری اقسام کلمه (part of speech tagging)
- دستور وابستگی (Dependency Grammar)
- تمام موارد
پاسخ: E
تمام این تکنیکها میتوانند برای تغییر ویژگیهای یک مدل استفاده شوند.
8) چند درصد از جملات زیر درمورد مدلسازی موضوعی صحیح است؟
- یک تکنیک یادگیری نظارتشده است.
- از آنالیز تشخیصی خطی (Linear Discriminant Analysis یا LDA) برای اجرای مدلسازی موضوعی استفاده میشود.
- انتخاب تعداد موضوع در مدل ربطی به اندازهی دادهها ندارد.
- تعداد اصطلاحات موضوع ارتباط مستقیم با اندازهی دادهها دارد.
- 0
- 25
- 50
- 75
- 100
پاسخ: A
LDA یک مدل نظارت شده نیست، درواقع LDA به معنای تخصیص پنهان دیریکله (Latent Dirichlet Allocation) است و نه آنالیز تشخیص خطی. انتخاب تعداد موضوع ارتباط مستقیم با اندازهی دادهها دارد، در حالی که تعداد اصطلاحات موضوع ربطی به اندازهی دادهها ندارد. در نتیجه هیچکدام از جملات صحیح نیست.
9) در مدل تخصیص پنهان دیریکله برای دستهبندی متون، هایپرپارامترهای آلفا و بتا به چه چیزی اشاره دارند؟
- آلفا: تعداد موضوعات در سند، بتا: تعداد اصطلاحات در موضوع
- آلفا: چگالی اصطلاحات تولید شده از موضوعات، بتا: چگالی موضوعات تولید شده از اصطلاحات
- آلفا: چگالی موضوعات تولید شده از مستندات، بتا: چگالی اصطلاحات تولید شده از موضوعات
پاسخ: C
پاسخ صحیح گزینهی C است.
10) معادلهی زیر را با توجه به جملهی داده شده حل کنید.
«I am planning to visit New Delhi to attend Analytics Vidhya Delhi Hackathon»
الف = (تعداد کلماتی که جز اسامی حساب میشوند)
ب = (تعداد کلماتی که جز افعال حساب میشوند)
ج = (تعداد کلماتی که تعداد تکرار آنها بیشتر از یک است)
پاسخ صحیح مقادیر الف، ب و ج چیست؟
- الف = 5، ب = 5، ج = 2
- الف = 5، ب = 5، ج = 0
- الف = 7، ب = 5، ج = 1
- الف = 7، ب = 4، ج = 2
- الف = 6، ب = 4، ج = 3
پاسخ: D
لیست اسامی:
I، New Delhi، Analytics، Vidhya، Delhi، Hackathon
لیست افعال:
am، planning، visit، attend
لیست کلمات با تعداد تکرار بیش از یک:
to، delhi
در نتیجه، گزینهی D صحیح است.
11) در مجموعی از N سند، یک سند به طور شانسی انتخاب میشود. این سند تعداد T عدد اصطلاح دارد و اصطلاح «data» به تعداد kبار در آن تکرار شدهاست. اگر اصطلاح «data» در حدود یک سوم کل مستندات تکرار شده باشد، مقدار صحیح TF و IDF چند است؟
- (KT * Log(3
- K * Log(3) / T
- T * Log(3) / K
- Log(3) / KT
پاسخ: B
فرمول محاسبهی TF برابر است با: K/T
فرمول محاسبه IDF برابر است با:
(تعداد مستندات که شامل «data» میشوند / مجموع مستندات)LOG
در نتیجه: ((Log(1 / (1/3
= (Log (3
در نتیجه پاسخ صحیح برابر است با Klog(3)/T
سوالات 12 تا 14 را براساس توضیحات زیر پاسخ دهید.
ماتریس اصطلاحات سند زیر را در نظر داشته باشید:
12) کدام مستندات شامل تعداد یکسانی از اصطلاحات هستند و کمترین تعداد اصطلاحات در آنها استفاده نشده است؟
- d1 و d4
- d6 و d7
- d2 و d4
- d6 و d5
پاسخ: C
هر دو مستندات d2 و d4 دارای چهار اصطلاح هستند و هیچکدام دارای کمترین تعداد اصطلاحات که 3 اصطلاح است، نیستند.
13) کدام اصطلاح بیشترین و کدام اصطلاح کمترین تکرار را در مجموعه دارد؟
- بیشترین t4 و کمترین t6
- بیشترین t3 و کمترین t5
- بیشترین t5 و کمترین t1
- بیشترین t5 و کمترین t6
پاسخ: A
t5 با وجود در 5 مستند از تعداد کل 7 مستند، بیشترین تعداد را دارد، و t6 که تنها در d3 و d4 استفاده شدهاست، کمترین تعداد تکرار را دارد.
14) فرکانس تکرار یک اصطلاح که بیشترین مصرف را در یک سند داشته است چقدر است؟
- t6 - 2/5
- t3 – 3/6
- t4 – 2/6
- t1 – 2/6
پاسخ: B
t3 بیشترین مصرف در مستندات را داشته است که برابر با عدد 3 میباشد. tf آن نیز برابر با 6/3 است.
15) کدام یک از تکنیکهای زیر یک تکنیک تطبیق انعطافپذیر متن نیست؟
- Soundex
- Metaphone
- Edit Distance
- Keyword Hashing
پاسخ: D
به غیر از تکنیک «Keyword Hashing» سایر تکنیکها همه برای تطبیق انعطافپذیر متن استفاده میشوند.
16) صحیح یا غلط: مدل «Word2Vec» یک مدل یادگیری ماشین است که برای ساخت نماد برداری از یک متن استفاده میشود. «Word2Vec» از چندین شبکهی عصبی عمیق تشکیل شده است.
- صحیح
- غلط
پاسخ: B
«Word2Vec» شامل مدل پیش-پردازشی میشود که یک شبکهی عصبی عمیق نیست
17) کدام یک از جملات زیر در مورد مدل «Word2Vec» صحیح است؟
- معماری «Word2Vec» از دو لایه تشکیل شده است، مدل «continuous bag of words» (به معنای دستهی ادامهدار از کلمات) و «skip-gram»
- «continuous bag of words» یک شبکهی عصبی کمعمق است.
- «Skip-gram» یک شبکهی عصبی عمیق است.
- هردو مدلهای «CBOW» و «Skip-gram» شبکههای عصبی عمیق هستند.
- همهی موارد
پاسخ: C
«Word2Vec» شامل هردو مدلهای «continuous bag of words» و «skip-gram» میشود که هردو نیز شبکههای عصبی عمیق هستند.
18) با توجه به این گراف وابستگی، چند زیر-درخت در این جمله قرار دارد؟
- 3
- 4
- 5
- 6
پاسخ: D
زیر-درخت در یک گراف وابستگی میتواند گرههایی باشد که لینک بیرونی دارند، برای مثال:
Media، networking، play، role، billions، lives
این کلمات در این گراف، ریشههای زیر-درخت حساب میشوند.
19) ترتیب صحیح برای اجزای یک مدل دستهبندی کدام است؟
- پاکسازی متن (Text cleaning)
- حاشیهنویسی متن (Text annotation)
- شیب کاهشی (Gradient descent)
- تنظیم مدل (Model tuning)
- تبدیل متن به برهان (Text to predictors)
- 12345
- 13425
- 12534
- 13452
پاسخ: C
یک مدل دستهبندی متن صحیح باید شامل این امکانات باشد: پاکسازی متن برای از بین بردن نویز، حاشیهنویسی متن برای ساخت ویژگیهای بیشتر، تبدیل ویژگیهای متنی به برهان، یادگیری مدل توسط شیب کاهشی و در نهایت تنظیم مدل.
20) «چند معنایی» (polysemy) عبارت است از داشتن چندین معنی برای یک کلمه یا عبارت در یک متن. کدام یک از مدلهای زیر میتواند بهترین انتخاب برای حل این مشکل باشد؟
- طبقه بندی براساس جنگل تصادفی (Random Forest Classifier)
- شبکههای عصبی کانولوشن (Convolutional Neural Networks)
- افزایش شیب (Gradient Boosting)
- تمام موارد
پاسخ: B
شبکههای عصبی کانولوشن پرطرفدارترین انتخاب برای مسائل دستهبندی متون هستند، به این دلیل که آنها لغات چپ و راست کلمات را نیز به عنوان ویژگی در نظر میگیرند و این امر میتواند مشکل چند معنایی را حل کند.
21) کدام یک از مدلهای زیر میتوانند برای تشخیص شباهت مستندات مورد استفاده قرار گیرند؟
- تعلیم دادن یک مدل «word 2 vector» در آن مجموعه که میتواند مفاهیم مستندات موجود را بفهمد.
- تعلیم دادن یک مدل «bag of words» که میتواند محل وجود کلمات را در مستندات یاد بگیرد.
- ساخت یک ماتریس اصطلاحات سند و استفاده از شباهت کسینوسی در هر سند.
- همهی موارد
پاسخ: D
میتوان از مدل «word2vec» برای اندازهگیری شباهت دو سند براساس محتویاتشان استفاده کرد. از «bag of words» و «document term matrix» نیز میتوان برای اندازهگیری شباهت بر اساس اصطلاحات استفاده کرد.
22) کدام موارد زیر میتوانند یک ویژگی در یک مجموعهی متنی باشند؟
- تعداد کلمات در یک سند
- ویژگی بولین (Boolean) – وجود یا عدم وجود یک کلمه در یک سند
- نماد برداری یک کلمه
- برچسب اقسام کلمه
- دستور وابستگی پایه
- کل سند به عنوان یک ویژگی
- 1
- 12
- 123
- 1234
- 12345
- 123456
پاسخ: E
به غیر از کل سند، تمام گزینهها میتوانند یک ویژگی در مدل یادگیری دستهبندی متن باشند.
23) برای ساخت یک مدل یادگیری ماشین برای متن از روی 100 هزار سند ورودی، یک ماتریس اصطلاحات سند ساختهاید. کدام یک از روشهای زیر برای کاهش ابعاد داده مناسب هستند؟
- تخصیص پنهان دیریکله
- نمایهسازی معنایی پنهان (Latent Semantic Indexing)
- نرمالسازی کلمات کلیدی
- فقط گزینهی 1
- 2 و 3
- 1 و 3
- 1، 2 و 3
پاسخ: D
از تمامی این تکنیکها میتوان برای کاهش ابعاد داده استفاده کرد.
24) ویژگی گوگل که میپرسد «آیا منظور شما این بود» مخلوطی از تکنیکهای متفاوت است. کدام یک از تکنیکهای زیر میتوانند بخشی از آن باشند؟
- مدل پالایش گروهی (Collaborative Filtering) برای شناسایی رفتار کاربران مشابه.
- مدلی که فاصله لونشتاین (Levenshtein distance) بین اصطلاحات در لغتنامه را بررسی میکند.
- ترجمهی لغات به چند زبان
- 1
- 2
- 1 و 2
- 1، 2 و 3
پاسخ: C
از پالایش گروهی میتوان برای بدست آوردن الگوی استفادهی کاربران، استفاده کرد. از لونشتاین میتوان برای محاسبهی فاصله بین اصطلاحات لغتنامه استفاده کرد.
25) در هنگام کار با متن گرفته شده از جملات خبری (که ساختاری طبیعی دارند)، کدام یک از تکنیکهای تجزیهی متن بر پایهی گرامر میتوانند برای شناسایی عبارات اسمی، عبارات فعلی، موضوع و مفعول استفاده شوند؟
- برچسبگذاری اقسام کلمات
- تجزیه وابستگی (Dependency parsing) و تجزیه سازهای (Constituency Parsing)
- استخراج «Skip Gram» و «N-Gram»
- Continuous bag of words
پاسخ: B
از «Dependency parsing» و «constituent parsing» میتوان برای استخراج روابط در متن استفاده کرد.
26) رسانههای اجتماعی یکی از مشخصترین فرم دادههای متنی هستند. یک مجموعه از توییتهای کامل یک رسانهی اجتماعی را بهتان دادهاند. چگونه میتوانید یک مدلی بسازید که هشتگهای مناسب را پیشنهاد کند؟
- اجرای مدلهای موضوعی برای به دست آوردن مهمترین کلمات مجموعه.
- تعلیم یک دسته از Ngram برای بدست آوردن مهمترین n-gram کلمات و ترکیبهای آنها.
- تعلیم دادن یک مدل «word2vector» برای یادگیری مفاهیم تکراری در جمله
- همهی موارد
پاسخ: D
از تمامی این تکنیکها میتوان برای استخراج مهمترین اصطلاحات مجموعه استفاده کرد.
27) در هنگام استخراج مفهوم از متن، به دو جملهی متفاوت برخوردهاید:
.The tank is full of soldiers. The tank is full of nitrogen
با کدام یک از روشهای زیر میتوانید ابهام آمیز بودن معنای کلمه در جمله را از بین ببرید؟
- تعریف کلمهی ابهام آمیز را در لغتنامه به همراه اصطلاحات همسایه بررسی کنید.
- بررسی کلمهی ابهام آمیز با اسامی استفاده شده در جملهی قبلی.
- استفاده از تجزیهی وابستگی برای درک معنی.
پاسخ: A
گزینهی A الگوریتم لسک (Lesk) نام دارد. از این الگوریتم برای کلماتی که مفهومشان ابهام آمیز است استفاده میکنیم. از سایر موارد نمیتوان استفاده کرد.
28) مدلهای پالایش گروهی و برپایهی محتوا (Content Based) دو موتور پرطرفدار و پیشنهاد شده هستند. نقش NLP در ساخت این الگوریتمها چیست؟
- استخراج ویژگی از متن
- اندازهگیری شباهت ویژگیها
- ساخت ویژگی برای مدل یادگیری فضای بردار (vector space learning)
- تمام موارد
پاسخ: D
از NLP میتوان در هرجایی که دادههای متنی وجود دارند استفاده کرد، از جمله استخراج ویژگی، اندازهگیری شباهت ویژگیها و ساخت ویژگی برای مدل فضای بردار از روی متن.
29) مدلهای برپایهی بازیابی (Retrieval based) و مدلهای زایشی (Generative) دو تا از تکنیکهای پرطرفدار ساخت رباتهای چت هستند. کدام یک موارد زیر به ترتیب یک مثال برای مدل بازیابی و زایشی است؟
- یادگیری برپایهی لغتنامه و مدل Word 2 Vector
- یادگیری مبتنی بر قاعده (Rule-based) و مدل مرحله به مرحله (Sequence to Sequence)
- مدل Word 2 Vector و Sentence to Vector
- شبکهی عصبی بازگشتی و شبکهی عصبی کانولوشن
پاسخ: B
گزینهی B بهترین مثال برای مدلهای بازیابی و زایشی است.
30) تفاوت اصلی میدان تصادفی شرطی (Conditional Random Field یا CRF) و مدل مخفی مارکوف (Hidden Markov Model یا HMM) در چیست؟
- CRF یک مدل زایشی است در حالی که HMM یک مدل جداسازی است.
- CRF یک مدل جداسازی است در حالی که HMM یک مدل زایشی است.
- CRF و HMM هردو مدل زایشی هستند.
- CRF و HMM هردو مدل جداسازی هستند.
پاسخ: B
گزینهی B صحیح است
اگر مایل به کسب اطلاعات بیشتر در این زمینه باشید، شاید آموزشهای زیر بتوانند برای شما مفید باشند:
- آموزش یادگیری عمیق (Deep learning)
- آموزش برنامه نویسی یادگیری عمیق با پایتون
- مجموعه آموزش های شبکه های عصبی مصنوعی در متلب
#