热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

深度学习:前馈网络FeedforwardNetworks

深度学习深度学习是机器学习的分支,也就是神经网络,为什么称之为”深度“?因为有很多连接在一起的神经层!前馈网络FeedforwardNetworks也叫MultilayerPerc

深度学习

深度学习是机器学习的分支,也就是神经网络,为什么称之为”深度“?因为有很多连接在一起的神经层!


前馈网络

Feedforward Networks 也叫Multilayer Perceptrons(多层感知机),大致的结构如下图所示

技术图片

其中,每一个节点都可以看做是一个函数,将上一层传过来的输入信息做线性变换,再经过一个激活函数输出给下一层,如下图所示

\[h_i = tanh(\sum_jw_{ij}x_j + b_i)\ \ w_{ij}表示权重weight,b_i表示偏差bias,tanh是一种激活函数
\]

技术图片

对于最后的输出层,我们可以根据任务的种类来选择激活函数,如二分类任务中我们使用sigmoid函数(也就是logistic函数),多分类任务中使用softmax函数(得到的值都在0-1之间,看做概率)。


Word Embedding

在NLP的深度学习中,现在最流行的表示词的方法就是Word Embedding,它将词map成(一般较低纬度的)向量的形式,而这些向量的背后也是具有含义的,比如猫和狗的向量表示会比猫和石头来的接近(cosine距离)。那么要怎么得到词的Word Embedding呢?也是可以用神经网络来训练得到(其实就是神经层的weights)。在后面的例子中可以看到具体是怎么实现的。


训练

模型的输入可以是one-hot,也可以是词袋,词向量,或者TF-IDF之类的表示,训练过程其实就是参数的学习过程,通过最大化概率\(L = \prod_{i=0}^mP(y_i|x_i)\),或者最小化\(-logL\)来训练,这里就需要用到梯度下降的方法,具体不再展开,实际中都是学习框架完成的,如TensorFlow,pytorch等。

有兴趣的可以在我的github上查看简单的示例。


优缺点

优点:

? Robust to word variation, typos, etc

? Excellent generalization

? Flexible — customised architecture for different tasks

缺点:

? Much slower than classical ML models... but GPU acceleration

? Lots of parameters due to vocabulary size

? Data hungry, not so good on tiny data sets

? Pre-training on big corpora helps

深度学习:前馈网络 Feedforward Networks



推荐阅读
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
author-avatar
亘古轻柔
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有