分类标签归档:深度学习

深度学习入门五----Dropout and Batch Normalization


深度学习的世界不仅仅是dense层。您可以向模型添加数十种图层。(尝试浏览 [Keras]文档以获取示例!)有些类似于dense层并定义神经元之间的连接,而有些则可以进行其他类型的预处理或转换。 在本文章中,我们将了解两种特殊层,它们本身不包含任何神经元,但会添加一些功能,有时可以以各种方式使模型受益。两者都常用于现代模型结构中。

Dropout

其中第一个是“dropout 层”,它可以帮助纠正过拟合。 在上一篇文章中,我们讨论了网络学习训练数据中的虚假模式如何导致过度拟合。为了识别这些虚假模式,网络通常会依赖于非常特定的权重组合,一种权重的“阴谋”。但是,它们往往很脆弱:删除一个,阴谋就会

Read more

深度学习入门四----过拟合与欠拟合


回想一下上一篇文章中的示例,Keras 能保留它训练模型过程中训练和验证损失的历史记录,并且可以画出来。在本文中,我们将学习如何解释这些学习曲线以及如何使用它们来指导模型开发。特别是,我们将在学习曲线上寻找模型欠拟合(underfittiing)或者过拟合(overfitting)的证据,并查看几种防止过拟合或者欠拟合的策略。

Interpreting the Learning Curves

我们可能认为训练数据中的信息有两种:信号(signal)和噪声(noise)。信号是概括的部分,即可以帮助我们的模型根据新数据进行预测的部分。噪声是仅适用于训练数据的那部分;噪声是来自现实世界中的数据的所

Read more

深度学习入门三----梯度下降


在前两篇文章中,我们学习了如何从密集层(dense)的堆栈中构建完全连接的网络。首次创建时,网络的所有权重都是随机设置的——网络尚不“知道”任何事情。在本节中,我们将了解如何训练神经网络;我们将看到神经网络是如何学习的。 与所有机器学习任务一样,我们从一组训练数据开始。训练数据中的每个示例都包含一些特征(输入)和一个预期目标(输出)。训练网络意味着以一种可以将特征转换为目标的方式调整其权重。例如,在 80 Cereals 数据集中,我们想要一个网络,它可以获取每种谷物的“糖”、“纤维”和“蛋白质”含量,并预测该谷物的“卡路里”。如果我们能成功地训练一个网络来做到这一点,它的权重必须以某种方式表

Read more

深度学习入门二----深度神经网络


在本节中,我们将了解如何构建能够学习复杂关系的神经网络。 这里的关键思想是模块化(modularity),从简单的功能单元构建一个复杂的网络。我们已经看到了线性单元如何计算线性函数——现在我们将看到如何组合和修改这些单个的单元来模拟更复杂的关系。

Layers

神经网络通常将它们的神经元组织成层。当我们将具有一组公共输入的线性单元收集在一起时,我们会得到一个密集层(dense layer)。

你可以将神经网络中的每一层视为执行某种相对简单的变换。通过一层很深的堆栈,神经网络可以以越来越复杂的方式转换其输入。在训练有素的神经网络中,每一层都是一个转换,使我们更接近目标结果。

The Activ

Read more

深度学习入门一----一个神经元


 What is Deep Learning?

近年来,人工智能领域一些最令人印象深刻的进步是在深度学习领域。自然语言翻译、图像识别等任务,应用深度学习模型已经接近甚至超过人类的水平了。 那么什么是深度学习?深度学习是一种以深度计算为特征的机器学习方法。这种计算深度使深度学习模型能够理清在复杂数据集中发现的各种复杂模式。 通过其强大的功能和可扩展性,神经网络(neural networks)已成为深度学习的基础模型。神经网络由神经元组成,其中每个神经元单独执行一个简单的计算。事实上,神经网络的力量正是来自于这些神经元之间形成的复杂链接。

The Linear Unit

我们从神经网络的基本组成

Read more

机器学习笔记——应用实例:图片文字识别(Application Example: Photo OCR)


十八、应用实例:图片文字识别(Application Example: Photo OCR)

18.1 问题描述和流程图

参考视频: 18 - 1 - Problem Description and Pipeline (7 min).mkv

图像文字识别应用所作的事是,从一张给定的图片中识别文字。这比从一份扫描文档中识别文字要复杂的多。

为了完成这样的工作,需要采取如下步骤:

  1. 文字侦测(Text detection)——将图片上的文字与其他环境对象分离开来

  2. 字符切分(Character segmentation)——将文字分割成一个个单一的字符

  3. 字符分类(Character class

Read more

机器学习笔记——大规模机器学习


十七、大规模机器学习(Large Scale Machine Learning)

17.1 大型数据集的学习

参考视频: 17 - 1 - Learning With Large Datasets (6 min).mkv

如果我们有一个低方差的模型,增加数据集的规模可以帮助你获得更好的结果。我们应该怎样应对一个有100万条记录的训练集?

以线性回归模型为例,每一次梯度下降迭代,我们都需要计算训练集的误差的平方和,如果我们的学习算法需要有20次迭代,这便已经是非常大的计算代价。

首先应该做的事是去检查一个这么大规模的训练集是否真的必要,也许我们只用1000个训练集也能获得较好的效果,我们可以绘制

Read more

机器学习笔记——推荐系统(Recommender Systems)


十六、推荐系统(Recommender Systems)

16.1 问题形式化

参考视频: 16 - 1 - Problem Formulation (8 min).mkv

在接下来的视频中,我想讲一下推荐系统。我想讲推荐系统有两个原因:

第一、仅仅因为它是机器学习中的一个重要的应用。在过去几年,我偶尔访问硅谷不同的技术公司,我常和工作在这儿致力于机器学习应用的人们聊天,我常问他们,最重要的机器学习的应用是什么,或者,你最想改进的机器学习应用有哪些。我最常听到的答案是推荐系统。现在,在硅谷有很多团体试图建立很好的推荐系统。因此,如果你考虑网站像亚马逊,或网飞公司或易趣,或iTunes Geni

Read more

机器学习笔记——机器学习系统的设计


十一、机器学习系统的设计(Machine Learning System Design)

11.1 首先要做什么

参考视频: 11 - 1 - Prioritizing What to Work On (10 min).mkv

在接下来的视频中,我将谈到机器学习系统的设计。这些视频将谈及在设计复杂的机器学习系统时,你将遇到的主要问题。同时我们会试着给出一些关于如何巧妙构建一个复杂的机器学习系统的建议。下面的课程的的数学性可能不是那么强,但是我认为我们将要讲到的这些东西是非常有用的,可能在构建大型的机器学习系统时,节省大量的时间。

本周以一个垃圾邮件分类器算法为例进行讨论。

为了解决这样一个问题

Read more

机器学习笔记——应用机器学习的建议


十、应用机器学习的建议(Advice for Applying Machine Learning)

10.1 决定下一步做什么

参考视频: 10 - 1 - Deciding What to Try Next (6 min).mkv

到目前为止,我们已经介绍了许多不同的学习算法,如果你一直跟着这些视频的进度学习,你会发现自己已经不知不觉地成为一个了解许多先进机器学习技术的专家了。

然而,在懂机器学习的人当中依然存在着很大的差距,一部分人确实掌握了怎样高效有力地运用这些学习算法。而另一些人他们可能对我马上要讲的东西,就不是那么熟悉了。他们可能没有完全理解怎样运用这些算法。因此总是把时间浪费在毫无

Read more