深度学习简史

一、说明

        为了学习好深度学习,有必要知道深度学习的整个成长历史,可以说,深度学习的发展历程伴随整个人工智能的成长历程,本文将介绍这个历程的关键性历史节点。

二、深度学习的旅程

2.1 深度学习的当前认知

        深度学习是机器学习的一个更进化的分支,它使用算法层来处理数据,模仿思维过程,或开发抽象

        它通常用于视觉识别物体和理解人类语音。信息通过每一层传递,前一层的输出为下一层提供输入。网络中的第一层称为输入层,最后一层称为输出层。

        输入和输出之间的所有层都称为隐藏层。每层通常都是一个简单、统一的算法,包含一种激活函数。

        特征提取是深度学习的另一个方面。它用于模式识别和图像处理。特征提取使用算法自动构建有意义的数据“特征”,以达到训练、学习和理解的目的。通常是一个数据科学家,或者程序员,负责特征提取。

2.2 深度学习的发起

        深度学习的历史可以追溯到1943年,当时沃尔特·皮茨和沃伦·麦卡洛克创建了一个基于神经网络人类大脑的那个时刻为标志。

        他们使用了算法和数学的组合,他们称之为“阈值逻辑”来模仿思维过程。从那时起,深度学习一直在稳步发展,其发展只经历了两次重大突破。两人都与臭名昭著的人有关人工智能的冬天。

2.3 20世纪60年代

        亨利·J·凯利 (Henry J. Kelley) 因开发连续性基础知识而受到赞誉反向传播模型1960 年。1962 年,Stuart Dreyfus 开发了仅基于链式法则的更简单版本。虽然反向传播的概念(用于训练目的的误差反向传播)确实在 20 世纪 60 年代初就已经存在,但它笨拙且低效,直到 1985 年才变得有用。

        开发深度学习算法的最早努力来自 Alexey Grigoryevich Ivakhnenko(开发了数据处理的分组方法)和 Valentin Grigorʹevich Lapa(《控制论和预测技术》的作者)于 1965 年提出。他们使用具有多项式(复杂方程)激活函数的模型,然后对模型进行统计分析。然后,从每一层中,统计选择的最佳特征被转发到下一层(一个缓慢的手动过程)。

2.4 20世纪70年代

        20 世纪 70 年代,第一个人工智能冬天开始了,这是无法兑现承诺的结果。缺乏资金的影响限制了深度学习和人工智能研究。幸运的是,有人在没有资金的情况下进行了这项研究。

        首先 ”卷积神经网络”是福岛邦彦使用的。福岛设计了具有多个池化层和卷积层的神经网络。1979年,他开发了一种名为Neocognitron的人工神经网络,该网络采用分层、多层设计。这种设计使计算机能够“学习”识别视觉模式。这些网络类似于现代版本,但采用了多层重复激活的强化策略进行训练,随着时间的推移,这种策略会变得更加强大。此外,福岛的设计允许通过增加某些连接的“重量”来手动调整重要功能。

        其中的许多概念新认知机继续使用。

        自上而下的连接和新的学习方法的使用使得各种神经网络得以实现。当同时呈现多个模式时,选择性注意模型可以通过将注意力从一种模式转移到另一种模式来分离和识别各个模式。(我们许多人在多任务处理时使用相同的过程)。现代神经认知机不仅可以识别缺失信息的模式(例如不完整的数字5),还可以通过添加缺失的信息来完成图像。这可以用“推理”来形容。

        反向传播(利用误差训练深度学习模型)在 1970 年得到了显着发展。正是在那时,Seppo Linnainmaa 撰写了他的硕士论文,其中包括用于反向传播的 FORTRAN 代码。

        不幸的是,这个概念直到 1985 年才应用于神经网络。当时 Rumelhart、Williams 和 Hinton 证明了神经网络中的反向传播可以提供“有趣的”分布表示。从哲学上讲,这一发现揭示了认知心理学中的问题:人类的理解是否依赖于符号逻辑(计算主义)或分布式表示(连接主义)。

