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

品牌管理公司网站建设网站开发文档网站

品牌管理公司网站建设,网站开发文档网站,怎么租域名做网站,wordpress 弹窗注册登录目录 归一化的作用#xff1a; 应用场景说明 sklearn 准备工作 sklearn 安装 sklearn 上手 线性回归实战 归一化的作用#xff1a; 归一化后加快了梯度下降求最优解的速度; 归一化有可能提高精度(如KNN) 应用场景说明 1#xff09;概率模型不需要归一化#xff…目录 归一化的作用 应用场景说明 sklearn 准备工作 sklearn 安装 sklearn 上手 线性回归实战 归一化的作用 归一化后加快了梯度下降求最优解的速度; 归一化有可能提高精度(如KNN) 应用场景说明 1概率模型不需要归一化因为这种模型不关心变量的取值而是关心变量的分布和变量之间的条件概率 2SVM、线性回归之类的最优化问题需要归一化是否归一化主要在于是否关心变量取值 3神经网络需要标准化处理一般变量的取值在-1到1之间这样做是为了弱化某些变量的值较大而对模型产生影响。一般神经网络中的隐藏层采用tanh激活函数比sigmod激活函数要好些因为tanh双曲正切函数的取值[-1,1]之间均值为0. 4在K近邻算法中如果不对解释变量进行标准化那么具有小数量级的解释变量的影响就会微乎其微。 sklearn 是集成了最常用的机器学习模型的 Python 库使用起来非常轻松简单有着广泛的应用。sklearn 全称 scikit-learn其中scikit表示SciPy Toolkit因为它依赖于SciPy库。learn则表示机器学习。 官网地址https://scikit-learn.org/stable/  中文文档https://www.sklearncn.cn/ Scikit-learn的基本功能主要被分为六大部分分类回归聚类数据降维模型选择和数据预处理。 1.分类是指识别给定对象的所属类别属于监督学习的范畴最常见的应用场景包括垃圾邮件检测和图像识别等。 目前Scikit-learn已经实现的算法包括支持向量机SVM最近邻逻辑回归随机森林决策树以及多层感知器MLP神经网络等等。 需要指出的是由于Scikit-learn本身不支持深度学习也不支持GPU加速因此这里对于MLP的实现并不适合于处理大规模问题。 2.回归是指预测与给定对象相关联的连续值属性最常见的应用场景包括预测药物反应和预测股票价格等。目前Scikit-learn已经实现的算法包括支持向量回归SVR脊回归Lasso回归弹性网络Elastic Net最小角回归LARS贝叶斯回归以及各种不同的鲁棒回归算法等。可以看到这里实现的回归算法几乎涵盖了所有开发者的需求范围而且更重要的是Scikit-learn还针对每种算法都提供了简单明了的用例参考。 3.聚类是指自动识别具有相似属性的给定对象并将其分组为集合属于无监督学习的范畴最常见的应用场景包括顾客细分和试验结果分组。目前Scikit-learn已经实现的算法包括K-均值聚类谱聚类均值偏移分层聚类DBSCAN聚类等。 4.数据降维是指使用主成分分析PCA、非负矩阵分解NMF或特征选择等降维技术来减少要考虑的随机变量的个数其主要应用场景包括可视化处理和效率提升。 5.模型选择是指对于给定参数和模型的比较、验证和选择其主要目的是通过参数调整来提升精度。目前Scikit-learn实现的模块包括格点搜索交叉验证和各种针对预测误差评估的度量函数。 6.数据预处理是指数据的特征提取和归一化是机器学习过程中的第一个也是最重要的一个环节。这里归一化是指将输入数据转换为具有零均值和单位权方差的新变量但因为大多数时候都做不到精确等于零因此会设置一个可接受的范围一般都要求落在0-1之间。而特征提取是指将文本或图像数据转换为可用于机器学习的数字变量。需要特别注意的是这里的特征提取与上文在数据降维中提到的特征选择非常不同。特征选择是指通过去除不变、协变或其他统计上不重要的特征量来改进机器学习的一种方法。 总结来说Scikit-learn实现了一整套用于数据降维模型选择特征提取和归一化的完整算法/模块虽然缺少按步骤操作的参考教程但Scikit-learn针对每个算法和模块都提供了丰富的参考样例和详细的说明文档。 准备工作 任何一个工具箱都不是独立存在的scikit-learn 是基于 Python 语言建立在 NumPy SciPy 和 matplotlib 上。在上手sklearn之前建议掌握的原理或工具有 机器学习算法原理。 PyCharm IDE 或者 Jupyter Notebook。 Python的基本语法和Python中的面向对象的概念与操作。 Numpy的基本数据结构和操作方法加减乘除、排序、查找、矩阵的计算等。 Pandas读写数据的方法举个例子读csv文件中的数据用Pandas也就一句data pandas.read_csv(data.csv)。 Matplotlib 绘图工具满足我们对基本的数据结果的各种展示需求。 sklearn 安装 scikit-learn 安装非常简单 使用 pip pip install -U scikit-learn或者 conda: conda install scikit-learn如果你还没有Python和Anaconda或者PyCharm可以参考这篇文章 sklearn 上手 学习sklearn最好的方式就是在实践中学习让我们来看看用sklearn实现线性回归的例子。线性回归的公式非常简单 处于实际应用的角度我们其实只关心两个问题如何根据现有的数据算出线性回归模型的参数参数求出之后我们怎么用它来预测 sklearn 官网很直接地给出了这样一段代码 import numpy as np from sklearn.linear_model import LinearRegression X  np.array([[1, 1], [1, 2], [2, 2], [2, 3]]) # y  1 * x_0  2 * x_1  3 y  np.dot(X, np.array([1, 2]))  3 reg  LinearRegression().fit(X, y)reg.coef_ # array([1., 2.]) reg.intercept_ # 3.0000... reg.predict(np.array([[3, 5]])) # array([16.])Xarray([[1, 1],[1, 2],[2, 2],[2, 3]]) yarray([ 6,  8,  9, 11])这里注意下X 是一个 5×2 的数组和矩阵稍有不同但形状完全一样而y是一个一维的数组。由此可见我们要用来拟合的数据其输入变量必须是列向量而输出的这个变量则相对自由注意这也是sklearn相对比较坑的一点官方的说法是为了节省内存开销但如果熟悉Matlab、R等相对更加专业的计算类程序的人容易觉得不适应。 那么明白了这一点我们要输入怎样的数据就完全明确了。那么如果我们想换上自己的数据不外乎也就是把 X 和 y 按照同样的格式输入即可。 第6行首先是直接调用LinearRegression类的方法fit(X,y)直接实例化了一个线性回归模型并且用上面生成的数据进行了拟合。 看到这里就能够明白了原来只需要把数据按照格式输入就可以完成模型的拟合。事实上这段代码也可以改成以下形式 reg  LinearRegression() reg.fit(X, y)因为fit()方法返回值其实是模型本身self的一个实例(也就是返回了它自己这个 LinearRegression对象)所以在初始化reg之后只需要直接调用fit()它自己对应的系数值属性就被成功赋值。这种写法更为推荐因为它虽然看起来多出一行但整个运行的机制则显得更加清晰。 第9和11行是系数和偏差值的展示。上面提到注释中已经说明了数据就是由方程 生成的而这时我们看到系数值分别等于 1,2 而偏差值是 3和理论模型完全一致。 第13行此时它调用了LinearRegression类的predict()方法。那么显然这个方法就是利用拟合好的线性回归模型来计算新输入值对应的输出值。这里新输入值仍然和拟合时的格式保持一致。 那么小结一下根据官方文档要拟合一个线性回归模型并且预测出新值的话其实只需要进行四个步骤 格式化数据输入为n*d的数组其中n表示数据的个数d是维度输出值是一维数组 初始化模型LinearReregression() 拟合fit(X,y) 预测predict(X_test) 线性回归实战 实战案例中使用了diabetes数据集。该数据集包括442位糖尿病患者的生理数据及一年以后的病情发展情况。共442个样本每个样本有十个特征分别是 [‘age’, ‘sex’, ‘bmi’, ‘bp’, ‘s1’, ‘s2’, ‘s3’, ‘s4’, ‘s5’, ‘s6’]对应年龄、性别、体质指数、平均血压、S1~S6一年后疾病级数指标。Targets为一年后患疾病的定量指标值在25到346之间。 本节我们将通过糖尿病患者的体重bmi预测糖尿病患者接下来病情发展的情况。在实际应用中可以根据预测模型提前预知患者的病情发展从而提前做好应对措施改善患者的病情。 # 导入必要的工具箱 import matplotlib.pyplot as plt import numpy as np from sklearn import datasets, linear_model from sklearn.metrics import mean_squared_error, r2_score# 导入糖尿病数据集 diabetes_X, diabetes_y  datasets.load_diabetes(return_X_yTrue)# Use only one feature diabetes_X  diabetes_X[:, np.newaxis, 2]# 取第三列bmi的值# Split the data into training/testing sets diabetes_X_train  diabetes_X[:-20] diabetes_X_test  diabetes_X[-20:]# Split the targets into training/testing sets diabetes_y_train  diabetes_y[:-20] diabetes_y_test  diabetes_y[-20:]# Create linear regression object regr  linear_model.LinearRegression()# fit()函数拟合 regr.fit(diabetes_X_train, diabetes_y_train)# Make predictions using the testing set diabetes_y_pred  regr.predict(diabetes_X_test)# The coefficients 输出回归系数 print(Coefficients: \n, regr.coef_) # The mean squared error print(Mean squared error: %.2f % mean_squared_error(diabetes_y_test, diabetes_y_pred)) # The coefficient of determination: 1 is perfect prediction 决定系数越接近1越好 print(Coefficient of determination: %.2f % r2_score(diabetes_y_test, diabetes_y_pred))# Plot outputs plt.scatter(diabetes_X_test, diabetes_y_test, colorblack) plt.plot(diabetes_X_test, diabetes_y_pred, colorblue, linewidth3)plt.xticks(()) plt.yticks(())plt.show()# print输出评价指标 Coefficients:[938.23786125] Mean squared error: 2548.07 Coefficient of determination: 0.47通过模型可以看出随着体重指标的增加病情的级数也在增加因此可以预测某位患者接下来一年内病情将会如何发展。当然通过多变量分析我们可以得到更好的模型。
http://www.ho-use.cn/article/10820936.html

