C#中的深度学习(三):理解神经网络结构
在这篇文章中,我们将回顾监督机器学习的基础知识,以及训练和验证阶段包括哪些内容。
在这里,我们将为不了解AI的读者介绍机器学习(ML)的基础知识,并且我们将描述在监督机器学习模型中的训练和验证步骤。
ML是AI的一个分支,它试图通过归纳一组示例而不是接收显式指令来让机器找出如何执行任务。ML有三种范式:监督学习、非监督学习和强化学习。在监督学习中,一个模型(我们将在下面讨论)通过一个称为训练的过程进行学习,在这个过程中,它会提供示例输入和正确输出。它了解数据集示例中哪些特性映射到特定输出,然后能够在一个称为预测的阶段预测新的输入数据。在无监督学习中,模型通过分析数据之间的关系来学习数据的结构,而不涉及任何其他过程。在强化学习中,我们建立模型,通过试验和错误技术,随着时间的推移学习和改进。
ML中的模型是什么?模型是一个简单的数学对象或实体,它包含一些关于AI的理论背景,以便能够从数据集学习。在监督学习中流行的模型包括决策树、向量机,当然还有神经网络。
神经网络是按堆栈的形状分层排列的。除了输入层和输出层之外,每一层的节点都接收来自上一层节点的输入,也可以接收来自下一层节点的输入,同样也可以向上一层和下一层节点发送信号或输出。

在一个神经网络中,我们总是存在输入和输出层,可能有一个或多个隐藏层。
最简单的NN是感知器,它是包含的输入层和输出层单个节点。
对于神经网络中的每条边都有一个关联的权重值,这是对于每个节点都有关联的值。例如,输入层中每个节点的值可以来自与数据集中的图像相关联的像素值输入数组。为了计算下一层节点的值,我们计算连接到该节点的输入的加权和。这就是传递函数。一旦计算出这个值,它就被传递给另一个称为激活函数的函数,该函数根据阈值确定该节点是否应该触发到下一层。有些激活函数是二进制的,有些则有多个输出。

通常在神经网络的末尾,我们有一个激活函数,它对传递到输入层的数据进行分类(做出决定)。在硬币识别的情况下,它将决定图像中硬币的类别或类型。神经网络中的学习过程可以仅仅看作是对其权重的调整,以便为每个给定的输入获得预期的输出。一旦对模型进行了训练,得到的权重就可以被保存下来。
当一个神经网络有一个以上的隐藏层时,我们将其称为深度学习(DL)。DL是一套依赖于神经网络且不止一个隐藏层的技术。拥有多个隐藏层的原因是提供比单一隐藏层神经网络更准确的结果。实践证明,深度神经网络比单层神经网络能产生更快更准确的结果。你添加到你的神经网络的每一层都有助于从数据集学习复杂的特征。
神经网络包含许多需要调整以获得更好性能的参数。为了能够检查参数优化的有效性和神经网络本身的性能,我们留出很大一部分的原始数据集(通常大于70%)作为训练集,使用其他验证(测试)组。验证集也帮助我们防止过度拟合,这发生在一个模型学习太好一组非常相似的对象数据集,使它太适合这个数据和不适合新数据。
在下一篇文章中,我们将研究用于硬币识别问题的卷积神经网络,并将在Keras.NET中实现一个卷积神经网络。
欢迎关注我的公众号,如果你有喜欢的外文技术文章,可以通过公众号留言推荐给我。

