021-71053903 [email protected] پشتیبانی از شنبه تا چهارشنبه ساعت 9 الی 16

سوالات استخدامی هوش مصنوعی + دانلود رایگان PDF

فهرست مطالب پنهان
1 مقدمه
1.1 سوالات مصاحبه یادگیری ماشین برای افراد با مبتدی
1.2 سوالات مصاحبه یادگیری ماشین برای افراد با تجربه
1.6 95. مزایا و معایب استفاده از آرایه چیست؟
1.7 132. در مورد KNN کدام فاصله را اندازه گیری می کنیم؟

مقدمه

170 سوال استخدامی هوش مصنوعی 1401 – 2022

170 سوالی که هر کارشناس هوش مصنوعی برای استخدامی باید حتما جواب آن ها را بداند. تنها در صورتی جواب این سوالات مهم را بدانید می توانید برای استخدام هوش مصنوعی آماده باشید.

در مصاحبه های استخدامی برای هوش مصنوعی که گاها مستلزم یک فرآیند مصاحبه دقیق است.در آن داوطلبان بر اساس جنبه‌های مختلف مانند مهارت‌های فنی و برنامه‌نویسی، دانش الگوریتم ها و وضوح مفاهیم اولیه مورد محک قرار می‌گیرند. اگر می‌خواهید برای مشاغل مانند یادگیری ماشین درخواست دهید، بسیار مهم است که بدانید معمولاً استخدام‌کنندگان و مدیران استخدام‌کننده چه نوع سؤالاتی در مصاحبه یادگیری ماشین و فرایند استخدام یک متخصص هوش مصنوعی می‌پرسند.

 

این مقال ماحصل تلاشه یکماه متخصصان وبسایت پایتونی هاست برای کمک به شما در موفقیت مصاحبه‌های هوش مصنوعی و یا یادگیری ماشین در شرکت‌های بزرگ. معمولاً مصاحبه‌های یادگیری ماشینی در شرکت‌های بزرگ نیاز به دانش کامل از ساختار داده‌ها و الگوریتم‌ها دارد.

در سری مقالات آتی، از اصول مفاهیم شروع می کنیم و بر اساس این مفاهیم برای حل سوالات اصلی مصاحبه می پردازیم. مصاحبه های یادگیری ماشینی شامل دورهای زیادی است که با یک تست غربالگری شروع می شود.

سوالات مصاحبه یادگیری ماشین برای افراد با مبتدی

در اینجا، ما لیستی از سوالات متداول مصاحبه یادگیری ماشینی که ممکن است در طول مصاحبه با آنها روبرو شوید را گردآوری کرده ایم.

 

1. اصطلاحات هوش مصنوعی (AI)، یادگیری ماشینی (ML و Deep Learning) را توضیح دهید؟

هوش مصنوعی (AI) حوزه تولید ماشین های هوشمند است. ML به سیستم‌هایی گفته می‌شود که می‌توانند از حالت‌های تجربه (داده‌های آموزشی) و یادگیری عمیق (DL) به سیستم‌هایی که از تجربه در مجموعه‌های داده بزرگ یاد می‌گیرند، جذب شوند. ML را می توان به عنوان زیر مجموعه ای از هوش مصنوعی در نظر گرفت. یادگیری عمیق (DL) ML است اما برای استفاده در مجموعه داده های بزرگ مفید است. شکل زیر تقریباً رابطه بین AI، ML و DL را نشان می دهد:

AI، ML و DL

AI، ML و DL

به طور خلاصه، DL زیرمجموعه ای از ML است و هر دو زیرمجموعه هوش مصنوعی هستند.

اطلاعات اضافی: ASR (تشخیص خودکار گفتار) و NLP (پردازش زبان طبیعی) تحت هوش مصنوعی قرار می گیرند و با ML و DL همپوشانی دارند زیرا ML اغلب برای وظایف NLP و ASR استفاده می شود.مانند شکل زیر:

 

2. انواع مختلف مدل های یادگیری/آموزش در یادگیری ماشین چیست؟

این سوال مدل متفاوتی هم می شود پرسید :

انواع مدل ها Train/Test در Machine Learning چیست ؟

الگوریتم‌های یادگیری ماشین را می‌توان در درجه اول بسته به وجود یا عدم وجود متغیرهای هدف یا همان مشکل مسئله طبقه‌بندی کرد.

 

الف. یادگیری تحت نظارت: [هدف موجود است] ماشین با استفاده از داده های برچسب دار یا لیبل دار یاد می گیرد. این مدل قبل از شروع تصمیم گیری با داده های جدید، بر روی یک مجموعه داده موجود آموزش داده می شود.
متغیر هدف پیوسته است: رگرسیون خطی، رگرسیون چند جمله ای، رگرسیون درجه دوم.
متغیر هدف مقوله‌ای است: رگرسیون لجستیک، Naive Bayes، KNN، SVM، Decision Tree، Gradient Boosting، ADA Boosting، Bagging، Random Forest و غیره.

 

ب. یادگیری بدون نظارت: [هدف وجود ندارد] دستگاه بر روی داده های بدون برچسب و بدون هیچ راهنمایی مناسب آموزش دیده است. با ایجاد خوشه ها به طور خودکار الگوها و روابط را در داده ها استنباط می کند. مدل از طریق مشاهدات و ساختارهای استنباط شده در داده ها یاد می گیرد.
تجزیه و تحلیل مؤلفه های اصلی، تحلیل عاملی، تجزیه ارزش منفرد و غیره

 

ج. یادگیری تقویتی:
مدل از طریق روش آزمون و خطا یاد می گیرد. این نوع یادگیری شامل عاملی است که با محیط تعامل می کند تا اقداماتی را ایجاد کند و سپس خطاها یا پاداش های آن عمل را کشف کند.

 

3. تفاوت بین یادگیری عمیق و یادگیری ماشین چیست؟

یادگیری ماشینی شامل الگوریتم هایی است که از الگوهای داده یاد می گیرند و سپس آن را در تصمیم گیری به کار می برند. از سوی دیگر، Deep Learning قادر است از طریق پردازش داده ها به تنهایی یاد بگیرد و کاملاً شبیه مغز انسان است که در آن چیزی را شناسایی، تجزیه و تحلیل می کند و تصمیم می گیرد.

 


تفاوت های اصلی :

نحوه ارائه داده ها به سیستم.

الگوریتم‌های یادگیری ماشین همیشه به داده‌های ساختاریافته نیاز دارند و شبکه‌های یادگیری عمیق به لایه‌هایی از شبکه‌های عصبی مصنوعی متکی هستند.

 

4. تفاوت اصلی در یادگیری ماشین با نظارت و بدون نظارت چیست؟

تکنیک یادگیری نظارت شده برای آموزش مدل به داده های برچسب دار نیاز دارد. به عنوان مثال، برای حل یک مشکل طبقه بندی (یک کار یادگیری نظارت شده)، باید داده های برچسب دار برای آموزش مدل و طبقه بندی داده ها در گروه های برچسب دار خود داشته باشید. یادگیری بدون نظارت به هیچ مجموعه داده برچسب‌گذاری شده نیاز ندارد. این تفاوت اصلی بین یادگیری تحت نظارت و یادگیری بدون نظارت است.

 

5. چگونه متغیرهای مهم را هنگام کار بر روی یک مجموعه داده انتخاب می کرد؟

ابزارهای مختلفی برای انتخاب متغیرهای مهم از یک مجموعه داده وجود دارد که شامل موارد زیر است:

  • قبل از نهایی کردن متغیرهای مهم، متغیرهای همبسته را شناسایی کرده و کنار بگذارید.
  • متغیرها را می توان بر اساس مقادیر “p” از رگرسیون خطی انتخاب کرد.
  • انتخاب رو به جلو، عقب و گام به گام
  • رگرسیون کمند
  • نمودار متغیر جنگل تصادفی و چارت ها
  • ویژگی های برتر را می توان بر اساس به دست آوردن اطلاعات برای مجموعه ای از ویژگی های موجود انتخاب کرد.

 

  • Identify and discard correlated variables before finalizing on important variables
  • The variables could be selected based on ‘p’ values from Linear Regression
  • Forward, Backward, and Stepwise selection
  • Lasso Regression
  • Random Forest and plot variable chart
  • Top features can be selected based on information gain for the available set of features.

 

6. تعداد زیادی الگوریتم یادگیری ماشین وجود دارد، اگر یک مجموعه داده به شما داده شود، چگونه می توان تعیین کرد که کدام الگوریتم برای آن مورد استفاده قرار گیرد؟

استفاده از الگوریتم یادگیری ماشین صرفاً به نوع داده در یک مجموعه داده معین بستگی دارد. اگر داده ها خطی باشند، از رگرسیون خطی استفاده می کنیم. اگر داده ها غیر خطی بودن، الگوریتم بگینگ(بسته بندی) بهتر عمل می کند. اگر قرار است داده ها برای اهداف تجاری تجزیه و تحلیل/تفسیر شوند، می توانیم از درخت تصمیم یا SVM استفاده کنیم. اگر مجموعه داده متشکل از تصاویر، ویدئوها، صداها باشد، شبکه های عصبی برای دریافت دقیق راه حل مفید خواهند بود.

بنابراین، معیار خاصی برای تصمیم گیری اینکه کدام الگوریتم برای یک موقعیت معین یا یک مجموعه داده استفاده شود وجود ندارد. ما باید داده ها را با استفاده از EDA (تحلیل داده های اکتشافی) بسنجیم کنیم و هدف از استفاده از مجموعه داده را برای دستیابی به بهترین الگوریتم مناسب درک کنیم. بنابراین، مهم است که همه الگوریتم ها را با جزئیات مطالعه کنید.به عکس زیر دقت کنید:

 

 

7. کوواریانس و همبستگی چه تفاوتی با یکدیگر دارند؟

کوواریانس نشان می‌دهد که چگونه دو متغیر با یکدیگر مرتبط هستند و چگونه یکی با توجه به تغییرات متغیر دیگر تغییر می‌کند. اگر مقدار مثبت باشد به این معنی است که یک رابطه مستقیم بین متغیرها وجود دارد و با توجه به اینکه همه شرایط ثابت باقی می مانند، به ترتیب با افزایش یا کاهش در متغیر پایه، افزایش یا کاهش می یابد.

همبستگی رابطه بین دو متغیر تصادفی را کم می کند و فقط سه مقدار خاص دارد، یعنی 1، 0 و -1.

1 نشان دهنده یک رابطه مثبت،

-1 نشان دهنده یک رابطه منفی

0 نشان دهنده مستقل بودن دو متغیر از یکدیگر است.

 

8. تفاوت بین علیت و همبستگی را بیان کنید؟

علیت در موقعیت‌هایی اعمال می‌شود که در آن یک عمل، مثلاً X، باعث یک نتیجه می‌شود، مثلاً Y، در حالی که همبستگی فقط یک عمل (X) را به عمل دیگر (Y) مرتبط می‌کند، اما X لزوماً باعث Y نمی‌شود.

به تصویر زیر دقت کنید :

 

9.چگونه یادگیری ماشین را در سخت افزار انجام می شود؟

ما باید الگوریتم‌های ML را در System Verilog که یک زبان توسعه سخت‌افزار است بسازیم و سپس آن را روی یک FPGA برنامه‌ریزی کنیم تا یادگیری ماشین را روی سخت‌افزار اعمال کنیم.

اگر نمیدانید System Verilog اینجارا مطالعه کنید.

اگر نمیدانید FPGA این مقاله را مطالعه کنید.

 

10. Encoding و Label Encoding را توضیح دهید. آنها چگونه بر ابعاد مجموعه داده داده شده تأثیر می گذارند؟

رمزگذاری نمایش متغیرهای طبقه بندی شده به عنوان بردارهای باینری است. رمزگذاری یک نوع برچسب تبدیل(برچسب ها / کلمات) به شکل عددی است. استفاده از این نوع رمزگذاری ابعاد مجموعه داده را افزایش می دهد. رمزگذاری برچسب بر ابعاد مجموعه داده تأثیر نمی گذارد. رمزگذاری یک متغیر جدید برای هر سطح در هر متغیر ایجاد می کند در حالی که در رمزگذاری برچسب، سطوح یک متغیر به صورت 0 و 1 کدگذاری می شوند.

به صورت ساده رمزنگاری باینری یا همان دو دویی نوعی رمز گذاری به ازای هر لیبل در هر متغیر است که می تواند 0 یا 1 باشد.

مثال تصویری زیر :


سوالات مصاحبه یادگیری عمیق

یادگیری عمیق بخشی از یادگیری ماشین است که با شبکه های عصبی کار می کند. این مبحث یک ساختار سلسله مراتبی از شبکه ها است که فرآیندی را برای کمک به ماشین ها برای یادگیری منطق های انسانی پشت هر نرم افزاری را تنظیم می کند. ما فهرستی از سوالات متداول مصاحبه با گرایش یادگیری عمیق (هوش مصنوعی) را جمع آوری کرده ایم تا به شما در آمادگی مصاحبه در این شغل کمک کنیم.

 

overfitting چیست؟

برازش بیش از حد یک نوع خطای مدل‌سازی است که منجر به عدم پیش‌بینی مؤثر مشاهدات آینده یا تطبیق داده‌های اضافی در مدل موجود می‌شود. اورفیت زمانی اتفاق می‌افتد که یک تابع به مجموعه محدودی از نقاط داده بسیار نزدیک باشد و معمولاً با پارامترهای بیشتری خاتمه می‌یابد.

 

ماشین پرسپترون و بولتزمن چند لایه چیست؟

ماشین بولتزمن یک نسخه ساده شده از پرسپترون چند لایه است. این یک مدل دو لایه با یک لایه ورودی قابل مشاهده و یک لایه پنهان است که تصمیمات تصادفی می گیرد.

اگر اطلاعتی راجب ماشین بولتزمن ندارید این مقاله را مطالعه کنید.

 

درباره سوالات مصاحبه یادگیری عمیق بیشتر بخوانید.


11. چه زمانی منظم سازی در یادگیری ماشین وارد عمل می شود؟

در مواقعی که مدل شروع به عدم تناسب یا بیش از حد تناسب می کند، منظم سازی ضروری می شود. این یک رگرسیون است که تخمین ضرایب را به سمت صفر منحرف یا منظم می کند، انعطاف‌پذیری را کاهش می‌دهد و از یادگیری در یک مدل جلوگیری می‌کند تا از خطر بیش از حد برازش جلوگیری کند. پیچیدگی مدل کاهش می یابد و در پیش بینی بهتر عمل می کند.

 

12. Bias, Variance چیست و منظور شما از Bias-Variance Tradeoff چیست؟

هر دو خطا در الگوریتم های یادگیری ماشین هستند. هنگامی که الگوریتم انعطاف پذیری محدودی برای استنتاج مشاهده صحیح از مجموعه داده داشته باشد، منجر به سوگیری می شود. از سوی دیگر، واریانس زمانی رخ می دهد که مدل به نوسانات کوچک بسیار حساس باشد.

اگر یکی در حین ساخت یک مدل ویژگی های بیشتری اضافه کند، پیچیدگی بیشتری اضافه می کند و ما دقت خود را از دست خواهیم داد اما مقداری واریانس به دست می آوریم. به منظور حفظ مقدار بهینه خطا، ما یک مبادله بین بیاس و واریانس را بر اساس نیازهای یک کسب و کار انجام می دهیم.

 

به صورت مثال به شکل زیر دقت کنید :

 

Bias مخفف خطا به دلیل فرضیات اشتباه یا بیش از حد ساده در الگوریتم یادگیری است. این فرض می‌تواند منجر به عدم تناسب مدل با داده‌ها شود و این امر باعث می‌شود که دقت پیش‌بینی های بالا و تعلیم دانش از مجموعه آموزشی(Train) به مجموعه آزمایشی(Test) برای انتقال دشوار شود.

 

واریانس نیز به دلیل پیچیدگی زیاد در الگوریتم یادگیری یک خطا است. این موضوع می تواند به دلیل حساسیت زیاد الگوریتم به درجات بالای تنوع در داده های آموزشی باشد که می تواند مدل شما را به بیش از حد برازش داده ها سوق دهد. حمل نویز بیش از حد از داده های آموزشی برای مدل شما برای داده های تست شما بسیار مفید خواهد بود.

 

تجزیه بایاس-واریانس اساساً خطای یادگیری را از هر الگوریتمی با اضافه کردن بایاس، واریانس و کمی خطای غیرقابل کاهش ناشی از نویز در مجموعه داده اصلی تجزیه می‌کند. اساساً، اگر مدل را پیچیده‌تر کنید و باید متغیرهای بیشتری اضافه کنید، سوگیری را از دست خواهید داد، اما مقدار کمی واریانس به دست خواهید آورد که برای دریافت بهینه مقدار خطا، باید بایاس و واریانس را با یکدیگر مبادله کنید.

 

13. چگونه می توانیم انحراف معیار و واریانس را به یکدیگر مرتبط کنیم؟

انحراف استاندارد به گسترش داده های شما از میانگین اشاره دارد. واریانس میانگین درجه ای است که هر نقطه با میانگین تفاوت دارد، یعنی میانگین تمام نقاط داده. ما می توانیم انحراف استاندارد و واریانس را به هم مرتبط کنیم زیرا جذر واریانس است.

 

