Machine Learning
40.5K subscribers
3.62K photos
29 videos
47 files
654 links
Real Machine Learning โ€” simple, practical, and built on experience.
Learn step by step with clear explanations and working code.

Admin: @HusseinSheikho || @Hussein_Sheikho
Download Telegram
Don't learn ML by randomly jumping through tutorials. ๐Ÿšซ๐Ÿ“š

DS-ML Bootcamp is a public repository for a Data Science and machine learning course for beginners who want a structured path from zero to practical projects. ๐Ÿš€๐Ÿ“Š

It helps transition from installation and concepts to practical ML work, organizing lessons, assignments, code examples, datasets, and solutions around the main machine learning workflow. ๐Ÿ› ๏ธ๐Ÿง 

Key features:

- End-to-end workflow - covers data collection, preprocessing, train/test split, model selection, training, evaluation, and deployment ๐Ÿ”„๐Ÿ“ˆ
- Lesson-based structure - starts with tools/setup, Data Science, ML, data fundamentals, and regression ๐Ÿ“š๐Ÿงฎ
- Practical materials - assignments give learners structured tasks, not just reading notes โœ๏ธโœ…
- Code + datasets - Python examples and raw CSV datasets included for exercises ๐Ÿ๐Ÿ“‚
- Set up for repetition - the README says you can clone the repository and use Jupyter or VS Code while going through lessons ๐Ÿ’ป๐Ÿ”

Free public repository on GitHub. ๐Ÿ†“
https://github.com/goobolabs/ds-ml-bootcamp

#MachineLearning #DataScience #Coding #Python #AI #Learning

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
โค6
The math.perm() method

The math.perm() method in Python returns the number of ways to select k elements from n elements, with and without repetition. ๐Ÿงฎ

Syntax:
math.perm(n, k)

Where:
n: The number of elements from which k elements are selected.
k: The number of elements that are selected.

In the first example, the method returns the number of ways to select 3 elements from 5 elements. The result is 60 ways. ๐Ÿ“Š
In the second example, the method returns the number of ways to select 5 elements from 10 elements. The result is 252 ways. ๐Ÿš€

#Python #Math #Coding #Programming #DataScience #Tech

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
โค10
Combining Plots in Matplotlib ๐Ÿ“Š

In Matplotlib, you can easily combine multiple plots in a single window using the subplot() function. Simply create the necessary plots, specify their layout, add titles, and you'll get a clear visualization for easy data comparison.

#Matplotlib #DataVisualization #Python #DataScience #Coding #Plotting

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
โค6๐Ÿ‘1
Feature Scaling: Why Feature Scaling Affects Model Training

Feature scaling is often overlooked because it seems like just another data preprocessing step. However, in practice, it often helps models train faster and more stably. Imagine one feature has values ranging from 0 to 1, while another has values ranging from 0 to 10,000. Although both features may be equally important for prediction, it's more difficult for the optimizer to work with such data.

This means it has to take more steps to find a good solution. Additionally, regularization becomes less effective because features with different scales require coefficients of different magnitudes. Let's look at how this looks in a simple example.

Install dependencies:
pip install numpy scikit-learn

Import libraries:
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import roc_auc_score

Let's create a small synthetic dataset. It will have two features: the first has a normal scale, and the second is about a thousand times larger.

Importantly, both features actually influence the target variable. That is, the only difference between them is the scale.
np.random.seed(42)
x_small = np.random.normal(0, 1, 300)
x_large = np.random.normal(0, 1000, 300)

X = np.vstack([x_small, x_large]).T

y = (x_small + 0.001 * x_large > 0).astype(int)

Now, let's split the data into training and testing sets. We won't scale anything yetโ€”first, let's see how the model behaves on the original data.
X_train, X_test, y_train, y_test = train_test_split(
X, y,
test_size=0.3,
random_state=42,
stratify=y
)

Let's train a logistic regression model without scaling.

In addition to the model's quality, let's also look at the number of iterations (n_iter_). This metric shows how much work the optimizer had to do to find the coefficients.
model = LogisticRegression()
model.fit(X_train, y_train)

pred = model.predict_proba(X_test)[:, 1]

print("ROC-AUC:", roc_auc_score(y_test, pred))
print("Iterations:", model.n_iter_)

Now, let's scale the features to the same scale using StandardScaler.

It calculates the mean and standard deviation only for the training set and then uses the same values for the test set. This is important because the model should not "peek" at the test data during training.

After this transformation, both features are approximately on the same scale, and it becomes easier for the optimizer to work with them.
scaler = StandardScaler()

X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)

Now, let's retrain the model.

We're using the same model, the same data, and the same parameters. The only difference is that the features are now scaled.
model = LogisticRegression()
model.fit(X_train_scaled, y_train)

pred = model.predict_proba(X_test_scaled)[:, 1]

print("ROC-AUC (scaled):", roc_auc_score(y_test, pred))
print("Iterations (scaled):", model.n_iter_)

Most often, the ROC-AUC doesn't change much. However, the number of iterations becomes smaller. This means that the optimizer found a solution faster, and the training was more stable.

๐Ÿ”ฅ Feature scaling is a simple data preprocessing step that, in many cases, allows the model to train faster and more stably. For logistic regression, SVMs, neural networks, and other algorithms that use numerical optimization, it's best not to skip it.

โœจ #DataScience #MachineLearning #Python #Coding #Tech #AI

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
โค4๐Ÿ‘1
This repository contains a collection of the best resources on PyTorch: https://github.com/ritchieng/the-incredible-pytorch

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A

#PyTorch #AI #MachineLearning #DeepLearning #Coding #Resources
โค6
๐Ÿ”– A large collection of lectures on Machine Learning and Deep Learning ๐Ÿง 

We found a repository that brings together high-quality materials on several areas of artificial intelligence. ๐Ÿค–

Excellent material for both learning and reviewing key topics. ๐Ÿ“š

โ›“๏ธ Link to GitHub
https://github.com/kmario23/deep-learning-drizzle

#MachineLearning #DeepLearning #AI #Tech #Coding #Learning

โœจ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

โญ๏ธ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
โค5