本文主要是介绍kaggle入门-泰坦尼克,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
机器学习流程
初探数据
导入数据:pd.read_csv
观察数据:head()、info()、describe()
数据可视化
画子图plt.subplot2grid((2,3),(1,0))
两行三列中第二行第一列的位置
每列按照unique值统计数量画条形图:df.col_name.values_counts().plot(kind=“bar”)
在此基础上观察某X于Y之间的联系
df.col_name[df.col_namevalues][df.col_namevalues].value_counts()
统计描述
groupby
统计每个特征值的频数
df.col_name.value_counts()
数据预处理
缺失值处理:
(1)占比高且且不重要:舍弃
(2)占比低
a. 连续变量 离散化 增加nan类
b. 非连续变量 增加nan类
(3)其他方法
a. 拟合得到缺失值
b. 平均值代替
例子:随机森林拟合缺失值age
独热编码
perfix加前缀
dummies_col_name=pd.get_dummies(df[“col_name”],perfix=“col_name”)
数据归一化
import sklearn.preprocessing as preprocessing
scaler=preprocessing.StandardScaler()
scaler.fit
scaler.fit_transfrom
模型训练
例子:逻辑回归
linear_model.LogisticRegression
模型预测
测试集做与训练集一样的操作
缺失值处理 独热编码 归一化
clf.predict
模型优化
创建baseline 之后的改进
系数关联分析
交叉验证:
方便优化调试
bad case
找出bad case尝试优化
特征工程
加tricks
离散化
组合变量构造新变量
特征工程之后拟合越来越好,分辨欠拟合以及过拟合
学习曲线
上图:过拟合test以及train之间gap很大
下图:欠拟合
模型融合
bagging:类似于随机森林
多个模型同时做决策,多数法则,有效缓解过拟合
数据集上入手,每次从数据集的subset中训练模型,每个模型都不一样,多数法则做决策,缓解过拟合
流程总结
参考 https://blog.csdn.net/han_xiaoyang/article/details/49797143
这篇关于kaggle入门-泰坦尼克的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!