14. یک مجموعه داده به شما داده می شود و دارای مقادیر گم شده است که در امتداد 1 انحراف استاندارد از میانگین پخش می شود. چه مقدار از داده ها دست نخورده باقی می ماند؟

با توجه به اینکه داده ها در سراسر میانگین پراکنده شده اند که داده ها در یک میانگین پخش شده اند. بنابراین، ما می توانیم فرض کنیم که یک توزیع نرمال است. در یک توزیع نرمال، حدود 68 درصد داده ها در 1 انحراف استاندارد از میانگین هایی مانند میانگین، حالت یا میانه قرار دارند. این بدان معناست که حدود 32 درصد از داده ها تحت تأثیر مقادیر از دست رفته باقی می ماند.

 

15. آیا واریانس بالا در داده ها خوب است یا بد؟

واریانس بالاتر به طور مستقیم به این معنی است که گستره داده ها بزرگ است و ویژگی دارای داده های متنوعی است. معمولاً واریانس بالا در یک ویژگی به عنوان کیفیت نه چندان مناسب دیده می شود.

 

16. اگر مجموعه داده شما واریانس بالایی داشته باشد، چگونه آن ها را مدیریت می کنید؟

برای مجموعه‌های داده با واریانس بالا، می‌توانیم از الگوریتم بسته‌بندی برای مدیریت آن استفاده کنیم. الگوریتم بگینگ داده ها را با نمونه برداری از داده های تصادفی به زیر گروه ها تقسیم می کند. پس از تقسیم داده ها، داده های تصادفی برای ایجاد قوانین با استفاده از یک الگوریتم آموزشی استفاده می شود. سپس از تکنیک نظرسنجی برای ترکیب تمام نتایج پیش‌بینی‌شده مدل استفاده می‌کنیم.

 

17. یک مجموعه داده در مورد کشف تقلب در شرکت های برقی به شما داده می شود. شما مدل طبقه بندی کننده ساخته اید و امتیاز عملکرد 98.5٪ را به دست آورده اید. آیا این یک مدل خوب است؟ اگر بله، توجیه کنید. اگر نه، چه کاری می توانید در مورد آن انجام دهید؟

مجموعه داده‌های مربوط به تشخیص تقلب در شرکت‌های برق به اندازه کافی متعادل نیست، یعنی نامتعادل. در چنین مجموعه داده‌ای، امتیاز دقت نمی‌تواند معیار عملکرد باشد، زیرا فقط می‌توان برچسب کلاس اکثریت را به درستی پیش‌بینی کرد، اما در این مورد هدف ما پیش‌بینی برچسب اقلیت است. اما اغلب اقلیت ها به عنوان سر و صدا تلقی می شوند و نادیده گرفته می شوند. بنابراین، احتمال اشتباه طبقه بندی برچسب اقلیت در مقایسه با برچسب اکثریت زیاد است. برای ارزیابی عملکرد مدل در مورد مجموعه داده‌های نامتعادل، باید از Sensitivity (نرخ مثبت واقعی) یا Specificity (نرخ منفی واقعی) استفاده کنیم تا عملکرد عاقلانه طبقه‌بندی برای مدل طبقه‌بندی را تعیین کنیم. اگر عملکرد برچسب کلاس اقلیت چندان مناسب نیست، می‌توانیم کارهای زیر را انجام دهیم:

  1. برای متعادل کردن داده‌ها می‌توانیم از نمونه‌گیری Under Sampling از Over Sampling استفاده کنیم.
  2. ما می توانیم مقدار آستانه پیش بینی را تغییر دهیم.
  3. می‌توانیم وزن‌هایی را به برچسب‌ها اختصاص دهیم تا برچسب‌های کلاس اقلیت وزن‌های بزرگ‌تری دریافت کنند.
  4. ما می توانستیم ناهنجاری ها(anomalies) را تشخیص دهیم.

 

18. نحوه رسیدگی به مقادیر گم شده یا خراب در مجموعه داده را توضیح دهید.

یک راه آسان برای مدیریت مقادیر از دست رفته یا مقادیر خراب، رها کردن سطرها یا ستون های مربوطه است. اگر تعداد سطرها یا ستون‌های زیادی برای رها کردن وجود دارد، می‌خواهیم مقادیر گمشده یا خراب را با مقداری جدید جایگزین کنیم.

شناسایی مقادیر از دست رفته و حذف سطرها یا ستون ها را می توان با استفاده از توابع IsNull() و dropna() در Pandas انجام داد. همچنین تابع Fillna() در Pandas مقادیر نادرست را با مقدار placeholder جایگزین می کند.

 

19. سری زمانی چیست؟

سری زمانی مجموعه ای از نقاط داده عددی به ترتیب متوالی است. حرکت نقاط داده انتخابی را در یک دوره زمانی مشخص ردیابی می کند و نقاط داده را در فواصل زمانی منظم ثبت می کند. سری های زمانی نیازی به حداقل یا حداکثر ورودی زمانی ندارند. تحلیلگران اغلب از سری های زمانی برای بررسی داده ها بر اساس نیاز خاص خود استفاده می کنند.

 

20. تبدیل Box-Cox چیست؟

تبدیل Box-Cox یک تبدیل توانی است که متغیرهای وابسته غیر نرمال را به متغیرهای نرمال تبدیل می کند زیرا نرمال بودن رایج ترین فرضی است که هنگام استفاده از بسیاری از تکنیک های آماری ایجاد می شود. این یک پارامتر لامبدا دارد که وقتی روی 0 تنظیم شود به این معنی است که این تبدیل معادل log-transform است. برای تثبیت واریانس و همچنین برای عادی سازی توزیع استفاده می شود.

 

21. تفاوت بین شیب نزولی تصادفی (SGD) و شیب نزولی (GD) چیست؟

Gradient Descent و Stochastic Gradient Descent الگوریتم هایی هستند که مجموعه پارامترهایی را پیدا می کنند که یک تابع ضرر را به حداقل می رساند.
تفاوت که در Gradient Descend وجود دارد، تمام نمونه های آموزشی را برای هر مجموعه از پارامترها ارزیابی میکند. در حالی که در نزول گرادیان تصادفی(SGD) تنها یک نمونه آموزشی برای مجموعه پارامترهای شناسایی شده ارزیابی می شود.

 

22. مشکل گرادیان انفجاری در هنگام استفاده از تکنیک انتشار برگشتی چیست؟

هنگامی که گرادیان های خطای بزرگ جمع می شوند و منجر به تغییرات زیادی در وزن شبکه عصبی در طول تمرین می شوند، به آن مشکل گرادیان انفجاری می گویند. مقادیر وزن‌ها می‌توانند به حدی بزرگ شوند که سرریز شده و به مقادیر NaN منجر شوند. این باعث می شود که مدل ناپایدار باشد و یادگیری مدل درست مانند مشکل گرادیان ناپدید کننده متوقف شود.به شکل زیر دقت کنید:

 

23. آیا می توانید به مزایا و معایب درخت تصمیم اشاره کنید؟

مزایای درخت های تصمیم این است که تفسیر آنها آسان تر است، ناپارامتریک هستند و در نتیجه نسبت به نقاط پرت مقاوم هستند و پارامترهای نسبتا کمی برای تنظیم دارند.
از طرف دیگر، نقطه ضعف آنها این است که  بیش از حد در معرض اورفیت قرارمی گیرد.

 

24. تفاوت ماشین های Random Forest و Gradient Boosting را توضیح دهید.

جنگل های تصادفی تعداد قابل توجهی از درختان تصمیم گیری هستند که با استفاده از میانگین ها یا قوانین اکثریت در انتها ترکیب شده اند. ماشین‌های تقویت گرادیان درخت‌های تصمیم را نیز ترکیب می‌کنند اما در ابتدای فرآیند برخلاف جنگل‌های تصادفی. جنگل تصادفی هر درخت را مستقل از دیگران ایجاد می کند در حالی که افزایش گرادیان یک درخت را در یک زمان توسعه می دهد. اگر پارامترها با دقت تنظیم شوند، افزایش گرادیان نتایج بهتری نسبت به جنگل‌های تصادفی به همراه دارد، اما اگر مجموعه داده حاوی مقادیر پرت/ناهنجاری/نویز زیادی باشد، گزینه خوبی نیست، زیرا می‌تواند منجر به تطبیق بیش از حد مدل شود. جنگل‌های تصادفی برای تشخیص اشیاء چند کلاسه عملکرد خوبی دارند. افزایش گرادیان زمانی که داده هایی وجود دارد که متعادل نیستند، مانند ارزیابی ریسک بلادرنگ، عملکرد خوبی دارد.

 

25. ماتریس سردرگمی چیست و چرا به آن نیاز دارید؟

ماتریس سردرگمی (که ماتریس خطا نیز نامیده می‌شود) جدولی است که اغلب برای نشان دادن عملکرد یک مدل طبقه‌بندی استفاده می‌شود، یعنی طبقه‌بندی کننده در مجموعه‌ای از داده‌های آزمایشی که مقادیر واقعی آن به خوبی شناخته شده است.

 

به ما اجازه می دهد تا عملکرد یک الگوریتم/مدل را تجسم کنیم. این به ما اجازه می دهد تا به راحتی سردرگمی بین طبقات مختلف را شناسایی کنیم. به عنوان معیار عملکرد یک مدل/الگوریتم استفاده می شود.

 

ماتریس سردرگمی به عنوان خلاصه ای از پیش بینی ها در یک مدل طبقه بندی شناخته می شود. تعداد پیش‌بینی‌های درست و نادرست با مقادیر شمارش خلاصه شد و بر اساس برچسب هر کلاس تجزیه شد. اطلاعاتی در مورد خطاهای ایجاد شده از طریق طبقه بندی کننده و همچنین انواع خطاهای یک طبقه بندی کننده به ما می دهد.

به شکل زیر توجه داشته باشید :

 

26. تبدیل فوریه چیست؟

تبدیل فوریه یک تکنیک ریاضی است که هر تابع زمان را به تابعی از فرکانس تبدیل می کند. تبدیل فوریه ارتباط نزدیکی با سری فوریه دارد. هر الگوی مبتنی بر زمان را برای ورودی می‌گیرد و آفست سیکل کلی، سرعت چرخش و قدرت را برای همه چرخه‌های ممکن محاسبه می‌کند. تبدیل فوریه به بهترین وجه برای شکل موج اعمال می شود زیرا دارای توابع زمان و مکان است. هنگامی که تبدیل فوریه روی شکل موج اعمال می شود، به یک سینوسی تجزیه می شود.

 

 

27. منظور شما از استخراج قانون انجمنی (ARM) چیست؟

قانون کاوی انجمنی یکی از تکنیک‌های کشف الگوهایی در داده‌ها است مانند ویژگی‌ها (ابعاد) که با هم اتفاق می‌افتند و ویژگی‌ها (ابعاد) که همبستگی دارند، بیشتر در تحلیل مبتنی بر بازار برای یافتن تعداد دفعات وقوع یک مجموعه اقلام در یک تراکنش استفاده می شود. قوانین انجمن باید حداقل حمایت و حداقل اطمینان را به طور همزمان برآورده کند. تولید قوانین انجمن به طور کلی از دو مرحله مختلف تشکیل شده است:

  • “آستانه پشتیبانی حداقل برای به دست آوردن تمام مجموعه های مکرر آیتم ها در یک پایگاه داده داده می شود.”
  • “یک محدودیت حداقل اطمینان به این مجموعه اقلام مکرر داده می شود تا قوانین انجمن را شکل دهند.”

پشتیبانی معیاری است برای نشان دادن تعداد دفعاتی که «مجموعه آیتم» در مجموعه داده‌ها ظاهر می‌شود و «اطمینان» معیاری است که نشان می‌دهد چند وقت یک‌بار صحت یک قانون خاص را نشان می‌دهد.

 

28. حاشیه نشینی چیست؟ فرآیند آن را توضیح دهید.

حاشیه سازی جمع کردن احتمال یک متغیر تصادفی X با توجه به توزیع احتمال مشترک X با سایر متغیرها است. این یک کاربرد قانون احتمال کل است.

فرمول :

P(X=x) = ∑YP(X=x,Y)

با توجه به احتمال مشترک P(X=x,Y)، می توانیم از حاشیه برای یافتن P(X=x) استفاده کنیم. بنابراین، یافتن توزیع یک متغیر تصادفی با ساده کردن موارد بر روی متغیرهای تصادفی دیگر است.

 

29. منظور «ابعاد نفرین شده» چیست؟

Curse of Dimensionality به وضعیتی اشاره دارد که داده های شما دارای ویژگی های بیش از حد هستند.

این عبارت برای بیان دشواری استفاده از brute force یا جستجوی شبکه ای برای بهینه سازی یک تابع با ورودی های زیاد استفاده می شود.

همچنین می تواند به چندین موضوع دیگر اشاره کند مانند:

  • اگر ویژگی‌های بیشتری نسبت به مشاهدات داشته باشیم، خطر تطبیق بیش از حد مدل را داریم.
  • وقتی ویژگی‌های زیادی داریم، خوشه‌بندی مشاهدات سخت‌تر می‌شود. ابعاد بیش از حد باعث می شود که هر مشاهده در مجموعه داده با فاصله یکسان از بقیه به نظر برسد و هیچ خوشه معنی داری تشکیل نشود.

تکنیک های کاهش ابعاد مانند PCA در چنین مواردی به کمک می آیند.

 

30. تجزیه و تحلیل مؤلفه اصلی چیست؟

ایده در اینجا کاهش ابعاد مجموعه داده با کاهش تعداد متغیرهایی است که با یکدیگر همبستگی دارند. اگرچه این تنوع باید تا حداکثر میزان حفظ شود.

متغیرها به مجموعه جدیدی از متغیرها تبدیل می شوند که به عنوان اجزای اصلی شناخته می شوند. این رایانه‌های شخصی بردارهای ویژه یک ماتریس کوواریانس هستند و بنابراین متعامد هستند.

 

 

31. چرا چرخش اجزا در تجزیه و تحلیل اجزای اصلی (PCA) اهمیت دارد؟

چرخش در PCA بسیار مهم است زیرا تفکیک درون واریانس بدست‌آمده توسط همه اجزا را به حداکثر می‌رساند زیرا تفسیر اجزا آسان‌تر می‌شود. اگر مولفه‌ها چرخانده نشوند، برای توصیف واریانس مؤلفه‌ها به مؤلفه‌های توسعه‌یافته نیاز داریم.

 

32. پرت چیست؟ سه روش برای مقابله با موارد پرت ذکر کنید.

نقطه داده ای که به طور قابل توجهی از سایر نقاط داده مشابه فاصله دارد به عنوان نقطه پرت شناخته می شود. آنها ممکن است به دلیل خطاهای تجربی یا تغییر در اندازه گیری رخ دهند. آنها مشکل ساز هستند و می توانند فرآیند آموزشی را گمراه کنند که در نهایت منجر به زمان طولانی تر تمرین، مدل های نادرست و نتایج ضعیف می شود.

سه روش برای مقابله با موارد پرت عبارتند از:

  1. روش تک متغیره – به دنبال نقاط داده ای می گردد که دارای مقادیر شدید روی یک متغیر واحد هستند.
  2. روش چند متغیره – به دنبال ترکیب‌های غیرعادی در همه متغیرها می‌گردد.
  3. خطای مینکوفسکی – سهم پرت بالقوه را در فرآیند آموزش کاهش می دهد.

 

 

33. تفاوت بین منظم سازی(regularization) و عادی سازی(normalisation) در چیست؟

عادی سازی داده ها را تنظیم می کند. منظم سازی تابع پیش بینی را تنظیم می کند. اگر داده‌های شما در مقیاس‌های بسیار متفاوت هستند (مخصوصاً کم تا زیاد)، می‌خواهید داده‌ها را عادی کنید، هر ستون را تغییر دهید تا آمار اولیه سازگار داشته باشد. این می تواند برای اطمینان از عدم از دست دادن دقت مفید باشد. یکی از اهداف آموزش مدل شناسایی سیگنال و نادیده گرفتن نویز است در صورتی که به مدل دست آزاد داده شود تا خطا به حداقل برسد، احتمال بروز بیش از حد برازش وجود دارد. منظم‌سازی با ارائه عملکردهای برازش ساده‌تر نسبت به موارد پیچیده، کنترلی را بر این امر تحمیل می‌کند.

 

34. تفاوت Normalization و Standardization را توضیح دهید.

عادی سازی و استانداردسازی دو روش بسیار محبوبی هستند که برای مقیاس بندی ویژگی ها استفاده می شوند. عادی سازی به مقیاس مجدد مقادیر برای قرار گرفتن در محدوده [0،1] اشاره دارد. استانداردسازی به مقیاس مجدد داده ها برای داشتن میانگین 0 و انحراف استاندارد 1 (واریانس واحد) اشاره دارد. نرمال سازی زمانی مفید است که همه پارامترها نیاز به مقیاس مثبت یکسان داشته باشند، با این حال نقاط پرت از مجموعه داده ها از بین می روند. از این رو، استانداردسازی برای اکثر برنامه ها توصیه می شود.

 

