Data Science & Machine Learning
77.8K subscribers
898 photos
1 video
68 files
817 links
Join this channel to learn data science, artificial intelligence and machine learning with funny quizzes, interesting projects and amazing resources for free

For collaborations: @love_data
Download Telegram
Some useful PYTHON libraries for data science

NumPy stands for Numerical Python. The most powerful feature of NumPy is n-dimensional array. This library also contains basic linear algebra functions, Fourier transforms,  advanced random number capabilities and tools for integration with other low level languages like Fortran, C and C++

SciPy stands for Scientific Python. SciPy is built on NumPy. It is one of the most useful library for variety of high level science and engineering modules like discrete Fourier transform, Linear Algebra, Optimization and Sparse matrices.

Matplotlib for plotting vast variety of graphs, starting from histograms to line plots to heat plots.. You can use Pylab feature in ipython notebook (ipython notebook –pylab = inline) to use these plotting features inline. If you ignore the inline option, then pylab converts ipython environment to an environment, very similar to Matlab. You can also use Latex commands to add math to your plot.

Pandas for structured data operations and manipulations. It is extensively used for data munging and preparation. Pandas were added relatively recently to Python and have been instrumental in boosting Python’s usage in data scientist community.

Scikit Learn for machine learning. Built on NumPy, SciPy and matplotlib, this library contains a lot of efficient tools for machine learning and statistical modeling including classification, regression, clustering and dimensionality reduction.

Statsmodels for statistical modeling. Statsmodels is a Python module that allows users to explore data, estimate statistical models, and perform statistical tests. An extensive list of descriptive statistics, statistical tests, plotting functions, and result statistics are available for different types of data and each estimator.

Seaborn for statistical data visualization. Seaborn is a library for making attractive and informative statistical graphics in Python. It is based on matplotlib. Seaborn aims to make visualization a central part of exploring and understanding data.

Bokeh for creating interactive plots, dashboards and data applications on modern web-browsers. It empowers the user to generate elegant and concise graphics in the style of D3.js. Moreover, it has the capability of high-performance interactivity over very large or streaming datasets.

Blaze for extending the capability of Numpy and Pandas to distributed and streaming datasets. It can be used to access data from a multitude of sources including Bcolz, MongoDB, SQLAlchemy, Apache Spark, PyTables, etc. Together with Bokeh, Blaze can act as a very powerful tool for creating effective visualizations and dashboards on huge chunks of data.

Scrapy for web crawling. It is a very useful framework for getting specific patterns of data. It has the capability to start at a website home url and then dig through web-pages within the website to gather information.

SymPy for symbolic computation. It has wide-ranging capabilities from basic symbolic arithmetic to calculus, algebra, discrete mathematics and quantum physics. Another useful feature is the capability of formatting the result of the computations as LaTeX code.

Requests for accessing the web. It works similar to the the standard python library urllib2 but is much easier to code. You will find subtle differences with urllib2 but for beginners, Requests might be more convenient.

Additional libraries, you might need:

os for Operating system and file operations

networkx and igraph for graph based data manipulations

regular expressions for finding patterns in text data

BeautifulSoup for scrapping web. It is inferior to Scrapy as it will extract information from just a single webpage in a run.
❤7
✅ Support Vector Machine (SVM) Basics 🤖📈

👉 SVM is a powerful Machine Learning algorithm mainly used for classification problems.
It tries to find the best boundary (hyperplane) that separates different classes.

🔹 1. What is SVM?
SVM = Support Vector Machine
👉 It separates data into categories by creating a decision boundary.

Example:
✔ Spam vs Not Spam
✔ Cat vs Dog
✔ Fraud vs Normal Transaction

🔥 2. How SVM Works
👉 SVM finds the optimal hyperplane that maximizes the margin between classes.

Important Terms ⭐
✔ Hyperplane → Decision boundary
✔ Margin → Distance between boundary and nearest points
✔ Support Vectors → Closest data points to boundary

🔹 3. Example
Imagine two groups of points:
🔵 Blue points
🔴 Red points
SVM draws the best line separating them.

🔹 4. Types of SVM

✅ Linear SVM
👉 Used when data is linearly separable.

✅ Non-Linear SVM
👉 Uses Kernel Trick for complex data.

Popular kernels:
✔ Linear
✔ Polynomial
✔ RBF (Radial Basis Function)

🔹 5. Implementation (Python)

from sklearn.svm import SVC

# Sample data
X = [[1], [2], [3], [4]]
y = [0, 0, 1, 1]

model = SVC()
model.fit(X, y)

print(model.predict([[3]]))


🔹 6. Advantages ⭐
✔ Works well with high-dimensional data
✔ Effective for classification
✔ Powerful for complex datasets

🔹 7. Disadvantages
❌ Slow for very large datasets
❌ Harder to interpret
❌ Sensitive to parameter tuning

🔹 8. Why SVM is Important?
✔ Popular interview topic
✔ Used in image classification & NLP
✔ Powerful classification algorithm

🎯 Today’s Goal
✔ Understand hyperplane & margin
✔ Learn support vectors
✔ Understand kernels

