当前位置: 首页 > news >正文

google网站建设纯英文网站建设

google网站建设,纯英文网站建设,wordpress单页下载插件,上海还能推seo吗泰坦尼克号幸存者预测 1、特征工程概述2、数据预处理3、特征选择与提取4、建模与预测 1、特征工程概述 在上篇 泰坦尼克号幸存者数据分析 中#xff0c;我们对泰坦尼克号的幸存者做了数据分析#xff0c;通过性别、年龄、船舱等级等不同维度对幸存者进行了分类统计#xff0… 泰坦尼克号幸存者预测 1、特征工程概述2、数据预处理3、特征选择与提取4、建模与预测 1、特征工程概述 在上篇 泰坦尼克号幸存者数据分析 中我们对泰坦尼克号的幸存者做了数据分析通过性别、年龄、船舱等级等不同维度对幸存者进行了分类统计回答了哪些人可能成为幸存者 本文我们将对泰坦尼克号数据集应用特征工程、训练分类模型并对幸存者进行预测 特征工程是机器学习工作流程中重要的组成部分它是将原始数据转化成模型可理解的形式的过程。如何基于给定数据来发挥更大的数据价值就是特征工程要做的事情 在2016年的一项调查中发现数据科学家的工作中有超过80%的时间都在获取、清洗和组织数据构造机器学习流水线的时间不到20%。可见特征工程的重要性 特征工程在机器学习流程中的位置如下 特征工程处在原始数据和特征之间。它的任务就是将原始数据翻译成特征的过程这个过程将数据转换为能更好的表示业务逻辑的特征从而提高机器学习的性能 特征工程主要包括数据预处理、特征选择与提取等 2、数据预处理 对于泰坦尼克号数据集的预处理包括缺失值处理和特征编码 2.1、缺失值处理 上篇中我们查看了数据集的缺失情况 训练集Age(177)、Cabin(687)、Embarked(2)测试集Age(86)、Fare(1)、Cabin(327) 对于缺失值的处理我们一般选择填充和删除 # 年龄Age 均值填充 data[Age].fillna(data[Age].mean(), inplaceTrue) # 船票价格Fare 均值填充 data[Fare].fillna(data[Fare].mean(), inplaceTrue) # 座位号Cabin 缺失较多删除 data.drop(columnsCabin, inplaceTrue) # 登船码头Embarked 众数填充 data[Embarked].fillna(data[Embarked].mode(), inplaceTrue)2.2、特征编码 数值型数据我们可以直接使用对于日期型数据我们需要转换成单独的年月日对于分类型数据需要使用特征编码转换为数值 1分类特征Sex(male/female)、Embarked(C/Q/S) 编码方案如下 # 性别Sex 男(male)1女(female)0 sex_map {male: 1, female: 0} data[Sex] data[Sex].map(sex_map) # 登船码头Embarked 独热编码 embarked_dum pd.get_dummies(data[Embarked], prefixEmbarked, dtypeint) # 删除源数据中的Embarked列添加编码后的Embarked data.drop(columnsEmbarked, axis1, inplaceTrue) data pd.concat([data, embarked_dum], axis1)2非分类特征Fare、Age 对于非分类特征我们一般进行分箱处理 # 根据样本分位数进行分箱等比例分箱 # 船票价格(Fare) 分箱并序数编码 data[FareBand] pd.qcut(data[Fare], 4, labels[0, 1, 2, 3]) # 删除Fare特征 data.drop(columnsFare, inplaceTrue)# 年龄(Age) 分箱并序数编码 data[AgeBand] pd.cut(data[Age], bins[0, 12, 18, 60, 140], labels[0, 1, 2, 3]) # 删除Age特征 data.drop(columnsAge, inplaceTrue)3、特征选择与提取 3.1、特征提取 1头衔特征 通过观察数据我们发现乘客姓名中包含头衔例如Mrs表示已婚女性。这些头衔可以将乘客进一步细分 提取姓名中的头衔 # 提取姓名中的头衔 def extract_title(name: str):return name.split(,)[1].split(.)[0].strip()添加头衔特征 # 添加头衔特征 data[Title] data[Name].apply(extract_title)查看头衔及数量 # 查看头衔及数量 print(data[Title].value_counts().reset_index())由于头衔类别较多且部分不同写法但意思相同需要整合 # 整合意思相同的头衔 data[Title].replace([Capt, Col, Major, Dr, Rev, Jonkheer, Don, Sir, the Countess, Dona, Lady], Other, inplaceTrue) data[Title].replace([Mme, Ms], Mrs, inplaceTrue) data[Title].replace([Mlle], Miss, inplaceTrue) print(data[Title].value_counts().reset_index())对头衔特征进行编码转化为数值 # 头衔特征编码序数编码 title_map {Mr: 0, Miss: 1, Mrs: 2, Master: 3, Other: 4} data[Title] data[Title].map(title_map)# 删除Name特征 data.drop(columnsName, axis1, inplaceTrue)2家庭规模特征 通过观察数据我们发现我们可以通过乘客兄弟姐妹及配偶人数和乘客父母及子女人数计算得到本次出行的乘客家庭规模 # 家庭规模(FamilySize) 兄弟姐妹及配偶人数(SibSp) 父母及子女人数(Parch) 乘客自己(1) data[FamilySize] data[SibSp] data[Parch] 1 # 对家庭规模特征进行分箱1人(Alone)、2-4人(Small)、4人(Large) data[FamilySize] pd.cut(data[FamilySize], bins[1, 2, 5, 12], labels[A, S, L], rightFalse, include_lowestTrue) # 家庭规模特征编码序数编码 fs_map {A: 0, S: 1, L: 2} data[FamilySize] data[FamilySize].map(fs_map) # 删除SibSp、Parch特征 data.drop(columns[SibSp, Parch], inplaceTrue)3.2、特征选择 更多的数据优于更好的算法而更好的数据优于更多的数据。删除无关特征最大程度保留数据 # 删除其他无关特征 data.drop(columns[PassengerId, Ticket], inplaceTrue) # 应用了特征工程的数据 print(data.head().to_string())将非数值型的原始数据转化为数值型的特征这就是特征工程所做的事情 4、建模与预测 保存特征工程处理后的数据以方便进行训练和评估 # 保存特征工程处理后的数据训练集和测试集 data.to_csv(new_train.csv, indexFalse, encodingutf-8)特征工程处理后的泰坦尼克号数据集下载训练集和测试集传送门 需要注意的是测试集不包含Survived列。因此我们将对处理后的训练集重新进行训练集与测试集的划分并基于新的训练集与测试集建模和预测 # 训练集和测试集 train pd.read_csv(new_train.csv) # X_test pd.read_csv(new_test.csv) X_train train.iloc[:, 1:] y_train train.iloc[:, 0]from sklearn.model_selection import train_test_split# 重新划分训练集80%和测试集20% X_train, X_test, y_train, y_test train_test_split(X_train, y_train, test_size0.2, random_state0)下面我们使用多种分类算法进行建模和预测 4.1、逻辑回归幸存者预测 from sklearn.linear_model import LogisticRegression# 逻辑回归分类器(二分类)默认求解器lbfgs、分类方式OvR lr LogisticRegression() # 训练模型 lr.fit(X_train, y_train)# 预测 y_pred lr.predict(X_test) # print(y_pred)# 准确度评分 print(lr.score(X_test, y_test)) # 0.78212290502793294.2、K近邻分类幸存者预测 from sklearn.neighbors import KNeighborsClassifier# KNN分类器默认使用标准欧几里德度量标准 knn_clf KNeighborsClassifier(n_neighbors2) # 训练模型 knn_clf.fit(X_train, y_train)# 预测 y_pred knn_clf.predict(X_test) # print(y_pred)# 平均准确度 print(knn_clf.score(X_test, y_test)) # 0.8156424581005587现在只要给定一个新的乘客的数据我们就能预测该乘客在此次泰坦尼克号事故中是否幸存了而且预测准确率约达80%
http://www.pierceye.com/news/750621/