35. محبوب ترین منحنی های توزیع را به همراه سناریوهایی که از آنها در یک الگوریتم استفاده خواهید کرد، فهرست کنید.

محبوب ترین منحنی های توزیع به شرح زیر است:

  • توزیع برنولی
  • توزیع یکنواخت
  • توزیع دو جمله ای
  • توزیع عادی
  • توزیع پواسون
  • توزیع نمایی
    هر یک از این منحنی های توزیع در سناریوهای مختلفی استفاده می شود.

از توزیع برنولی می توان برای بررسی اینکه آیا یک تیم قهرمان می شود یا خیر، یک کودک تازه متولد شده مرد یا زن است، یا امتحان را قبول می شوید یا خیر و غیره استفاده می شود.

توزیع یکنواخت توزیع احتمالی است که احتمال ثابتی دارد. انداختن یک تاس یک مثال است زیرا تعداد نتایج ثابتی دارد.

توزیع دوجمله ای یک احتمال است که فقط دو نتیجه ممکن دارد، پیشوند “bi” به معنای دو یا دو بار است. نمونه ای از این می تواند پرتاب سکه باشد. نتیجه یا سر یا دم خواهد بود.

توزیع نرمال نحوه توزیع مقادیر یک متغیر را توصیف می کند. این معمولاً یک توزیع متقارن است که در آن بیشتر مشاهدات در اطراف قله مرکزی جمع می شوند. مقادیر دورتر از میانگین به طور مساوی در هر دو جهت کاهش می یابد. یک مثال می تواند قد دانش آموزان در کلاس درس باشد.

توزیع پواسون به پیش‌بینی احتمال وقوع رویدادهای خاص کمک می‌کند زمانی که می‌دانید آن رویداد چند بار اتفاق افتاده است. تجار می توانند از آن برای پیش بینی تعداد مشتریان در روزهای خاص استفاده کنند و به آنها اجازه می دهد عرضه را مطابق با تقاضا تنظیم کنند.

توزیع نمایی به مدت زمانی که یک رویداد خاص رخ می دهد مربوط می شود. به عنوان مثال، چند ماه یک باتری ماشین دوام می آورد.

 

36. چگونه نرمال بودن یک مجموعه داده یا یک ویژگی را بررسی کنیم؟

از نظر بصری، می‌توانیم آن را با استفاده از نمودارها بررسی کنیم. لیستی از بررسی های عادی وجود دارد که به شرح زیر است:

  • تست Shapiro-Wilk W
  • تست اندرسون-دارلینگ
  • تست مارتینز-ایگلویچ
  • آزمون کولموگروف-اسمیرنوف
  • تست چولگی داگوستینو

 

37. رگرسیون خطی چیست؟

تابع خطی را می توان به عنوان یک تابع ریاضی در صفحه دو بعدی به صورت Y =Mx +C تعریف کرد، که در آن Y یک متغیر وابسته و X متغیر مستقل است، C برابر است و M شیب است و همان را می توان به عنوان Y یک تابع بیان کرد. از X یا Y = F(x).

در هر مقدار داده شده از X، می توان مقدار Y را با استفاده از معادله خط محاسبه کرد. این رابطه بین Y و X با درجه ای از چند جمله ای 1 را رگرسیون خطی می نامند.

در مدل سازی پیش بینی، LR به صورت Y = Bo + B1x1 + B2x2 نشان داده می شود. مقدار B1 و B2 قدرت همبستگی بین ویژگی ها و متغیر وابسته را تعیین می کند.

مثال: ارزش سهام به دلار = Intercept + (+/-B1)*(ارزش افتتاحیه سهام) + (+/-B2)*(روز قبل بالاترین ارزش سهام)

Stock Value in $ = Intercept + (+/-B1)*(Opening value of Stock) + (+/-B2)*(Previous Day Highest value of Stock)

 

38. بین رگرسیون و طبقه بندی چه تفاوت هایی وجود دارد؟

رگرسیون و طبقه بندی تحت همان چتر یادگیری ماشینی نظارت شده طبقه بندی می شوند. تفاوت اصلی بین آنها این است که متغیر خروجی در رگرسیون عددی (یا پیوسته) است در حالی که برای طبقه بندی مقوله ای (یا گسسته) است.

مثال: برای پیش بینی دمای قطعی یک مکان مشکل رگرسیون است در حالی که پیش بینی اینکه آیا روز ابری آفتابی خواهد بود یا باران خواهد بود یک مورد طبقه بندی است.

 

39.هدف عدم تعادل چیست؟ ما چگونه می توان استفاده کرد؟ سناریویی که در آن شما عدم تعادل هدف در داده ها وجود دارد را انجام داده اید؟ کدام معیارها و الگوریتم‌ها را برای وارد کردن این داده‌ها مناسب می‌دانید؟

اگر وقتی دسته بندی های خاصی وجود دارد که تعداد آنها در مقایسه با سایرین با تعداد بسیار قابل توجهی بیشتر است، اگر متغیرهای دسته بندی را به عنوان هدف داشته باشید. این به عنوان عدم تعادل هدف شناخته می شود.

مثال: ستون هدف – 0,0,0,1,0,2,0,0,1,1 [0s: 60%, 1: 30%, 2:10%] 0 اکثریت هستند. برای رفع این مشکل، می‌توانیم نمونه‌برداری به سمت بالا یا پایین را انجام دهیم. قبل از رفع این مشکل، اجازه دهید فرض کنیم که معیارهای عملکرد استفاده شده، معیارهای سردرگمی هستند. پس از رفع این مشکل، می‌توانیم سیستم متریک را به AUC: ROC تغییر دهیم. از آنجایی که ما داده‌ها را اضافه یا حذف کردیم [نمونه‌گیری بالا یا پایین نمونه]، می‌توانیم با الگوریتم هایی مانند SVM، تقویت گرادیان یا تقویت ADA استفاده کنیم.

 

40. فهرست تمام فرضیاتی که برای داده ها باید قبل از شروع رگرسیون خطی استفاده شوند را بیان کنید.

قبل از شروع رگرسیون خطی، فرضیاتی که باید رعایت شود به شرح زیر است:

  • رابطه خطی
  • نرمال بودن چند متغیره
  • چند خطی وجود ندارد یا کم است
  • بدون همبستگی خودکار
  • واریانس همسانی

 

41. چه زمانی خط رگرسیون خطی از چرخش می ایستد یا نقطه بهینه ای را پیدا می کند که دیگر روی داده ها برازش نکند؟

مکانی که بالاترین مقدار RSquared یافت می شود، جایی است که خط در آن استراحت می کند. RSquared نشان دهنده مقدار واریانس گرفته شده توسط خط رگرسیون خطی مجازی با توجه به کل واریانس گرفته شده توسط مجموعه داده است.

 

42. چرا رگرسیون لجستیک نوعی تکنیک طبقه بندی است و رگرسیون نیست؟ تابعی را که از آن مشتق شده است نام ببرید؟

از آنجایی که ستون هدف مقوله‌ای است، از رگرسیون خطی برای ایجاد یک تابع فرد استفاده می‌کند که با یک تابع log در هم ترکبیب شده است تا از رگرسیون به عنوان طبقه‌بندی کننده استفاده کند. از این رو، این یک نوع تکنیک طبقه بندی است و نه یک رگرسیون. از تابع هزینه مشتق شده است.

 

43. وقتی رگرسیون روی زیرمجموعه های مختلف مجموعه داده اجرا می شود، مقدار بتا برای یک متغیر خاص در هر زیر مجموعه ممکن است بسیار تغییر کند، چه مشکلی به وجود می آید؟

تغییرات در مقادیر بتا در هر زیر مجموعه نشان می دهد که مجموعه داده ناهمگن است. برای غلبه بر این مشکل، می‌توانیم از یک مدل متفاوت برای هر یک از زیر مجموعه‌های خوشه‌بندی شده مجموعه داده استفاده کنیم یا از یک مدل ناپارامتریک مانند درخت‌های تصمیم استفاده کنیم.

 

 

44. اصطلاح عامل تورم واریانس(term Variance) به چه معناست؟

متغیر تورم (VIF) نسبت واریانس مدل به واریانس مدل با تنها یک متغیر مستقل است. VIF تخمین حجم چند خطی را در مجموعه ای از متغیرهای رگرسیون ارائه می دهد.

VIF = واریانس مدل واریانس مدل با یک متغیر مستقل

 

45. کدام الگوریتم یادگیری ماشین به عنوان یادگیرنده تنبل شناخته می شود و چرا به آن این لفظ را نسبت داده اند؟

KNN یک الگوریتم یادگیری ماشینی است که به عنوان یادگیرنده تنبل شناخته می شود. K-NN یک یادگیرنده تنبل است زیرا هیچ مقدار یا متغیری را که ماشین یاد گرفته شده از داده های آموزشی یاد نمی گیرد، اما هر بار که بخواهد طبقه بندی کند، به صورت پویا فاصله را محاسبه می کند، بنابراین مجموعه داده آموزشی را به خاطر می سپارد.

 

سوالات مصاحبه یادگیری ماشین برای افراد با تجربه

46. آیا می توان از KNN برای پردازش تصویر استفاده کرد؟

بله، امکان استفاده از KNN برای پردازش تصویر وجود دارد. این کار را می توان با تبدیل تصویر 3 بعدی به یک بردار تک بعدی و استفاده از همان ورودی به KNN انجام داد.

 

 

47. بین الگوریتم های K-Means و KNN تفاوت قائل شوید؟

الگوریتم های KNN یادگیری نظارت شده است، در حالی که K-Means یادگیری بدون نظارت است. با KNN، برچسب عنصر ناشناس را بر اساس نزدیک‌ترین همسایه آن پیش‌بینی می‌کنیم و این رویکرد را برای حل مشکلات مبتنی بر طبقه‌بندی/رگرسیون گسترش می‌دهیم.

K-Means یک الگوریتم یادگیری بدون نظارت است که در آن هیچ برچسبی وجود ندارد، به عبارت دیگر، هیچ متغیر هدفی نداریم و بنابراین سعی می کنیم داده ها را بر اساس مختصات آنها خوشه بندی کنیم و ماهیت خوشه را بر اساس عناصر فیلتر شده تعیین کنیم.

 

48. الگوریتم SVM چگونه با خودآموزی یا همان Self.learning سروکار دارد؟

SVM دارای نرخ یادگیری و نرخ گسترش است که از این موضوع استفاده می کند. نرخ یادگیری را برای ابرپلن ها و انجام تمام حرکات اشتباه جبران یا جریمه می کند و نرخ گسترش با یافتن حداکثر منطقه جدایی بین کلاس ها رابطه مستقیم دارد.

 

49. کرنل ها در SVM چیست؟ هسته های محبوب مورد استفاده در SVM را به همراه سناریویی از برنامه های آنها در فهرستی بیان کنید.

عملکرد هسته این است که داده ها را به عنوان ورودی دریافت کرده و به شکل مورد نیاز تبدیل کند. چند هسته محبوب مورد استفاده در SVM به شرح زیر است:

  • RBF
  • Linear
  • Sigmoid
  • Polynomial
  • Hyperbolic
  • Laplace

 

50. ترفند کرنل یا هسته (Kernel) در الگوریتم SVM چیست؟

ترفند هسته یک تابع ریاضی است که وقتی روی نقاط داده اعمال می شود، می تواند منطقه طبقه بندی بین دو کلاس مختلف را پیدا کند. و بر اساس انتخاب تابع، خطی یا شعاعی،(که صرفاً به توزیع داده ها بستگی دارد) می توان یک یک نوع طبقه بندی کننده ساخت.

 

51. مدل های انسامبل(ensemble) چیست؟ توضیح دهید که چگونه تکنیک‌های گروهی در مقایسه با الگوریتم‌های طبقه‌بندی سنتی ML یادگیری بهتری را ارائه می‌دهند؟

Ensemble گروهی از مدل‌ها است که با هم برای پیش‌بینی در کلاس طبقه‌بندی و رگرسیون استفاده می‌شوند. یادگیری گروهی به بهبود نتایج ML کمک می کند زیرا چندین مدل را ترکیب می کند. با انجام این کار، عملکرد پیش بینی بهتری را در مقایسه با یک مدل واحد فراهم می کند.
آنها نسبت به مدل های جداگانه برتری دارند زیرا واریانس را کاهش می دهند، تعصبات را به طور میانگین کاهش می دهند و شانس کمتری برای تطبیق بیش از حد دارند.

 

52. overfitting و underfitting چیست؟ چرا الگوریتم درخت تصمیم اغلب با مشکل بیش از حد برازش مواجه می شود؟

Overfitting یک مدل آماری یا الگوریتم یادگیری ماشین است که نویز داده ها را ضبط می کند. Underfitting یک مدل یا الگوریتم یادگیری ماشین است که به اندازه کافی با داده ها تناسب ندارد و در صورتی رخ می دهد که مدل یا الگوریتم واریانس کم اما بایاس بالا را نشان دهد.

در درخت‌های تصمیم، برازش بیش از حد زمانی اتفاق می‌افتد که درخت به گونه‌ای طراحی شود که تمام نمونه‌ها در مجموعه داده‌های آموزشی کاملاً متناسب باشد. این منجر به شاخه‌هایی با قوانین سخت‌گیرانه یا داده‌های پراکنده می‌شود و بر دقت پیش‌بینی نمونه‌هایی که بخشی از مجموعه آموزشی نیستند تأثیر می‌گذارد.

 

53. خطای OOB چیست و چگونه رخ می دهد؟

برای هر نمونه بوت استرپ، یک سوم داده هایی وجود دارد که در ایجاد درخت استفاده نشده است، یعنی خارج از نمونه است. این داده ها به عنوان داده های خارج از کیسه نامیده می شوند. برای به دست آوردن اندازه گیری بی طرفانه از دقت مدل بر روی داده های آزمایشی، از خطای خارج از کیسه استفاده می شود. داده‌های خارج از کیسه(bag) برای هر درختی که از آن درخت عبور داده می‌شود، ارسال می‌شود و خروجی‌ها جمع می‌شوند تا خطای خارج از کیسه(bag) را نشان دهند. این درصد خطا در تخمین خطا در مجموعه تست کاملاً مؤثر است و نیازی به اعتبارسنجی متقاطع بیشتری ندارد.

 

 

54. چرا تقویت الگوریتم در مقایسه با سایر الگوریتم های گروهی پایدارتر است؟

Boosting بر روی خطاهایی که در تکرارهای قبلی یافت می شوند تا زمانی که منسوخ شوند تمرکز می کند. در حالی که در کیسه بندی(Baging) حلقه اصلاحی وجود ندارد. به همین دلیل است که تقویت در مقایسه با سایر الگوریتم‌های گروهی، الگوریتم پایدارتری است.

 

55. چگونه می‌توانید از داده‌های پرت استفاده کنید؟

Outlier مشاهده ای در مجموعه داده است که با سایر مشاهدات موجود در مجموعه داده ها فاصله زیادی دارد. ما می‌توانیم با استفاده از ابزارها و توابعی مانند نمودار جعبه، نمودار پراکندگی، امتیاز Z، امتیاز IQR و غیره، نقاط پرت را کشف کنیم و سپس آنها را بر اساس تجسم‌سازی که داریم مدیریت کنیم. برای رسیدگی به مقادیر پرت، می‌توانیم در آستانه‌ای محدود کنیم، از تبدیل‌ها برای کاهش چولگی داده‌ها استفاده کنیم و در صورت ناهنجاری یا خطا، نقاط پرت را حذف کنیم.

 

 

56. تکنیک های رایج اعتبار سنجی متقابل را فهرست کنید.

عمدتاً شش نوع تکنیک اعتبارسنجی متقابل وجود دارد. آنها به شرح زیر هستند:

  • K برابر
  • طبقه بندی k چین
  • یکی را کنار بگذار
  • بوت استرپینگ
  • جستجوی تصادفی cv
  • سی وی جستجوی شبکه

 

57. آیا می توان احتمال بهبود دقت مدل را بدون تکنیک های اعتبارسنجی متقابل آزمایش کرد؟ اگر بله، لطفا توضیح دهید.

بله، امکان تست احتمال بهبود دقت مدل بدون تکنیک های اعتبارسنجی متقابل وجود دارد. ما می‌توانیم این کار را با اجرای مدل ML برای مثلاً n تعداد تکرار انجام دهیم و دقت را ثبت کنیم. تمام دقت ها را رسم کنید و 5% مقادیر کم احتمال را حذف کنید. برش چپ [کم] و برش راست [بالا] را اندازه بگیرید. با 95 درصد اطمینان باقیمانده، می‌توان گفت که مدل می‌تواند به پایین یا بالا [همانطور که در نقاط برش ذکر شد] برود.

 

58. یک الگوریتم کاهش ابعاد محبوب نام ببرید.

