使用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查看多台服务器进程的脚本分享
Jun 11 Python
Python深入学习之内存管理
Aug 31 Python
Python多维/嵌套字典数据无限遍历的实现
Nov 04 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
Mar 24 Python
初学python的操作难点总结(新手必看篇)
Aug 03 Python
Python内置函数reversed()用法分析
Mar 20 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
Nov 14 Python
Django model select的多种用法详解
Jul 16 Python
python图像处理模块Pillow的学习详解
Oct 09 Python
Python退出时强制运行一段代码的实现方法
Apr 29 Python
k-means 聚类算法与Python实现代码
Jun 01 Python
解决PDF 转图片时丢文字的一种可能方式
Mar 04 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
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
PHP 获取客户端真实IP地址多种方法小结
2010/05/15 PHP
Yii2 加载css、js 载静态资源的方法
2017/03/10 PHP
php生成条形码的图片的实例详解
2017/09/13 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
javascript preload&lazy load
2010/05/13 Javascript
js history对象简单实现返回和前进
2013/10/30 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
Nodejs高扩展性的模板引擎 functmpl简介
2017/02/13 NodeJs
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
Swiper实现轮播图效果
2017/07/03 Javascript
Windows安装Node.js报错:2503、2502的解决方法
2017/10/25 Javascript
深入浅出理解JavaScript闭包的功能与用法
2018/08/01 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
jQuery实现移动端笔触canvas电子签名
2020/05/21 jQuery
python使用内存zipfile对象在内存中打包文件示例
2014/04/30 Python
详解python基础之while循环及if判断
2017/08/24 Python
Python从Excel中读取日期一列的方法
2018/11/28 Python
django框架使用orm实现批量更新数据的方法
2019/06/21 Python
django实现类似触发器的功能
2019/11/15 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
keras的三种模型实现与区别说明
2020/07/03 Python
学python爬虫能做什么
2020/07/29 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
Python爬虫过程解析之多线程获取小米应用商店数据
2020/11/14 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
2021/01/12 Python
网络安全方面的面试题
2015/11/04 面试题
生产副总岗位职责
2013/11/28 职场文书
收银员的岗位职责范本
2014/02/04 职场文书
高二物理教学反思
2014/02/08 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
大学校务公开实施方案
2014/03/31 职场文书
2014年网络管理员工作总结
2014/12/01 职场文书
志愿者工作心得体会
2016/01/15 职场文书