2.5 20世纪80年代和90年代

        1989 年,Yann LeCun 在贝尔实验室首次提供了反向传播的实际演示。他将卷积神经网络与反向传播读取“手写”数字。该系统最终被用来读取手写支票的号码。

        这段时间也是人工智能第二个冬天(1985-90年代)的开始,这也影响了神经网络和深度学习的研究。许多过于乐观的人夸大了人工智能的“直接”潜力,超出了预期并激怒了投资者。愤怒如此强烈,“人工智能”一词达到了伪科学的程度。幸运的是,一些人继续致力于人工智能和深度学习的研究,并取得了一些重大进展。1995 年,Dana Cortes 和 Vladimir Vapnik 开发了支持向量机(一种用于映射和识别相似数据的系统)。用于循环神经网络的 LSTM(长短期记忆)由 Sepp Hochreiter 和 Juergen Schmidhuber 于 1997 年开发。

        深度学习的下一个重大演变发生在 1999 年,当时计算机处理数据和 GPU 的速度开始变得更快(图形处理单元)被开发出来。通过 GPU 处理图片,更快的处理速度在 10 年内将计算速度提高了 1000 倍。在此期间,神经网络开始与支持向量机竞争。虽然神经网络与支持向量机相比可能较慢,但神经网络使用相同的数据提供了更好的结果。神经网络还具有随着更多训练数据的添加而不断改进的优势。

2.6 2000年-2010年

        2000年左右,梯度消失问题出现了。人们发现,下层形成的“特征”(教训)并没有被上层学习,因为没有学习信号到达这些层。这并不是所有神经网络的基本问题,只是那些采用基于梯度的学习方法的神经网络的基本问题。问题的根源在于某些激活函数。许多激活函数压缩了它们的输入,进而以某种混乱的方式减小了输出范围。这产生了映射在极小范围内的大面积输入。在这些输入区域中,较大的变化将减少为输出的较小变化,从而导致梯度消失。解决这个问题的两个解决方案是逐层预训练和开发长短期记忆。

        2001年,META Group(现称为Gartner)的一份研究报告将数据增长的挑战和机遇描述为三维的。该报告将数据量的增加和数据速度的增加描述为数据源和类型范围的增加。这是为应对刚刚开始的大数据冲击做好准备的呼吁。

        2009 年,斯坦福大学人工智能教授李飞飞发起了图像网,组建了一个包含超过 1400 万张标记图像的免费数据库。互联网现在和过去都充满了未标记的图像。“训练”神经网络需要标记图像。李教授说:“我们的愿景是大数据将改变机器学习的工作方式。数据驱动学习。”

2.7 2011-2020

        到 2011 年,GPU 的速度显着提高,使得“无需”逐层预训练即可训练卷积神经网络。随着计算速度的提高,深度学习在效率和速度方面具有明显的优势。一个例子是亚历克斯网,一种卷积神经网络,其架构在 2011 年和 2012 年期间赢得了多项国际比赛。整流线性单元用于提高速度和 dropout。

        同样是在 2012 年,Google Brain 发布了一个名为“猫实验。这个自由奔放的项目探索了“无监督学习”的困难。深度学习使用“监督学习,”这意味着卷积神经网络是使用标记数据进行训练的(想想来自 ImageNet 的图像)。使用无监督学习,卷积神经网络会获得未标记的数据,然后被要求寻找重复出现的模式。

        猫实验使用了分布在 1000 多台计算机上的神经网络。从 YouTube 上随机获取一千万张“未标记”图像,显示给系统,然后允许训练软件运行。训练结束时,发现最高层的一个神经元对猫的图像反应强烈。该项目创始人吴恩达 (Andrew Ng) 表示:“我们还发现了一个对人脸反应非常强烈的神经元。” 无监督学习仍然是深度学习领域的一个重要目标。

        这生成对抗神经网络(GAN)于 2014 年推出。GAN 由 Ian Goodfellow 创建。通过 GAN,两个神经网络在游戏中相互对抗。游戏的目标是让一个网络模仿一张照片,并欺骗对手相信它是真实的。对手当然是在寻找破绽。游戏一直进行到近乎完美的照片欺骗对手为止。GAN 提供了一种完善产品的方法(并且也开始被骗子使用)。

