在这篇文章中,咱们将回顾监督机器学习的基础知识,以及训练和验证阶段包括哪些内容。数组
在这里,咱们将为不了解AI的读者介绍机器学习(ML)的基础知识,而且咱们将描述在监督机器学习模型中的训练和验证步骤。网络
ML是AI的一个分支,它试图经过概括一组示例而不是接收显式指令来让机器找出如何执行任务。ML有三种范式:监督学习、非监督学习和强化学习。在监督学习中,一个模型(咱们将在下面讨论)经过一个称为训练的过程进行学习,在这个过程当中,它会提供示例输入和正确输出。它了解数据集示例中哪些特性映射到特定输出,而后可以在一个称为预测的阶段预测新的输入数据。在无监督学习中,模型经过分析数据之间的关系来学习数据的结构,而不涉及任何其余过程。在强化学习中,咱们创建模型,经过试验和错误技术,随着时间的推移学习和改进。机器学习
ML中的模型是什么?模型是一个简单的数学对象或实体,它包含一些关于AI的理论背景,以便可以从数据集学习。在监督学习中流行的模型包括决策树、向量机,固然还有神经网络。函数
神经网络是按堆栈的形状分层排列的。除了输入层和输出层以外,每一层的节点都接收来自上一层节点的输入,也能够接收来自下一层节点的输入,一样也能够向上一层和下一层节点发送信号或输出。性能
在一个神经网络中,咱们老是存在输入和输出层,可能有一个或多个隐藏层。学习
最简单的NN是感知器,它是包含的输入层和输出层单个节点。测试
对于神经网络中的每条边都有一个关联的权重值,这是对于每一个节点都有关联的值。例如,输入层中每一个节点的值能够来自与数据集中的图像相关联的像素值输入数组。为了计算下一层节点的值,咱们计算链接到该节点的输入的加权和。这就是传递函数。一旦计算出这个值,它就被传递给另外一个称为激活函数的函数,该函数根据阈值肯定该节点是否应该触发到下一层。有些激活函数是二进制的,有些则有多个输出。优化
一般在神经网络的末尾,咱们有一个激活函数,它对传递到输入层的数据进行分类(作出决定)。在硬币识别的状况下,它将决定图像中硬币的类别或类型。神经网络中的学习过程能够仅仅看做是对其权重的调整,以便为每一个给定的输入得到预期的输出。一旦对模型进行了训练,获得的权重就能够被保存下来。spa
当一个神经网络有一个以上的隐藏层时,咱们将其称为深度学习(DL)。DL是一套依赖于神经网络且不止一个隐藏层的技术。拥有多个隐藏层的缘由是提供比单一隐藏层神经网络更准确的结果。实践证实,深度神经网络比单层神经网络能产生更快更准确的结果。你添加到你的神经网络的每一层都有助于从数据集学习复杂的特征。code
神经网络包含许多须要调整以得到更好性能的参数。为了可以检查参数优化的有效性和神经网络自己的性能,咱们留出很大一部分的原始数据集(一般大于70%)做为训练集,使用其余验证(测试)组。验证集也帮助咱们防止过分拟合,这发生在一个模型学习太好一组很是类似的对象数据集,使它太适合这个数据和不适合新数据。
在下一篇文章中,咱们将研究用于硬币识别问题的卷积神经网络,并将在Keras.NET中实现一个卷积神经网络。
欢迎关注个人公众号,若是你有喜欢的外文技术文章,能够经过公众号留言推荐给我。
原文连接:https://www.codeproject.com/Articles/5284227/Deep-Learning-in-Csharp-Understanding-Neural-Netwo