原文链接:https://www.codeproject.com/Articles/5284227/Deep-Learning-in-Csharp-Understanding-Neural-Netwo
C#中的深度学习(三):理解神经网络结构的更多相关文章
- Deep learning for visual understanding: A review 视觉理解中的深度学习:回顾 之一
Deep learning for visual understanding: A review 视觉理解中的深度学习:回顾 ABSTRACT: Deep learning algorithms ar ...
- CNCC2017中的深度学习与跨媒体智能
CNCC2017中的深度学习与跨媒体智能 转载请注明作者:梦里茶 目录 机器学习与跨媒体智能 传统方法与深度学习 图像分割 小数据集下的深度学习 语音前沿技术 生成模型 基于贝叶斯的视觉信息编解码 珠 ...
- [ZZ] 深度学习三巨头之一来清华演讲了,你只需要知道这7点
深度学习三巨头之一来清华演讲了,你只需要知道这7点 http://wemedia.ifeng.com/10939074/wemedia.shtml Yann LeCun还提到了一项FAIR开发的,用于 ...
- [Deep-Learning-with-Python]计算机视觉中的深度学习
包括: 理解卷积神经网络 使用数据增强缓解过拟合 使用预训练卷积网络做特征提取 微调预训练网络模型 可视化卷积网络学习结果以及分类决策过程 介绍卷积神经网络,convnets,深度学习在计算机视觉方面 ...
- PyTorch中使用深度学习(CNN和LSTM)的自动图像标题
介绍 深度学习现在是一个非常猖獗的领域 - 有如此多的应用程序日复一日地出现.深入了解深度学习的最佳方法是亲自动手.尽可能多地参与项目,并尝试自己完成.这将帮助您更深入地掌握主题,并帮助您成为更好的深 ...
- Deep-Learning-with-Python] 文本序列中的深度学习
https://blog.csdn.net/LSG_Down/article/details/81327072 将文本数据处理成有用的数据表示 循环神经网络 使用1D卷积处理序列数据 深度学习模型可以 ...
- ui2code中的深度学习+传统算法应用
背景 在之前的文章中,我们已经提到过团队在UI自动化这方面的尝试,我们的目标是实现基于 单一图片到代码 的转换,在这个过程不可避免会遇到一个问题,就是为了从单一图片中提取出足够的有意义的结构信息,我们 ...
- 【深度学习】理解dropout
dropout是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃.注意是暂时,对于随机梯度下降来说,由于是随机丢弃,故而每一个mini-batch都在训练不同的网络. ...
- 在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN
Generative Adversarial Network 是深度学习中非常有趣的一种方法.GAN最早源自Ian Goodfellow的这篇论文.LeCun对GAN给出了极高的评价: “There ...
随机推荐
- H5系列之常用的语义元素
H5添加了几个新标签,带有语义化的标签,像我们的div 和 span 标签,你说他两能干嘛呢, 好像他两什么事都能干.举个例子,你家里的房子,有几个房间,如果不分房间的话,是不是你 今天睡这里,明天睡 ...
- jQuery 第四章 实例方法 DOM操作_基于jQuery对象增删改查相关方法
.next() .prev() .nextAll() .prevAll() .prevUntil() .nextUntli() .siblings() .children() .parent() .p ...
- MySQL常用命令与语句
目录 Shell命令 查看系统信息 查看系统变量 设置系统变量 数据库操作 查看表信息 修改表语句 操作表 操作索引 操作约束 操作列 查询常用语句 Shell命令 mysql -uroot -p12 ...
- 《高并发下的.NET》第2季 - 《memcached连接暴增案》第1集:问题表现
在<.NET 5.0 背锅案>第7集-大结局之后,园子和 .NET 继续过上了幸福生活...剧情很美好,现实很残酷...现实是旧案刚结,新案立至,而且新案与旧案有关联,被迫继续拍剧,并对该 ...
- JavaSE 学习笔记06丨并发
Chapter 12. 并发 12.1 并发与并行 并发:指两个或多个事件在同一个时间段内发生. 并行:指两个或多个事件在同一时刻发生(同时发生). 在操作系统中,并发指的是在一段时间内宏观上有多个程 ...
- LeetCode双周赛#34
5492. 分割字符串的方案数 #组合公式 #乘法原理 #区间分割 题目链接 题意 给定01二进制串\(s\),可将\(s\)分割为三个非空 字符串\(s_1,s_2,s_3\),即(\(s_1+s_ ...
- Vue.js 桌面端自定义滚动条组件|vue美化滚动条VScroll
基于vue.js开发的小巧PC端自定义滚动条组件VScroll. 前段时间有给大家分享一个vue桌面端弹框组件,今天再分享最近开发的一个vue pc端自定义滚动条组件. vscroll 一款基于vue ...
- moviepy音视频剪辑:moviepy中的剪辑基类Clip详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- Python中函数的参数带星号是什么意思?
参数带星号表示支持可变不定数量的参数,这种方法叫参数收集. 星号又可以带1个或2个,带1个表示按位置来收集参数,带2个星号表示按关键字来收集参数. 1.带一个星号的参数收集模式: 这种模式是在函数定义 ...
- 老猿Python重难点知识博文汇总
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 除了相关教程外,老猿在学习过程中还写了大量的学习随笔,内容比较杂,文章内容也参差不齐,为了方便,老猿 ...