آموزش دیتاساینس و ماشین‌لرنینگ
1.91K subscribers
161 photos
9 videos
134 links
🔴 آموزش مباحث حوزه دیتا شامل علم داده، یادگیری ماشین و تحلیل داده (رضا شکرزاد)

🌀 کانال اخبار و منابع هوش مصنوعی:
@DSLanders

🌀 مشاوره و ارتباط مستقیم:
https://t.iss.one/dslanders_admin

یوتیوب:
Youtube.com/@RezaShokrzad

دوره‌ها:
cafetadris.com/datascience
Download Telegram
👨‍🏫 کاربردها و مزایا KNN

🔵 کاربردها

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

🔵طبقه‌بندی و پیش‌بینی: توی زمینه‌هایی مثل تشخیص بیماری‌ها، تحلیل مشتریان در بازاریابی، یا پیش‌بینی روندهای مالی، K نزدیک‌ترین همسایه می‌تونه برای طبقه‌بندی و پیش‌بینی موثر باشه.

🔵توصیه‌گر سیستم‌ها: این الگوریتم توی سیستم‌های توصیه‌گر، مثل توصیه فیلم یا محصول، به کار گرفته می‌شه تا تجربه کاربری شخصی‌سازی شده‌ای ارائه بده.

🔵پردازش تصویر و بینایی کامپیوتری: توی تشخیص چهره، تشخیص حروف دست‌نویس و سایر کاربردهای بینایی ماشین، K نزدیک‌ترین همسایه به دلیل توانایی‌ کار با داده‌های چندبعدی بسیار مفیده.

🔵 مزایا

🔵سادگی پیاده‌سازی: یکی از بزرگترین مزایای K نزدیک‌ترین همسایه، سادگیش توی پیاده‌سازیه. این الگوریتم نیازی به مراحل پیچیده یادگیری نداره.

🔵انعطاف‌پذیری: K نزدیک‌ترین همسایه قابلیت کار توی شرایط و داده‌های مختلف رو داره و می‌تونه برای انواع مختلف داده‌ها و مسائل استفاده شه.

🔵نیاز کم به پیش‌پردازش: این الگوریتم نسبت به سایر روش‌های یادگیری ماشین، نیاز کمتری به پیش‌پردازش داده‌ها داره.

🔵موثر در مجموعه‌های داده کوچک: K نزدیک‌ترین همسایه می‌تواند در مجموعه‌های داده کوچکتر نیز موثر عمل کنه.

🔵تطابق‌پذیری آسان: با توجه به نحوه کار الگوریتم K نزدیک‌ترین همسایه که تمام داده‌ها رو توی حافظه ذخیره می‌کنه، زمانیکه نمونه یا نقطه داده جدیدی اضافه شه، الگوریتم خودش رو با اون نمونه جدید تطابق میده و توی پیش‌بینی‌های آینده هم تأثیر می‌گذاره.

🔵تعداد کمی هایپرپارامترها: تنها پارامترهایی که برای آموزش الگوریتم K نزدیک‌ترین همسایه لازمه، مقدار k و انتخاب متریک فاصله‌ای هست که می‌خوایم از بین معیارهای ارزیابی انتخاب کنیم.

#Machine_Learning
#KNN

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62👨‍💻1
💡آیا ابعاد بالا می‌تونه برای KNN مشکل ساز بشه؟

بله، این الگوریتم ممکنه تحت تأثیر مشکل ابعاد بالا قرار بگیره. این مشکل به چالش‌هایی اشاره داره که زمان افزایش تعداد ویژگی‌ها یا ابعاد فضای ویژگی‌ها رخ می‌ده.

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

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

#Machine_Learning
#KNN

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62👨‍💻1
👨‍🏫 الگوریتم KNN در Scikit-learn

برای پیاده‌سازی KNN در Scikit-learn، اول باید کلاس KNeighborsClassifier رو از ماژول sklearn.neighbors وارد کنیم. این کلاس امکان استفاده از الگوریتم KNN رو فراهم می‌کنه.