👉 SVM = Smart boundary-based classification 🔥

💬 Tap ❤️ for more!
❤21👏3
Which kernel is commonly used in non-linear SVM?
Anonymous Quiz
23%
A) Binary kernel
29%
B) Matrix kernel
45%
C) RBF kernel
3%
D) Table kernel
❤1🙏1
What is the decision boundary in SVM called?
Anonymous Quiz
15%
A) Margin
61%
B) Hyperplane
21%
C) Kernel
4%
D) Cluster
👏2😢1
✅ Clustering with K-Means Algorithm 📊🤖

👉 K-Means is one of the most popular unsupervised learning algorithms. It groups similar data points into clusters.

🔹 1. What is Clustering?
Clustering = Grouping similar data together

👉 No labels are provided. The algorithm finds hidden patterns automatically.

Examples:
✔ Customer segmentation
✔ Grouping similar products
✔ Image compression

🔥 2. What is K-Means?
K-Means divides data into K clusters.

👉 Each cluster has a center called Centroid.

🔹 3. How K-Means Works
Step-by-step:
1️⃣ Choose number of clusters (K)
2️⃣ Select random centroids
3️⃣ Assign points to nearest centroid
4️⃣ Update centroid positions
5️⃣ Repeat until stable

🔹 4. Example
👉 Customer Segmentation

Customers are grouped based on:
✔ Age
✔ Income
✔ Spending habits

🔹 5. Implementation (Python)

from sklearn.cluster import KMeans

# Sample data
X = [[1], [2], [10], [11]]

model = KMeans(n_clusters=2)

model.fit(X)

print(model.labels_)


🔹 6. Important Terms ⭐
✔ Cluster → Group of similar points
✔ Centroid → Center of cluster
✔ K → Number of clusters

🔹 7. Choosing Best K (Elbow Method) ⭐
👉 Elbow Method helps find optimal K.

The graph looks like an elbow 🔻

🔹 8. Advantages
✔ Simple and fast
✔ Works well for grouped data
✔ Easy to implement

🔹 9. Disadvantages
❌ Need to choose K manually
❌ Sensitive to outliers
❌ Not good for irregular shapes

🔹 10. Why K-Means is Important?
✔ Used in recommendation systems
✔ Customer segmentation
✔ Market analysis

🎯 Today’s Goal
✔ Understand clustering
✔ Learn centroids & clusters
✔ Implement K-Means

👉 K-Means = Finding hidden groups in data 🔥

💬 Tap ❤️ for more!
❤14👏2🔥1
❤4👍1
What is the center of a cluster called?
Anonymous Quiz
5%
A) Margin
17%
B) Hyperplane
74%
C) Centroid
5%
D) Vector
❤2😁1
Which method is commonly used to find the best value of K?
Anonymous Quiz
7%
A) Pie Method
9%
B) Bar Method
55%
C) Elbow Method
28%
D) Scatter Method
❤3🔥1
Which of the following is a real-world application of K-Means?
Anonymous Quiz
79%
A) Customer segmentation
13%
B) Sorting files
4%
C) Writing code
4%
D) Database backup
❤2🔥1🤔1😢1
✅ PCA (Principal Component Analysis) Basics 📉🤖

👉 PCA is a Dimensionality Reduction technique used to simplify large datasets while keeping important information.

🔹 1. What is Dimensionality Reduction?
👉 Reducing the number of features columns in data.

Example:
Instead of 100 features → reduce to 10 important features.

✔ Faster training
✔ Better visualization
✔ Reduced complexity

🔥 2. What is PCA?
PCA = Principal Component Analysis

👉 It transforms data into new components called:
✔ Principal Components

These components capture the maximum variance in data.

🔹 3. Why PCA is Important?
✔ Reduces high-dimensional data
✔ Improves model performance
✔ Helps avoid overfitting
✔ Useful for visualization

🔹 4. How PCA Works (Simple Idea)
1️⃣ Find directions with maximum variance
2️⃣ Create principal components
3️⃣ Keep most important components
4️⃣ Remove less useful information

🔹 5. Example
👉 Suppose dataset has:
• Height
• Weight
• BMI
• Body Fat

Many features may contain similar information.
PCA combines them into fewer components.

🔹 6. Important Terms ⭐
✔ Variance → Spread of data
✔ Principal Component → New feature
✔ Explained Variance → Information retained

🔹 7. Implementation (Python)

from sklearn.decomposition import PCA
import numpy as np

X = np.array([
[1,2],
[3,4],
[5,6]
])

pca = PCA(n_components=1)

X_pca = pca.fit_transform(X)

print(X_pca)


🔹 8. Advantages
✔ Faster ML models
✔ Reduces noise
✔ Better visualization

🔹 9. Disadvantages
❌ Hard to interpret transformed features
❌ Possible information loss

🔹 10. Real-World Uses
✔ Image compression
✔ Face recognition
✔ Big data preprocessing

🎯 Today’s Goal
✔ Understand dimensionality reduction
✔ Learn principal components
✔ Understand variance concept

👉 PCA = Compressing data intelligently 🔥

💬 Tap ❤️ for more!
❤15🤩1