الگوریتم های محبوب کاهش ابعاد عبارتند از تجزیه و تحلیل اجزای اصلی و تحلیل عاملی.
تجزیه و تحلیل مؤلفه اصلی یک یا چند متغیر شاخص را از مجموعه بزرگتری از متغیرهای اندازه گیری شده ایجاد می کند. تحلیل عاملی مدلی برای اندازه گیری یک متغیر پنهان است. این متغیر پنهان را نمی توان با یک متغیر اندازه گیری کرد و از طریق رابطه ای که در مجموعه ای از متغیرهای y ایجاد می کند دیده می شود.

 

59. چگونه می توانیم از یک مجموعه داده بدون متغیر هدف در الگوریتم های یادگیری نظارت شده را استفاده کنیم؟

مجموعه داده ها را در یک الگوریتم خوشه بندی وارد کنید، خوشه های بهینه ایجاد کنید، اعداد خوشه را به عنوان متغیر هدف جدید برچسب گذاری کنید. اکنون، مجموعه داده دارای متغیرهای مستقل و هدف است. استفاده از این تکنیک تضمین می کند که مجموعه داده برای استفاده در الگوریتم های یادگیری نظارت شده آماده است.

 

60. انواع سیستم های توصیه محبوب را لیست کنید؟ دو سیستم توصیه شخصی را به همراه سهولت پیاده سازی آنها نام ببرید و توضیح دهید.

توصیه مبتنی بر محبوبیت، توصیه مبتنی بر محتوا، فیلتر مشارکتی مبتنی بر کاربر، و توصیه مبتنی بر آیتم انواع محبوب سیستم‌های توصیه هستند.
سیستم‌های توصیه شخصی عبارتند از: توصیه‌های مبتنی بر محتوا، فیلتر مشارکتی مبتنی بر کاربر و توصیه‌های مبتنی بر آیتم. فیلتر مشارکتی مبتنی بر کاربر و توصیه‌های مبتنی بر مورد شخصی‌تر هستند. سهولت نگهداری: ماتریس تشابه را می توان به راحتی با توصیه های مبتنی بر آیتم حفظ کرد.

 

61. چگونه با مسائل پراکندگی در سیستم های توصیه برخورد کنیم؟ چگونه اثربخشی آن را اندازه گیری کنیم؟

برای تولید ماتریس پیش بینی می توان از تجزیه مقدار منفرد استفاده کرد. RMSE معیاری است که به ما کمک می کند بفهمیم که ماتریس پیش بینی چقدر به ماتریس اصلی نزدیک است.

 

62. نام و تعریف تکنیک های مورد استفاده برای یافتن شباهت ها در سیستم توصیه.

همبستگی پیرسون و همبستگی کسینوس تکنیک هایی هستند که برای یافتن شباهت ها در سیستم های توصیه استفاده می شوند.

 

63. محدودیت های تابع پایه ثابت(Basis Function)را بیان کنید.

تفکیک پذیری خطی در فضای ویژگی به معنای جداسازی خطی در فضای ورودی نیست. بنابراین، ورودی ها با استفاده از بردارهای توابع پایه با ابعاد افزایش یافته به صورت غیر خطی تبدیل می شوند. محدودیت های توابع پایه ثابت عبارتند از:

  • تبدیل های غیر خطی نمی توانند همپوشانی بین دو کلاس را حذف کنند اما می توانند همپوشانی را افزایش دهند.
  • اغلب مشخص نیست که کدام توابع پایه برای یک کار خاص مناسب هستند. بنابراین، یادگیری توابع پایه می تواند بیش از استفاده از توابع پایه ثابت مفید باشد.
  • اگر بخواهیم فقط از موارد ثابت استفاده کنیم، می‌توانیم از تعداد زیادی از آنها استفاده کنیم و به مدل اجازه دهیم بهترین تناسب را پیدا کند، اما این منجر به برازش بیش از حد مدل می‌شود و در نتیجه آن را ناپایدار می‌کند.

 

 

64. مفهوم تعصب استقرایی را با چند مثال تعریف و توضیح دهید.

تعصب استقرایی مجموعه ای از فرضیات است که انسان ها برای پیش بینی خروجی های داده شده ورودی هایی که الگوریتم یادگیری هنوز با آنها مواجه نشده است، استفاده می کند. زمانی که می‌خواهیم Y را از X یاد بگیریم و فضای فرضیه Y بی‌نهایت است، باید با اعتقادات/فرض‌های خود در مورد فضای فرضیه که به آن سوگیری استقرایی نیز می‌گویند، دامنه را کاهش دهیم. از طریق این فرضیات، فضای فرضیه خود را محدود می‌کنیم و همچنین قابلیت آزمایش و بهبود تدریجی داده‌ها را با استفاده از فراپارامترها به دست می‌آوریم. مثال ها:

  • ما فرض می کنیم که Y به صورت خطی با X در هنگام اعمال رگرسیون خطی تغییر می کند.
  • ما فرض می کنیم که یک ابر صفحه وجود دارد که نمونه های منفی و مثبت را از هم جدا می کند.

 

65- اصطلاح یادگیری مبتنی (instance-based learning) بر نمونه را توضیح دهید.

یادگیری مبتنی بر نمونه مجموعه‌ای از رویه‌ها برای رگرسیون و طبقه‌بندی است که یک پیش‌بینی برچسب کلاس را بر اساس شباهت به نزدیک‌ترین همسایگان خود در مجموعه داده‌های آموزشی ایجاد می‌کند. این الگوریتم‌ها فقط تمام داده‌ها را جمع‌آوری می‌کنند و در صورت نیاز یا پرس و جو به پاسخ می‌رسند. به عبارت ساده، آنها مجموعه ای از رویه ها برای حل مسائل جدید بر اساس راه حل های مشکلات حل شده در گذشته هستند که مشابه مشکل فعلی است.

 

66. با در نظر گرفتن معیارهای ترن و تقسیم تست، انجام مقیاس بندی قبل از اسپلیت(بخش کردن) خوب است یا بعد از تقسیم؟

مقیاس بندی باید بعد از تمرین و تقسیم آزمایشی به طور ایده آل انجام شود. اگر داده ها کاملاً بسته بندی(بگینگ) شده باشند، پس مقیاس بندی پست یا پیش تقسیم نباید تفاوت زیادی ایجاد کند.

 

 

67. دقت، یادآوری و امتیاز F1 را تعریف کنید؟

متریک مورد استفاده برای دسترسی به عملکرد مدل طبقه بندی Confusion Metric است. متریک سردرگمی را می توان با عبارات زیر بیشتر تفسیر کرد:

مثبت واقعی (TP) – این مقادیر مثبت به درستی پیش بینی شده است. به این معنی است که مقدار کلاس واقعی بله و مقدار کلاس پیش بینی شده نیز بله است.

منفی های واقعی (TN) – این ها مقادیر منفی پیش بینی شده درست هستند. به این معنی است که مقدار کلاس واقعی no است و مقدار کلاس پیش بینی شده نیز no است.

مثبت کاذب و منفی کاذب، این مقادیر زمانی رخ می دهند که کلاس واقعی شما با کلاس پیش بینی شده در تضاد باشد.

اکنون،
یادآوری، که به عنوان حساسیت نیز شناخته می شود، نسبت نرخ مثبت واقعی (TP) به تمام مشاهدات در کلاس واقعی است – بله
فراخوان = TP/(TP+FN)

دقت نسبت ارزش اخباری مثبت است که مقدار مدل مثبت دقیق پیش‌بینی‌شده یعنی تعداد مثبت‌هایی که ادعا می‌کند را اندازه‌گیری می‌کند.
دقت = TP/(TP+FP)

دقت بصری ترین معیار عملکرد است و صرفاً نسبت مشاهدات پیش بینی شده صحیح به کل مشاهدات است.
دقت = (TP+TN)/(TP+FP+FN+TN)

امتیاز F1 میانگین وزنی Precision و Recall است. بنابراین، این امتیاز هم مثبت کاذب و هم منفی کاذب را در نظر می گیرد. به طور شهودی درک آن به اندازه دقت آسان نیست، اما F1 معمولا مفیدتر از دقت است، به خصوص اگر توزیع کلاس ناهمواری داشته باشید. دقت در صورتی بهتر عمل می کند که مثبت کاذب و منفی کاذب هزینه مشابهی داشته باشند. اگر هزینه مثبت کاذب و منفی کاذب بسیار متفاوت است، بهتر است به دقت و یادآوری هر دو نگاه کنید.

 

68. امتیاز اعتبار سنجی نمودار و امتیاز آموزشی با اندازه مجموعه داده ها در محور x و نمودار دیگری با پیچیدگی مدل در محور x.

 

برای سوگیری زیاد در مدل‌ها، عملکرد مدل در مجموعه داده‌های اعتبارسنجی مشابه عملکرد مجموعه داده‌های آموزشی است. برای واریانس بالا در مدل ها، عملکرد مدل در مجموعه اعتبار سنجی بدتر از عملکرد در مجموعه آموزشی است.

 

 

69. قضیه بیز چیست؟ حداقل 1 مورد استفاده را با توجه به زمینه یادگیری ماشین بیان کنید؟

قضیه بیز احتمال یک رویداد را بر اساس دانش قبلی از شرایطی که ممکن است با رویداد مرتبط باشد، توصیف می کند. به عنوان مثال، اگر سرطان با سن مرتبط باشد، با استفاده از قضیه بیز، می توان از سن افراد برای ارزیابی دقیق تر احتمال ابتلا به سرطان استفاده کرد تا اینکه بدون آگاهی از سن فرد انجام شود.
قانون زنجیره ای برای احتمال بیزی می تواند برای پیش بینی احتمال کلمه بعدی در جمله استفاده شود.

 

70. Naive Bayes چیست؟ چرا ساده است؟

طبقه بندی کننده های ساده بیز مجموعه ای از الگوریتم های طبقه بندی هستند که بر اساس قضیه بیز ساخته شده اند. این خانواده از الگوریتم‌ها یک اصل مشترک دارند که هر جفت ویژگی را در حین طبقه‌بندی به طور مستقل بررسی می‌کند.

ساده لوح بیز ساده لوح در نظر گرفته می شود زیرا ویژگی های موجود در آن (برای کلاس) مستقل از سایر ویژگی های همان کلاس است. این عدم وابستگی بین دو صفت از یک طبقه، کیفیت سادگی را ایجاد می کند.

درباره Naive Bayes بیشتر بخوانید.

 

71. توضیح دهید که چگونه یک طبقه بندی کننده ساده بیز کار می کند.

طبقه بندی کننده های ساده بیز خانواده ای از الگوریتم ها هستند که از قضیه احتمال بیز مشتق شده اند. این بر این فرض اساسی کار می کند که هر مجموعه ای از دو ویژگی که طبقه بندی می شوند مستقل از یکدیگر هستند و هر ویژگی سهم مساوی و مستقلی در نتیجه دارد.

 

72. اصطلاحات احتمال قبلی و احتمال نهایی در زمینه قضیه ساده بیز به چه معناست؟

احتمال قبلی درصد متغیرهای باینری وابسته در مجموعه داده است. اگر یک مجموعه داده به شما داده شود و متغیر وابسته 1 یا 0 است و درصد 1 65٪ و درصد 0 35٪ است. سپس، احتمال اینکه هر ورودی جدید برای آن متغیر 1 باشد، 65٪ خواهد بود.

احتمال حاشیه ای مخرج معادله بیز است و با ایجاد مساحت آن اطمینان حاصل می کند که احتمال پسین معتبر است.

 

73- تفاوت Lasso و Ridge را توضیح دهید؟

کمند (L1) و ریج (L2) تکنیک‌های منظم‌سازی هستند که در آن ضرایب را برای یافتن راه‌حل بهینه جریمه می‌کنیم. در ریج تابع پنالتی با مجموع مجذور ضرایب تعریف می شود و برای کمند مجموع مقادیر مطلق ضرایب را جریمه می کنیم. نوع دیگری از روش منظم سازی ElasticNet است، این یک تابع جریمه ترکیبی از هر دو کمند و ریج است.

 

74. تفاوت بین between probability و likelihood چیست؟

احتمال اندازه گیری احتمال وقوع یک رویداد است، یعنی چه یقینی وجود دارد که یک رویداد خاص رخ دهد؟ جایی که تابع درست نمایی تابعی از پارامترهای درون فضای پارامتر است که احتمال به دست آوردن داده های مشاهده شده را توصیف می کند.
بنابراین تفاوت اساسی این است که احتمال به نتایج احتمالی متصل است. احتمال به فرضیه ها متصل می شود.

 

75. چرا درخت خود را هرس می کنید؟

در زمینه علم داده یا AIML، هرس به فرآیند کاهش شاخه های اضافی درخت تصمیم اشاره دارد. درختان تصمیم گیری مستعد بیش از حد برازش هستند، هرس درخت به کاهش سایز کمک می کند و احتمال بیش از حد برازش را به حداقل می رساند. هرس شامل تبدیل شاخه های درخت تصمیم به گره های برگ و حذف گره های برگ از شاخه اصلی است. به عنوان ابزاری برای انجام معامله عمل می کند.

 

76. دقت مدل یا عملکرد مدل؟ کدام یک را ترجیح می دهید و چرا؟

این یک سوال ترفندی است، ابتدا باید یک ایده روشن پیدا کرد که عملکرد مدل چیست؟ اگر Performance به معنای سرعت باشد، پس به ماهیت برنامه بستگی دارد، هر برنامه کاربردی مرتبط با سناریوی بلادرنگ به سرعت بالا به عنوان یک ویژگی مهم نیاز دارد. مثال: اگر نتایج Query سریع ظاهر نشود، بهترین نتایج جستجو ارزش خود را از دست می دهد.

اگر به عملکرد اشاره شده باشد که چرا دقت مهمترین مزیت نیست – برای هر مجموعه داده نامتعادل، بیش از دقت، امتیاز F1 خواهد بود که توضیحی در مورد کسب و کار می دهد و در صورت عدم تعادل داده ها، دقت و یادآوری بیشتر خواهد بود. مهم از استراحت

 

77. مزایا و محدودیت های روش یادگیری تفاوت زمانی را فهرست کنید.

روش یادگیری تفاوت زمانی ترکیبی از روش مونت کارلو و روش برنامه نویسی پویا است. برخی از مزایای این روش عبارتند از:

  • می تواند در هر مرحله به صورت آنلاین یا آفلاین یاد بگیرد.
  • می تواند از دنباله ای که کامل نیست یاد بگیرد.
  • می تواند در محیط های پیوسته کار کند.
  • در مقایسه با روش MC واریانس کمتری دارد و نسبت به روش MC کارایی بیشتری دارد.

محدودیت های روش TD عبارتند از:

  • این یک برآورد مغرضانه است.
  • به مقداردهی اولیه حساس تر است.

 

78. چگونه یک مجموعه داده نامتعادل را مدیریت می کنید؟

تکنیک‌های نمونه‌گیری می‌تواند به یک مجموعه داده نامتعادل کمک کند. دو روش برای انجام نمونه گیری وجود دارد، زیر نمونه یا بیش از نمونه.

در Under Sampling، اندازه کلاس اکثریت را برای مطابقت با کلاس اقلیت کاهش می دهیم، بنابراین با بهبود عملکرد ذخیره سازی w.r.t و اجرای زمان اجرا کمک می کنیم، اما به طور بالقوه اطلاعات مفید را کنار می گذارد.

برای Over Sampling، کلاس Minority را نمونه‌برداری می‌کنیم و در نتیجه مشکل از دست دادن اطلاعات را حل می‌کنیم، اما با مشکل Overfitting مواجه می‌شویم.

تکنیک های دیگری نیز وجود دارد –
نمونه‌گیری مبتنی بر خوشه – در این مورد، الگوریتم خوشه‌بندی K-means به طور مستقل برای نمونه‌های کلاس اقلیت و اکثریت اعمال می‌شود. این برای شناسایی خوشه ها در مجموعه داده است. پس از آن، هر خوشه بیش از حد نمونه برداری می شود به طوری که همه خوشه های یک کلاس دارای تعداد نمونه های مساوی و همه کلاس ها دارای اندازه یکسان هستند.

روش نمونه برداری بیش از حد اقلیت مصنوعی (SMOTE) – زیر مجموعه ای از داده ها از کلاس اقلیت به عنوان مثال گرفته می شود و سپس نمونه های مصنوعی مشابه جدیدی ایجاد می شوند که سپس به مجموعه داده اصلی اضافه می شوند. این تکنیک برای نقاط داده عددی خوب است.

 

79. به برخی از تکنیک های EDA اشاره کنید؟

تجزیه و تحلیل داده های اکتشافی (EDA) به تحلیلگران کمک می کند تا داده ها را بهتر درک کنند و پایه و اساس مدل های بهتر را تشکیل می دهد.

تجسم

تجسم تک متغیره
تجسم دو متغیره
تجسم چند متغیره
درمان ارزش از دست رفته – مقادیر از دست رفته را با میانگین/میانگین جایگزین کنید

تشخیص Outlier – از Boxplot برای شناسایی توزیع Outlier استفاده کنید، سپس IQR را برای تعیین مرز برای IQR اعمال کنید.

تبدیل – بر اساس توزیع، یک تبدیل روی ویژگی ها اعمال کنید

