我对人工神经网络真的很感兴趣,但是我正在寻找一个起点。
那里有什么资源,什么是好的入门项目?
我对人工神经网络真的很感兴趣,但是我正在寻找一个起点。
那里有什么资源,什么是好的入门项目?
Answers:
这是神经网络编程的一些示例。 http://www.codeproject.com/KB/recipes/neural_dot_net.aspx
您可以在此处开始阅读:http : //web.archive.org/web/20071025010456/http : //www.geocities.com/CapeCanaveral/Lab/3765/neural.html
我本人已经浏览了有关该课程的课程,并阅读了一些文献。
首先,放弃任何观念,即人工神经网络与大脑无关,但与生物神经元网络具有相似性。学习生物学不会帮助您有效地应用神经网络。将学习线性代数,微积分和概率论。您至少应该使自己熟悉函数的基本微分,链规则,偏导数(梯度,Jacobian和Hessian)以及理解矩阵乘法和对角化的概念。
训练网络时,实际上所做的就是优化大型的多维函数(相对于网络中的每个权重最小化误差度量),因此对非线性数值优化技术的研究可能具有启发性。这是一个广泛研究的问题,神经网络之外有大量文献资料,网上有大量关于数值优化的讲义。首先,大多数人都使用简单的梯度下降法,但这比更细微的方法(例如,
一旦掌握了基本思想,就可以开始在隐藏层中尝试不同的“挤压”功能,添加各种正则化和各种调整以使学习更快。有关“最佳实践”的完整列表,请参见本文。
克里斯·毕晓普(Chris Bishop)的“模式识别神经网络”是有关该主题的最佳书籍之一。在这个阶段它已经相当老了,但仍然是一个很好的资源,您经常可以在网上找到二手副本,价格约为30美元。他的新书《模式识别和机器学习》中的神经网络章节也很全面。有关特别好的以实现为中心的教程,请参见CodeProject.com上的该教程,该教程实现了一种称为卷积网络的聪明网络,该网络以某种方式限制了连接性,使其非常善于学习对视觉模式进行分类。
支持向量机和其他内核方法已变得非常流行,因为您可以在不知道自己在做什么的情况下应用它们,并且通常会获得可接受的结果。另一方面,神经网络是巨大的优化问题,需要进行仔细的调整,尽管它们对于许多问题(尤其是计算机视觉等领域的大规模问题)仍然是首选。
我强烈推荐Anoop Madhusudanan在Code Project上撰写的这个出色的系列。
他带您了解基础知识,以一种易于理解的方式了解它们的工作原理,并向您展示如何使用他的brainnet
库来创建自己的库。
这些天来,神经网络已经很流行了。支持向量机和内核方法比反向传播更适合于更多类别的问题。神经网络和遗传算法吸引了对现代机器学习了解不多但不是最新技术的人们的想象力。
如果您想了解有关AI和机器学习的更多信息,建议阅读Peter Norvig的《人工智能:现代方法》。这是对AI和许多现代技术的广泛调查。它也涵盖了历史和较旧的技术,将使您更全面地了解AI和机器学习的基础。
神经网络非常简单。特别是如果您使用遗传算法来确定权重,而不是适当的反向传播。
劳尔·罗哈斯(Raul Rojas)的书是一个很好的开始(也是免费的)。同样,海金的书第三版虽然数量很多,但却得到了很好的解释。
http://www.ai-junkie.com/ann/evolved/nnt1.html是多层感知器的清晰介绍,尽管它没有描述反向传播算法
您还可以查看generation5.org,它提供了很多有关AI的一般文章,并提供了有关神经网络的精彩文章
我发现福塞特的《神经网络基础知识》是一本简单易学的入门级教科书。
我同意其他人的观点,他们说学习生物学不是一个好的起点……因为生物学中有很多不相关的信息。您无需了解神经元如何工作以重新创建其功能-只需模拟其动作即可。我推荐雷·库兹韦尔(Ray Kurzweil)的“如何创造思维”-它涉及到与计算模型有关的生物学领域((通过组合多个输入来创建模拟神经元,并在达到阈值后触发)),但是忽略了诸如此类的无关紧要的东西神经元实际上如何将thouse输入添加到geather。(例如,您将仅使用+和不等式与阈值进行比较)
我还应该指出,这本书并不是真正意义上的“创造思想”,它只关注于分层模式识别/新皮层。自1980年代以来,我一直在谈论一般主题,所以有很多较旧的书可能包含相同信息的过时形式。我阅读过较早的文档,指出视觉系统例如是多层模式识别器。他认为这适用于整个新皮层。同样,他的“预测”有些许困难-他的硬件估计可能非常准确,但是我认为他低估了简单任务的复杂性(例如:驾驶汽车)。当然,他已经看到了很多进步(并且是其中的一部分),但我仍然认为他过于乐观。与人类可以完成99.9%以上的速度相比,人工智能汽车在90%的时间内能够成功行驶1英里有很大的不同。我不希望有任何AI能够真正驱动我至少20年...(我不认为宝马赛车在实际赛道上需要接受“训练”,因为它们并没有真正发挥相同的作用游戏)
如果您已经对AI是什么以及如何对其进行建模有了基本的了解,那么最好跳过一些更具技术性的知识。
如果您想快速了解某些神经网络概念在真实模拟器上的应用,可以在http://grey.colorado.edu/CompCogNeuro/index上找到一本很棒的在线书籍(现为Wiki),名为“计算认知神经科学” 。 php / CCNBook / Main
这本书在学校用作一本教科书,并带您进入许多不同的大脑区域,从单个神经元一直到高级执行功能。
此外,每个部分都增加了已经为您准备好的作业“项目”。只需下载,按照步骤操作,并模拟本章讨论的所有内容。他们使用的软件Emergent有点精巧,但功能强大到令人难以置信:我相信它是10多年工作的产物。
上学期我在一个本科班上学习了它,这很棒。逐步引导您完成所有操作