🔵وارد کردن کلاس KNeighborsClassifier: اول باید کلاس KNeighborsClassifier رو وارد کنیم.

🔵ایجاد یک نمونه از KNeighborsClassifier: بعد یک نمونه از این کلاس ایجاد و تعداد همسایه‌ها (n_neighbors) و سایر پارامترها رو تنظیم کنیم.

🔵آموزش دادن به مدل: با استفاده از داده‌های آموزشی، مدل رو آموزش می‌دیم. این شامل تنظیم مدل با داده‌های feature و labels هست.

🔵استفاده از مدل برای پیش‌بینی: بعد از آموزش، از مدل برای پیش‌بینی برچسب‌های داده‌های جدید استفاده میشه.

🔵ارزیابی عملکرد مدل: از معیارهای مختلف مثل accuracy برای ارزیابی عملکرد مدل استفاده می‌شه.

🔵پارامترهای مهم

- n_neighbors: تعیین تعداد همسایه‌های در نظر گرفته شده.
- weights: تعیین نحوه وزن‌دهی به همسایه‌ها ('uniform' یا 'distance').
- metric: انتخاب معیار فاصله برای محاسبه همسایگی.

from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_iris
from sklearn.metrics import accuracy_score

iris = load_iris()
X = iris.data
y = iris.target

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

knn = KNeighborsClassifier(n_neighbors=3)

knn.fit(X_train, y_train)
predictions = knn.predict(X_test)
accuracy = accuracy_score(y_test, predictions)
print(f'دقت مدل: {accuracy}')


#Machine_Learning
#KNN

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71👌1👨‍💻1
کوئیز شماره ۴۹: توی استفاده از KNeighborsClassifier, در چه شرایطی باید مقدار پارامتر algorithm رو از auto (که حالت پیش فرضه) به kd_tree یا ball_tree تغییر داد؟
Anonymous Quiz
50%
زمان کار با داده‌های بسیار بزرگ
19%
زمانی که تعداد ویژگی‌ها (features) کمه
19%
فقط در مواردی که سرعت محاسبات اهمیت داره
13%
زمانی که داده‌ها غیر عددی هستن
6👌2😎2
💡 تأثیر داده‌های Sparse روی الگوریتم KNN

یه نکته مهم برای استفاده از KNeighborsClassifier توی Scikit-learn اینکه اگه داده‌های ورودی به صورت sparse (پراکنده) باشن، به طور خودکار الگوریتم برای محاسبه همسایه‌های نزدیک از روش brute force استفاده می‌کنه.

یعنی تنظیمات پیش‌فرض الگوریتم برای انتخاب بهترین روش محاسبه همسایه‌های نزدیک، مثل auto, ball_tree, kd_tree در صورتی که داده‌ها sparse باشن، نادیده گرفته می‌شن و به جاش از روش brute force استفاده می‌شه. این موضوع می‌تونه روی عملکرد و سرعت مدل تأثیر بگذاره.

#Machine_Learning
#KNN

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72👏1
پست‌های هفته‌ای که گذشت رو این‌جا پیدا کنین!

🔺 آموزشی

🔵تعریف KNN و بررسی نقش K
👉🔗 https://t.iss.one/data_ml/156

🔵پیچیدگی محاسباتی KNN
👉🔗 https://t.iss.one/data_ml/159

🔵بررسی ساختار K-Dimensional Trees در KNN
👉🔗 https://t.iss.one/data_ml/162

🔵چالش‌ها و معایب KNN
👉🔗 https://t.iss.one/data_ml/165

🔵کاربردها و مزایا KNN
👉🔗 https://t.iss.one/data_ml/168

🔵الگوریتم KNN در Scikit-learn
👉🔗 https://t.iss.one/data_ml/171

🔺 کوئیز

🔵کوئیز شماره ۴۴: الگوریتم KNN یادگیری تنبل
👉🔗 https://t.iss.one/data_ml/157

