首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python机器学习(七)-人工神经网络

神经网络,对学机械的轮胎工程师来讲,简直是神一般的存在。机器学习两个月了,一直没敢动手碰这块,好奇心终于战胜了恐惧,决定尝试一下。

图片来自亿欧网

他是啥?

度娘说:人工神经网络(Artificial Neural Network,即ANN),从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。

简单讲就是利用计算机语言模拟人类大脑做决定的过程。

他能干啥?

太多了,写诗,画画,刷脸,看病,下棋,开车。。。当然还有最简单的应用---做回归模型预测。

怎么干?

太复杂,还是从简单的例子说起(复杂的不会,哼),用多层感知机来做回归运算,从sklearn中调用MLPRegressor。这种算法对数据非常敏感,需要进行标准化,调用StandardScaler

调用MLPRegressor进行建模,并对测试集数据进行预测,输出各隐藏层权重及系数:

MLPRegressor的参数可以通过《Python机器学习(六)-XGBoost调参》中用到的GridSearchCV进行调参。其中

Solver即所用到的算法

SGD:随机梯度下降

Adam:优化的SGD

Lbfgs:Hessian矩阵(二阶偏导)的逆来更新参数

Alpha:正则化L2,惩罚大数量级的权重,避免过拟合。

hidden_layer_sizes(9,9)表示有两层隐藏层,每层有9个神经元。

初次尝试,对神经网络有了浅浅的理解,总结如下

数据对归一化非常敏感,必须进行标准化

Solver中不同的算法对结果影响较大

神经网络还有还有很多其他的算法,等待去学习

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180610G07S2200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券