Scikit-Learn是Python下强大的机器学习工具包,它提供了完善的机器学习工具箱,包括数据预处理、分类、回归聚类、预测和模型分析等。
Scikit-Learn 依赖于NumPy、SciPy和 Matplotlib,因此,只需要提前安装好这几个库然后安装 Scikit-Lean,安装代码:
pip install scikit-learn
创建一个线性回归示例:
- from sklearn.linear_model import LinearRegression #导入线性回归模型
- model=LinearRegression()#建立线性回归模型
- print(model)
model.fit():训练模型,对于监督模型来说是 fit(X,y),对于非监督模型是 fit(X)。
监督模型提供的接口有:
model.predict(X_new):预测新样本
model.predict_proba(X_new):预测概率,仅对某些模型有用(比如LR)
model.score():得分越高,fit越好
非监督模型提供的接口有:
model.transform():从数据中学到新的“基空间”
model.fit_transform():从数据中学到新的基并将这个
据按照这组“基”进行转换
这个库有内置数据集,比如常见的鸢尾花数据,有一百五十个鸢尾花的一些尺寸的观测值:尊片长
度、宽度,花瓣长度和宽度。还有它们的亚属:山鸢尾(Iris setosa)、变色鸢尾(Iris versicolor)和维吉
尼亚鸢尾(Iris virginica)。
下面导入鸢尾花的数据,建立线性SVM模型,对其分类,预测,并查看模型参数代码如下:
- from sklearn import datasets#导入数据集
- Iris=datasets.load_iris()#加载鸢尾花数据集
- print(Iris.data.shape)#查看数据集大小
- from sklearn import svm #导入SVM模型
- clf=svm.LinearSVC()#建立线性SVM分类器
- clf.fit(Iris.data,Iris.target)#用数据训练模型
- clf.predict([[5.0,3.6,1.3,0.25]])#训练好模型之后,输入新的数据进行预测
- #查看训练好模型的参数
- clf.coef_
运行结果如下:
更多资料参考:scikit-learn: machine learning in Python — scikit-learn 1.4.1 documentation