مقیاس‌گذاری مجموعه داده – برای مقیاس‌سازی داده‌ها، مکانیسم MinMax، Standard Scaler یا Z Score Scaling را اعمال کنید.

مهندسی ویژگی – نیاز به دامنه و دانش SME به تحلیلگر کمک می کند تا فیلدهای مشتق را پیدا کند که می تواند اطلاعات بیشتری در مورد ماهیت داده ها به دست آورد.

کاهش ابعاد – به کاهش حجم داده ها بدون از دست دادن اطلاعات زیادی کمک می کند.

 

80. ذکر کنید که چرا مهندسی ویژگی در ساخت مدل مهم است و برخی از تکنیک های مورد استفاده برای مهندسی ویژگی را بیان کنید.

الگوریتم ها به ویژگی هایی با برخی ویژگی های خاص نیاز دارند تا به درستی کار کنند. داده ها در ابتدا به صورت خام هستند. شما باید ویژگی هایی را از این داده ها قبل از ارائه به الگوریتم استخراج کنید. این فرآیند مهندسی ویژگی نامیده می شود. هنگامی که ویژگی های مرتبط دارید، پیچیدگی الگوریتم ها کاهش می یابد. سپس، حتی اگر از یک الگوریتم غیر ایده آل استفاده شود، نتایج دقیق هستند.

مهندسی ویژگی در درجه اول دو هدف دارد:

مجموعه داده های ورودی مناسب را برای سازگاری با محدودیت های الگوریتم یادگیری ماشین آماده کنید.
بهبود عملکرد مدل های یادگیری ماشینی
برخی از تکنیک های مورد استفاده برای مهندسی ویژگی عبارتند از Imputation، Binning، Outliers Handling، Log transform، عملیات گروه بندی، One-Hot encoding، Feature split، Scaling، Extracting date.

 

81. تفاوت بین مدلسازی آماری و یادگیری ماشینی وجود دارد؟

مدل‌های یادگیری ماشینی در مورد پیش‌بینی‌های دقیق در مورد موقعیت‌ها هستند، مانند سقوط پا در رستوران‌ها، قیمت سهام، و غیره. به عنوان مثال، مدل‌های آماری برای استنباط در مورد روابط بین متغیرها طراحی شده‌اند، به عنوان اینکه چه چیزی باعث فروش در یک رستوران می‌شود. غذا یا محیط.

 

82. بین Boosting و Bagging  چه تفاوتی وجود دارد؟

Bagging و Boosting انواعی از تکنیک های Ensemble هستند.

Bootstrap Aggregation یا bagging روشی است که برای کاهش واریانس الگوریتم هایی با واریانس بسیار بالا استفاده می شود. درختان تصمیم خانواده خاصی از طبقه بندی کننده ها هستند که مستعد داشتن سوگیری زیاد هستند.

درخت‌های تصمیم حساسیت زیادی نسبت به نوع داده‌هایی که روی آن‌ها آموزش دیده‌اند، دارند. بنابراین تعمیم نتایج اغلب برای دستیابی به آنها با وجود تنظیم دقیق بسیار پیچیده تر است. اگر داده های آموزشی در درخت های تصمیم تغییر کند، نتایج بسیار متفاوت است.

از این رو کیسه‌بندی در جایی استفاده می‌شود که درخت‌های تصمیم‌گیری متعددی ساخته می‌شوند که بر روی نمونه‌هایی از داده‌های اصلی آموزش داده می‌شوند و نتیجه نهایی میانگین تمام این مدل‌های فردی است.

تقویت فرآیند استفاده از یک سیستم طبقه‌بندی‌کننده n ضعیف برای پیش‌بینی است، به طوری که هر طبقه‌بندی ضعیف، نقاط ضعف طبقه‌بندی‌کننده‌های خود را جبران می‌کند. با طبقه‌بندی ضعیف، ما به طبقه‌بندی‌کننده‌ای اشاره می‌کنیم که در مجموعه داده‌ای داده‌شده ضعیف عمل می‌کند.

واضح است که تقویت یک الگوریتم نیست، بلکه یک فرآیند است. طبقه بندی کننده های ضعیف مورد استفاده عموماً رگرسیون لجستیک، درختان تصمیم کم عمق و غیره هستند.

الگوریتم های زیادی وجود دارد که از فرآیندهای تقویت استفاده می کنند، اما دو مورد از آنها عمدتاً مورد استفاده قرار می گیرند: Adaboost و Gradient Boosting و XGBoost.

 

83. اهمیت گاما و Regularization در SVM چیست؟

گاما تأثیر را تعریف می کند. مقادیر کم به معنای “دور” و مقادیر بالا به معنای “نزدیک”. اگر گاما بیش از حد بزرگ باشد، شعاع ناحیه تأثیر بردارهای پشتیبان فقط شامل خود بردار پشتیبان می‌شود و هیچ مقدار منظم‌سازی با C نمی‌تواند از برازش بیش از حد جلوگیری کند. اگر گاما بسیار کوچک باشد، مدل بسیار محدود است و نمی تواند پیچیدگی داده ها را ضبط کند.

پارامتر منظم‌سازی (لامبدا) به‌عنوان درجه‌ای از اهمیت که به طبقه‌بندی‌های اشتباه داده می‌شود، عمل می‌کند. این می تواند برای ترسیم معاوضه با OverFitting استفاده شود.

 

 

84. کار منحنی ROC را تعریف کنید.

نمایش گرافیکی تضاد بین نرخ های مثبت واقعی و نرخ مثبت کاذب در آستانه های مختلف به عنوان منحنی ROC شناخته می شود. به عنوان یک پروکسی برای مبادله بین مثبت واقعی در مقابل مثبت کاذب استفاده می شود.

 

85. تفاوت بین مدل generative و discriminative چیست؟

یک مدل مولد دسته های مختلف داده را یاد می گیرد. از سوی دیگر، یک مدل متمایز تنها تمایز بین دسته‌های مختلف داده‌ها را یاد می‌گیرد. وقتی صحبت از وظایف طبقه‌بندی می‌شود، مدل‌های متمایز بسیار بهتر از مدل‌های تولیدی عمل می‌کنند.

 

86. هایپرپارامترها چیست و چه تفاوتی با پارامترها دارند؟

پارامتر متغیری است که درون مدل است و مقدار آن از داده های آموزشی تخمین زده می شود. آنها اغلب به عنوان بخشی از مدل آموخته شده ذخیره می شوند. به عنوان مثال می توان به وزن، تعصب و غیره اشاره کرد.

هایپرپارامتر متغیری است که خارج از مدل است که مقدار آن را نمی توان از داده ها تخمین زد. آنها اغلب برای تخمین پارامترهای مدل استفاده می شوند. انتخاب پارامترها به اجرا حساس است. به عنوان مثال می توان به نرخ یادگیری، لایه های پنهان و غیره اشاره کرد.

 

 

87. شکستن مجموعه ای از نقاط چیست؟ بعد VC را توضیح دهید.

 

برای از هم گسیختن پیکربندی معینی از نقاط، یک طبقه‌بندی کننده باید بتواند برای تمام انتساب‌های مثبت و منفی برای نقاط، صفحه را کاملاً به گونه‌ای تقسیم کند که نقاط مثبت از نقاط منفی جدا شوند. برای پیکربندی n نقطه، 2n تخصیص مثبت یا منفی وجود دارد.

هنگام انتخاب یک طبقه‌بندی‌کننده، باید نوع داده‌ای را که باید طبقه‌بندی می‌شود در نظر بگیریم و این را می‌توان با بعد VC یک طبقه‌بندی‌کننده دانست. به عنوان اصلی ترین مجموعه نقاطی که الگوریتم طبقه بندی یعنی طبقه بندی کننده می تواند آنها را از بین ببرد، تعریف می شود. برای اینکه یک بعد VC حداقل n داشته باشیم، یک طبقه‌بندی کننده باید بتواند یک پیکربندی معین از n نقطه را بشکند.

 

88. چه تفاوت هایی بین لیست پیوندی و آرایه وجود دارد؟

آرایه ها و لیست های پیوندی هر دو برای ذخیره داده های خطی از انواع مشابه استفاده می شوند. با این حال، چند تفاوت بین آنها وجود دارد.

Array Linked List
Elements are well-indexed, making specific element accessing easier Elements need to be accessed in a cumulative manner
Operations (insertion, deletion) are faster in array Linked list takes linear time, making operations a bit slower
Arrays are of fixed size Linked lists are dynamic and flexible
Memory is assigned during compile time in an array Memory is allocated during execution or runtime in Linked list.
Elements are stored consecutively in arrays. Elements are stored randomly in Linked list
Memory utilization is inefficient in the array Memory utilization is efficient in the linked list.

89. متد meshgrid () و متد contourf () چیست؟ برخی از کاربردهای هر دو را بیان کنید.

تابع meshgrid( ) در numpy دو آرگومان را به عنوان ورودی می گیرد: محدوده مقادیر x در شبکه، محدوده مقادیر y در شبکه، در حالی که meshgrid باید قبل از استفاده از تابع contourf() در matplotlib ساخته شود که در بسیاری از موارد استفاده می شود. ورودی ها: مقادیر x، مقادیر y، منحنی برازش (خط کانتور) برای ترسیم در شبکه، رنگ ها و غیره.

تابع Meshgrid () برای ایجاد یک شبکه با استفاده از آرایه های 1 بعدی از ورودی های محور x و ورودی های محور y برای نمایش نمایه سازی ماتریس استفاده می شود. Contourf () برای ترسیم خطوط پر شده با استفاده از ورودی های محور x، ورودی های محور y، خط کانتور، رنگ ها و غیره استفاده می شود.

 

90. جدول هش را توصیف کنید.

هش کردن تکنیکی برای شناسایی اشیاء منحصر به فرد از گروهی از اشیاء مشابه است. توابع هش کلیدهای بزرگی هستند که در تکنیک های هش به کلیدهای کوچک تبدیل می شوند. مقادیر توابع هش در ساختارهای داده ای که جدول هش شناخته شده هستند ذخیره می شوند.

 

91. مزایا و معایب استفاده از شبکه های عصبی چیست؟

مزایای:

ما می توانیم اطلاعات را به جای ذخیره در یک پایگاه داده در کل شبکه ذخیره کنیم. حتی با اطلاعات ناکافی، توانایی کار و دقت خوبی را دارد. یک شبکه عصبی دارای توانایی پردازش موازی و حافظه توزیع شده است.

معایب:

شبکه های عصبی به پردازنده هایی نیاز دارند که قابلیت پردازش موازی را داشته باشند. عملکرد غیرقابل توضیح شبکه نیز کاملاً مشکل است زیرا در برخی شرایط مانند زمانی که باید مشکلی را که متوجه شده ایم به شبکه نشان دهیم، اعتماد به شبکه را کاهش می دهد. مدت زمان شبکه اغلب ناشناخته است. ما فقط می‌توانیم بدانیم که آموزش با مشاهده مقدار خطا به پایان می‌رسد اما نتایج بهینه را به ما نمی‌دهد.

 

92. شما باید یک مجموعه داده 12 گیگابایتی را با استفاده از یک شبکه عصبی با ماشینی که فقط 3 گیگابایت رم دارد آموزش دهید. چگونه انجام می دهید؟

برای حل این مشکل می توانیم از آرایه های NumPy استفاده کنیم. تمام داده ها را در یک آرایه بارگذاری کنید. در NumPy، آرایه ها دارای خاصیتی هستند که مجموعه داده کامل را بدون بارگیری کامل در حافظه، نقشه برداری می کنند. می‌توانیم شاخص آرایه را ارسال کنیم، داده‌ها را به دسته‌ای تقسیم کنیم تا داده‌های مورد نیاز را بدست آوریم و سپس داده‌ها را به شبکه‌های عصبی منتقل کنیم. اما در مورد نرمال نگه داشتن اندازه دسته دقت کنید.


سوالات مصاحبه کدگذاری یادگیری ماشین

 

93. یک کد ساده برای باینری سازی داده ها بنویسید.

تبدیل داده ها به مقادیر باینری بر اساس آستانه معین به دوتایی کردن داده ها معروف است. مقادیر زیر آستانه روی 0 و مقادیر بالای آستانه روی 1 تنظیم می شوند که برای مهندسی ویژگی مفید است.

 

from sklearn.preprocessing import Binarizer
import pandas
import numpy
names_list = ['Alaska', 'Pratyush', 'Pierce', 'Sandra', 'Soundarya', 'Meredith', 'Richard', 'Jackson', 'Tom',’Joe’]
data_frame = pandas.read_csv(url, names=names_list)
array = dataframe.values
# Splitting the array into input and output 
A = array [: 0:7]
B = array [:7]
binarizer = Binarizer(threshold=0.0). fit(X)
binaryA = binarizer.transform(A)
numpy.set_printoptions(precision=5)
print (binaryA [0:7:])

 

 


یادگیری ماشین با استفاده از سوالات مصاحبه پایتون

 

94. آرایه چیست؟

آرایه به عنوان مجموعه ای از موارد مشابه تعریف می شود که به صورت پیوسته ذخیره می شوند. آرایه ها یک مفهوم شهودی است زیرا نیاز به گروه بندی اشیاء مشابه با هم در زندگی روزمره ما ایجاد می شود. آرایه ها همان نیاز را برآورده می کنند. چگونه در حافظه ذخیره می شوند؟ آرایه ها بلوک های داده را مصرف می کنند، جایی که هر عنصر در آرایه یک واحد حافظه مصرف می کند. اندازه واحد بستگی به نوع داده مورد استفاده دارد. به عنوان مثال، اگر نوع داده عناصر آرایه int باشد، برای ذخیره هر عنصر از 4 بایت داده استفاده می شود. برای نوع داده کاراکتر، 1 بایت استفاده خواهد شد. این خاص پیاده سازی است و واحدهای فوق ممکن است از رایانه ای به رایانه دیگر تغییر کنند.

مثال:

fruits = [‘apple’, banana’, pineapple’]

در مورد فوق، میوه ها فهرستی است که از سه میوه تشکیل شده است. برای دسترسی به آنها به صورت جداگانه، از فهرست آنها استفاده می کنیم. Python و C زبان های 0- ایندکس شده هستند، یعنی اولین شاخص 0 است. MATLAB برعکس از 1 شروع می شود و بنابراین یک زبان با 1 ایندکس است.

 

95. مزایا و معایب استفاده از آرایه چیست؟

مزایای:

  • دسترسی تصادفی فعال است
  • حافظه را ذخیره می کند
  • کش دوستانه
  • زمان کامپایل قابل پیش بینی
  • به استفاده مجدد از کد کمک می کند

 

معایب:

  • افزودن و حذف رکوردها زمان بر است حتی اگر عنصر مورد علاقه را بلافاصله از طریق دسترسی تصادفی دریافت کنیم. این به این دلیل است که عناصر باید پس از درج یا حذف مجدداً مرتب شوند.
  • اگر بلوک‌های پیوسته حافظه در حافظه موجود نباشد، سربار روی CPU برای جستجوی بهینه‌ترین مکان پیوسته موجود برای نیاز وجود دارد.

 

اکنون که می دانیم آرایه ها چیست، با حل برخی از سوالات مصاحبه آنها را به تفصیل درک خواهیم کرد. قبل از آن، اجازه دهید توابعی را که پایتون به عنوان یک زبان برای آرایه‌ها ارائه می‌کند، که به لیست‌ها نیز شناخته می‌شوند، ببینیم.

append() – یک عنصر را در انتهای لیست اضافه می کند.
copy() – یک کپی از یک لیست را برمی گرداند.
()reverse – عناصر لیست را معکوس می کند.
sort() – به طور پیش فرض عناصر را به ترتیب صعودی مرتب می کند.

 

96. Lists در پایتون چیست؟

لیست ها یک ساختار داده موثر ارائه شده در پایتون است. عملکردهای مختلفی در ارتباط با همان وجود دارد. اجازه دهید سناریویی را در نظر بگیریم که در آن می خواهیم یک لیست را در لیست دیگری کپی کنیم. اگر همین عملیات باید در زبان برنامه نویسی C انجام می شد، باید تابع خودمان را برای پیاده سازی آن بنویسیم.

برعکس، پایتون تابعی به نام کپی را در اختیار ما قرار می دهد. فقط با فراخوانی تابع کپی می توانیم یک لیست را به لیست دیگری کپی کنیم.

new_list = old_list.copy()

 

هنگام استفاده از تابع باید مراقب باشیم. copy() یک تابع کپی کم عمق است، یعنی فقط مراجع لیست اصلی را در لیست جدید ذخیره می کند. اگر آرگومان داده شده یک ساختار داده مرکب مانند یک لیست باشد، پایتون یک شی دیگر از همان نوع (در این مورد، یک لیست جدید) ایجاد می کند، اما برای هر چیزی که در لیست قدیمی است، فقط مرجع آنها کپی می شود. اساساً، فهرست جدید شامل ارجاع به عناصر لیست قدیمی است.