🔵کوئیز شماره ۴۵: KNN Imputer
👉🔗 https://t.iss.one/data_ml/160

🔵کوئیز شماره ۴۶: K-D Tree در KNN
👉🔗 https://t.iss.one/data_ml/163

🔵کوئیز شماره ۴۷: معایب KNN
👉🔗 https://t.iss.one/data_ml/166

🔵کوئیز شماره ۴۸: روش انتخاب مقدار K
👉🔗 https://t.iss.one/data_ml/169

🔵کوئیز شماره ۴۹: مقدار algorithm در KNeighborsClassifier
👉🔗 https://t.iss.one/data_ml/172

🔺 نکته

🔵انتخاب مقدار k بهینه در KNN
👉🔗 https://t.iss.one/data_ml/158

🔵تفاوت بین k-Means و KNN
👉🔗 https://t.iss.one/data_ml/161

🔵نرمال‌سازی داده‌ها در KNN
👉🔗 https://t.iss.one/data_ml/164

🔵الگوریتم KNN و Bias-Variance tradeoff
👉🔗 https://t.iss.one/data_ml/167

🔵ابعاد بالا و KNN
👉🔗 https://t.iss.one/data_ml/170

🔵تأثیر داده‌های Sparse روی الگوریتم KNN
👉🔗 https://t.iss.one/data_ml/173

#Weekend
#Machine_Learning
#KNN

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62👏2
🟡 دوره‌های مقدماتی و پیشرفته علم داده

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

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

🟢 دوره جامع دیتاساینس و ماشین لرنینگ:
👉📎 https://ctdrs.ir/cr14924

❗️دانشجویان دوره علم داده ۱ می‌تونن با پرداخت اختلاف هزینه، دوره جامع رو تهیه کنن.

🔵 هوش تجاری و تحلیل داده با Tableau و Power BI:
👉📎 https://ctdrs.ir/cr14230

🟠مارکتینگ داده‌محور:
👉📎 https://ctdrs.ir/cr13581

#Courses

@DSLanders | دی‌اس‌لندرز
Please open Telegram to view this post
VIEW IN TELEGRAM
👏72👍1🔥1
👩‍🎓 برنامه آموزشی هفته: الگوریتم ماشین بردار پشتیبان یا SVM

🟠شنبه: تعریف SVM و مرز تصمیم گیری

🔵یک‌شنبه: بررسی حاشیه در SVM با جزئیات

🟢دوشنبه: کرنل در SVM

🔴سه‌شنبه: انواع کرنل

🟠چهارشنبه: حاشیه در Sklearn

🔵پنج‌شنبه: کرنل در Sklearn

🟢جمعه: جمع بندی

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍5👏2
👨‍🎓 تعریف SVM و مرز تصمیم گیری

🔵 الگوریتم ماشین بردار پشتیبان (Support Vector Machine)

🔵ماشین بردار پشتیبان، یک مدل یادگیری نظارت شده است که برای طبقه‌بندی و رگرسیون استفاده می‌شه. این مدل با پیدا کردن یه مرز تصمیم (hyperplane) در فضای ویژگی‌ها، داده‌ها رو به دسته‌های مختلف تقسیم می‌کنه.

🔵توی مواردی که داده‌ها به صورت خطی قابل جداسازی نیستن، SVM از توابع هسته (kernel functions) برای افزایش بعد داده‌ها و پیدا کردن یه مرز تصمیم مناسب در فضای بالاتر استفاده می‌کنه.

🔵یکی از ویژگی‌های مهم SVM، بهینه‌سازی مارجینه. Margin فاصله بین مرز تصمیم و نزدیک‌ترین نمونه‌های داده به این مرزه. SVM تلاش می‌کنه تا این فاصله رو بیشینه کنه.

🔵 مرز تصمیم (Decision Boundary)

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

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

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4👨‍💻1
💡آیا SVM می‌تونه زمان طبقه‌بندی یک نمونه، یک امتیاز اطمینان یا احتمال به دست بیاره؟

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

