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

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

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

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

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

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

🔵Accuracy

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

from sklearn.metrics import accuracy_score

y_true = [1, 0, 1, 1, 0, 1]
y_pred = [1, 0, 0, 1, 0, 1]
accuracy = accuracy_score(y_true, y_pred)
print("Accuracy:", accuracy)


🔵Precision & Recall

سنجه Precision نشون‌دهنده تعداد پیش‌بینی‌های صحیح مثبت نسبت به کل تعداد پیش‌بینی‌های مثبته و سنجه Recall نشون‌دهنده تعداد پیش‌بینی‌های صحیح مثبت نسبت به کل تعداد موارد واقعی مثبته.

from sklearn.metrics import precision_score, recall_score

precision = precision_score(y_true, y_pred)
recall = recall_score(y_true, y_pred)
print("Precision:", precision)
print("Recall:", recall)


🔵F1 Score

سنجه F1 Score میانگین هارمونیک دقت کلاس و Recall هست. این معیار برای مواقعی که توازن بین دقت کلاس و Recall مهمه، مناسبه.

from sklearn.metrics import f1_score

f1 = f1_score(y_true, y_pred)
print("F1 Score:", f1)


🔵ROC (Receiver Operating Characteristic) & AUC (Area Under the Curve)

منحنی ROC رابطه بین نرخ مثبت‌های واقعی (True Positive Rate) و نرخ منفی‌های کاذب (False Positive Rate) رو برای مجموعه‌ای از آستانه‌های (Threshold) مختلف نشون می‌ده.

به مساحتی که زیر منحنی ROC قرار می‌گیره، AUC میگن و به عنوان یه سنجه جامع برای ارزیابی کیفیت عملکرد کلی مدل‌های طبقه‌بندی به کار می‌ره. هرچی مقدار AUC به ۱ نزدیک‌تر باشه، نشون میده که مدل توانایی بالایی توی تفکیک بین کلاس‌های مثبت و منفی داره و در نتیجه، عملکرد مدل بهتری داره.

from sklearn.metrics import roc_auc_score

# مقادیر y_pred باید به صورت احتمالات باشن. در اینجا فرض می‌کنیم y_pred احتمالات هستن.
y_pred_probs = [0.9, 0.1, 0.8, 0.9, 0.2, 0.7]
auc = roc_auc_score(y_true, y_pred_probs)
print("AUC:", auc)


🔵Confusion Matrix

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

from sklearn.metrics import confusion_matrix

conf_matrix = confusion_matrix(y_true, y_pred)
print("Confusion Matrix:\n", conf_matrix)


#Machine_Learning
#Logistic_Regression

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52👨‍💻1
کوئیز شماره ۲۵: معیارهای ازریابی Logistic Regression

کدوم معیار بهترین شاخص برای ارزیابی عملکرد یه مدل رگرسیون لجستیک توی مجموعه داده‌های نامتوازنه؟ کدوم معیار نشون دهنده کیفیت تفکیک داده‌ها توسط مدله؟
Anonymous Quiz
19%
Accuracy - R-squared
23%
Precision - Log-Likelihood
54%
F1 Score - AUC-ROC
4%
Sensitivity - MSE
😎7👍32
💡بررسی معیارهای ارزیابی طبقه‌بندی دودویی

#Machine_Learning
#Logistic_Regression

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81👨‍💻1
👨‍🏫 مدل‌های Sklearn برای رگرسیون لجستیک

توی این پست، به مدل‌های مختلف رگرسیون لجستیک توی کتابخانه Sklearn می‌پردازیم. Sklearn یه کتابخانه محبوب زبان برنامه‌نویسی پایتونه که توی حوزه یادگیری ماشین کاربرد داره.
🔵LogisticRegression

این مدل اولیه در Sklearn بهتون اجازه می‌ده تا مسائل دسته‌بندی دوتایی و چندتایی رو حل کنین. می‌تونین با تنظیم پارامترهایی مانند solver (الگوریتم بهینه‌سازی) و penalty (نوع جریمه برای جلوگیری از بیش‌برازش)، مدل رو براساس تسک تنظیم کنین.

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_iris

X, y = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
model = LogisticRegression(solver='liblinear')
model.fit(X_train, y_train)
print(f'Accuracy: {model.score(X_test, y_test)}')


🔵LogisticRegressionCV

