我理解使用forwardprop和backprop训练具有梯度下降的神经网络的所有计算步骤,但是我试图绕过为什么它们比逻辑回归更好地工作。
现在我能想到的只有:
A)神经网络可以学习它自己的参数
B)比简单的逻辑回归有更多的权重,因此允许更复杂的假设
有人可以解释为什么神经网络一般运作良好吗?我是一个相对初学者。
答案 0 :(得分:4)
神经网络可以拥有大量的自由参数(互连单元之间的权重和偏差),这使它们可以灵活地适应高度复杂的数据(正确训练时),其他模型太简单了。这种模型的复杂性带来了训练这样一个复杂网络的问题,并确保最终模型能够推广到它所训练的例子(通常神经网络需要大量的训练数据,而其他模型则不需要)。
经典逻辑回归仅限于使用线性分类器进行二元分类(尽管可以通过一对一,一对一等方法轻松实现多类分类,并且存在逻辑回归的核心变量。允许非线性分类任务)。因此,一般情况下,逻辑回归通常应用于更简单,线性可分的分类任务,其中可获得少量的训练数据。
逻辑回归和线性回归等模型可以被认为是简单的多层感知器(有关如何解释,请查看this site。)
总之,模型复杂性允许神经网络解决更复杂的分类任务,并具有更广泛的应用(特别是当应用于原始数据,如图像像素强度等),但它们的复杂性意味着大量培训数据是必需的,培训它们可能是一项艰巨的任务。
答案 1 :(得分:4)
最近,Naftali Tishby博士的“信息瓶颈”概念解释了深度神经网络的有效性,这在学术界引起了轰动。 他的视频解释了这个想法(下面的链接)可能非常密集,所以我将尝试给出核心想法的提炼/一般形式,以帮助建立直觉
https://www.youtube.com/watch?v=XL07WEc2TRI
为使您的想法扎根,将MNIST任务分类为图像中的数字。为此,我只是在谈论简单的完全连接的神经网络(而不是通常用于MNIST的卷积神经网络)
NN的输入包含有关隐藏在其内部的输出的信息。需要一些功能将输入转换为输出形式。很明显。 建立更好的直觉所需的思维关键差异是将输入视为其中包含“信息”的信号(我在这里不介绍信息理论)。其中一些信息与手头的任务有关(预测输出)。将输出也视为具有一定量“信息”的信号。神经网络试图“成功地优化”并压缩输入信号的信息以匹配所需的输出信号。将每一层都视为削减了输入信息中不必要的部分,并且 在通过网络的过程中保持和/或转换输出信息。 完全连接的神经网络会将输入信息转换为最终隐藏层中的形式,以使输出层可以线性分离该信息。
这是对NN的非常高级的基础解释,我希望它能帮助您更清楚地了解它。如果您想让我澄清一些内容,请告诉我。
Tishby博士的工作还有其他重要方面,例如小批量噪声如何帮助训练,以及如何将神经网络层的权重视为在问题的约束范围内进行随机游走。 这些部分会更详细一些,我建议您先玩弄神经网络,然后参加一门有关信息论的课程,以帮助您建立理解。
答案 2 :(得分:2)
考虑到您有一个庞大的数据集,并且想要为此建立一个二进制分类模型,现在您已经指出了两个选项
逻辑回归
神经网络(现在考虑使用FFN)
神经网络中的每个节点都将与一个激活函数相关联,例如,让我们选择Sigmoid,因为Logistic回归还内部使用Sigmoid进行决策。
看到红色边界中存在一些绿色斑点吗?
为什么会这样?为什么神经网络的决策边界如此灵活,比Logistic回归能提供更准确的结果?
或者您问的问题是“为什么神经网络这么好?”是因为它是隐藏的单位或隐藏的图层及其表示能力。
让我这样说。 您有一个逻辑回归模型和一个神经网络,其中每个神经网络都有100个Sigmoid激活神经元。现在,每个神经元将等效于一个逻辑回归。
现在假设一百个逻辑单元一起训练以解决一个问题与一个逻辑回归模型。由于存在这些隐藏层,因此决策边界会扩展并产生更好的结果。
在进行实验时,您可以添加更多数量的神经元,并查看决策边界如何变化。 Logistic回归与具有单个神经元的神经网络相同。
以上给出的只是一个例子。可以训练神经网络来获得非常复杂的决策边界
答案 3 :(得分:1)
正如您所指出的,神经网络允许训练他们的人通过算法发现特征。但是,它们也允许非常一般的非线性。如果您愿意,可以在逻辑回归中使用多项式项来实现某种程度的非线性,但是,您必须决定使用哪些项。那就是你必须先判断哪种模型有效。神经网络可以发现所需的非线性模型。
答案 4 :(得分:0)
'工作得很好'取决于具体情况。他们两个基本上做同样的事情:预测。
这里的主要区别是神经网络可以为概念设置隐藏节点,如果它被正确设置(不容易),使用这些输入进行最终决策。
而线性回归是基于更明显的事实,而不是副作用。神经网络应该能够比线性回归做出更准确的预测。
答案 5 :(得分:0)
神经网络在各种任务上都很擅长,但是要确切了解原因,选择分类和深入研究可能更容易。
简而言之,机器学习技术会根据过去的示例学习一种功能,以预测特定输入所属的类。使神经网络与众不同的是它们构建这些功能的能力,这些功能甚至可以解释数据中的复杂模式。神经网络的核心是像Relu这样的激活函数,它可以绘制一些基本的分类边界,例如: Example classification boundaries of Relus通过将数百个这样的Relus组合在一起,神经网络可以创建任意复杂的分类边界,例如: Composing classification boundaries
以下文章试图解释神经网络如何工作的直觉:https://medium.com/machine-intelligence-report/how-do-neural-networks-work-57d1ab5337ce
答案 6 :(得分:0)