اما اگه در زمان ساخت مدل SVM از کتابخانه Scikit-Learn گزینه probability=True تنظیم شه، بعد از آموزش، مدل احتمالات رو با استفاده از رگرسیون لجستیک روی امتیازات SVM تنظیم می‌کنه.

با استفاده از این پارامتر، میشه ()predict_proba و ()predict_log_proba رو به مدل SVM اضافه کرد. این امکان، کاربرد SVM رو توی مسائلی که نیاز به محاسبه احتمال دارن، ممکنه می‌کنه.

svm = SVC(probability=True, random_state=42)
svm.fit(X_train, y_train)
probabilities = svm.predict_proba(X_test)


#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63👨‍💻1
👨‍🎓 بررسی کامل Margine در SVM

الگوریتم Support Vector Machine برای تشخیص الگوها در داده‌های پیچیده و ایجاد حد تصمیم برای جدا کردن دسته‌های مختلف ایجاد شده. یکی از پارامترهای SVM، حاشیه (Margin) هست که نقش مهمی در کارایی این الگوریتم داره.

🔵مفهوم Margin: به فاصلهٔ کمینه ممکن بین دسته‌های مختلف در فضای ویژگی، حاشیه میگن. با استفاده از حاشیه، الگوریتم سعی می‌کنه یک مرز تصمیم بهینه ایجاد کنه که داده‌های هر دسته به بهترین شکل ممکن از هم جدا شن.

🔵چرا Margin مهمه؟ حاشیه در SVM نشون‌دهنده اطمینان مدل در پیش‌بینی داده‌های جدیده. حاشیه بیشینه به معنی حداقل کردن احتمال خطاست و به مدل اجازه می‌ده که با داده‌های پیچیده‌ عملکرد خوبی داشته باشه.

🔵نحوه محاسبه حاشیه: برای محاسبهٔ حاشیه SVM، ما به دو دسته اصلی اطلاعات نیاز داریم: ویژگی‌ها و برچسب‌ها. حاشیه به صورت عمودی به بهترین شکل ممکن بین دو دسته قرار می‌گیره.

🔵حاشیه سخت: حاشیه سخت در SVM به موقعیتی اشاره داره که داده‌ها به صورت کاملاً صحیح و بدون خطا دسته‌بندی می‌شن. در این حالت، مدل به دنبال پیدا کردن یک حاشیه کاملاً جداکننده بدون خطا بین دسته‌هاست.

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

🔵حاشیه و انواع Kernels: استفاده از هسته‌ (Kernels) در SVM امکان تبدیل فضای ویژگی به یک فضای با بعد بالاتر رو ممکن می‌کنه. در نتیجه به مدل این امکان رو می‌ده که با داده‌های غیرخطی هم بتونه کار کنه.

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👌3👨‍💻1
کوئیز شماره ۵۱: در SVM، ما به دنبال به حداکثر رساندن Margin بین نقاط داده و hyperplane هستیم. تابع هزینه‌ای که به حداکثر رساندن Margin کمک می‌کنه ______ نام داره.
Anonymous Quiz
22%
Categorical cross-entropy loss
27%
Binary cross-entropy loss
27%
hinge loss
24%
هیچ کدام
😎8👍2👏1
💡متغییر Slack در ماشین بردار پشتیبان چیه؟

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

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1👨‍💻1
👨‍🎓 کرنل در SVM

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

🔵نحوه عملکرد کرنل‌

کرنل‌ با محاسبه نقطه‌ای (dot product) بین دو نقطه داده در فضای ویژگی، به ما کمک می‌کنه تا درک کنیم که چطور داده‌های مختلف نسبت به هم قرار گرفتن. این کار باعث می‌شه تا الگوریتم SVM بتونه مرزهای تصمیم‌گیری پیچیده‌تری رو در فضاهای با بعد بالاتر تعریف کنه.