این مدل، LogisticRegression رو با قابلیت اعتبارسنجی متقاطع (Cross-Validation) ارائه می‌ده. در نتیجه می‌تونین بهترین پارامترها مثل Cs (مقادیر مختلف برای قدرت جریمه) رو پیدا کنین و مدل رو حین آموزش بهینه کنین.

from sklearn.linear_model import LogisticRegressionCV
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_iris

X, y = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
model = LogisticRegressionCV(Cs=10, cv=4, random_state=0)
model.fit(X_train, y_train)
print(f'Accuracy: {model.score(X_test, y_test)}')


🔵SGDClassifier

این مدل برای دسته‌بندی با استفاده از روش گرادیان کاهشی تصادفی (Stochastic Gradient Descent) کار می‌کنه. با تنظیم پارامتر loss به log, می‌تونین از این مدل برای رگرسیون لجستیک استفاده کنین. این مدل برای داده‌های بزرگ و پیچیده مناسبه.

from sklearn.linear_model import SGDClassifier
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_iris

X, y = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
model = SGDClassifier(loss='log', max_iter=1000, tol=1e-3)
model.fit(X_train, y_train)
print(f'Accuracy: {model.score(X_test, y_test)}')


#Machine_Learning
#Logistic_Regression

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
9👨‍💻2👍1
💡مقایسه مدل‌های رگرسیون لجستیک در Sklearn

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

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

در نتیجه، استفاده از SGDClassifier در مواردی که دقت و پایداری در هر بار اجرا اهمیت داره، باید با دقت انجام شه و احتمالاً نیاز به اعمال تکنیک‌هایی مثل تنظیم پارامتر و تکرار چند باره برای رسیدن به نتایج معتبر داره.

#Machine_Learning
#Logistic_Regression

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

🔺 آموزشی

🔵تعریف و انواع Logistic Regression
👉🔗 https://t.iss.one/data_ml/77

🔵کاربردهای Logistic Regression
👉🔗 https://t.iss.one/data_ml/80

🔵تابع هزینه در لجستیک رگرسیون
👉🔗 https://t.iss.one/data_ml/83

🔵روش‌های بهینه سازی در لجستیک رگرسیون
👉🔗 https://t.iss.one/data_ml/86

🔵معیارهای ارزیابی Logistic Regression
👉🔗 https://t.iss.one/data_ml/88

🔵مدل‌های Sklearn برای رگرسیون لجستیک
👉🔗 https://t.iss.one/data_ml/91

🔺 کوئیز

🔵کوئیز شماره ۲۱: روش‌ برازش داده در Logistic Regression
👉🔗 https://t.iss.one/data_ml/78

🔵کوئیز شماره ۲۲: استانداردسازی در Logistic Regression
👉🔗 https://t.iss.one/data_ml/81

🔵کوئیز شماره ۲۳: تابع هزینه در لجستیک رگرسیون
👉🔗 https://t.iss.one/data_ml/84

🔵کوئیز شماره ۲۴: روش‌های بهینه‌سازی Logistic Regression
👉🔗 https://t.iss.one/data_ml/87

🔵کوئیز شماره ۲۵: معیارهای ازریابی Logistic Regression
👉🔗 https://t.iss.one/data_ml/89

🔵کوئیز شماره ۲۶: LogisticRegression در Sklearn
👉🔗 https://t.iss.one/data_ml/92

🔺 نکات

🔵مقایسه رگرسیون و لجستیک رگرسیون
👉🔗 https://t.iss.one/data_ml/79

🔵امکان داشتن تحلیل‌های پیچیده با Logistic Regression
👉🔗 https://t.iss.one/data_ml/82

🔵تاثیر Regularization روی لجستیک رگرسیون
👉🔗 https://t.iss.one/data_ml/85

🔵بررسی معیارهای ارزیابی طبقه‌بندی دودویی
👉🔗 https://t.iss.one/data_ml/90

🔵مقایسه مدل‌های رگرسیون لجستیک در Sklearn
👉🔗 https://t.iss.one/data_ml/93

#Weekend
#Machine_Learning
#Logistic_Regression

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93👏1
Audio
🟡 توضیحات وبینار رایگان: معرفی منابع مطالعاتی و بازارکار ماشین لرنینگ

🔺 سرفصل‌ها

🔵 ماشین لرنینگ (ML) چیست؟
🔵 تفاوت ML و DL و AI
🔵 مدل‌های معروف مورد استفاده در ML
🔵 پیش نیازها و منابع مطالعاتی
🔵 نحوه کار پیدا کردن شغل در این حوزه