از این رو، با تغییر لیست اصلی، مقادیر لیست جدید نیز تغییر می کنند. این می تواند در بسیاری از برنامه ها خطرناک باشد. بنابراین پایتون قابلیت دیگری به نام دیپ کپی را در اختیار ما قرار می دهد. به طور شهودی، ممکن است در نظر بگیریم که deepcopy() از همان پارادایم پیروی می کند، و تنها تفاوت این است که برای هر عنصر به صورت بازگشتی deepcopy را فراخوانی می کنیم. عملاً اینطور نیست.

()deepcopy ساختار گرافیکی داده های ترکیبی اصلی را حفظ می کند. اجازه دهید با کمک یک مثال این موضوع را بهتر درک کنیم:

import copy.deepcopy
a = [1,2]
b = [a,a] # there's only 1 object a
c = deepcopy(b)

# check the result by executing these lines
c[0] is a # return False, a new object a' is created
c[0] is c[1] # return True, c is [a',a'] not [a',a'']

 

این بخش دشوار است، در طول فرآیند deepcopy() یک hashtable پیاده سازی شده به عنوان یک فرهنگ لغت در پایتون برای نگاشت: مرجع old_object به مرجع new_object استفاده می شود.

بنابراین، این امر از تکرارهای غیر ضروری جلوگیری می کند و در نتیجه ساختار ساختار داده ترکیبی کپی شده را حفظ می کند. بنابراین، در این مورد، c[0] برابر با a نیست، زیرا آدرس های داخلی آنها متفاوت است.

Normal copy
>>> a = [[1, 2, 3], [4, 5, 6]]
>>> b = list(a)
>>> a
[[1, 2, 3], [4, 5, 6]]
>>> b
[[1, 2, 3], [4, 5, 6]]
>>> a[0][1] = 10
>>> a
[[1, 10, 3], [4, 5, 6]]
>>> b   # b changes too -> Not a deepcopy.
[[1, 10, 3], [4, 5, 6]]
  
Deep copy
 
>>> import copy
>>> b = copy.deepcopy(a)
>>> a
[[1, 10, 3], [4, 5, 6]]
>>> b
[[1, 10, 3], [4, 5, 6]]
>>> a[0][1] = 9
>>> a
[[1, 9, 3], [4, 5, 6]]
>>> b    # b doesn't change -> Deep Copy
[[1, 10, 3], [4, 5, 6]]

اکنون که مفهوم لیست ها را فهمیدیم، اجازه دهید سؤالات مصاحبه را حل کنیم تا در معرض دید بهتری قرار بگیریم.

 

97. با توجه به آرایه ای از اعداد صحیح که در آن هر عنصر نشان دهنده حداکثر تعداد گام هایی است که می توان از آن عنصر به جلو برداشت. وظیفه این است که حداقل تعداد پرش ها را برای رسیدن به انتهای آرایه (از اولین عنصر شروع کنید) پیدا کنید. اگر یک عنصر 0 باشد، نمی تواند از طریق آن عنصر حرکت کند.

راه حل: این مشکل را به عنوان مشکل پایان آرایه می نامند. ما می خواهیم حداقل تعداد پرش های لازم برای رسیدن به پایان را تعیین کنیم. عنصر موجود در آرایه نشان دهنده حداکثر تعداد پرش هایی است که آن عنصر خاص می تواند انجام دهد.

اجازه دهید درک کنیم که چگونه در ابتدا به مشکل نزدیک شویم.

ما باید به پایان برسیم. بنابراین، اجازه دهید شمارشی داشته باشیم که به ما می گوید چقدر به پایان نزدیک شده ایم. آرایه A=[1,2,3,1,1] را در نظر بگیرید

In the above example we can go from 
> 2 - >3 - > 1 - > 1 - 4 jumps
1 - > 2 - > 1 - > 1 - 3 jumps
1 - > 2 - > 3 - > 1 - 3 jumps

 

از این رو، ما تصور درستی از مشکل داریم. بیایید برای همین یک منطق پیدا کنیم.

اجازه دهید از آخر شروع کنیم و به عقب حرکت کنیم زیرا از نظر شهودی منطقی تر است. برای پیگیری پرش ها از متغیرهای right و prev_r که نشان دهنده حق قبلی هستند استفاده می کنیم.

در ابتدا، right = prev_r  آخرین اما یک عنصر. فاصله یک عنصر تا انتها و تعداد پرش های ممکن توسط آن عنصر را در نظر می گیریم. بنابراین، اگر مجموع تعداد پرش‌های ممکن و فاصله بیشتر از عنصر قبلی باشد، عنصر قبلی را کنار می‌گذاریم و از مقدار عنصر دوم برای پرش استفاده می‌کنیم. ابتدا با قلم و کاغذ آن را امتحان کنید. اجرای منطق بسیار ساده به نظر می رسد. بعداً آن را به تنهایی اجرا کنید و سپس با نتیجه تأیید کنید.

def min_jmp(arr):


    n = len(arr)
    right = prev_r = n-1
    count = 0


    # We start from rightmost index and travesre array to find the leftmost index
    # from which we can reach index 'right'
    while True:
        for j in (range(prev_r-1,-1,-1)):
            if j + arr[j] >= prev_r:
                right = j


        if prev_r != right:
            prev_r = right
        else:
            break


        count += 1


    return count if right == 0 else -1


# Enter the elements separated by a space
arr = list(map(int, input().split()))
print(min_jmp(n, arr))

 

98. با توجه به رشته S که فقط «a» و «b» است، آخرین نمایه «b» موجود در آن را چاپ کنید.

وقتی رشته‌ای از a و b به ما داده می‌شود، بلافاصله می‌توانیم اولین مکان وقوع یک کاراکتر را پیدا کنیم. بنابراین، برای یافتن آخرین رخداد یک کاراکتر، رشته را برعکس می کنیم و اولین رخداد را پیدا می کنیم که معادل آخرین رخداد در رشته اصلی است.

در اینجا، ورودی به عنوان یک رشته به ما داده می شود. بنابراین، ما با تقسیم عنصر کاراکترها با استفاده از تقسیم تابع شروع می کنیم. بعداً، آرایه را معکوس می‌کنیم، اولین مقدار موقعیت وقوع را پیدا می‌کنیم و با یافتن مقدار len – موقعیت -1، که موقعیت مقدار شاخص است، شاخص را به دست می‌آوریم.

def split(word):
    return [(char) for char in word]

a = input()
a= split(a)
a_rev = a[::-1]
pos = -1
for i in range(len(a_rev)):
    if a_rev[i] == ‘b’:
        pos = len(a_rev)- i -1
        print(pos)
        break
    else:
        continue
if pos==-1:
    print(-1)

 

99. عناصر یک آرایه را با d موقعیت به سمت چپ بچرخانید. اجازه دهید در ابتدا به یک مثال نگاه کنیم.

A = [1,2,3,4,5]
A <<2
[3,4,5,1,2]
A<<3
[4,5,1,2,3]

در اینجا یک الگو وجود دارد، یعنی اولین عناصر d با آخرین عناصر n-d +1 مبادله می شوند. بنابراین ما فقط می توانیم عناصر را عوض کنیم. درست؟ اگر اندازه آرایه بزرگ باشد، مثلاً 10000 عنصر چه می شود. احتمال خطای حافظه، خطای زمان اجرا و غیره وجود دارد. بنابراین، ما این کار را با دقت بیشتری انجام می دهیم. المان ها را یکی یکی می چرخانیم تا در صورت وجود آرایه های بزرگ از خطاهای بالا جلوگیری کنیم.

# Rotate all the elements left by 1 position
def rot_left_once ( arr):
n = len( arr)
    tmp = arr [0]
    for i in range ( n-1): #[0,n-2]
        arr[i] = arr[i + 1]
arr[n-1] = tmp

# Use the above function to repeat the process for d times.
def rot_left (arr, d):
    n = len (arr)
    for i in range (d):
        rot_left_once ( arr, n)

arr = list( map( int, input().split()))
rot =int( input())
leftRotate ( arr, rot)

for i in range( len(arr)):
    print( arr[i], end=' ')

 

100. مشکل به دام انداختن آب

با توجه به آرایه‌ای از N اعداد صحیح غیر منفی که ارتفاع بلوک‌ها را در شاخص I نشان می‌دهد، جایی که عرض هر بلوک 1 است. محاسبه کنید که چه مقدار آب می‌تواند در بین بلوک‌ها پس از بارندگی محبوس شود.

# ساختار مانند زیر است:

# | |

# |_|

# پاسخ این است که ما می توانیم دو واحد آب را به دام بیندازیم.

راه حل: یک آرایه به ما داده می شود که هر عنصر ارتفاع بلوک را نشان می دهد. یک واحد ارتفاع برابر است با یک واحد آب، با توجه به وجود فضایی بین 2 عنصر برای ذخیره آن. بنابراین، ما باید تمام جفت هایی را که می توانند آب را ذخیره کنند، پیدا کنیم. ما باید مراقب موارد احتمالی باشیم:

  • نباید در مصرف آب صرفه جویی شود
  • آب نباید سرریز شود

بنابراین، اجازه دهید از عناصر افراطی شروع کنیم و به سمت مرکز حرکت کنیم.

 

n = int(input())
arr = [int(i) for i in input().split()]
left, right = [arr[0]], [0] * n 
# left =[arr[0]]
#right = [ 0 0 0 0…0] n terms
right[n-1] = arr[-1] # right most element

# ما از دو آرایه چپ[ ] و راست[ ] استفاده می کنیم که عناصر بزرگتر از همه را دنبال می کنند
# عناصر ترتیب پیمایش را به ترتیب.

for elem in arr[1 : ]:
    left.append(max(left[-1], elem) )
for i in range( len( arr)-2, -1, -1):
    right[i] = max( arr[i] , right[i+1] )
water = 0
# once we have the arrays left, and right, we can find the water capacity between these arrays.

for i in range( 1, n - 1):
    add_water = min( left[i - 1], right[i]) - arr[i]
    if add_water > 0:
        water += add_water
print(water)

 

101. بردارهای ویژه و مقادیر ویژه را توضیح دهید.

پاسخ تبدیل های خطی برای درک با استفاده از بردارهای ویژه مفید هستند. آنها کاربرد اصلی خود را در ایجاد ماتریس های کوواریانس و همبستگی در علم داده می یابند.

به بیان ساده، بردارهای ویژه موجودیت های جهتی هستند که می توان در آنها ویژگی های تبدیل خطی مانند فشرده سازی، چرخش و غیره را اعمال کرد.

مقادیر ویژه، بزرگی ویژگی‌های تبدیل خطی در امتداد هر جهت یک بردار ویژه است.

 

102. چگونه تعداد خوشه ها را در الگوریتم خوشه بندی تعریف می کنید؟

پاسخ تعداد خوشه ها را می توان با یافتن نمره silhouette تعیین کرد. اغلب هدف ما این است که با استفاده از تکنیک‌های خوشه‌بندی استنتاج‌هایی از داده‌ها به دست آوریم تا بتوانیم تصویر وسیع‌تری از تعدادی از کلاس‌هایی که توسط داده‌ها نشان داده می‌شوند، داشته باشیم. در این مورد، امتیاز silhouette به ما کمک می کند تا تعداد مراکز خوشه ای را برای خوشه بندی داده های خود تعیین کنیم.

تکنیک دیگری که می توان از آن استفاده کرد روش آرنج است.

 

 

103. معیارهای عملکردی که می توان برای تخمین کارایی مدل رگرسیون خطی استفاده کرد کدامند؟

پاسخ معیار عملکردی که در این مورد استفاده می شود:

  • خطای میانگین مربعات
  • امتیاز R2
  • امتیاز R2 تنظیم شده
  • میانگین نمره مطلق

 

 

104. روش پیش فرض تقسیم در درخت های تصمیم چیست؟

روش پیش‌فرض تقسیم در درخت‌های تصمیم، شاخص جینی است. شاخص جینی معیار ناخالصی یک گره خاص است.

این را می توان با ایجاد تغییراتی در پارامترهای طبقه بندی کننده تغییر داد.

 

105. p-value چگونه مفید است؟

پاسخ p-value احتمال صحت فرضیه صفر را نشان می دهد. این به ما اهمیت آماری نتایج را می دهد. به عبارت دیگر، p-value اطمینان یک مدل را در یک خروجی خاص تعیین می کند.

 

106. آیا می توان از رگرسیون لجستیک برای کلاس های بیش از 2 استفاده کرد؟

پاسخ خیر، رگرسیون لجستیک را نمی توان برای کلاس های بیشتر از 2 استفاده کرد زیرا یک طبقه بندی کننده باینری است. برای الگوریتم‌های طبقه‌بندی چند کلاسه مانند Decision Trees، طبقه‌بندی‌کننده‌های ساده بیز مناسب‌تر هستند.

 

107. فراپارامترهای مدل رگرسیون لجستیک چیست؟

جریمه طبقه‌بندی‌کننده، حل‌کننده طبقه‌بندی و طبقه‌بندی‌کننده C، فراپارامترهای قابل آموزش یک طبقه‌بندی رگرسیون لجستیک هستند. اینها را می‌توان منحصراً با مقادیر در جستجوی گرید مشخص کرد تا یک طبقه‌بندی کننده لجستیک را تنظیم کند.

 

108- چند فراپارامتر درخت تصمیم را نام ببرید؟

مهمترین ویژگی هایی که می توان در درخت تصمیم تنظیم کرد عبارتند از:

  • معیارهای تقسیم
  • حداقل برگها
  • حداقل_نمونه ها
  • بیشترین عمق

 

109. چگونه با چند خطی برخورد کنیم؟

چند خطی را می توان با مراحل زیر حل کرد:

  • پیش بینی های بسیار همبسته را از مدل حذف کنید.
  • از رگرسیون حداقل مربعات جزئی (PLS) یا تجزیه و تحلیل اجزای اصلی استفاده کنید.

 

110. ناهمسانی چیست؟

پاسخ وضعیتی است که در آن واریانس یک متغیر در دامنه مقادیر متغیر پیش بینی نابرابر است.

در رگرسیون باید از آن اجتناب کرد زیرا واریانس غیر ضروری را معرفی می کند.

 

111. آیا مدل ARIMA برای هر مشکل سری زمانی مناسب است؟

خیر، مدل ARIMA برای هر نوع مشکل سری زمانی مناسب نیست. موقعیت هایی وجود دارد که مدل ARMA و سایر موارد نیز مفید هستند.

زمانی که ساختارهای زمانی استاندارد مختلف نیاز به گرفتن داده های سری زمانی دارند، ARIMA بهترین است.

 

112. چگونه با عدم تعادل طبقاتی در یک مشکل طبقه بندی برخورد می کنید؟

عدم تعادل طبقاتی را می توان به روش های زیر حل کرد:

  • استفاده از وزن کلاس
  • با استفاده از نمونه گیری
  • با استفاده از SMOTE
  • انتخاب توابع از دست دادن مانند از دست دادن کانونی

 

113. اعتبار متقاطع چه نقشی دارد؟

اعتبارسنجی متقاطع تکنیکی است که برای افزایش عملکرد یک الگوریتم یادگیری ماشین استفاده می‌شود، که در آن دستگاه داده‌های نمونه‌گیری شده را از همان داده‌ها برای چند بار تغذیه می‌کند. نمونه‌گیری به‌گونه‌ای انجام می‌شود که مجموعه داده به قسمت‌های کوچکی از ردیف‌های مساوی تقسیم می‌شود و یک قسمت تصادفی به عنوان مجموعه آزمایشی انتخاب می‌شود، در حالی که همه بخش‌های دیگر به عنوان مجموعه قطار انتخاب می‌شوند.

 

114. مدل رای گیری چیست؟

مدل رأی‌گیری یک مدل مجموعه‌ای است که چندین طبقه‌بندی‌کننده را ترکیب می‌کند، اما برای ایجاد نتیجه نهایی، در مورد یک مدل مبتنی بر طبقه‌بندی، طبقه‌بندی یک نقطه داده معین از همه مدل‌ها را در نظر می‌گیرد و بیشترین امتیاز/رای‌دهی را انتخاب می‌کند. گزینه تولید شده از تمام کلاس های داده شده در ستون هدف.

 

115. چگونه با نمونه داده های بسیار کم برخورد کنیم؟ آیا می توان از آن مدل ساخت؟

پاسخ اگر نمونه داده های بسیار کمی وجود داشته باشد، می توانیم از نمونه برداری بیش از حد برای تولید نقاط داده جدید استفاده کنیم. به این ترتیب می توانیم نقاط داده جدیدی داشته باشیم.

 

116. هایپرپارامترهای SVM چیست؟

مقدار گاما، مقدار c و نوع هسته، فراپارامترهای یک مدل SVM هستند.

 

117. پروفایل پاندا چیست؟

پروفایل پانداها مرحله ای برای یافتن تعداد موثر داده های قابل استفاده است. این آمار مقادیر NULL و مقادیر قابل استفاده را به ما می دهد و بنابراین انتخاب متغیر و انتخاب داده برای مدل های ساختمانی در مرحله پیش پردازش را بسیار موثر می کند.

 

118. همبستگی چه تأثیری بر PCA دارد؟

اگر داده ها همبسته باشند PCA به خوبی کار نمی کند. به دلیل همبستگی متغیرها، واریانس موثر متغیرها کاهش می یابد. از این رو داده های همبسته زمانی که برای PCA استفاده می شوند به خوبی کار نمی کنند.

 

