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

北京市朝阳区网站制作怎么开发一个自己的网站

北京市朝阳区网站制作,怎么开发一个自己的网站,WordPress打开有广告,济南网站优化分析第四章 机器学习 三、数据预处理 1. 数据预处理的目的 去除无效数据、不规范数据、错误数据 补齐缺失值 对数据范围、量纲、格式、类型进行统一化处理#xff0c;更容易进行后续计算 2. 预处理方法 2.1 标准化#xff08;均值移除#xff09; 让样本矩阵中的每一列的…第四章 机器学习 三、数据预处理 1. 数据预处理的目的 去除无效数据、不规范数据、错误数据 补齐缺失值 对数据范围、量纲、格式、类型进行统一化处理更容易进行后续计算 2. 预处理方法 2.1 标准化均值移除 让样本矩阵中的每一列的平均值为 0标准差为 1。如有三个数 a, b, c则平均值为 m ( a b c ) / 3 a ′ a − m b ′ b − m c ′ c − m m (a b c) / 3 \\ a a - m \\ b b - m \\ c c - m m(abc)/3a′a−mb′b−mc′c−m 预处理后的平均值为 0 ( a ′ b ′ c ′ ) / 3 ( ( a b c ) − 3 m ) / 3 0 (a b c) / 3 ( (a b c) - 3m) / 3 0 (a′b′c′)/3((abc)−3m)/30 预处理后的标准差 s s q r t ( ( ( a − m ) 2 ( b − m ) 2 ( c − m ) 2 ) / 3 ) s sqrt(((a - m)^2 (b - m)^2 (c - m)^2)/3) ssqrt(((a−m)2(b−m)2(c−m)2)/3) a ′ ′ a / s a a / s a′′a/s b ′ ′ b / s b b / s b′′b/s c ′ ′ c / s c c / s c′′c/s s ′ ′ s q r t ( ( ( a ′ / s ) 2 ( b ′ / s ) 2 ( c ′ / s ) 2 ) / 3 ) s sqrt(((a / s)^2 (b / s) ^ 2 (c / s) ^ 2) / 3) s′′sqrt(((a′/s)2(b′/s)2(c′/s)2)/3) s q r t ( ( a ′ 2 b ′ 2 c ′ 2 ) / ( 3 ∗ s 2 ) ) sqrt((a^2 b^2 c^2) / (3 *s ^2)) sqrt((a′2b′2c′2)/(3∗s2)) 1 1 1 标准差又称均方差是离均差平方的算术平均数的平方根用 σ 表示 标准差能反映一个数据集的离散程度。 代码示例: # 数据预处理之均值移除示例 import numpy as np import sklearn.preprocessing as sp# 样本数据 raw_samples np.array([[3.0, -1.0, 2.0],[0.0, 4.0, 3.0],[1.0, -4.0, 2.0] ]) print(raw_samples) print(raw_samples.mean(axis0)) # 求每列的平均值 print(raw_samples.std(axis0)) # 求每列标准差std_samples raw_samples.copy() # 复制样本数据 for col in std_samples.T: # 遍历每列col_mean col.mean() # 计算平均数col_std col.std() # 求标准差col - col_mean # 减平均值col / col_std # 除标准差print(std_samples) print(std_samples.mean(axis0)) print(std_samples.std(axis0))[[ 3. -1. 2.][ 0. 4. 3.][ 1. -4. 2.]] [ 1.33333333 -0.33333333 2.33333333] [1.24721913 3.29983165 0.47140452] [[ 1.33630621 -0.20203051 -0.70710678][-1.06904497 1.31319831 1.41421356][-0.26726124 -1.1111678 -0.70710678]] [ 5.55111512e-17 0.00000000e00 -2.96059473e-16] [1. 1. 1.]也可以通过 sklearn 提供 sp.scale 函数实现同样的功能如下面代码所示 std_samples sp.scale(raw_samples) # 求标准移除 print(std_samples) print(std_samples.mean(axis0)) print(std_samples.std(axis0))[[ 1.33630621 -0.20203051 -0.70710678][-1.06904497 1.31319831 1.41421356][-0.26726124 -1.1111678 -0.70710678]] [ 5.55111512e-17 0.00000000e00 -2.96059473e-16] [1. 1. 1.]2.2 范围缩放 将样本矩阵中的每一列最小值和最大值设定为相同的区间统一各特征值的范围.如有 a, b, c 三个数其中 b 为最小值c 为最大值则 a ′ a − b a a - b a′a−b b ′ b − b b b - b b′b−b c ′ c − b c c - b c′c−b 缩放计算方式如下公式所示 a ′ ′ a ′ / c ′ a a / c a′′a′/c′ b ′ ′ b ′ / c ′ b b / c b′′b′/c′ c ′ ′ c ′ / c ′ c c / c c′′c′/c′ 计算完成后最小值为 0最大值为 1。以下是一个范围缩放的示例。 # 数据预处理之范围缩放 import numpy as np import sklearn.preprocessing as sp# 样本数据 raw_samples np.array([[1.0, 2.0, 3.0],[4.0, 5.0, 6.0],[7.0, 8.0, 9.0]]).astype(float64)# print(raw_samples) mms_samples raw_samples.copy() # 复制样本数据for col in mms_samples.T:col_min col.min()col_max col.max()col - col_mincol / (col_max - col_min) print(mms_samples) [[0. 0. 0. ][0.5 0.5 0.5][1. 1. 1. ]]也可以通过 sklearn 提供的对象实现同样的功能如下面代码所示 # 根据给定范围创建一个范围缩放器对象 mms sp.MinMaxScaler(feature_range(0, 1))# 定义对象(修改范围观察现象) # 使用范围缩放器实现特征值范围缩放 mms_samples mms.fit_transform(raw_samples) # 缩放 print(mms_samples)[[0. 0. 0. ][0.5 0.5 0.5][1. 1. 1. ]]执行结果 [[0. 0. 0. ][0.5 0.5 0.5][1. 1. 1. ]] [[0. 0. 0. ][0.5 0.5 0.5][1. 1. 1. ]]3. 归一化 Normalize 反映样本所占比率。 用每个样本的每个特征值除以该样本各个特征值绝对值之和。 变换后的样本矩阵每个样本的特征值绝对值之和为 1。 例如如下反映编程语言热度的样本中2018 年也 2017 年比较Python 开发人员数量减少了 2 万但是所占比率确上升了 年份Python万人Java万人PHP万人20171020520188101 归一化预处理示例代码如下所示 # 数据预处理之归一化 import numpy as np import sklearn.preprocessing as sp# 样本数据 raw_samples np.array([[10.0, 20.0, 5.0],[8.0, 10.0, 1.0] ]) print(raw_samples) nor_samples raw_samples.copy() # 复制样本数据for row in nor_samples:row / abs(row).sum() # 先对行求绝对值再求和再除以绝对值之和print(nor_samples) # 打印结果[[10. 20. 5.][ 8. 10. 1.]] [[0.28571429 0.57142857 0.14285714][0.42105263 0.52631579 0.05263158]]在 sklearn 库中可以调用 sp.normalize()函数进行归一化处理函数原型为 sp.normalize(原始样本, norml2) # l1: l1范数除以向量中各元素绝对值之和 # l2: l2范数除以向量中各元素平方之和使用 sklearn 库中归一化处理代码如下所指示 nor_samples sp.normalize(raw_samples, norml1) print(nor_samples) # 打印结果[[0.28571429 0.57142857 0.14285714][0.42105263 0.52631579 0.05263158]]4. 二值化 根据一个事先给定的阈值用 0 和 1 来表示特征值是否超过阈值.以下是实现二值化预处理的代码 # 二值化 import numpy as np import sklearn.preprocessing as spraw_samples np.array([[65.5, 89.0, 73.0],[55.0, 99.0, 98.5],[45.0, 22.5, 60.0]]) bin_samples raw_samples.copy() # 复制数组 # 生成掩码数组 mask1 bin_samples 60 mask2 bin_samples 60 # 通过掩码进行二值化处理 bin_samples[mask1] 0 bin_samples[mask2] 1print(bin_samples) # 打印结果[[1. 1. 1.][0. 1. 1.][0. 0. 1.]]同样也可以利用 sklearn 库来处理 bin sp.Binarizer(threshold59) # 创建二值化对象(注意边界值) bin_samples bin.transform(raw_samples) # 二值化预处理 print(bin_samples)[[1. 1. 1.][0. 1. 1.][0. 0. 1.]]二值化编码会导致信息损失是不可逆的数值转换。如果进行可逆转换则需要用到独热编码。 5. 独热编码 根据一个特征中不重复值的个数来建立一个由一个 1 和若干个 0 组成的序列用来序列对所有的特征值进行编码。例如有如下样本 [ 1 3 2 7 5 4 1 8 6 7 3 9 ] \left[ \begin{matrix} 1 3 2\\ 7 5 4\\ 1 8 6\\ 7 3 9\\ \end{matrix} \right] ​1717​3583​2469​ ​ 对于第一列有两个值1 使用 10 编码7 使用 01 编码 对于第二列有三个值3 使用 100 编码5 使用 010 编码8 使用 001 编码 对于第三列有四个值2 使用 1000 编码4 使用 0100 编码6 使用 0010 编码9 使用 0001 编码 编码字段根据特征值的个数来进行编码通过位置加以区分.通过独热编码后的结果为 [ 10 100 1000 01 010 0100 10 001 0010 01 100 001 ] \left[ \begin{matrix} 10 100 1000\\ 01 010 0100\\ 10 001 0010\\ 01 100 001\\ \end{matrix} \right] ​10011001​100010001100​100001000010001​ ​ 使用 sklearn 库提供的功能进行独热编码的代码如下所示 # 独热编码示例 import numpy as np import sklearn.preprocessing as spraw_samples np.array([[1, 3, 2],[7, 5, 4],[1, 8, 6],[7, 3, 9]])one_hot_encoder sp.OneHotEncoder(sparseFalse, # 是否采用稀疏格式dtypeint32,categoriesauto)# 自动编码 oh_samples one_hot_encoder.fit_transform(raw_samples) # 执行独热编码 print(oh_samples)print(one_hot_encoder.inverse_transform(oh_samples)) # 解码执行结果 [[1 0 1 0 0 1 0 0 0][0 1 0 1 0 0 1 0 0][1 0 0 0 1 0 0 1 0][0 1 1 0 0 0 0 0 1]][[1 3 2][7 5 4][1 8 6][7 3 9]]6. 标签编码 根据字符串形式的特征值在特征序列中的位置来为其指定一个数字标签用于提供给基于数值算法的学习模型。 代码如下所示 # 标签编码 import numpy as np import sklearn.preprocessing as spraw_samples np.array([audi, ford, audi,bmw,ford, bmw])lb_encoder sp.LabelEncoder() # 定义标签编码对象 lb_samples lb_encoder.fit_transform(raw_samples) # 执行标签编码 print(lb_samples)print(lb_encoder.inverse_transform(lb_samples)) # 逆向转换执行结果 [0 2 0 1 2 1] [audi ford audi bmw ford bmw]四、练习 1. 判断以下哪个是回归问题哪个是分类问题哪个是聚类问题。 判断一封邮件是否为垃圾邮件分类 在图像上检测出人脸的位置回归预测 x,y,w,h 四个值每个值都是连续的 视频网站根据用户观看记录找出喜欢看战争电影的用户聚类 2. 分类和聚类主要区别是什么 分类是有监督学习聚类是无监督学习 3. 判断以下哪些是数据降维问题 将 8*8 的矩阵缩小为 4*4 的矩阵是将二维矩阵变形为一维向量是将高次方程模型转换为低次方程模型是
http://www.zqtcl.cn/news/300724/