🔵انتخاب کرنل مناسب

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

🔵تنظیم پارامترهای کرنل

برای بهینه‌سازی عملکرد SVM، تنظیم پارامترهای کرنل اهمیت بالایی دارد. برای مثال، در کرنل RBF، پارامترهایی مانند gamma و C باید به دقت تنظیم شن تا از overfitting یا underfitting جلوگیری شه.

🔵کاربردهای پیشرفته

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

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🤔1👨‍💻1
کوئیز شماره ۵۲: در SVM با استفاده از کرنل RBF، اگر پارامتر gamma بسیار زیاد شه، چه اتفاقی برای مرز تصمیم‌گیری مدل می‌افته؟
Anonymous Quiz
18%
مرز تصمیم‌گیری به صورت Soft Margin تعریف میشه
15%
مرز تصمیم‌گیری به صورت Soft Margin تعریف میشه
8%
تأثیری نداره
59%
مدل دچار overfitting می‌شه
👍6😎2🤔1
💡چرا از Kernel Trick استفاده میکنم؟

تابع کرنل به ما امکان می‌ده داده‌ها رو به فضایی با ابعاد بالاتر تبدیل کنیم، در حالی که ترفند کرنل (Kernel Trick) این تبدیل رو بدون نیاز به محاسبات پیچیده ممکن می‌کنه.

زمانیکه تعداد ابعاد بالا می‌ره، محاسبات بیش از حد پیچیده و پرهزینه می‌شن. در چنین مواردی، Kernel Trick به ما امکان می‌ده در فضای ویژگی اصلی عمل کنیم بدون اینکه مختصات داده‌ها رو در فضای بعدی بالاتر محاسبه کنیم و روشی کارآمدتر و کم هزینه‌تر برای تبدیل داده‌ها به فضاهای با بعد بالاتر هست.

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👨‍💻2👌1
👨‍🎓 انواع کرنل

تابع هسته در SVM به ما امکان می‌ده تا داده‌ها رو از فضای ویژگی اولیه به یک فضای ویژگی با ابعاد بیشتر (معمولاً با بعد بی‌نهایت) تبدیل کنیم، در اینجا به بررسی انواع مختلف توابع Kernel در SVM می‌پردازیم:

🔵Polynomial Kernel Function

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

🔵Gaussian RBF Kernel Function

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

🔵Sigmoid Kernel Function

تابع هسته سیگموئید معمولاً برای شبکه‌های عصبی استفاده می‌شه و می‌تونه برای تبدیل فضای ویژگی اولیه به فضای ویژگی‌هایی که شباهت به نورون‌های عصبی دارن به کار برده شه.

🔵Linear Kernel Function

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

🔵Hyperbolic Tangent Kernel Function

این تابع هسته، مثل تابع سیگموئید، برای شبیه‌سازی نورون‌های عصبی استفاده می‌شه و می‌تونه روابط پیچیده بین داده‌ها رو نشان بده.

🔵Graph Kernel Function

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

🔵String Kernel Function

برای داده‌هایی که به صورت رشته‌هایی از کاراکترها هستن، مثل دی‌ان‌ای یا متن، کاربرد داره.

🔵Tree Kernel Function

این تابع هسته برای داده‌هایی که دارای ساختار درختی هستن، مثل ساختارهای زبانی یا سلسله مراتب فایل‌ها، مناسبه.

انتخاب تابع هسته مناسب برای یک مسئله خاص، می‌تونه تأثیر زیادی روی کارایی مدل SVM داشته باشه. به همین دلیل، لازمه تا با استفاده از روش‌های مختلف اعتبارسنجی مثل اعتبارسنجی متقابل، توابع هسته مختلف رو آزمایش و بهترین تابع رو برای داده‌ها انتخاب کرد. در تصویر، اعمال چهار نوع اصلی توابع Kernel روی دیتاست Iris قابل مشاهده است.

#Machine_Learning
#SVM

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👌42