Tại sao chọn Scikit-learn?
Scikit-learn là thư viện ML phổ biến nhất với API thống nhất, documentation tốt và tích hợp hoàn hảo với NumPy/Pandas. Hỗ trợ hầu hết thuật toán ML cổ điển.
Classification — Phân loại dữ liệu
from sklearn.datasets import load_iris
from sklearn.svm import SVC
from sklearn.model_selection import cross_val_score
# Load dataset
iris = load_iris()
X, y = iris.data, iris.target
# Support Vector Machine
svm = SVC(kernel='rbf', C=1.0)
scores = cross_val_score(svm, X, y, cv=5)
print(f"Accuracy: {scores.mean():.2%} (+/- {scores.std():.2%})")
Regression — Dự đoán giá trị
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import PolynomialFeatures
from sklearn.pipeline import make_pipeline
# Pipeline: polynomial features + regression
model = make_pipeline(
PolynomialFeatures(degree=2),
LinearRegression()
)
model.fit(X_train, y_train)
print(f"R² Score: {model.score(X_test, y_test):.4f}")
Pipeline xử lý dữ liệu hoàn chỉnh
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.impute import SimpleImputer
pipeline = Pipeline([
('imputer', SimpleImputer(strategy='median')),
('scaler', StandardScaler()),
('classifier', RandomForestClassifier(n_estimators=200))
])
pipeline.fit(X_train, y_train)
Scikit-learn lý tưởng cho prototype nhanh và production với dữ liệu dạng bảng.