📆 یکشنبه، ۲۶ آذر ساعت ۲۰

🟢 رایگان ثبت‌نام کنین:‌
👉📎 https://ctdrs.ir/cr15061

@DSLanders | دی‌اس‌لندرز
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🔥1👌1
👩‍🎓 برنامه آموزشی هفته: تکنیک‌های تنظیم یا رگولاریزاسیون (Regularization)

🟠شنبه: L1 Regularization

🔵یک‌شنبه: L2 Regularization

🟢دوشنبه: ترکیب رگولاریزاسیون L1 و L2

🔴سه‌شنبه: افزایش داده (Data Augmentation)

🟠چهارشنبه: انتخاب ویژگی (Feature Selection)

🔵پنج‌شنبه: راه‌حل‌های مبتنی بر مدل

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

#Machine_Learning
#Regularization

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74👨‍💻1
👨‍🏫 آشنایی با تکنیک L1 Regularization

تکنیک L1 Regularization که گاهی به عنوان Lasso Regularization هم شناخته می‌شه، یه تکنیک در یادگیری ماشینه که برای جلوگیری از overfitting (بیش‌برازش) در مدل‌های پیچیده استفاده می‌شه. این روش با اضافه کردن یه جمله جریمه به تابع هزینه مدل، به کنترل پیچیدگی کمک می‌کنه.

🔵این جمله جریمه برابره با مجموع مقادیر مطلق وزن‌های مدل (coefficients)، ضربدر یک ضریب λ (lambda) هست. فرمول L1 به شکل زیره و توی این فرمول، α یه پارامتره که میزان جریمه رو تعیین می‌کنه. w وزن‌های مدل هستن.

L1 = α * sum(|w|)

🔵تأثیر L1 Regularization

این تکنیک می‌تونه منجر به وزن‌هایی شه که برابر با صفر هستن (Sparsity)، در نتیجه بعضی از ویژگی‌ها کاملاً از مدل حذف شن. علاوه بر این به طور طبیعی می‌تونه به عنوان یه روش انتخاب ویژگی (Feature Selection) عمل کنه.

🔵نحوه انتخاب Lambda

افزایش λ و انتخابش با مقدار بزرگ منجر به افزایش جریمه و کاهش پیچیدگی مدل می‌شه و می‌تونه underfitting ایجاد کنه. کاهش λ منجر به کاهش تأثیر regularization و افزایش خطر overfitting می‌شه.

🔵کاربردها و محدودیت‌ها

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

🔵مثال

فرض کنین یه مدل رگرسیون داریم که برای پیش‌بینی قیمت خونه استفاده می‌شه. داده‌های آموزشی این مدل شامل ویژگی‌هایی مثل متراژ، تعداد اتاق‌ها و موقعیت مکانیه. با استفاده از L1 Regularization، می‌توانیم از overfitting جلوگیری کنیم و دقت مدل رو بهبود ببخشیم. برای این کار، باید مقدار α رو تنظیم کنیم. مقدار α باید به طوری باشه که باعث شه وزن‌های مدل کوچک شن، اما باعث کاهش دقت مدل نشه. با آزمایش مقدارهای مختلف α، می‌تونیم مقدار مناسبی رو پیدا کنیم که باعث بهبود عملکرد مدل شه.

🔵جمع‌بندی

تکنیک L1 Regularization یه ابزار قدرتمنده که به کاهش overfitting و بهبود تعمیم‌پذیری کمک می‌کنه.

#Machine_Learning
#Regularization

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64👨‍💻1
💡 یک نکته مهم درباره L1 Regularization اینکه ممکنه در شرایطی که چند ویژگی (Feature) قویاً به باهم مرتبط باشن، فقط یکی از ویژگی‌ها رو انتخاب کنه و بقیه رو نادیده بگیره و این مسئله می‌تونه روی تفسیر پذیری مدل تأثیر منفی داشته باشه.

#Machine_Learning
#Regularization

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

تکنیک L2 Regularization که گاهی به عنوان Ridge Regularization هم شناخته می‌شه، یه تکنیک در یادگیری ماشینه که برای جلوگیری از overfitting (بیش‌برازش) در مدل‌های پیچیده استفاده می‌شه. این روش با اضافه کردن یه جمله جریمه به تابع هزینه مدل ماشین لرنینگ، به کنترل پیچیدگی کمک می‌کنه.

