scikit-learn 是一个用于机器学习的 Python 库,提供了丰富的工具和函数来实现各种机器学习算法,包括分类、回归、聚类、降维等。下面我将挑选一些重要的函数进行简要介绍:
1. train_test_split:
train_test_split 函数用于将数据集划分为训练集和测试集,以进行模型的训练和评估。它可以帮助你避免过拟合问题,提高模型的泛化能力。
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, ra
2. 模型类:
scikit-learn 提供了许多机器学习算法的模型类,例如 DecisionTreeClassifier(决策树分类器)、LinearRegression(线性回归模型)、KMeans(K均值聚类模型)等。这些类允许你创建、训练和使用不同类型的模型。
DecisionTreeClassifier
from sklearn.tree import DecisionTreeClassifier
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
LinearRegression
from sklearn.linear_model import LinearRegression
df = pandas.read_csv("./cars.csv")
X = df[['Weight', 'Volume']]
y = df['CO2']
regr = LinearRegression()
regr.fit(X, y)
3. fit和predict
所有的模型类都有 fit 方法用于在训练集上拟合模型,并且有 predict 方法用于对新数据进行预测。
from sklearn.linear_model import LinearRegression
X = df[['Weight', 'Volume']]
y = df['CO2']
regr = LinearRegression()
regr.fit(X, y) # 训练数据去喂模型
predictedCO2 = regr.predict([[2300, 1300]]) # 预测
4. metrics 模块
metrics 模块提供了许多用于模型评估的指标,例如准确率、均方误差、对数损失等。
```
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y_test, predictions)
```
```
from sklearn.metrics import r2_score
r2 = r2_score(train_y, mymodel(train_x)) # 计算拟合度
```
5.GridSearchCV(比较高阶)
GridSearchCV 是用于网格搜索的类,它可以帮助你在给定的参数范围内寻找最佳的超参数组合,从而优化模型的性能。
```
pythonCopy code
from sklearn.model_selection import GridSearchCV
param_grid = {'C': [0.1, 1, 10]}
grid_search = GridSearchCV(model, param_grid, cv=5)
grid_search.fit(X_train, y_train)
best_params = grid_search.best_params_
```