119. PCA چه تفاوتی با LDA دارد؟

PCA بدون نظارت است. LDA بدون نظارت است.

PCA واریانس را در نظر می گیرد. LDA توزیع کلاس ها را در نظر می گیرد.

 

120. چه معیارهای فاصله ای را می توان در KNN استفاده کرد؟

معیارهای فاصله زیر را می توان در KNN استفاده کرد.

  • Manhattan
  • Minkowski
  • Tanimoto
  • Jaccard
  • Mahalanobis

 

121. از کدام معیارها می توان برای اندازه گیری همبستگی داده های طبقه بندی استفاده کرد؟

برای انجام این کار می توان از تست مربع کای استفاده کرد. این معیار همبستگی بین پیش بینی کننده های طبقه بندی را نشان می دهد.

 

122. کدام الگوریتم را می توان در انتساب مقدار در هر دو دسته طبقه بندی و پیوسته داده ها استفاده کرد؟

KNN تنها الگوریتمی است که می تواند برای انتساب متغیرهای طبقه ای و پیوسته استفاده شود.

 

123. چه زمانی باید رگرسیون رج را بر کمند ترجیح داد؟

زمانی که می‌خواهیم از همه پیش‌بینی‌کننده‌ها استفاده کنیم باید از رگرسیون رج استفاده کنیم و هیچ کدام را حذف نکنیم زیرا مقادیر ضرایب را کاهش می‌دهد اما آنها را باطل نمی‌کند.

 

124. از کدام الگوریتم ها می توان برای انتخاب متغیرهای مهم استفاده کرد؟

نمودارهای جنگل تصادفی، Xgboost و نمودار اهمیت متغیر نمودار را می توان برای انتخاب متغیر استفاده کرد.

 

125. جنگل های تصادفی از چه تکنیک گروهی استفاده می کنند؟

بگینگ تکنیکی است که توسط Random Forests استفاده می شود. جنگل‌های تصادفی مجموعه‌ای از درختان هستند که روی داده‌های نمونه‌گیری شده از مجموعه داده اصلی کار می‌کنند و پیش‌بینی نهایی میانگین رأی‌دهی همه درختان است.

 

126. درختان تقویت کننده گرادیان از چه تکنیک گروهی استفاده می کنند؟

تقویت تکنیکی است که توسط GBM استفاده می شود.

 

127. اگر خطای بایاس بالا داشته باشیم به چه معناست؟ چگونه آن را درمان کنیم؟

خطای بایاس بالا به این معنی است که مدلی که ما استفاده می‌کنیم تمام روندهای مهم در مدل را نادیده می‌گیرد و مدل نادرست است.

برای کاهش عدم تناسب:

ما باید پیچیدگی مدل را افزایش دهیم
تعداد ویژگی ها باید افزایش یابد
گاهی اوقات نیز این تصور را ایجاد می کند که داده ها دارای نویز هستند. بنابراین نویز از داده ها باید حذف شود تا مهمترین سیگنال ها توسط مدل برای پیش بینی های موثر پیدا شوند.

افزایش تعداد دوره ها منجر به افزایش مدت زمان آموزش مدل می شود. در کاهش خطا مفید است.

 

128. کدام نوع نمونه برداری برای مدل طبقه بندی بهتر است و چرا؟

نمونه‌برداری طبقه‌ای در صورت مشکلات طبقه‌بندی بهتر است، زیرا تعادل طبقات را در مجموعه‌های قطار و آزمایش در نظر می‌گیرد. نسبت کلاس ها حفظ می شود و بنابراین مدل بهتر عمل می کند. در صورت نمونه‌گیری تصادفی داده‌ها، داده‌ها بدون در نظر گرفتن کلاس‌های تعادل در قطار و مجموعه‌های آزمایشی به دو بخش تقسیم می‌شوند. از این رو برخی از کلاس‌ها ممکن است فقط در مجموعه‌های تارین یا مجموعه‌های اعتبارسنجی وجود داشته باشند. بنابراین نتایج مدل حاصل در این مورد ضعیف است.

 

129. یک متریک خوب برای اندازه گیری سطح چند خطی چیست؟

VIF یا 1/تحمل معیار خوبی برای اندازه گیری چند خطی در مدل ها است. VIF درصد واریانس یک پیش بینی کننده است که تحت تأثیر سایر پیش بینی ها قرار نمی گیرد. بنابراین مقدار VIF بالاتر، چند خطی بودن بین پیش بینی ها بیشتر است.

یک قانون کلی برای تفسیر عامل تورم واریانس:

1 = همبستگی ندارد.
بین 1 و 5 = همبستگی متوسط.
بزرگتر از 5 = همبستگی زیاد.

 

130. چه زمانی می توان یک مقدار طبقه بندی را به عنوان یک متغیر پیوسته در نظر گرفت و در صورت انجام آن چه تأثیری دارد؟

زمانی که ماهیت نقاط داده‌ای که نشان‌دهنده آن ترتیبی است، یک پیش‌بینی‌کننده طبقه‌ای را می‌توان به‌عنوان یک پیش‌بینی‌کننده پیوسته در نظر گرفت. اگر متغیر پیش بینی دارای داده های ترتیبی باشد، می توان آن را پیوسته در نظر گرفت و گنجاندن آن در مدل، عملکرد مدل را افزایش می دهد.

 

131. نقش حداکثر احتمال در رگرسیون لجستیک چیست.

معادله حداکثر احتمال به تخمین بیشتر مقادیر احتمالی ضرایب متغیر پیش بینی کننده کمک می کند که نتایجی را ایجاد می کند که محتمل ترین یا محتمل ترین و کاملاً نزدیک به مقادیر صدق هستند.

 

132. در مورد KNN کدام فاصله را اندازه گیری می کنیم؟

فاصله همینگ در مورد KNN برای تعیین نزدیکترین همسایه ها اندازه گیری می شود. Kmeans از فاصله اقلیدسی استفاده می کند.

 

133. pipline چیست؟

خط لوله روشی پیچیده برای نوشتن نرم افزار است به گونه ای که هر اقدام مورد نظر در حین ساخت یک مدل را می توان سریالی کرد و این فرآیند عملکردهای فردی را برای وظایف فردی فراخوانی می کند. کارها به ترتیب برای یک دنباله معین از نقاط داده انجام می شوند و کل فرآیند را می توان با استفاده از برآوردگرهای ترکیبی در یادگیری scikit بر روی n رشته اجرا کرد.

 

134. کدام روش نمونه گیری هنگام کار با داده های سری زمانی مناسب تر است؟

ما می‌توانیم از نمونه‌گیری تکراری سفارشی استفاده کنیم، به طوری که به طور مداوم نمونه‌ها را به مجموعه قطار اضافه کنیم. فقط باید در نظر داشته باشیم که نمونه مورد استفاده برای اعتبارسنجی باید به مجموعه‌های قطار بعدی اضافه شود و نمونه جدیدی برای اعتبارسنجی استفاده شود.

 

135. هرس چه فوایدی دارد؟

هرس در موارد زیر کمک می کند:

  • بیش از حد برازش را کاهش می دهد
  • اندازه درخت را کوتاه می کند
  • پیچیدگی مدل را کاهش می دهد
  • تعصب را افزایش می دهد

 

136- توزیع نرمال چیست؟

توزیعی که ویژگی های زیر را دارد، توزیع نرمال نامیده می شود.

  • میانگین، حالت و میانه همه برابر هستند.
  • منحنی در مرکز متقارن است (یعنی حول میانگین، μ).
  • دقیقاً نیمی از مقادیر در سمت چپ مرکز و دقیقاً نیمی از مقادیر در سمت راست قرار دارند.
  • مساحت کل زیر منحنی 1 است.

 

137. قانون 68 درصد در توزیع نرمال چیست؟

توزیع نرمال یک منحنی زنگی شکل است. بیشتر نقاط داده در اطراف میانه قرار دارند. بنابراین تقریباً 68 درصد از داده ها در حدود میانه است. از آنجایی که هیچ کجی و زنگی شکل آن وجود ندارد.

 

138. آزمون chi-square چیست؟

خی دو تعیین می کند که آیا داده های نمونه با یک جامعه مطابقت دارند یا خیر.

یک آزمون مجذور کای برای استقلال، دو متغیر را در یک جدول اقتضایی مقایسه می‌کند تا ببیند آیا آنها به هم مرتبط هستند یا خیر.

آمار بسیار کوچک آزمون کای اسکوئر نشان می دهد که داده های مشاهده شده به خوبی با داده های مورد انتظار مطابقت دارند.

 

139. متغیر تصادفی چیست؟

یک متغیر تصادفی مجموعه ای از مقادیر ممکن از یک آزمایش تصادفی است. مثال: پرتاب یک سکه: می‌توانیم سر یا دم داشته باشیم. انداختن یک تاس: 6 مقدار دریافت می کنیم

 

140. درجه آزادی چقدر است؟

تعداد مقادیر یا کمیت های مستقلی است که می توان به یک توزیع آماری نسبت داد. در آزمون فرضیه و آزمون کای اسکوئر استفاده می شود.

 

141. آمازون از کدام نوع سیستم توصیه برای توصیه موارد مشابه استفاده می کند؟

آمازون از یک الگوریتم فیلتر مشترک برای توصیه موارد مشابه استفاده می کند. این نقشه بر اساس شباهت کاربر به کاربر از شباهت و تمایل به خرید است.

 

142. مثبت کاذب چیست؟

این یک نتیجه آزمایشی است که به اشتباه نشان می دهد که یک شرایط یا ویژگی خاص وجود دارد.

به عنوان مثال – “آزمایش استرس، یک ابزار تشخیصی معمول که در تشخیص بیماری قلبی استفاده می شود، منجر به تعداد قابل توجهی از مثبت کاذب در زنان می شود”

 

143. منفی کاذب چیست؟

نتیجه آزمایشی که به اشتباه نشان می دهد که یک شرط یا ویژگی خاص وجود ندارد.

مثال – “ممکن است منفی کاذب داشته باشید – آزمایش می گوید زمانی که باردار هستید باردار نیستید”

 

144. اصطلاح خطا در رگرسیون از چه چیزی تشکیل شده است؟

خطا مجموع خطای سوگیری + خطای واریانس + خطای غیر قابل کاهش در رگرسیون است. بایاس و خطای واریانس را می توان کاهش داد اما خطای کاهش ناپذیر را نمی توان کاهش داد.

 

145. کدام معیار عملکرد R2 بهتر است یا R2 تنظیم شده؟

R2 تنظیم شده است زیرا عملکرد پیش بینی کننده ها بر آن تأثیر می گذارد. R2 مستقل از پیش بینی کننده ها است و در صورت افزایش تعداد پیش بینی کننده ها، بهبود عملکرد را از طریق افزایش نشان می دهد.

 

146. تفاوت بین خطای نوع I و نوع II چیست؟

خطای نوع I و نوع II در یادگیری ماشین به مقادیر نادرست اشاره دارد. نوع I معادل با مثبت کاذب است در حالی که نوع دوم معادل منفی کاذب است. در خطای نوع I، فرضیه ای که باید پذیرفته شود، پذیرفته نمی شود. به طور مشابه، برای خطای نوع دوم، فرضیه ای رد می شود که در وهله اول باید پذیرفته می شد.

 

147. شما از منظم سازی L1 و L2 چه می فهمید؟

منظم سازی L2: سعی می کند خطا را در بین تمام اصطلاحات پخش کند. L2 مربوط به قبل گاوسی است.

منظم‌سازی L1: باینری‌تر/پراکنده‌تر است و به بسیاری از متغیرها وزن‌دهی 1 یا 0 داده می‌شود. L1 مربوط به تنظیم یک Laplacean قبل از شرایط است.

 

148. الگوریتم Naive Bayes یا Decision Trees کدام یک بهتر است؟

اگرچه بستگی به مشکلی دارد که شما حل می کنید، اما برخی از مزایای کلی به شرح زیر است:

بیز ساده لوح:

  • با مجموعه داده های کوچک در مقایسه با DT که به داده های بیشتری نیاز دارند، به خوبی کار کنید
  • اضافه برازش کمتر
  • از نظر اندازه کوچکتر و در پردازش سریعتر

درختان تصمیم:

  • Decision Trees بسیار منعطف، قابل درک و اشکال زدایی آسان هستند
  • بدون نیاز به پیش پردازش یا تغییر ویژگی ها
  • مستعد بیش از حد برازش است، اما برای جلوگیری از آن می توانید از هرس یا جنگل های تصادفی استفاده کنید.

 

149. منظور از منحنی ROC چیست؟

ویژگی های عملکرد گیرنده (منحنی ROC): منحنی ROC توانایی تشخیصی یک طبقه بندی کننده باینری را نشان می دهد. با ترسیم مثبت واقعی در برابر مثبت کاذب در تنظیمات آستانه های مختلف محاسبه/ایجاد می شود. معیار عملکرد منحنی ROC AUC (مساحت زیر منحنی) است. هر چه سطح زیر منحنی بیشتر باشد، قدرت پیش‌بینی مدل بهتر است.

 

150. منظور از منحنی AUC چیست؟

AUC (منطقه زیر منحنی). هر چه سطح زیر منحنی بیشتر باشد، قدرت پیش‌بینی مدل بهتر است.

 

151. احتمال لگ در رگرسیون لجستیک چیست؟

این مجموع باقیمانده های احتمالی است. در سطح رکورد، گزارش طبیعی خطا (باقیمانده) برای هر رکورد در منهای یک ضرب می شود و آن مقادیر جمع می شوند. سپس آن مجموع به عنوان مبنایی برای انحراف (2 x ll) و احتمال (exp(ll)) استفاده می شود.

همین محاسبه را می توان برای یک مدل ساده و بی تکلف که مطلقاً هیچ قدرت پیش بینی را در نظر نمی گیرد، و یک مدل اشباع شده با فرض پیش بینی کامل اعمال می شود.

مقادیر احتمال برای مقایسه مدل های مختلف استفاده می شود، در حالی که انحرافات (تست، ساده و اشباع) می توانند برای تعیین قدرت پیش بینی و دقت استفاده شوند. دقت رگرسیون لجستیک مدل همیشه 100 درصد برای مجموعه داده های توسعه است، اما زمانی که یک مدل برای مجموعه داده دیگری اعمال شود، اینطور نیست.

 

152. مدل رگرسیون لجستیک را چگونه ارزیابی می کنید؟

ارزیابی مدل بخش بسیار مهمی در هر تحلیلی برای پاسخ به سوالات زیر است:

مدل چقدر با داده ها مطابقت دارد؟، کدام پیش بینی ها مهم تر هستند؟، آیا پیش بینی ها دقیق هستند؟

بنابراین معیارهای زیر برای دسترسی به عملکرد مدل هستند:

1. معیار اطلاعات Akaike (AIC): به زبان ساده، AIC مقدار نسبی اطلاعات از دست رفته توسط یک مدل معین را تخمین می زند. بنابراین هرچه اطلاعات کمتری از دست برود کیفیت مدل بالاتر می رود. بنابراین، ما همیشه مدل هایی با حداقل AIC را ترجیح می دهیم.

2. ویژگی های عملکرد گیرنده (منحنی ROC): منحنی ROC توانایی تشخیصی یک طبقه بندی کننده باینری را نشان می دهد. با ترسیم مثبت واقعی در برابر مثبت کاذب در تنظیمات آستانه های مختلف محاسبه / ایجاد می شود. معیار عملکرد منحنی ROC AUC (مساحت زیر منحنی) است. هر چه سطح زیر منحنی بیشتر باشد، قدرت پیش‌بینی مدل بهتر است.

3. ماتریس سردرگمی: برای اینکه بفهمیم مدل در پیش‌بینی متغیر هدف چقدر خوب عمل می‌کند، از ماتریس سردرگمی/نرخ طبقه‌بندی استفاده می‌کنیم. این چیزی نیست جز یک نمایش جدولی از مقادیر واقعی Vs پیش بینی شده که به ما کمک می کند تا دقت مدل را پیدا کنیم.

 

153. مزایای الگوریتم های SVM چیست؟

الگوریتم های SVM اساساً از نظر پیچیدگی مزایایی دارند. ابتدا می‌خواهم روشن کنم که هم رگرسیون لجستیک و هم SVM می‌توانند سطوح تصمیم غیرخطی تشکیل دهند و با ترفند هسته همراه شوند. اگر می توان رگرسیون لجستیک را با هسته جفت کرد، پس چرا از SVM استفاده کنیم؟

● SVM در بیشتر موارد عملاً عملکرد بهتری دارد.

● SVM از نظر محاسباتی ارزان‌تر است O(N^2*K) که در آن K هیچ بردار پشتیبان نیست (بردارهای پشتیبان آن نقاطی هستند که در حاشیه کلاس قرار دارند) که به عنوان رگرسیون لجستیک O(N^3) است.

● طبقه بندی کننده در SVM فقط به زیر مجموعه ای از نقاط بستگی دارد. از آنجایی که ما باید فاصله بین نزدیکترین نقاط دو کلاس را به حداکثر برسانیم (با نام مستعار حاشیه)، باید بر خلاف رگرسیون لجستیک فقط به زیر مجموعه ای از نقاط اهمیت دهیم.

 

