神经网络是有史以来最漂亮的编程范例之一。在传统的编程方法中,我们告诉计算机要做什么,将大问题分解成计算机可以轻松执行的许多小的,精确定义的任务。相比之下,在神经网络中,我们不告诉计算机如何解决我们的问题。相反,它从观测数据中学习,找出解决手头问题的办法。
从数据自动学习听起来很有前途。然而,直到2006年,我们还不知道如何训练神经网络来超越更传统的方法,除了一些特殊的问题。 2006年发生的变化是在所谓的深度神经网络中发现学习技术。这些技术现在被称为深度学习。它们已经得到了进一步发展,今天深度神经网络和深度学习在计算机视觉,语音识别和自然语言处理等许多重要问题上取得了出色的表现。它们正在被谷歌,微软和Facebook等公司大规模部署。
本书的目的是帮助你掌握神经网络的核心概念,包括现代深度学习技术。在完成本书之后,您将编写使用神经网络和深度学习来解决复杂模式识别问题的代码。你将有一个基础来使用神经网络和深度学习来攻击你自己设计的问题。
原则导向的方法
本书的一个基本信念是,最好能够深入理解神经网络和深度学习的核心原理,而不是对长长的一系列想法的朦胧理解。如果你已经很好地理解了核心思想,你可以快速理解其他新材料。在编程语言方面,把它看作掌握新语言的核心语法,库和数据结构。您仍然只能“认识”整个语言的一小部分 - 许多语言都有巨大的标准库 - 但新的库和数据结构可以快速轻松地理解。
这意味着本书不是关于如何使用一些特定的神经网络库的教程。如果你主要想在图书馆学习,不要读这本书!找到你想学习的图书馆,并通过教程和文档。但要警惕。虽然这有一个直接的解决问题的收益,但如果你想了解神经网络中究竟发生了什么,如果你需要从现在开始相关的见解,那么仅仅学习一些热门图书馆是不够的。您需要了解神经网络如何工作的持久,持久的见解。技术来和技术去,但洞察力永远。
实际操作方法
我们将通过攻击一个具体问题来学习神经网络和深度学习背后的核心原理:教授计算机识别手写数字的问题。使用传统的编程方法解决这个问题是非常困难的。然而,正如我们将看到的那样,使用简单的神经网络可以很好地解决问题,只需几十行代码,并且不需要特殊的库。更重要的是,我们将通过多次迭代来改进程序,逐渐融入越来越多关于神经网络和深度学习的核心思想。
这种动手方式意味着您需要一些编程经验才能阅读本书。但你不需要成为一名专业程序员。我用Python(2.7版)编写了代码,即使你不用Python编程,也应该很容易理解,只需一点点努力。通过本书的学习,我们将开发一个小型的神经网络库,您可以使用它来进行实验和理解。所有的代码都可以在这里下载。完成本书或阅读本书后,您可以轻松选取适用于生产的功能完整的神经网络库之一。
在相关说明中,读这本书的数学要求是适度的。大多数章节都有一些数学,但它通常只是初等代数和函数图,我希望大多数读者都可以。我偶尔会使用更高级的数学,但是已经构建了这些材料,所以即使某些数学细节未能提供给您,也可以遵循。广泛使用较重数学的一章是第2章,它需要一些多变量微积分和线性代数。如果那些人不熟悉,我将从第2章开始讨论如何驾驭数学。如果你发现真的很沉重,你可以直接跳到本章主要结果的摘要。无论如何,从一开始就无需担心这一点。
一本书旨在既要以原则为导向,又要实践。但是我相信,如果我们建立神经网络的基本思想,你会学得最好
分享到:
相关推荐
2.4.3 BP神经网络学习算法的MATLAB实现 2.5 径向基函数神经网络模型与学习算法 2.5.1 RBF神经网络模型 2.5.2 RBF网络的学习算法 2.5.3 RBF网络学习算法的MATLAB实现 2.6 自组织神经网络模型与学习算法 2.6.1 自...
神经网络学习小记录42——windows下的tensorflow-gpu=1.13.2环境配置学习前言环境内容Anaconda安装下载Cudnn和CUDA配置tensorflow环境安装VSCODE 学习前言 好多人问环境怎么配置,还是出个教程吧。 环境内容 ...
神经网络学习小记录43——Keras中Tensorboard的使用学习前言Tensorboard详解使用例子1、loss和acc2、权值直方图3、梯度直方图实现代码 学习前言 可视化是个好东西呀,怎么学学呢! Tensorboard详解 该类在存放在...
通过学习该课件,用户可以快速掌握MATLAB神经网络工具箱的使用方法,开发和训练自己的神经网络模型,并应用于实际项目中。 下面是该课件的知识点总结: 1. MATLAB神经网络工具箱简介 MATLAB神经网络工具箱是MATLAB...
这种方法不仅继承了灰色预测的优点,还利用神经网络的强大学习能力进一步提高了预测精度。 #### 二、结合算法模型的建立 ##### 2.1 灰色预测算法 灰色预测算法的基本步骤包括数据预处理、模型建立以及预测等环节...
《神经网络与深度学习》是邱锡鹏教授的著作,主要涵盖了人工智能领域的核心概念和技术,尤其是神经网络和深度学习的基础及最新进展。该书详细介绍了人工智能的发展历程、流派、机器学习理论,以及表示学习和分布式...
说到神经网络很容易让人们联想到生物学中的神经网络,而且很多时候也会把机器学习的神经网络和生物神经网络联系起来。但是其实人类至今都没有完全理解生物神经网络的运作,更不要谈用计算机实现生物神经网络了。 ...
在人工智能与机器学习领域,特别是涉及神经网络的研究与教学过程中,绘制清晰直观的神经网络图至关重要。LaTeX作为一种强大的排版工具,不仅可以帮助用户创建高质量的文档,还能通过其强大的扩展库(如TikZ)来绘制...
### LSTM和循环神经网络基础教程 #### 一、前言 循环神经网络(RNN)是一种特殊类型的人工神经网络,其设计初衷是为了处理序列数据。序列数据是指在时间和顺序上有内在联系的数据,如自然语言文本、语音信号、时间...
### 卷积神经网络(CNN)详尽解析 #### 前言 本文旨在系统地介绍卷积神经网络(Convolutional Neural Networks, CNN)的基础概念及其内部运作机制。CNN是一种特殊的深度学习模型,主要用于处理具有网格结构的数据,如...
BP(Back Propagation)神经网络是一种常用的前馈式神经网络模型,其通过梯度下降法进行权重和偏置的学习与调整,以实现对数据的有效拟合。BP网络在机器学习、模式识别等领域有着广泛的应用。本文将根据提供的标题、...
此示例演示如何创建和训练一个简单的卷积神经网络,以使用深度学习对 SAR 目标进行分类。 深度学习是一种强大的技术,可用于训练健壮的分类器。它已经在从图像分析到自然语言处理的不同领域显示出其有效性。这些发展...
目 录 前言 遗传算法(GA)的C语言实现 ...神经网络学习 之 M-P模型 神经网络学习 之 BP神经网络 决策树学习 之 概念与构造算法 现代优化算法 之 模拟退火 现代优化算法 之 遗传算法 现代优化算法 之 禁忌搜索算法
在深度学习中,神经网络通常包含多个隐藏层,这也是“深度”一词的来源。 PyTorch中的`torch.nn`包提供了构建神经网络所需的各种组件,包括常见的激活函数、损失函数以及不同类型的网络层(如卷积层、全连接层等)...
前言:人工智能机器学习有关算法内容,请参见公众号“科技优化生活”之前相关文章。人工智能之机器学习主要有三大类:1)分类;2)回归;3)聚类。今天我们重点探讨一下循环神经网络(RNN)算法。循环神经网络(RNN...
BP神经网络是一种人工神经网络模型,它可以学习和模拟复杂的非线性关系。BP神经网络由输入层、隐藏层和输出层组成,通过反复迭代的学习过程,可以建立输入和输出之间的映射关系。BP神经网络广泛应用于模式识别、分类...
【风电机组变桨系统故障预测】是电力领域的一个重要课题,涉及到的关键词包括神经网络、深度学习、机器学习和数据建模。该研究利用SCADA(Supervisory Control and Data Acquisition)系统收集的数据,对风电机组变...
研究的前言部分强调了化学镀锡液成分优化的传统方法所面临的局限性,并指出了模糊神经网络模型优化方法的有效性。 本文的核心知识点可以归纳为以下几点: 1. 化学镀锡液的组成及其各成分的作用,尤其是硫酸亚锡、...
《基于Torch平台的神经网络压缩研究与应用》需求文档v2.21是针对深度学习领域中神经网络模型优化和压缩的研究与开发所制定的重要文档。此文档由陈伟民、付强、曹进和李恬霖等小组成员共同编写和修订,旨在为神经网络...