三、深度学习和商业的未来

        深度学习提供了基于图像的产品搜索(Ebay、Etsy)以及在装配线上检查产品的有效方法。第一个支持消费者便利,第二个是商业生产力的例子。

        目前,演变人工智能依赖于深度学习。深度学习仍在不断发展,需要创造性的想法。

        语义技术正在与深度学习一起使用人工智能更上一层楼,提供听起来更自然、更人性化的对话。

        银行和金融服务机构正在使用深度学习来实现交易自动化、降低风险、检测欺诈并向投资者提供人工智能/聊天机器人建议。EIU(经济学人智库)的一份报告显示,86% 的金融服务机构计划到 2025 年增加人工智能投资。

        深度学习和人工智能正在影响新商业模式的创建。这些企业正在创造拥抱深度学习、人工智能和现代技术的新企业文化。

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

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

相关文章

MacOS将Node.js升级到最新版本

Upgrade Node.js to the latest version on Mac OS 在Mac O S上将Node.js升级到最新版本 文章目录 Upgrade Node.js to the latest version on Mac OS1. brew2. n3. nvm4. package 1. brew If you initially installed Node.js with Homebrew, run: 如果您最初使用 Homebrew …

ASP.NET WebApi 极简依赖注入

文章目录 环境服务类启动项注入使用依赖注入的优点 环境 .NET Core 7.0ASP.NET CoreVisual Studio 2022 服务类 public class T_TempService {public T_TempService(){}public void Test(){}}启动项注入 #region 依赖注入 builder.Services.AddTransient<T_TempService&g…

滑动窗口限流算法实现一

固定算法 原理&#xff1a;固定算法是将时间线分隔成固定大小的时间窗口&#xff0c;每个窗口都会有个计数器&#xff0c;用来记录窗口时间范围内的请求总数&#xff0c;如果窗口的请求总数达到最大限定值&#xff0c;会认定流量超限。比如将窗口大小设为1分钟&#xff0c;每分…

科大讯飞勾勒生成式AI输入法“模样”,开启下一代输入法革命

回顾国内第三方输入法赛道近十余年的发展&#xff0c;移动互联网的市场红利催生了科大讯飞、百度、搜狗等颇具规模和实力的头部厂商。与此同时&#xff0c;历经多年、多方角逐&#xff0c;第三方输入法市场进入存量阶段&#xff0c;升级技术、优化用户体验来挖掘存量&#xff0…

Rest风格基本语法与实战

1&#xff0c;前置知识点 1.1 GetMapping&#xff0c;PostMapping&#xff0c;PutMapping&#xff0c;DeleteMapping 平时我们都是使用RequestMapping&#xff0c;然后通过它的method属性来指定请求的方式&#xff0c;这样是有些麻烦的&#xff0c;然后这四个标签就是来简化这…

MySQL安装『适用于 CentOS 7』

✨个人主页&#xff1a; 北 海 &#x1f389;所属专栏&#xff1a; MySQL 学习 &#x1f383;操作环境&#xff1a; CentOS 7.6 腾讯云远程服务器 &#x1f381;软件版本&#xff1a; MySQL 5.7.44 文章目录 1.MySQL 的清理与安装1.1查看是否存在 MySQL 服务1.2.卸载原有服务1.…

JS逆向基础之反调试

JS逆向基础之反调试 截至目前的话大家应该都知道我们在进行js逆向的时候需要打开浏览器开发者工具进行网页的调试&#xff0c;但是在有时候网站会阻止我们去调试它的代码&#xff0c;而其阻止我们的手段也是多种多样的。接下来我们就来简单了解一下逆向过程中常见的反调试手段…

文件下载漏洞, 漏洞原理, 测试方法, 漏洞防御, 常见敏感路径

文件下载漏洞 一, 文件下载漏洞原理 利用条件: 1. 读取文件的路径是用户可控, 且没有校验或检验不严. 2. 使用了读取文件的函数. 3. 输出了文件内容.漏洞场景一: 后端没有限制哪些路径的文件可以下载 后端代码: http://192.168.112.200/security/download.php $file_pat…

keealived安装配置启动

1.keepalived作用和原理图 keepalived作用:解决单点故障简单原理图1: 2.keepalived安装配置启动 地址: https://www.keepalived.org/download.html# 1)解压 tar -zxvf keepalived-2.0.18.tar.gz # 2)进入keepalived目录 cd keepalived-2.0.18/ # 3)安装libnl/libnl-3依赖…

chat gpt 在开发当中的应用