相关文章:

  • 红酒 专业 网站建设视频网站后台
  • 宁波网站建设58同城百度突然搜不到网站
  • 网站开发技术和seo的联系wordpress发邮件卡主
  • 网站开发安全模块方案网站运营方案怎么写?
  • 章丘网站制作手机网站 微信平台
  • 自定义功能的网站做坏事网站
  • 做农村电子商务的网站有哪些wordpress批量修改引用网址
  • 简述建立网站的步骤内蒙古建设监理协会网站
  • 网站上传格式工信部 网站备案查询
  • 网站开发怎么让别人看到网站设计主流尺寸
  • 都匀经济开发区建设局网站华宇网站建设
  • 南谯区住房和城乡建设局网站大连百度推广优化
  • 东莞设计网站公司被邀请做刷客会不会碰到钓鱼网站
  • 阿里云服务器多个网站南充网络推广
  • 电子商务网站建设规划设计任务书wordpress 有道云笔记
  • 广州市地铁站地图潍坊网站建设方案
  • 买一个网站服务器多少钱企业 怎么建交互网站
  • 国产网站开发工具公司福建新闻最新消息
  • 云主机和云虚拟主机优化教程网站推广排名
  • 佛山网站建设开发二维码生成器永久免费版下载
  • 衡水网站建设衡水网站建设网站建设南宁
  • 汽车网站推广策划方案wordpress又拍云cdn伪静态
  • 用dw建立网站网站设计师要学什么
  • 网站模块建设中二级医院做网站
  • 求大神帮忙做网站云网站后台
  • 保护稀有动物网站建设策划书凡科建站多少钱
  • 怎么通过做网站来赚钱坪山网站建设方案
  • 网站架构设计师工作内容传媒在线网站模板
  • 重庆哪里有做网站的公司互联网公司网站建设ppt
  • 海南的网站建设公司wordpress最新版中午