使用keras实现非线性回归(两种加激活函数的方式)


Posted in Python onJuly 05, 2020

我就废话不多说了,大家还是直接看代码吧~

import keras
import numpy as np
import matplotlib.pyplot as plt
#Sequential 按顺序构成的模型
from keras.models import Sequential#Sequential是模型结构,输入层,隐藏层,输出层
#Dense 全连接层,Activation激活函数
from keras.layers import Dense,Activation
from keras.optimizers import SGD
 
x_data=np.linspace(-0.5,0.5,200)#从-0.5到0.5范围内生成200个随机点
noise=np.random.normal(0,0.02,x_data.shape)#生成和x_data形状一样的噪声
y_data=np.square(x_data)+noise
 
#显示随机点
#plt.scatter(x_data,y_data)
#plt.show()
 
#构建一个顺序模型
model=Sequential()
 
#1-10-1,添加一个隐藏层
model.add(Dense(units=10,input_dim=1,activation='relu'))#units是隐藏层,输出维度,输出y,input_dim是输入维度,输入x
#model.add(Activation('tanh'))#给这一层添加一个双曲正切激活函数tanh函数
model.add(Dense(units=1,input_dim=10,activation='relu'))#input_dim可以不写,它可以识别到上一句的输出是10维
#model.add(Activation('tanh'))#给这一层添加一个双曲正切激活函数tanh函数
#定义优化器
sgd=SGD(lr=0.3)#学习率提高到0.3,训练速度会加快
 
model.compile(optimizer=sgd,loss='mse')#编译这个模型,sgd是随机梯度下降法,优化器.mse是均方误差
 
#训练模型
for step in range(5001):
  #每次训练一个批次
  cost=model.train_on_batch(x_data,y_data)#代价函数的值,其实就是loss
  #每500个batch打印一次cost值
  if step %500==0:
    print('cost:',cost)
 
#打印权值和偏置值
W,b=model.layers[0].get_weights()#线性回归,只有一层
print('W:',W,'b:',b)
 
#x_data输入网络中,得到预测值y_pred
y_pred=model.predict(x_data)
 
#显示随机点s
plt.scatter(x_data,y_data)
#显示预测结果
plt.plot(x_data,y_pred,'r-',lw=3)#r-表示红色的线,lw表示线宽
plt.show()

结果:

cost: 0.0077051604
cost: 0.0004980223
cost: 0.00047812634
cost: 0.00047762066
cost: 0.00047761563
cost: 0.00047761557
cost: 0.0004776156
cost: 0.0004776156
cost: 0.0004776156
cost: 0.00047761566
cost: 0.0004776156
W: [[ 0.37828678 0.37509003 0.1847014 -0.46519393 -0.6347979 -0.70865685
  0.55382997 -0.66780925 0.08229994 0.5980157 ]] b: [-0.00412499 -0.01216194 0.01939214 -0.03005166 -0.00475936 -0.00794064
 -0.00015427 -0.01620528 0.08056344 -0.01741577]

使用keras实现非线性回归(两种加激活函数的方式)

以上这篇使用keras实现非线性回归(两种加激活函数的方式)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现字符串类型与字典类型相互转换的方法
Aug 18 Python
Python中使用PyQt把网页转换成PDF操作代码实例
Apr 23 Python
Python算法之图的遍历
Nov 16 Python
python 使用正则表达式按照多个空格分割字符的实例
Dec 20 Python
Python3解释器知识点总结
Feb 19 Python
Numpy的简单用法小结
Aug 28 Python
python实现猜数字游戏
Mar 25 Python
python 监测内存和cpu的使用率实例
Nov 28 Python
关于tf.nn.dynamic_rnn返回值详解
Jan 20 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
Pycharm及python安装详细教程(图解)
Jul 31 Python
python迷宫问题深度优先遍历实例
Jun 20 Python
Keras 中Leaky ReLU等高级激活函数的用法
Jul 05 #Python
Django --Xadmin 判断登录者身份实例
Jul 03 #Python
详解Python多线程下的list
Jul 03 #Python
Python 字符串池化的前提
Jul 03 #Python
Pycharm打开已有项目配置python环境的方法
Jul 03 #Python
使用Dajngo 通过代码添加xadmin用户和权限(组)
Jul 03 #Python
windows支持哪个版本的python
Jul 03 #Python
You might like
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
浅谈PHP中其他类型转化为Bool类型
2016/03/28 PHP
基于jQuery的一个扩展form序列化到json对象
2010/12/09 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
2013/08/07 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
javascript上传图片前预览图片兼容大多数浏览器
2013/10/25 Javascript
javascript内置对象arguments详解
2014/03/16 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
2015/09/25 Javascript
JavaScript中文件上传API详解
2016/04/01 Javascript
浅谈JS中json数据的处理
2016/06/30 Javascript
js仿网易表单及时验证功能
2017/03/07 Javascript
JS判断两个对象内容是否相等的方法示例
2017/04/10 Javascript
jquery实现提示语淡入效果
2017/05/05 jQuery
vue.js vue-router如何实现无效路由(404)的友好提示
2017/12/20 Javascript
vue.js配合$.post从后台获取数据简单demo分享
2018/08/11 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
js比较两个单独的数组或对象是否相等的实例代码
2019/04/28 Javascript
微信小程序系列之自定义顶部导航功能
2019/05/21 Javascript
JS代码检查工具ESLint介绍与使用方法
2020/02/04 Javascript
让IE9以下版本的浏览器兼容HTML5的方法
2014/03/12 HTML / CSS
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
char型变量中能不能存贮一个中文汉字
2015/07/08 面试题
排序都有哪几种方法?请列举。用JAVA实现一个快速排序
2014/02/16 面试题
高中生自我鉴定范文
2013/10/30 职场文书
小学教师管理制度
2014/01/18 职场文书
《大作家的小老师》教学反思
2014/04/16 职场文书
优秀团员自我评价范文
2014/04/23 职场文书
献爱心大型公益活动策划方案
2014/09/15 职场文书
销售员岗位职责
2015/02/10 职场文书
2015年优质护理服务工作总结
2015/04/08 职场文书
2015年工商所工作总结
2015/05/21 职场文书
新员工入职感想
2015/08/07 职场文书
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
2021/04/13 Python