随机向量函数链神经网络(RVFLNN)
洛伦兹系统
使用四阶龙格库塔成生成实验数据,参考博文:混沌系统数值模拟
dt=0.02d t = 0.02dt=0.02, 包含 10000 个点.
红线和绿线是初始条件相差非常小的两条轨线,随时间发展分道扬镳,上图展示了混沌系统的初值敏感性。
RVFLNN
随机向量函数连接网络 random vector functional-link neural network
模型的表达式
Y=W⋅[x∣∣ζ(xWh+βh)]Y = W\cdot [x|| \zeta(xW_h+\beta_h)]Y=W⋅[x∣∣ζ(xWh+βh)]
python 实现
class RVFLNN:def __init__(self):self.N_i = None # 输入节点数self.N_o = None # 输出节点数self.N_h = 200 # 隐层节点数self.sigma = 1self.beta = 1e-6def train(self, X, Y):self.N_i = X.shape[0]self.N_o = Y.shape[0]self.W_i = np.random.uniform(-self.sigma,self.sigma, (self.N_h, self.N_i+1))Z = np.tanh(self.W_i.dot(np.vstack([X,np.ones([1,X.shape[1]])]))) H = np.vstack([Z,X])self.W_o = Y.dot(H.T.dot(np.linalg.inv(H.dot(H.T)+self.beta*np.eye(self.N_h+self.N_i))))def predict(self, X):Z = np.tanh(self.W_i.dot(np.vstack([X,np.ones([1,X.shape[1]])])))H = np.vstack([Z,X])return self.W_o.dot(H)
训练
np.random.seed(42)model = RVFLNN()n = 2 # 使用 n 个历史点作为输入num_train = 8000
x_train = np.vstack([select_samples(x,0+i,num_train) for i in range(n)])
y_train = select_samples(x,n,num_train)model.train(x_train, y_train)
测试
num_test = 2000
test_start = 8000
P = np.empty((3,num_test))
Q = select_samples(x,test_start, num_test)
p = np.vstack([select_samples(x,test_start-n+i,1) for i in range(n)])for i in range(num_test):p_next = model.predict(p)P[:,i] = np.squeeze(p_next)p = np.vstack([p,p_next])[3:]fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax = fig.add_subplot()
plt.plot(*P, 'r')
plt.plot(*Q, 'g')
plt.figure()
dim = ['x','y','z']
for i in range(3):plt.subplot(3,1,i+1)plt.plot(P[i,:].T, label='prediction')plt.plot(Q[i,:].T, label='true')plt.ylabel(dim[i])plt.legend(loc='upper right')
实验证明,RVFLNN 可以重建洛伦兹吸引子。
随机向量函数链神经网络(RVFLNN)相关推荐
- 随机森林和神经网络有什么区别?
随机森林和神经网络这两种广泛使用的机器学习算法有什么区别呢?我们什么时候应该使用神经网络,什么时候又应该使用随机森林?随机森林与神经网络哪个更好?这是一个常见问题,答案其实也非常简单:视情况而定.(调 ...
- Matlab实现随机森林、神经网络、Lasso回归
实现之前所说的上传Matlab实现随机森林.神经网络.Lasso回归的承诺. Lasso lasso具有降维的功能,但区别于PCA,lasso直接减少特征数,做的是特征选择,PCA是通过空间转换将特征 ...
- MIT与FAIR提出「mixup」,利用数据和标签的随机线性插值提高神经网络的健壮性
来源: 雷克世界 摘要:麻省理工学院(MIT)与Facebook人工智能研究院(FAIR)提出了一种能够构建虚拟训练样本的方法--mixup,提高了神经网络的健壮性. 近日,麻省理工学院(MIT)与F ...
- sklearn线性回归,支持向量机SVR回归,随机森林回归,神经网络回归参数解释及示例
1.sklearn线性回归 线性回归,其中目标值 y 是输入变量 x 的线性组合. 在数学概念中,如果 是预测值. 在整个模块中,我们定义向量 作为 coef_ ,定义 作为 intercept ...
- 随机线性插值提高神经网络的健壮性
https://blog.csdn.net/cf2suds8x8f0v/article/details/78431112
- 人工智能热门技术研究课题
人工智能热门技术研究课题 当前人工智能在诸多行业领域已经实现了广泛应用,但在热门技术方面来看,安全性等方面依然存在一定缺陷. 用简单的"对抗性补丁"(adversarial pat ...
- 随机地址生成器_随机连接神经网络性能超过人工设计!何恺明等人发布新研究...
选自arxiv 作者:Saining Xie.Alexander Kirillov.Ross Girshick.Kaiming He 机器之心编译 随机连接的神经网络性能居然比人工设计的网络(ResN ...
- 干货!鲁棒彩票现象:藏在随机初始化神经网络中的鲁棒子网络
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 深度神经网络已被发现容易受到对抗性样本的影响,即一个人眼不可见的扰动会让神经网络做出错误的预测,对抗训练也因此被提出,通过在原始训练图片 ...
- 避免神经网络过拟合的5种技术(附链接) | CSDN博文精选
作者 | Abhinav Sagar 翻译 | 陈超 校对 | 王琦 来源 | 数据派THU(ID:DatapiTHU) (*点击阅读原文,查看作者更多精彩文章) 本文介绍了5种在训练神经网络中避免过 ...
- Python实现神经网络(零基础篇)
前言 本文旨在对于机器语言完全零基础但较有兴趣或对神经网络较浅了解的朋友,通过阐述对神经网络的基础讲解以及Python的基本操作,来利用Python实现简单的神经网络:并以此为基础,在未来方向的几篇文 ...
最新文章
- ssd_mobilenet_v2_quantized_coco 转为 tflite 格式在 Android 上运行
- debian android环境搭建,Debian类系统环境变量的配置
- 回归(regression)与分类(classification)的区别
- Maven 的 Scope 区别,你知道吗?
- ppt倒计时3分钟_PPT做的又慢又丑?花3分钟学会这5个PPT神技巧,快速做出好看PPT...
- Linux基础入门学习笔记之二
- linux好用的编译器,推荐几款Linux下比Notepad++好的编辑器软件
- js 禁止android手机返回键,js禁止浏览器,微信,及手机物理键的返回
- SELinux系列(三)——SELinux的三种工作模式
- python基础_collections系列
- matlab小波分解图像,MATLAB小波图像分解
- 小米Air3笔记本拆机踩坑教程
- e.pageX、e.clientX、e.screenX、e.offsetX的区别以及元素的一些CSS属性
- Node 的单元测试--jasmine
- android屏幕坏 操作手机,手机屏幕碎了怎么备份操作?
- 数据库被置疑后的解决方法
- 从潞晨到世界名校,实习生火热招聘中
- 用 console 画条龙?
- 果实可采摘点论文汇总
- imx6ul 16 之DDR
热门文章
- 浅析ERP系统--质量
- ZZNU 1992: 情人节的尴尬
- OpenDDS的动态绑定bind_config传输配置和实例
- Arduino与Proteus仿真实例-HC-SRF04超声波测距仿真
- 时间序列预测中使用类EMD方法时的信息泄露和计算量问题
- 雷电3接口能干嘛_【分享帖】3块钱一斤的水泥能干嘛?600多万网友看完后都跪了:水泥竟然这么神…...
- Premiere cs6导出MP4格式视频
- 多家银行手机转账现高危漏洞 ,用户资金或被非法窃取
- Goldendict 崩溃退出问题
- TestCenter测试管理工具功能详解八(M)