【深度学习】常用算法生成对抗网络、自编码网络、多层感知机、反向传播等讲解(图文解释 超详细)

news2024/10/6 20:30:22

觉得有帮助请点赞关注收藏~~~

一、生成对抗网络GAN

Generative Adversarial Network 两个组件组成:一个生成器,用于生成虚拟数据,另一个是鉴别器,用于(GAN)生成式深度学习算法,可创建类似于训练数据的新数据实例。

GAN 工作原理概要如下:

(1)初始训练期间,生成器产生虚拟数据,并输入鉴别器。

(2)鉴别器基于学习模型区分生成器的假数据和真实样本数据。

(3)对抗网络将鉴别结果发送给生成器和鉴别器以更新相应模型。

 二、自编码网络

自编码器(Autoencoder)是神经网络的一种特殊形式,将输入复制到输出,因此也可以称为恒等函数。其核心思想是将输入复制到输出时,神经网络学习输入的特定属性。

其核心思想是将输入复制到输出时,神经网络学习输入的特定属性。自编码器的主要用途如下

1:降维:通过将多维数据转换为较小维度数据 降低数据复杂性

2:特征学习:学习数据的特定或者重要属性

3:生成建模:通过自编码器学习数据样本特征来生成新的数据样本

 

三、强化学习 (增强学习)

增强学习和监督学习的区别:

(1) 增强学习是试错学习(Trail-and-error),由于没有直接的标注信息提供参考,需要不断与环境进行交互,通过试错的方式来获得最优行为策略。

(2) 激励延迟(Delayed Return),增强学习缺乏参考信息,激励在时间上通常延迟发生,因此如何优化分配激励成为不能忽略的课题。

四、多层感知机MLP

多层感知机属于前馈神经网络,具有激活功能,多层感知机由完全连接的输入层和输出层组成,它们具有相同的输入层和输出层,但可能有多个隐藏层,隐藏层输出可以通过激活函数进行变换。

原理:

(1)将数据馈送到网络的输入层。

(2)基于输入层和隐藏层之间的权重执行计算。多层感知机使用激活函数确定触发节点的信息。常用的激活函数包括 ReLU、Sigmoid 函数和 Tanh。

(3)训练模型获得相关性以及变量之间的依赖关系。

五、自组织映射神经网络SOM

它可以减少数据处理的维度,不同于基于损失函数反向传递算法的神经网络,自组织映射网络使用竞争学习策略,依靠神经元互相竞争实现优化网络的目标

工作原理:

(1)为所有节点初始化权重,并随机选择一个输入样本。

(2)查找与随机输入样本的最优相似度。

(3)基于最优相似度遴选优胜邻域节点,更新优胜领域节点的权重信息。

(4)迭代计算,直到满足迭代次数或者要求。

六、径向基函数网络RBFN 

它是一种特殊类型的前馈神经网络,它使用径向基函数作为激活函数,径向基函数是沿径向对称的函数,径向基函数网络由输入层,隐藏层和输出层组成。

工作原理:

(1)接收信息输入,此时不执行变换计算。

(2)在隐藏层对数据进行变换,隐藏层节点使用输入与中心向量的距离(如欧式距离)作为径向基函数的自变量,这与反向传播网络常用输入与权向量的内积作为自变量存在区别。

(3)输出层对隐藏层的输出信息执行加权运算,作为神经网络的结果。

七、反向传播算法BP

BP神经网络基于梯度下降法,将M维数据输入欧式空间映射到N维输出欧式空间,由正向传播过程和反向传播过程组成。

信号从层传递到层(黑色箭头),误差没有达到预期值时,误差传播方向与信号方向相反(绿色箭头)。

八、连接时序分类CTC 

连接时序分类(Connectionist Temporal Classification,CTC)主要用于处理序列标注问题中的输入与输出标签的对齐问题。基于传统方法的自然语言处理,语音转换为数据以后,需明确单帧信息对应的标签才能执行有效的训练,因此在训练数据之前需要执行语音信息对齐的预处理。其缺点是工时量消耗大,在标签对齐信息部分缺失的情况下,正确的预测比较困难;而且预测结果只利用了局部信息。CTC由于使用端到端训练,并不需要输入和输出对齐,输出整体序列的预测概率,因此可以克服这些问题。CTC通过引入一个特殊的空白字符(blank),解决变长映射的问题,其典型应用场景是文本识别。

创作不易 觉得有帮助请点赞关注收藏~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/63688.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022-kaggle-nlp赛事:Feedback Prize - English Language Learning

文章目录零、比赛介绍0.1 比赛目标0.2 数据集0.3 注意事项一、设置1.1 导入相关库1.2 设置超参数和随机种子1.3 启动wandb二、 数据预处理2.1 定义前处理函数,tokenizer文本2.2 定义Dataset,并将数据装入DataLoader三、辅助函数四、池化五、模型六、定义…

jmeter-事务控制器与并发控制器与if控制器项目实践

前言 在做性能压测的时候,除了做单接口这种基准压测,我们还需要多接口串联的混合场景,比如打开小程序展示的首页,购物下单时的结算页。如果这些接口都是串行的,那就非常简单了,仅仅只需要创建事务控制器&a…

【GD32F427开发板试用】+rtt-thread nano+finsh极简开发

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:理想三旬 引言 在工作闲暇之际,逛逛论坛,无意间看到GD的试用活动,一如既往的积极,在官方还没发…