相关文章:

  • 锦州网站建设渠道山西做网站的公司有哪些
  • 4线城市搞网站开发丹灶网站建设公司
  • 青岛网站建设seo优化wordpress分类标题自定义
  • 网站开发本地环境在海南注册公司需要多少钱
  • 济南网站开发去哪儿旅行app下载安装
  • 大城 网站北京做网站男生工资
  • 赣州网站建设百家号免费软件网
  • 在合肥做网站多少钱网站开发外包平台
  • 百度指数查询平台网站建设SEO优化哪家好
  • 网站怎么在成都备案中企动力如何
  • 免费数据统计网站app推广拉新一手渠道
  • 网站推广效果不好原因zac seo博客
  • 高端网站设计合肥网站建设个人网站建设公
  • 廊坊建站模板系统做效果图的网站
  • 建网站打开需要验证四川省成都市建设厅官网
  • 网站文章列表如何排版珠海建设工程信息网站
  • 郑州个人做网站建设银行招聘网站
  • 杭州网站设计公司联系亿企邦网站怎么上百度
  • 网站建设的未来网站不备案访问
  • 网站改版效果图怎么做网站建设的五个基本要素
  • 河南建站网站做o2o网站需要多少钱
  • 重庆企业网站定制开发公司wordpress用户页
  • 电子商务网站seo网站规划与设计方向
  • 外贸双语网站源码wordpress 柚子
  • 隆昌市住房和城乡建设厅网站html5网页成品代码
  • 泉州丰泽建设局网站wordpress设置logo和公司名
  • 网页与网站设计实验总结网上商城互联网网站开发
  • 学院宣传网站建设简介郑州加盟网站建设
  • 上海网站建设sheji021wordpress ssl 图片
  • 网站管理人员队伍建设说明材料搞笑网站建设目的和意义