相关文章:

  • 后台查看网站容量电商平台的营销策略
  • 销量不高的网站怎么做西安购物网站建设
  • 门户网站建设需求湛江网站建设团队
  • 江苏嘉瑞通建设有限公司网站免费下载网站有哪些
  • 搜狗推广做网站要钱吗义乌制作网站公司
  • 高端网站建设公司有哪些项目网站建设一般要多大空间
  • 网站seo推广计划销售网站的销量统计怎么做
  • 做衣服的教程网站有哪些全国装修公司排名100强
  • 建设维护网站 未签订合同wordpress中文企业主题下载
  • 用tomcat做网站目录wordpress 网站上传到服务器
  • 宣讲家网站生态文明建设福永做网站
  • vps网站目录显示灰色的上海建设工程 U盘登录哪个网站
  • 学做简单网站自媒体网站建设论文
  • 有没有可以做物理实验的网站18年手机网站
  • 怎么在国外网站买东西顺义区网站建设
  • 在哪里建设网站wordpress手机版安装
  • 常德网站制作贵州十大广告公司
  • wordpress 4.9 站群php网站开发工程
  • 车机油哪个网站做的好成都网站建站推广
  • 长沙建站模板大全天津网站定制公司
  • 下载网站源文件免费购物的软件
  • 网站建设如何开票怎么做系统网站
  • 网站制作公司报价正确的网线的顺序图
  • 空间站免费版下载东莞市阳光网
  • 一级a做爰片51网站怎么在自己网站上做拼图
  • 网站友情链接模块毕设如何做网站
  • 网站点击赚钱怎么做当地自己的淘宝网站怎么做
  • 一图读懂制作网站公司logo在线设计
  • 学生个人网页制作代码模板怀化优化网站排名
  • 北京商城网站建设报价网站托管流程