chatgpt 出来已经有一段时间了&#xff0c;本人在开发的过程中也是有去使用。 经常使用的是讯飞大模型和通义千问&#xff0c;在使用的过程中&#xff0c;个人感觉讯飞大模型在写代码方面会比较智能。 比如问一个 sqlser 单表 数据量 几个亿如何处理的问题&#xff0c;讯飞会给…

C/C++ 飞翔的小鸟

载入问题&#xff1a; 解决之后效果&#xff1a; 放在main函数里面进行封装&#xff1a; 效果展示: 实现下坠 放进while&#xff08;1&#xff09;里面不断进入循环&#xff0c;每次进入循环&#xff0c;鸟的y坐标值就会发生变化&#xff0c;以此实现下下坠效果 效果展示&#…

Vue 数据绑定 和 数据渲染

目录 一、Vue快速入门 1.简介 : 2.MVVM : 3.准备工作 : 二、数据绑定 1.实例 : 2.验证 : 三、数据渲染 1.单向渲染 : 2.双向渲染 : 一、Vue快速入门 1.简介 : (1) Vue[/vju/]&#xff0c;是Vue.js的简称&#xff0c;是一个前端框架&#xff0c;常用于构建前端用户…

Hive客户端和Beeline命令行的基本使用

本专栏案例数据集链接: https://download.csdn.net/download/shangjg03/88478038 1.Hive CLI 1.1 命令帮助Help 使用 `hive -H` 或者 `hive --help` 命令可以查看所有命令的帮助,显示如下: usage: hive-d,--define <key=value> Variable subsitution to ap…

C#学习相关系列之多线程---TaskCompletionSource用法(八)

一、TaskCompletionSource类的作用 TaskCompletionSource类回调代码转换为可以等待的Task&#xff0c;TaskCompletionSource本身不是可等待的&#xff0c;它也不是有效的异步方法返回类型。一旦TaskCompletionSource给了你一个任务&#xff0c;你可以简单地返回那个任务&#x…

2023NOIP A层联测20-点餐

一家新的餐馆开业了&#xff0c;为了吸引更多的顾客&#xff0c;每样餐品都有打折的活动。特别的&#xff0c;餐馆内一共有&#x1d45b;样菜品&#xff0c;编号从 1 1 1 到 n n n&#xff0c;每样菜品每人最多只能点一次。对于第 i i i 种菜品&#xff0c;其包含两种价格&a…

Flutter FittedBox

&#x1f525; 英文单词FittedBox &#x1f525; Fitted 通过有道翻译如下 &#xff1a; Box 通过有道翻译如下 &#xff1a; 对 FittedBox 的理解 我们可以将 FittedBox 理解为合适的盒子&#xff0c;将其它布局放到FittedBox这样一个盒子中&#xff0c;从而实现 盒子里面的…

kubernetes实验挑战二(troubleshoot pv pvc )

This 2-Node Kubernetes cluster is broken! Troubleshoot, fix the cluster issues and then deploy the objects according to the given architecture diagram to unlock our Image Gallery!! 1、 kubeconfig /root/.kube/config, User ‘kubernetes-admin’ Cluster: S…

SpringCloud(一) 服务架构的演变及注册RestTemplate实现服务的远程调用

目录 一, 服务架构的演变 1.1 单体架构 1.2 分布式架构 1.3 微服务 1.4 SpringCloud 二, 服务拆分和远程调用 2,1 服务拆分原则 2.2 服务拆分示例 2.3 创建相应数据库 2.4 实现远程调用示例 1, 更改需求 2, 注册RestTemplate实现远程调用 2.5 服务消费者和提供者 一…

D-Bus:数据类型

D-Bus中描述接口的属性和方法,有其自己定义的一套签名描述方式: 数据类型描述符号对应C++数据类型avector/array数组, ai表示的是vector<int32_t>bboolddouble双精度浮点数iint32_t,32位有符号整数nint16_t,16位有符号整数oobject_path对象路径quint16_t,16位无符号…

【数据分析】上市公司半年报数据分析

前言 前文介绍过使用网络技术获取上市公司半年报数据的方法&#xff0c;本文将对获取到的数据进行简要的数据分析。 获取数据的代码介绍在下面的两篇文章中 【java爬虫】使用selenium获取某交易所公司半年报数据-CSDN博客 【java爬虫】公司半年报数据展示-CSDN博客 全量数…