RBF 就是计算两个点之间的相似度。

真正把特征从低维空间映射到高维空间的是你选择的隐层的节点数,隐层的节点数就是高维空间的维数。

如下实现了输入层到隐层之间文随机权重的径向基函数神经网络(RBFNN)

def pairwise_distances(X, Y):D = -2 * X @ Y.T + np.sum(Y ** 2, axis=1) + np.sum(X ** 2, axis=1)[:, np.newaxis]D[D < 0] = 0return Dclass RBFNN:def __init__(self):self.N_i = Noneself.N_o = Noneself.N_h = 200self.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))# 隐层输出H = np.exp(-pairwise_distances(self.W_i, X.T))self.W_o = Y.dot(H.T.dot(np.linalg.inv(H.dot(H.T)+self.beta*np.eye(self.N_h))))def predict(self, X):H = np.exp(-pairwise_l2_distances(self.W_i, X.T))return self.W_o.dot(H)

在洛伦兹系统的动态重建实验上表现很好:

np.random.seed()model = RBFNN()n = 1  # 使用 n 个历史点作为输入num_train = 3000
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 = 5000
test_start = 5000
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')


径向基函数神经网络(RBFNN)相关推荐

  1. 径向基函数神经网络RBFNN

    概述 径向基函数(Radial Basis Function)神经网络是具有唯一最佳逼近(克服局部极小值问题).训练简洁.学习收敛速度快等良好性能的前馈型神经网络,目前已证明RBFNN能够以任意精度逼 ...

  2. 径向基函数神经网络(RBFNN)详解

    径向基函数神经网络RBFNN 前言 1.基础知识 1.1 径向基函数(RBF) 1.2 非线性问题 1.3 高级的径向基函数 1.4 RBFNN的结构 2.RBFNN的原理 2.1基本原理 2.2径向 ...

  3. 人工神经网络:径向基函数神经网络

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.今日所学 前言 多层感知器是一类全局逼近的神经网络,网络的每个权重对任何一个输出都会产生同等程度的影响.因而对于每 ...

  4. 神经网络学习笔记(一) RBF径向基函数神经网络

    神经网络学习笔记(一) RBF径向基函数神经网络 2018年08月06日 13:34:26 吃机智豆长大的少女乙 阅读数:2735 RBF径向基函数神经网络 初学神经网络,以下为综合其他博主学习材料及 ...

  5. 神经网络学习笔记(五) 径向基函数神经网络

    径向基函数神经网络 首先介绍一下网络结构: 1.输入层为向量,维度为m,样本个数为n,线性函数为传输函数. 2.隐藏层与输入层全连接,层内无连接,隐藏层神经元个数与样本个数相等,也就是n,传输函数为径 ...

  6. matlab十字路口车流量仿真,基于高斯径向基函数神经网络的十字路口车流量预测...

    2006年3月 摘要: 采用径向基函数预测功能的神经网络,对十字路口的车流量进行实时预测,仿真实验结果表明使用该神经网络对交叉口车流量进行预测可以得到令人满意的结果.关键词:神经网络:径向基函数:十字 ...

  7. 径向基函数神经网络简述

    径向基函数神经网络是不同于BP神经网络的另一种的前馈神经网络,由输入层.一层非线性隐层(径向基层)和线性输出层组成的. 关于径向基函数神经网络,首先要介绍一个定理,cover定理,对于一个复杂的在低维 ...

  8. 径向基函数神经网络_基于RBF神经网络的网络安全态势感知预测研究

    点击上方"网络空间安全学术期刊"关注我们 基于RBF神经网络的网络安全态势 感知预测研究 钱建, 李思宇 摘要 针对网络安全态势的感知问题,结合巨龙山和者磨山风电场的运行情况,文章 ...

  9. 径向基函数神经网络_神经网络

    本文主要参考周志华老师的<机器学习>和Tom M. Mitchell老师的<机器学习>. 神经网络是一种模拟人脑的神经网络以期能够实现类人工智能的机器学习技术. 一.神经网络的 ...

最新文章

  1. php配置mongodb扩展、安装mongodb服务教程
  2. 把eclipse从英文调整为中文
  3. C语言 使用指针对两个变量的数值进行互换
  4. python数字转对应中文_python中将阿拉伯数字转换成中文的实现代码 | 学步园
  5. 前端学习(2452):封装数据接口
  6. FFMpeg分析详细分析
  7. C#复习笔记(3)--C#2:解决C#1的问题(可空值类型)
  8. 乘积取中法matlab,迭代取中法、乘同余法及混合同余法产生随机数方法
  9. 谁说漂亮女程序猿就不能拿大厂Offer了?
  10. 190403 联众验证码 - python3接入
  11. 金融行业软件测试面试题(含答案)
  12. Python实现登录注册系统
  13. 网页版终端webssh2配置
  14. linux redis端口修改端口,linux下安装redis 指定自定义端口
  15. 网络营销常用的几种策略
  16. 利用pcl库实现简单单帧障碍物检测
  17. 基于C#开发一款益智类一笔画小游戏
  18. 一步到位安装R环境(R,Rattle,RStudio)
  19. 在内存中不能为Read的问题的解决方案收集
  20. 计算机辅助建筑设计英文全称是,计算机辅助建筑设计课程,Computer-aided architecture design,音标,读音,翻译,英文例句,英语词典...

热门文章

  1. 如何通过IP找到地址?
  2. mysql (1205, 'Lock wait timeout exceeded; try restarting transaction')
  3. 超越杯编程大赛前线报道
  4. 软件需求工程(第二章)
  5. 万字长文读透 Redis
  6. Kali Linux修改更新源
  7. Android答题计时的代码,Android答题倒计时
  8. VMWare安装Kali Linux(4-4)
  9. 周志华机器学习(一)
  10. 京冀101家饭店跻身北京2022年冬奥会官方接待签约名单