网站 只收录首页,新房装修,创业商机网农村工厂,c2c的盈利模式有哪些前言
思索了很久到底要不要出深度学习内容#xff0c;毕竟在数学建模专栏里边的机器学习内容还有一大半算法没有更新#xff0c;很多坑都没有填满#xff0c;而且现在深度学习的文章和学习课程都十分的多#xff0c;我考虑了很久决定还是得出神经网络系列文章#xff0c;…
前言
思索了很久到底要不要出深度学习内容毕竟在数学建模专栏里边的机器学习内容还有一大半算法没有更新很多坑都没有填满而且现在深度学习的文章和学习课程都十分的多我考虑了很久决定还是得出神经网络系列文章不然如果以后数学建模竞赛或者是其他更优化模型如果用上了神经网络比如利用LSTM进行时间序列模型预测那么就更好向大家解释并且阐述原理了。但是深度学习的内容不是那么好掌握的包含大量的数学理论知识以及大量的计算公式原理需要推理。且如果不进行实际操作很难够理解我们写的代码究极在神经网络计算框架中代表什么作用。不过我会尽可能将知识简化转换为我们比较熟悉的内容我将尽力让大家了解并熟悉神经网络框架保证能够理解通畅以及推演顺利的条件之下尽量不使用过多的数学公式和专业理论知识。以一篇文章快速了解并实现该算法以效率最高的方式熟练这些知识。
现在很多竞赛虽然没有限定使用算法框架但是更多获奖的队伍都使用到了深度学习算法传统机器学习算法日渐式微。比如2022美国大学生数学建模C题参数队伍使用到了深度学习网络的队伍获奖比例都非常高现在人工智能比赛和数据挖掘比赛都相继增多对神经网络知识需求也日渐增多因此十分有必要掌握各类神经网络算法。
博主专注建模四年参与过大大小小数十来次数学建模理解各类模型原理以及每种模型的建模流程和各类题目分析方法。此专栏的目的就是为了让零基础快速使用各类数学模型、机器学习和深度学习以及代码每一篇文章都包含实战项目以及可运行代码。博主紧跟各类数模比赛每场数模竞赛博主都会将最新的思路和代码写进此专栏以及详细思路和完全代码。希望有需求的小伙伴不要错过笔者精心打造的专栏。 神经网络基础 神经网络的基础知识我们能够掌握到以上8点基础知识就算成功。 对于神经网络的理解我们最好建立较为具体的思考内容而不是单单建立知识概念的抽象内容。当我们谈论神经网络时其实可以把它想象成一种模仿人脑工作方式的计算方法。你可以把神经网络想象成一个由很多个小单元神经元组成的网络就像大脑中的神经元一样。那么让我们回到上初中生物课的时候先给大家放一张我们人类基础的神经大脑图片 不知道大家是否还有印象再给大家放一张神经网络框架图片 我们可以这样类比和神经元传播类似神经网络可以分为三层分别是输入层隐藏层以及输出层。每一层我们可以理解为就是大量的神经元组成的一个功能系统也就是视为一个大号的神经元释放的神经递质也就是我们当前层传递给下一层的数据参数受体层则根据上一层给出的信号去调整下一层该释放的神经信号。由此不断的一层一层传递数据直到结束也就是到输出层。
在神经网络中最左边的一层称为输入层如图它有三个神经元。最右边的一层称为输出层它包含两个输出神经元。如果一个层既不是输入层也不是输出层那么我们就可以称其为隐藏层。不过隐藏层并不只限定有一层比如下图 这个网络就有两层隐藏层。接下来我们再对单个神经元进行研究。
1.1神经元 一个神经元通常具有多个树突主要用来接受传入信息而轴突只有一条轴突尾端有许多轴突末梢可以用向其他多个神经元传递信息。轴突末梢与其他神经元的树突产生连接从而传递信号。
在神经网络中神经元模型是一个包含输入输出与计算功能的模型。输入可以类比为神经元的树突输出可以类比为神经元的轴突而计算则可以类比为细胞核。以下图为例 这就是一个典型的神经元模型包含三个输入一个输出以及两个计算功能连线称为“连接”每一条连接线上都有一个“权重值”。权重的概念在我以往的机器学习算法都有很多次介绍这里便不开展可以理解为线性回归中的ab值。一个神经网络的训练算法就是让权重的值调整到最佳以使得整个网络的预测效果最好。 现在了解到了基础的神经网络结构后不免产生疑问神经层数是越多越好吗神经网络设置的神经元个数是否会影响分类效果
1.2神经网络性质
一般来说更多的神经元的神经网络可以表达更复杂的函数。然而这即是优势也是不足也就是说我们可以通过神经网络工具建造大炮甚至是究极导弹但是你却让我去打蚊子也就是令我们算法工程师最头疼的过拟合问题。过拟合想必不过多描述以一个实际案例大家基本都能了解 如上图所示图中圆点代表数据集颜色代表数据的类别。红色和绿色的圆点代表数据集的类别情况红色和绿色的背景表示神经网络的分类情况。当网络隐藏层包含3个神经元时模型并没有将绿色圆点和红色圆点都很好地区分开。
当我们将隐藏层的神经元个数调整为6的时候 我们明显发现分类效果更好了大部分数据都得到了比较好的分类。当将隐藏层的神经元个数再次扩充至20个时 这时候的分类效果达到了极致可以说是99.9%了大家肯定觉得这个模型简直完美但是我要告诉大家的是这模型几乎不可能用因为它过分了区分了红色和绿色如果我新加入一些数据集落入红绿边缘的时候几乎都有明确的关系那么我们再次训练的时候便不能灵敏的根据新加入的数据集去调整区域了而且实际上的数据集并不是明显可分的更多的是模棱两可。因此更好的泛化能力才是我们追求的。
如果数据比较简单我们可以使用结构较为简单的网络防止过拟合。为了防止过拟合工程师研发出了很多方法比如正则化噪声处理等。本篇文章主要给大家先引入神经网络基本概念下一篇将给大家具体详细阐述神经网络的关键计算函数-激活函数。