🔵این جمله جریمه برابره با مجموع مربع‌های وزن‌های مدل (coefficients)، ضربدر یک ضریب λ (lambda). فرمول L2 به شکل زیره و توی این فرمول، λ یه پارامتره که میزان جریمه رو تعیین می‌کنه. w وزن‌های مدل هستن.

L2 = λ * sum(w²)

🔵تأثیر L2 Regularization

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

🔵نحوه انتخاب Lambda

افزایش λ و انتخابش با مقدار بزرگ منجر به افزایش جریمه و کاهش پیچیدگی مدل می‌شه و می‌تونه underfitting ایجاد کنه. کاهش λ منجر به کاهش تأثیر regularization و افزایش خطر overfitting می‌شه. به Lambda اصطلاحا regularization rate هم میگم.

🔵کاربردها و محدودیت‌ها

رگرسیون ریج توی مدل‌هایی که ویژگی‌ها همبستگی دارن، موثره و کاربرد داره. انتخاب λ مناسب می‌تونه چالش‌برانگیز باشه و باید با دقت انجام شه.

#Machine_Learning
#Regularization

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63👨‍💻2
کوئیز شماره ۲۸: فرض کنید λ در تنظیم L2 به نحوی انتخاب شده که باعث صفر شدن بعضی از وزن‌ها می‌شه. این حالت چه نتیجه‌ای داره؟
Anonymous Quiz
14%
مدل به شدت overfit شده
14%
تنظیم L2 به اشتباه به عنوان L1 اجرا شده
50%
مقدار λ بیش از حد بزرگه و ممکنه به underfitting منجر شه.
23%
این یه سناریو غلطه و باید بررسی شه که آیا محاسبات به درستی انجام شده یا نه
😎6👍31👏1
💡مقایسه تکنیک‌های تنظیم L1 و L2

🔵زمانیکه انتخاب ویژگی (Feature Selection) مهمه، L1 رو انتخاب می‌کنیم چون بعضی وزن‌ها رو صفر می‌کنه و انتخاب ویژگی انجام می‌ده. برای مدل‌هایی که نیاز به استفاده از همه ویژگی‌ها دارن L2 ترجیح داده می‌شه چون هیچ ویژگی رو کاملاً حذف نمی‌کنه.

🔵زمانی که با داده‌های پرت مواجه هستیم L1 ممکنه بهتر باشه چون مقاومت بیشتری نشون می‌ده.

🔵در شرایطی که همبستگی بین ویژگی‌ها وجود دارد L2 مفیده چون همبستگی‌ها رو مدیریت می‌کنه و به یک راه‌حل منحصر به فرد می‌رسه.

🔵انتخاب بین L1 و L2 باید بر اساس داده‌های خاص، مسئله و نیازهای مدل‌سازی باشه. گاهی اوقات استفاده از ترکیبی از هر دو در قالب Elastic Net می‌تونه بهترین نتایج رو ارائه بده.

#Machine_Learning
#Regularization

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👌73👍2
👨‍🏫 ترکیب رگولاریزاسیون L1 و L2

تکنیک ترکیب L1 Regularization و L2 Regularization، که گاهی به عنوان Elastic Net هم شناخته می‌شه، یه تکنیک پیشرفته در یادگیری ماشینه که برای جلوگیری از overfitting (بیش‌برازش) در مدل‌های پیچیده استفاده می‌شه. این روش با اضافه کردن دو جمله جریمه به تابع هزینه مدل، مزایای L1 و L2 رو ترکیب می‌کنه.

🔵جمله‌های جریمه در Elastic Net

در این روش، جمله جریمه شامل دو بخشه: یک بخش براساس L1 (مجموع مطلق ضرایب) و بخش دیگر براساس L2 (مجموع مربع ضرایب). فرمول Elastic Net ترکیبی از این دو جریمه‌ست و به این شکله:

Elastic Net = α * sum(|w|) + β * sum(w²)

در اینجا، α و β ضرایبی هستن که میزان تأثیر L1 و L2 رو تعیین می‌کنن.

🔵تأثیر Elastic Net

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

🔵نحوه انتخاب α و β

انتخاب این ضرایب باید با دقت انجام بشه. مقدارهای بالای α ممکنه باعث ایجاد Sparsity (صفر شدن بعضی ضرایب) بشه، در حالی که مقدارهای بالای β ممکنه باعث کاهش تأثیر این Sparsity بشه. تعادل بین این دو بخش برای به دست آوردن بهترین عملکرد مدل ضروریه.

🔵کاربردها و محدودیت‌ها

