神经网络结构--前

2023-11-06

         目前神经网络基本是业内无人不知了,在正式了解神经网络之前,有兴趣的爱好者可以了解一下神经网络出现前的一些发展历史。

        实际上呢,每个聊神经网络的人,都会先放一张神经元的图片,我就偷懒算了吧,怕大家看吐了。1943年,心理学家W·Mcculloch和数理逻辑学家W·Pitts在分析、总结神经元基本特性的基础上首先提出神经元的数学模型。也就是M-P模型,恩,没有其他意思,用自己的名字命名一波,有问题吗?没问题。

MP模型

        先上个自己画的丑图。

 

 M-P模型的数学表达式为:

                                        y = f( \sum_{i=1}^{n} w_{i}x_{i} + b)

其中,f为阶跃激活函数, a为给定一个阈值:

                                        y = \left\{\begin{matrix} y \geq a , y=1 \\ y< a , y =0 \end{matrix}\right.

在MP模型中w与b都是人为给定,故该模型不能学习。

感知机

单层感知机

        但从结构上来看,感知机与MP模型没有任何区别。参考上面的图就OK了。

        那么,区别在哪儿呢,最大的区别在于感知机是可以训练的,当然这个训练与现在的神经网络训练不一样,因为那个时候还没有反向传播算法(BP)。先讲一下怎么训练吧。

        首先,随机初始化权重向量 w,然后反复对每一个样本进行训练,然后修改权值:

                                ​​​​​​​        ​​​​​​​        ​​​​​​​        w_{i} = w_{i} + \Delta w_{i} 

其中:

                                                        w_{i} = \eta (y - \bar{y})x_{i}

上面,y为输出值, \bar{y}为真实值,\eta为学习率。

        直观的来说,就是通过不停的更新参数来找到一个超平面,完美的分割当前样本。

        当样本非线性可分时,问题就来了,这个训练永远都停不下来了。也就说单层感知机解决不了经典的异或问题。

        另一种训练方法是Delta学习,后来称为最小二乘方法。

多层感知机 -- 前馈神经网络

        首先,我们要明确的是,多层感知机不是单层感知机的简单堆叠。因为无论多少单层感知机堆叠,还是在线性变换的范围里面操作。术语是仿射变换。我的理解是,从公式来看就是多了一些括号的嵌套使得矩阵相乘。如果想要处理非线性问题,则需要在两个简单的感知机中间增加一个非线性的激活函数。(这里呢,有点小问题,非线性的激活函数,也可以处理异或问题,只不过难以进行反向传播训练)

        另一个问题是感知机只能进行单层训练,隐含层如何训练与学习是一个大问题。(以下这段抄自百度百科)对此问题的研究有三个基本的结果。一种是使用简单无监督学习规则的竞争学习方法.但它缺乏外部信息.难以确定适合映射的隐层结构。第二条途径是假设一个内部(隐层)的表示方法,这在一些先约条件下是台理的。另一种方法是利用统计手段设计一个学习过程使之能有效地实现适当的内部表示法,Hinton等人(1984年)提出的Bolzmann机是这种方法的典型例子.它要求网络在两个不同的状态下达到平衡,并且只局限于对称网络。Barto和他的同事(1985年)提出了另一条利用统计手段的学习方法。但迄今为止最有效和最实用的方法是Rumelhart、Hinton和Williams(1986年)提出的一般Delta法则,即反向传播(BP)算法。Parter(1985年)也独立地得出过相似的算法,他称之为学习逻辑。此外, Lecun(1985年)也研究出大致相似的学习法则。(bp --yyds)

先上个自己画的丑图:

 上图中,我把求和与激活函数画出来了,方便更加直观的学习。

        这个网络已经基本接近神经网络了,实际上也就是神经网络中的全连接。整个训练过程就是三个步骤:

  1. 初始化权重参数,输入数据前向传播
  2. 计算损失,反向传播
  3. 根据学习率,更新权重参数

      

接下来是代码。待补充。

有问题麻烦指正,光速改。        

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

神经网络结构--前 的相关文章

  • 医学生可以跨专业考计算机的专业,可以跨考医学研究生:2016跨专业考研需谨慎的专业解读:临床医学...

    每年的跨专业考研人群有很大一批 或是因为本专业就业不景气 或是因为不感兴趣等等 诸多原因导致跨专业考研的人很多 跨专业考研的难度比一般要大 主要因为起点不同 往往此类考生专业课的基础都很低 从头开始 压力很大 因此在选专业的时候一定要谨慎
  • python怎么输出图片_Python怎么输出图片且不保存

    Python怎么输出图片且不保存 一 输出本地图片 使用open 函数来打开图片 使用show 函数来显示图片 from PIL import Image img Image open d dog png img show 这种图片显示方式
  • 基于BP神经网络的2014世界杯比分预测

    写在前头 科学的方法 娱乐的心态 研究背景 众所周知 今年的世界杯比赛各种坑爹 看了那么多砖家点评就没人说准过 当然足球比赛中有太多的未知变量 如何选择这些变量就成为了预测比赛比分的关键 本文作者另辟蹊径 选用足彩比分赔率作为影响比赛走势的
  • Java DAO代码重构(连接池方式)

    DAO设计简化思路 首先初始化数据库连接池 使用Alibaba的Druid连接池 需先下载druid 1 x x jar包 public class JDBCUtil private static DataSource ds null 初始
  • SQLServer数据库漏洞

    一 SQLServer数据库提权前提条件 1 以管理员身份运行数据库服务 2 已经获得SQL数据库的sysadmin权限 3 可以连接数据库 二 通过存储过程进行提权 hydra工具介绍 L 指定用户名字典 P 指定密码字典 vV 输出破解

随机推荐

  • 与孩子一起学编程python_与的解释

    子集上 一 与 康熙筆画 4 部外筆画 3 廣韻 集韻 正韻 同與 說文 賜予也 一勺爲与 六書正譌 寡則均 故从一勺 與 古文 廣韻 弋諸切 正韻 弋渚切 集韻 韻會 演女切 音予 說文 黨與也 戰國策 是君以合齊與强楚 註 與 黨與也
  • 《算法导论》笔记(18) 最大流 含部分习题

    流网络 容量值 源结点 汇点 容量限制 流量守恒 反平行 超级源结点 超级汇点 Ford Fulkerson方法 残存网络 增广路径 最小切割定理 f是最大流 残存网络不包含增广路径 f 等于最小切割容量三者等价 基本的Ford Fulke
  • Vijava 学习笔记之(获取用户自定义规范相关信息)

    源代码 package com vmware customzation import com vmware util Session import com vmware vim25 CustomizationSpecInfo import
  • [CVPR2020]Attention-Guided Hierarchical Structure Aggregation for Image Matting

    论文 Attention Guided Hierarchical Structure Aggregation for Image Matting 代码 wukaoliu CVPR2020 HAttMatting 基于注意力引导的层次结构聚集
  • mycat分库分表

    一 拆分原理 数据节点 分片 主机 ip port 数据库组合起来就是一个数据节点 分库 垂直拆分 不同的表分到不同的数据节点 分表 水平拆分 同一张表按照一定的规则拆分到不同的数据节点 二 mycat逻辑图 应用连接mycat mycat
  • 【编程之路】面试必刷TOP101:堆、栈、队列(42-49,Python实现)

    面试必刷TOP101 堆 栈 队列 42 49 Python实现 42 用两个栈实现队列 小试牛刀 step 1 push操作就正常push到第一个栈末尾 step 2 pop操作时 优先将第一个栈的元素弹出 并依次进入第二个栈中 step
  • 梦幻西游两个不同服务器的名字出现在跨服华山,系统会怎么处理,梦幻西游跨服决战华山玩法介绍...

    梦幻西游跨服决战华山新玩法已经出来了 很多的玩家还不知道该如何玩 下面我们一起来看详细的内容介绍 活动时间 没有帮派竞赛的周五 周日 进入活动场地时间 19 00 比赛时间 19 30 22 00 等级限制 等级 55级 分组机制 根据玩家
  • DLL,SDK,API专业技术术语

    SDK software development kit 中文可译为 软件开发工具包 一般都是一些被软件工程师用于为特定的软件包 软件架构 硬件平台 操作系统等建立应用软件的开发工具的集合 通俗点是指由第三方服务商提供的实现软件产品某项功能
  • 腾讯toB“联合舰队”的秘密

    14 天高强度谈判 每天都从早 8 点持续到凌晨 3 点 郭浩哲和他的同事们敲定了一笔融资 投资方是腾讯 投资金额达到了 12 66 亿元人民币 即使在腾讯的投资历史上 这都不是一个小数额 但实际流程仅用时一个多月 多少让郭浩哲对巨头的速度
  • Eclipse 安装C++环境

    安装CDT插件 方法一 选择 help 安装新的软件 然后点击Add 给定名称为 CDT 添加地址 http download eclipse org tools cdt releases juno 点击FInish 等待安装完成 提示重启
  • 第一课:初识Java语言

    第一课 初识Java语言 一 了解Java的历史由来 1 为什么学习Java编程语言 1 首先要了解编程语言的流行趋势 Tiobe PYPL排行榜 2 在这些排行榜上 Java语言的流行程度都名列前茅 在Tiobe排行榜上 甚至常年 排名第
  • 854. 相似度为 K 的字符串

    对于某些非负整数 k 如果交换 s1 中两个字母的位置恰好 k 次 能够使结果字符串等于 s2 则认为字符串 s1 和 s2 的 相似度为 k 给你两个字母异位词 s1 和 s2 返回 s1 和 s2 的相似度 k 的最小值 示例 1 输入
  • flea-jersey使用之文件上传接入

    文件上传 引言 1 客户端依赖 2 服务端依赖 3 文件上传接入讲解 3 1 服务端上传资源定义 3 2 服务端文件上传服务定义 3 3 客户端文件上传配置 3 4 客户端文件上传调用 引言 本文将要介绍 flea jersey 提供的文件
  • c++回调函数

    关于应用 1 创建struct结构体 typedef struct tag PixelCallBack AsynCall PixelCallBack 2 在 h 文件类中定义private 结构体变量 typedef void func c
  • pytorch——实现自编码器和变分自编码器

    文章目录 数据降维 主成分分析 PCA 自编码器 AE 变分自编码器 VAE pytorch实现 AE 实现自编码器网络结构 实现AE对MNIST数据集的处理 VAE 实现变分自编码器网络结构 实现VAE对MNIST数据集的处理 本文只设计
  • flutter video_player pageView 视频分页播放自适应视频宽高

    1 新建播放组件 预览图和文案可以删除也可以重新自定义 主要是视频地址 import dart async import package flutter material dart import package midou ee car v
  • 一個简洁的 antd-react-admin 应用 -- React + Antd 通用后台管理系统

    React Antd Admin 简介 React Antd Admin 一个 JavaScript 应用 项目由业界最优秀的 React 应用开发工具 create react app 初始化创建 搭配 Antd 开箱即用的高质量 Rea
  • Cannot resolve plugin org.apache.maven.plugins:maven-surefire-plugin:2.12.4_idea创建maven项目时异常

    Cannot resolve plugin org apache maven plugins maven surefire plugin 2 12 4 idea创建maven项目时异常 Git上拉下一个maven项目 在更新和build时
  • springboot 之 在Controller如何接收参数呢?

    转自 springboot 之 在Controller如何接收参数呢 下文笔者将讲述Controller中接收url路径中的参数 表单 问号后面参数 body中的JSON信息 使用 PathVariable 直接使用String定义变量 使
  • 神经网络结构--前

    目前神经网络基本是业内无人不知了 在正式了解神经网络之前 有兴趣的爱好者可以了解一下神经网络出现前的一些发展历史 实际上呢 每个聊神经网络的人 都会先放一张神经元的图片 我就偷懒算了吧 怕大家看吐了 1943年 心理学家W Mcculloc