ferriswym 2020-06-14
本文转自https://freeaihub.com/article/form-zeo-to-deploy-machine-learinging-task-with-sklearn.html,该页可在线实现本文内的项目内容。
本节我们将使用python机器学习库sklearn
,以及web服务库tornado
来从零完成一个完整的机器学习任务流程。如果阅读起来有困难,建议您先学习了解这两门教程,相关基础教程地址:sklearn,tornado。
!cp /share/tar/income.tar . !tar xvf income.tar !ls
import pandas as pd from sklearn import tree from sklearn import preprocessing
adult_data = pd.read_csv(‘./us-adult-income.csv‘) adult_data.head()
adult_data.info()
adult_data.describe()
adult_data.shape
#列出数据集的列名 adult_data.columns
#定义特征和目标列 feature_columns = [u‘workclass‘, u‘education‘, u‘marital-status‘, u‘occupation‘, u‘relationship‘, u‘race‘, u‘gender‘, u‘native-country‘] label_column = [‘income‘] features = adult_data[feature_columns] label = adult_data[label_column]
features = pd.get_dummies(features) features.head(2)
features.shape
list(features.columns)
#使用决策树分类器 clf = tree.DecisionTreeClassifier(criterion=‘entropy‘, max_depth=4) #用决策树分类器拟合数据 clf = clf.fit(features.values, label.values) print(clf)
#安装可视化所需组件 !pip3 install pydotplus -i https://pypi.tuna.tsinghua.edu.cn/simple/ !apt install graphviz -y
#可视化决策树 import pydotplus from IPython.display import display, Image dot_data = tree.export_graphviz(clf,out_file=None, feature_names=features.columns,class_names = [‘<=50k‘, ‘>50k‘], filled = True,rounded =True) graph = pydotplus.graph_from_dot_data(dot_data) display(Image(graph.create_png()))
clf.predict(features.values)
cd ~/income import joblib joblib.dump(clf, ‘./dtclf_model.pkl‘)
cd ~/income !python model.py
在线预测测试: 打开{host0.http_url}
填写表单后提交,看看实际效果怎么样?
这是一个基于python sklearn库简单完整的机器学习任务应用案例,虽然很简单,但是涉及到完整的机器学习任务的流程,同学们可以反复练习,或发布自己机器学习任务案例。