7070-1.Python机器学习:scikit-learn核心代码解读
2018-03-22 08:11
876 查看
本章介绍scikit_learn中最基础也是最核心的机器学习算法,适合快速上手
这里以根据乘客名单信息预测该乘客目的地的数据为代表
将数据集文件导入后,通过scikit-learn建立机器学习模型只需以下几步:
【1】利用train_test_split将数据分为训练集(用于构建模型)与测试集(用于检验模型的正确性)
一般来说划分比例为75%和25%
代码如下:
X_train,X_test,y_train,y_test=train_test_split(data['Passenger'],data['Destination'])
其中data为导入数据文件的名称,[]中填写表格列名称
【2】调用模型,这里我们调用k临近算法
(scikit-learn)所有机器学习模型都是在各自的类中实现的,这些类被称为Estimator类,k临近算法是在neighbors模块的KNeighborsClassifier类中实现的,因此,我们需要这样两行代码:
from sklearn.neighbors import KNeighborsClassifier
knn=KNeighborsClassifier(n_neighbors=1)
这里n_neighbors=1是为了设置该模型函数的参数值,在之后的章节我们将会提到
【3】构建模型,基于我们的训练集数据,需要调用knn对象的fit方法:
knn.fit(X_train,y_train)
这样我们就构建出了第一个机器学习模型
【4】检验模型正确率
我们需要用测试集数据来检测模型是否能够正确预测,这里我们用knn的score 方法对模型进行评价:
print("Test score:{:.2f}",format(knn.score(X_test,y_test)))
程序会返回一个0-1之间的浮点数,代表着在测试集数据上模型预测的准确率
综上所述:
机器学习模型构建的顺序如下:
1、将数据随机拆分
2、调用算法
3、将数据fit入模型
4、模型评估
附代码:
这里以根据乘客名单信息预测该乘客目的地的数据为代表
将数据集文件导入后,通过scikit-learn建立机器学习模型只需以下几步:
【1】利用train_test_split将数据分为训练集(用于构建模型)与测试集(用于检验模型的正确性)
一般来说划分比例为75%和25%
代码如下:
X_train,X_test,y_train,y_test=train_test_split(data['Passenger'],data['Destination'])
其中data为导入数据文件的名称,[]中填写表格列名称
【2】调用模型,这里我们调用k临近算法
(scikit-learn)所有机器学习模型都是在各自的类中实现的,这些类被称为Estimator类,k临近算法是在neighbors模块的KNeighborsClassifier类中实现的,因此,我们需要这样两行代码:
from sklearn.neighbors import KNeighborsClassifier
knn=KNeighborsClassifier(n_neighbors=1)
这里n_neighbors=1是为了设置该模型函数的参数值,在之后的章节我们将会提到
【3】构建模型,基于我们的训练集数据,需要调用knn对象的fit方法:
knn.fit(X_train,y_train)
这样我们就构建出了第一个机器学习模型
【4】检验模型正确率
我们需要用测试集数据来检测模型是否能够正确预测,这里我们用knn的score 方法对模型进行评价:
print("Test score:{:.2f}",format(knn.score(X_test,y_test)))
程序会返回一个0-1之间的浮点数,代表着在测试集数据上模型预测的准确率
综上所述:
机器学习模型构建的顺序如下:
1、将数据随机拆分
2、调用算法
3、将数据fit入模型
4、模型评估
附代码:
from sklearn.neighbors import KNeighborsClassifier
X_train,X_test,y_train,y_test=train_test_split(data['Passenger'],data['Destination'])
knn=KNeighborsClassifier(n_neighbors=1)
knn.fit(X_train,y_train)
print("Test score:{:.2f}",format(knn.score(X_test,y_test)))
相关文章推荐
- 用Python Scikit-learn 实现机器学习十大算法--朴素贝叶斯算法(文末有代码)
- 基于 Python 和 Scikit-Learn 的机器学习介绍
- 《机器学习:算法原理与编程实践》的读书笔记:SMO部分最难,大部分代码基于Scikit-Learn,决策树其实用处不大
- Windows下安装Python机器学习相关的sklearn(scikit-learn)模块
- 【Python】scikit-learn机器学习(一)——一元回归模型
- window下安装Python的机器学习包numpy+scipy+matplotlib+scikit-learn
- Python下的机器学习工具scikit-learn(学习笔记4)
- 【Python】scikit-learn机器学习(八)——K-means聚类
- 在win7 32位系统中安装配置Python的机器学习包scikit-learn
- 【Python学习系列十六】基于scikit-learn库逻辑回归训练模型(delta比赛代码)
- Scikit-learn-python机器学习工具入门学习
- 3.6 scikit-learn:Python中的机器学习
- Python下的机器学习工具scikit-learn(学习笔记3--数据预处理)
- window下安装Python的机器学习包numpy+scipy+matplotlib+scikit-learn
- Python机器学习:通过scikit-learn实现集成算法
- python中机器学习包scikit-learn使用笔记与sign prediction简单小结
- python 机器学习框架scikit-learn安装
- Python - Scikit-Learn 的机器学习
- 【Python学习系列十七】基于scikit-learn库逻辑回归训练模型(delta比赛代码2)
- python中scikit-learn机器学习例子