154. چرا XGBoost بهتر از SVM عمل می کند؟

دلیل اول این است که XGBoos یک روش مجموعه ای است که از درختان زیادی برای تصمیم گیری استفاده می کند، بنابراین با تکرار خود قدرت پیدا می کند.

SVM یک جداکننده خطی است، زمانی که داده ها به صورت خطی قابل تفکیک نباشند SVM به یک هسته نیاز دارد تا داده ها را در فضایی جدا کند، بزرگترین نقطه قوت و ضعف آن وجود دارد، زیرا می تواند داده ها را در فضایی با ابعاد بالا بفرستد. تقریباً برای هر داده ای یک جداسازی خطی پیدا کنید، اما در عین حال نیاز به استفاده از یک هسته دارد و می توانیم استدلال کنیم که یک هسته کامل برای هر مجموعه داده وجود ندارد.

 

155. تفاوت رتبه SVM و SVR (Support Vector Regression) چیست؟

یکی برای رتبه بندی و دیگری برای رگرسیون استفاده می شود.

تفاوت اساسی بین رگرسیون و رتبه بندی وجود دارد. در رگرسیون، قدر مطلق بسیار مهم است. یک عدد واقعی پیش بینی می شود.

در رتبه بندی، تنها نکته مورد توجه، ترتیب مجموعه ای از نمونه ها است. ما فقط می خواهیم بدانیم کدام مثال بالاترین رتبه، کدام یک رتبه دوم و … را دارد. از داده ها فقط می دانیم که مثال 1 باید بالاتر از مثال 2 باشد، که به نوبه خود باید بالاتر از مثال 3 و غیره قرار گیرد. ما نمی دانیم که مثال 1 چقدر بالاتر از مثال 2 قرار گرفته است یا اینکه آیا این تفاوت از تفاوت بین مثال های 2 و 3 بیشتر است.

 

156. تفاوت SVM حاشیه نرمال نرمال و SVM با هسته خطی چیست؟

حاشیه سخت

شما SVM اصلی را دارید – حاشیه سخت. این فرض را بر این می‌گذارد که داده‌ها بسیار خوب رفتار می‌کنند، و شما می‌توانید یک طبقه‌بندی کننده کامل پیدا کنید – که خطای 0 در داده‌های قطار دارد.

حاشیه نرم

داده ها معمولاً به خوبی رفتار نمی کنند، بنابراین حاشیه های سخت SVM ممکن است اصلاً راه حلی نداشته باشند. بنابراین ما اجازه می دهیم که در برخی از نقاط خطا کمی وجود داشته باشد. بنابراین خطای آموزش 0 نخواهد بود، اما میانگین خطا در تمام نقاط به حداقل می رسد.

هسته ها

در بالا فرض می شود که بهترین طبقه بندی کننده یک خط مستقیم است. اما آنچه هست یک خط مستقیم نیست. (مثلاً یک دایره است، داخل یک دایره یک کلاس است، خارج یک کلاس دیگر است). اگر بتوانیم داده ها را در ابعاد بالاتر ترسیم کنیم – بعد بالاتر ممکن است یک خط مستقیم به ما بدهد.

 

157. طبقه بندی خطی چگونه با SVM مرتبط است؟

svm نوعی طبقه بندی کننده خطی است. اگر با هسته ها مشکلی نداشته باشید، بدون شک ساده ترین نوع طبقه بندی کننده خطی است.

طبقه‌بندی‌کننده‌های خطی (همه؟) داستان‌های خطی را از داده‌های شما یاد می‌گیرند که ورودی شما را به نمرات مشابه نشان می‌دهند: امتیاز = Wx + b. در جایی که W ماتریسی از وزن های آموخته شده است، b یک بردار سوگیری آموخته شده است که امتیازات شما را تغییر می دهد و x داده های ورودی شما است. اگر y = mx + b را از دبیرستان به خاطر داشته باشید، ممکن است این نوع تابع برای شما آشنا به نظر برسد.

یک تابع ضرر معمولی svm (عملی که به شما می گوید امتیازات محاسبه شده شما در رابطه با برچسب های صحیح چقدر خوب است) از دست دادن لولا است. به این شکل است: Loss = مجموع تمام نمرات به جز امتیاز صحیح حداکثر (0، امتیاز – امتیاز (کلاس صحیح) + 1).

 

158. استفاده از بیز ساده لوح برای طبقه بندی چه مزایایی دارد؟

  • بسیار ساده، آسان برای پیاده سازی و سریع.
  • اگر فرض استقلال مشروط NB برقرار باشد، سریعتر از مدل‌های متمایز مانند رگرسیون لجستیک همگرا می‌شود.
  • حتی اگر فرض NB برقرار نباشد، در عمل عالی عمل می کند.
  • به داده های آموزشی کمتری نیاز دارید.
  • بسیار مقیاس پذیر به صورت خطی با تعداد پیش بینی ها و نقاط داده مقیاس می شود.
  • می تواند برای مسائل طبقه بندی باینری و چند کلاسه استفاده شود.
  • می تواند پیش بینی های احتمالی انجام دهد.
  • داده های پیوسته و گسسته را مدیریت می کند.
  • به ویژگی های نامربوط حساس نیست.

 

159. آیا بیزهای نایو گاوسی همان بیزهای نایو دوجمله ای هستند؟

Binomial Naive Bayes: فرض می‌کند که همه ویژگی‌های ما باینری هستند به طوری که فقط دو مقدار می‌گیرند. به این معنی که 0 ها می توانند “کلمه در سند وجود ندارد” و 1 ها به عنوان “کلمه در سند وجود دارد” را نشان دهند.

Gaussian Naive Bayes: به دلیل فرض توزیع نرمال، Gaussian Naive Bayes در مواردی استفاده می شود که تمام ویژگی های ما پیوسته باشد. به عنوان مثال در مجموعه داده عنبیه ویژگی های عرض کاسبرگ، عرض گلبرگ، طول کاسبرگ، طول گلبرگ است. بنابراین ویژگی های آن می تواند مقادیر متفاوتی در مجموعه داده ها داشته باشد زیرا عرض و طول می تواند متفاوت باشد. ما نمی‌توانیم ویژگی‌ها را بر حسب وقوع آنها نشان دهیم. این بدان معنی است که داده ها پیوسته هستند. از این رو ما در اینجا از Gaussian Naive Bayes استفاده می کنیم.

 

160. فرق بین دسته بندی کننده ساده بیز و طبقه بندی کننده بیز چیست؟

Naive Bayes استقلال شرطی را فرض می کند، P(X|Y، Z)=P(X|Z)

P(X|Y،Z)=P(X|Z)

P(X|Y,Z)=P(X|Z)، در حالی که شبکه های عمومی تر Bayes (که گاهی اوقات شبکه های اعتقادی بیزی نامیده می شوند)، به کاربر این امکان را می دهد تا مشخص کند که کدام ویژگی ها در واقع به صورت مشروط مستقل هستند.

برای شبکه بیزی به عنوان یک طبقه‌بندی، ویژگی‌ها بر اساس برخی از توابع امتیازدهی مانند تابع امتیازدهی بیزی و حداقل طول توصیف انتخاب می‌شوند (این دو در تئوری با یکدیگر معادل هستند، با توجه به اینکه داده‌های آموزشی کافی وجود دارد). توابع امتیازدهی عمدتاً ساختار (اتصالات و جهت ها) و پارامترها (احتمال) را با استفاده از داده ها محدود می کنند. پس از یادگیری ساختار، کلاس فقط توسط گره‌های موجود در پتوی مارکوف (والدین، فرزندان و والدین فرزندانش) تعیین می‌شود و همه متغیرهای داده‌شده به پتوی مارکوف دور ریخته می‌شوند.

 

161. طبقه بندی کننده Naive Bayes در چه کاربردهایی در دنیای واقعی استفاده می شود؟

برخی از نمونه های دنیای واقعی به شرح زیر است

  • برای علامت گذاری یک ایمیل به عنوان هرزنامه یا عدم اسپم؟
  • یک مقاله خبری در مورد فناوری، سیاست یا ورزش را طبقه بندی کنید؟
  • متنی را که بیانگر احساسات مثبت است یا احساسات منفی را بررسی کنید؟
  • همچنین برای نرم افزار تشخیص چهره استفاده می شود

 

162. آیا بیز ساده لوح تحت نظارت است یا بدون نظارت؟

اول اینکه، Naive Bayes یک الگوریتم نیست، بلکه خانواده ای از الگوریتم ها است که ویژگی های زیر را به ارث می برد:

1. توابع تمایز

2. مدل های مولد احتمالی

3. قضیه بیزی

4. فرضیات ساده لوحانه استقلال و اهمیت برابر بردارهای ویژگی.

علاوه بر این، این نوع خاصی از الگوریتم یادگیری نظارت شده است که می‌تواند پیش‌بینی‌های چند کلاسه همزمان انجام دهد (همانطور که با موضوعات ایستاده در بسیاری از برنامه‌های خبری نشان داده شده است).

از آنجایی که اینها مدل‌های مولد هستند، بنابراین بر اساس مفروضات نگاشت متغیر تصادفی هر بردار ویژگی، ممکن است حتی به‌عنوان گاوسی ساده، بی‌های ساده‌لوح چندجمله‌ای، بی‌های ساده برنولی و غیره طبقه‌بندی شوند.

 

 

163. شما از سوگیری انتخاب در یادگیری ماشینی چه می فهمید؟

سوگیری انتخاب مخفف سوگیری است که با انتخاب افراد، گروه ها یا داده ها برای انجام تجزیه و تحلیل به گونه ای معرفی شد که تصادفی سازی مناسب حاصل نشود. این تضمین می کند که نمونه به دست آمده نماینده جامعه مورد نظر برای تجزیه و تحلیل نیست و گاهی اوقات از آن به عنوان اثر انتخاب یاد می شود. این بخشی از تحریف یک تجزیه و تحلیل آماری است که از روش جمع آوری نمونه حاصل می شود. اگر سوگیری انتخاب را در نظر نگیرید، برخی از نتایج مطالعه ممکن است دقیق نباشند.

انواع سوگیری انتخاب شامل:

سوگیری نمونه گیری: این یک خطای سیستماتیک است که به دلیل یک نمونه غیرتصادفی از یک جامعه است که باعث می شود برخی از اعضای جامعه کمتر از سایرین درگیر شوند و در نتیجه یک نمونه مغرضانه ایجاد می شود.
فاصله زمانی: یک آزمایش ممکن است زودتر با یک مقدار شدید (اغلب به دلایل اخلاقی) خاتمه یابد، اما به احتمال زیاد متغیری که بیشترین واریانس را دارد، به مقدار فوق العاده می رسد، حتی اگر همه متغیرها میانگین مشابهی داشته باشند.
داده: زمانی که زیرمجموعه‌های خاصی از داده‌ها برای حمایت از نتیجه‌گیری یا رد داده‌های بد به دلایل دلخواه انتخاب می‌شوند، به‌جای اینکه طبق معیارهای قبلاً اعلام‌شده یا به طور کلی توافق شده باشند.
فرسایش: سوگیری فرسایشی نوعی سوگیری انتخابی است که به دلیل فرسایش (از دست دادن شرکت کنندگان) تخفیف آزمودنی‌ها/آزمون‌هایی است که تا پایان کامل نشده‌اند.

 

164. شما از دقت و یادآوری چه می فهمید؟

در تشخیص الگو، بازیابی اطلاعات و طبقه بندی در یادگیری ماشین بخشی از دقت است. به آن ارزش پیش بینی مثبت نیز می گویند که کسری از نمونه های مربوطه در بین نمونه های بازیابی شده است.

یادآوری همچنین به عنوان حساسیت و کسری از مقدار کل نمونه های مربوطه که واقعاً بازیابی شده اند نیز شناخته می شود.

بنابراین، هم دقت و هم یادآوری بر اساس درک و اندازه گیری ارتباط است.

 

165. سه مرحله ساخت مدل در یادگیری ماشین چیست؟

برای ساخت یک مدل در یادگیری ماشین، باید چند مرحله را دنبال کنید:

مدل کسب و کار را درک کنید
جمع آوری داده ها
پاکسازی داده ها
تجزیه و تحلیل داده های اکتشافی
از الگوریتم های یادگیری ماشین برای ساختن مدل استفاده کنید
از مجموعه داده های ناشناخته برای بررسی دقت مدل استفاده کنید.

 

166. چگونه یک فیلتر اسپم ایمیل را در یادگیری ماشین طراحی می کنید؟

درک مدل کسب و کار: سعی کنید ویژگی های مربوط به نامه های هرزنامه را درک کنید
جمع آوری داده ها: نامه های هرزنامه را جمع آوری کنید تا الگوی پنهان را از آنها بخوانید
پاکسازی داده ها: داده های بدون ساختار یا نیمه ساختار یافته را پاک کنید
تجزیه و تحلیل داده های اکتشافی: از مفاهیم آماری برای درک داده ها مانند پراکندگی، پرت و غیره استفاده کنید.
از الگوریتم‌های یادگیری ماشین برای ساختن یک مدل استفاده کنید: می‌توانید از بی‌های ساده یا برخی از الگوریتم‌های دیگر نیز استفاده کنید.
از مجموعه داده های ناشناخته برای بررسی دقت مدل استفاده کنید

 

167. تفاوت آنتروپی و بدست آوردن اطلاعات چیست؟

کسب اطلاعات بر اساس کاهش آنتروپی پس از تقسیم یک مجموعه داده بر روی یک ویژگی است. ساختن یک درخت تصمیم همه چیز در مورد یافتن ویژگی است که بالاترین بهره اطلاعات را برمی گرداند (یعنی همگن ترین شاخه ها). مرحله 1: محاسبه آنتروپی هدف.

 

168. هم خطی و چند خطی چیست؟

هم خطی یک ارتباط خطی بین دو پیش بینی است. چند خطی وضعیتی است که در آن دو یا چند پیش‌بینی‌کننده ارتباط خطی بالایی دارند.

 

169. Kernel SVM چیست؟

الگوریتم های SVM اساساً از نظر پیچیدگی مزایایی دارند. ابتدا می‌خواهم روشن کنم که هم رگرسیون لجستیک و هم SVM می‌توانند سطوح تصمیم غیرخطی تشکیل دهند و با ترفند هسته همراه شوند. اگر می توان رگرسیون لجستیک را با هسته جفت کرد، پس چرا از SVM استفاده کنیم؟

● SVM در بیشتر موارد عملاً عملکرد بهتری دارد.

● SVM از نظر محاسباتی ارزان‌تر است O(N^2*K) که در آن K هیچ بردار پشتیبان نیست (بردارهای پشتیبان آن نقاطی هستند که در حاشیه کلاس قرار دارند) که به عنوان رگرسیون لجستیک O(N^3) است.

● طبقه بندی کننده در SVM فقط به زیر مجموعه ای از نقاط بستگی دارد. از آنجایی که ما باید فاصله بین نزدیکترین نقاط دو کلاس را به حداکثر برسانیم (با نام مستعار حاشیه)، باید بر خلاف رگرسیون لجستیک فقط به زیر مجموعه ای از نقاط اهمیت دهیم.

 

170. فرآیند انجام رگرسیون خطی چگونه است؟

تجزیه و تحلیل رگرسیون خطی شامل بیش از برازش یک خط خطی در میان ابری از نقاط داده است. شامل 3 مرحله است –

(1) تجزیه و تحلیل همبستگی و جهت داده ها،

(2) برآورد مدل، به عنوان مثال، برازش خط،

و (3) ارزیابی اعتبار و سودمندی مدل.

«سفر هوش مصنوعی خود را با یادگیری عالی شروع کنید که دوره‌های هوش مصنوعی با رتبه بالا را با آموزش در سطح جهانی توسط رهبران صنعت ارائه می‌دهد. چه به یادگیری ماشین، داده کاوی یا تجزیه و تحلیل داده علاقه مند باشید، Great Learning یک دوره آموزشی برای شما دارد!

 

 

جمع بندی نهایی

شاید در کل طول مقاله متوجه یه موضوع خاص در 170 سوال استخدامی هوش مصنوعی شده باشید که کل سوالات بیشتر مباحث تجربی را در بر میگرد در نظر داشته برای انجام مصاحبه در شرکت های نرم افزار و دانش بنیان بیشترین موضوعی که توجه کارفرمای شما جلب می کند تجربه های موثر شما از زبان های برنامه نویسی و قرارگیری شما در شرایط چالشی که پیش روی هر برنامه نویسی وجود دارد است.

 

منبع :

گروه تولید محتوای وبسایت پایتونی ها

دانلود باکس

محمدرضا حسنی

224 مطلب منتشر شده

دانش آموخته رشته فناوری اطلاعات / موسس پایتونی ها

درباره این مطلب نظر دهید !

محصولات فروش پایتونی ها

%60
تخفیف

آموزش فیگما (Figma)

30,000 تومان
3
%69
تخفیف

آموزش برنامه نویسی پایتون

35,000 تومان
2