این تکنیک در مدل‌های پیچیده با تعداد زیادی ویژگی، به ویژه زمانی که تعدادی از ویژگی‌ها با هم همبستگی دارن، کاربرد داره. اما، تنظیم دقیق پارامترها می‌تونه چالش‌برانگیز باشه.

🔵 پارامترهای alpha و l1_ratio در کد Elastic Net

alpha = 1.0
l1_ratio = 0.5
elastic_net_reg = ElasticNet(alpha=alpha, l1_ratio=l1_ratio, random_state=42)


🔵نقش alpha: این پارامتر میزان کلی جریمه‌ای که به مدل اعمال می‌شه رو تعیین می‌کنه. هرچی alpha بزرگ‌تر باشه، جریمه بیشتری به ضرایب اعمال می‌شه و بنابراین، مدل ساده‌تر می‌شه.

انتخاب alpha = 1.0 به این معناست که جریمه‌ای متوسط به مدل اعمال شه. این مقدار معمولاً به عنوان یک نقطه شروع خوب در نظر گرفته می‌شه، اما ممکنه برای هر مجموعه داده‌ای بهینه نباشه. تنظیم دقیق alpha بر اساس داده‌ها به بهبود عملکرد مدل کمک می‌کنه.

🔵نقش l1_ratio: این پارامتر تعیین می‌کنه که چه میزان از جریمه کلی به L1 (رگرسیون لاسو) اختصاص داره و چه میزان به L2 (رگرسیون ریج).

با تنظیم l1_ratio بر روی 0.5، ما به طور مساوی جریمه رو بین L1 و L2 تقسیم می‌کنیم. این انتخاب نشون دهنده تعادل بین تأثیرات L1 و L2 هست و برای موقعیت‌هایی که هر دو نوع جریمه ممکنه مفید باشن، مناسبه.

#Machine_Learning
#Regularization

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👌92🔥1👨‍💻1
کوئیز شماره ۲۹: چطور می‌تونیم بهترین ترکیب از alpha و l1_ratio رو در Elastic Net انتخاب کنیم؟
Anonymous Quiz
36%
با استفاده از آزمون و خطا
54%
با انجام Cross-Validation
4%
با انتخاب تصادفی
6%
با استفاده از فرمول‌های ریاضی مشخص
👌8😎21👏1
👨‍🏫 افزایش داده (Data Augmentation)

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

🔵 دلایل استفاده از افزایش داده

🔵بیش‌برازش یه مشکل رایج توی یادگیری ماشینه که در اون مدل داده‌های آموزشی رو بیش از حد یاد گرفته که در نتیجه توانایی تعمیم یا generalization کاهش پیدا می‌کنه. افزایش داده می‌تونه به کاهش overfitting کمک کنه چون مدل با تنوع بیشتری از داده‌ها مواجه میشه.

🔵افزایش داده می‌تونه باعث افزایش دقت مدل شه و مدل با تنوع بیشتری از داده‌ها آموزش می‌بینه. افزایش داده توی دیتاست‌هایی که کوچیک هستن بسیار می‌تونه مفید باشه.

🔵 انواع افزایش داده

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

🔵برای متن، میشه از تکنیک‌هایی مثل جایگزینی کلمات، تغییر ترتیب کلمات، اضافه کردن کلمات جدید و حذف کلمات استفاده کرد.

🔵برای داده‌های صوتی، میشه از تکنیک‌های تغییر فرکانس، تغییر تأخیر، اضافه کردن نویز و تغییر سرعت استفاده کرد.

🔵 نکات مهم افزایش داده‌ها

🔵تغییرات باید جزئی باشن و نباید باعث تغییر معنای داده شن.

🔵تغییرات باید با زمینه داده مطابقت داشته باشن. برای مثال، اگه یه تصویر از گربه داشته باشیم، چرخش تصویر باید توی محدوده‌ای باشه که هنوز گربه قابل تشخیص باشه.

🔵تغییرات باید به صورت تصادفی اعمال شن تا مدل در برابر هر نوع تغییری مقاوم باشه.

#Data_Augmentation
#Machine_Learning

@Data_ML | دیتاساینس و ماشین‌ لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍2👌2👨‍💻2
کوئیز شماره ۳۰: کدوم کتابخونه‌ زیر برای افزایش داده (Data Augmentation) کاربرد نداره؟
Anonymous Quiz
18%
Pytorch
23%
Augmentor
23%
Albumentations
38%
NumPy
6👍2😎2