Linux 驱动的内核适配 - 方法

原生与野生 Linux 的驱动代码大致可分为两种:一种是已经进入 mainline 的,当内核 API 变化时,会被同步地修改;还有一种是 out-of-tree 的,需要用一套驱动代码去适配不同版本的内核。由于内核 API 持续变动的特性&…

带你实现react源码的核心功能

React 的几种组件以及首次渲染实现React 更新机制的实现以及 React diff 算法 React 的代码还是非常复杂的,虽然这里是一个简化版本。但是还是需要有不错的面向对象思维的。React 的核心主要有一下几点。 虚拟 dom 对象(Virtual DOM)虚拟 d…

RabbitMQ_消息确认机制

消息确认机制分为消息发送确认机制与消息消费确认机制 消息发送确认机制 消息发送确认机制:消息由producer发送后,确认其是否到达broker,又是否被exchange转发至对应queue的机制 该机制分为两部分:producer---broker&#xff0c…

Android 性能优化之内存优化——重识内存

我们知道,手机的内存是有限的,如果应用内存占用过大,轻则引起卡顿,重则导致应用崩溃或被系统强制杀掉,更严重的情况下会影响应用的留存率。因此,内存优化是性能优化中非常重要的一部分。但是,很…

66-86-javajvm-堆

66-javajvm-堆: 堆的核心概述 堆与进程、线程 一个进程对应一个JVM实例一个JVM实例对应一个堆空间进程包含多个线程,所以线程之间共享同一个堆空间 对堆的认识 一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区在JVM启动…

HashMap原理

在Java编程语言中,最基本的结构就是两种,一种是数组,一种是模拟指针(引用),所有的数据结构都可以用这两个基本结构构造,HashMap也一样。当程序试图将多个 key-value 放入 HashMap 中时,以如下代码片段为例:…

P1182 数列分段 Section II——二分答案

数列分段 Section II 题目描述 对于给定的一个长度为N的正整数数列 A1∼NA_{1\sim N}A1∼N​,现要将其分成 MMM(M≤NM\leq NM≤N)段,并要求每段连续,且每段和的最大值最小。 关于最大值最小: 例如一数列…

NCTF web总结与复现

前言 打完NCTF休息了一下,总体感觉还行,学到了很多。 calc 这一题也卡了我很久,因为复现过DASCTF三月赛,一直在想着有没有可以替代反引号或绕过的方法,搞了好久都没出,在学长的提示下学到了一个方法&…

最新出炉的阿里巴巴面试题及答案汇总(513页)

前言 秋招已经结束了,不知道各位有没有拿到自己心仪的offer?最近有不少粉丝去阿里巴巴面试了,回来之后我整理成了一份手册java面试时常用到的面试题(附答案)那么今天分享给大家,祝愿大家都能找到满意的工作…

HTML期末作业课程设计期末大作业——我的美丽家乡湛江 海鲜之都HTML+CSS+JavaScript

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

python爬虫实战之逆向分析酷狗音乐

文章目录前言一、请求分析二、逆向思路三、全部代码总结前言 声明:本文章只是用于学习逆向知识,仅供学习,未经作者同意禁止转载 对于爬虫而言,不管是什么类型的都会遵循这几个步骤 获取目标url分析请求数据逆向解密数据伪造请求清…

算法日常训练12.5

首先有个很大的进步,看见困难题我没选择做逃兵跑路,这点起码是进步了,虽然算法能力还是那么拉,但是起码敢不自量力地分析一下。。。还能看题解理解下。 先找题解中最简单地一种超时方法开始理解,使用动态规划&#xff…

线程基础概念

1.线程基础 现代软件系统中,除了进程之外,线程也是一个十分重要的概念。特别是随着CPU频率增长开始出现停滞,而开始向多核方向发展。多线程,作为实现软件并发执行的一个重要的方法,也开始具有越来越重要的地位。 什么…

[本人毕业设计] 别踩白块_计算机科学与技术_前端H5游戏毕设

摘 要 本文详细介绍了网页版躲避白色钢琴块音乐游戏的设计和实现。由于游戏软件安装占据较大的空间与安装时间,而且步骤繁琐,用常规的游戏安装方法不能取得便捷的游戏安装体验。网页游戏是一种基于在网络游戏中被广泛应用,网页游戏更具有便捷…

【Tensorflow深度学习】实现手写字体识别、预测实战(附源码和数据集 超详细)

需要源码和数据集请点赞关注收藏后评论区留言私信~~~ 一、数据集简介 下面用到的数据集基于IAM数据集的英文手写字体自动识别应用,IAM数据库主要包含手写的英文文本,可用于训练和测试手写文本识别以及执行作者的识别和验证,该数据库在ICDAR1…

对副业的选择无论是自媒体还是 Python接单 ,始终绕不开IT行业。

前言 这个年代,成年人的日子活成了一部苦情戏。十年前,5000块钱工资还能过的自由自在;今天,估计连车贷,房贷,信用卡都不够还。所以一些想要改变现状的朋友,选择了副业这种形式,副业…

【Linux】Shell脚本详解

目录一.概述二.Linux提供的Shell解析器三.Shell入门1.执行一个简单的shell脚本2.脚本常用的执行方法四.变量1.系统预定义变量2.自定义变量3.特殊变量五.运算符六.条件判断1.单条件判断2.多条件判断七.流程控制(重点)1.if判断2.case语句3.for循环4.while循环八.read读取控制台输…