diff --git a/README.md b/README.md index d9e08b7..6560915 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ - **可解释性AI系统:** 随着机器学习在安全攸关(Safety-critical)领域的应用,机器学习系统越来越需要对决策给出充分解释。本书将会讨论可解释AI系统的常用方法和落地实践经验。 -- **机器人学习系统:** 随着机器学习在机器人领域的应用,机器人学习及相关系统设计成为日益重要的研究领域。本书将会讨论机器人学习的常用方法及其相关系统设计。 +- **机器人系统:** 机器人(无人车,无人机,家用机器人等)作为机器学习技术重要的应用领域,在最近数年得到了广泛应用。在实践中,机器人系统在实时性,安全性,鲁棒性等方面都有极高要求,这要求开发者具有算法和系统的双重思维,从而解决实际问题。本书中我们将结合最新研究成果和机器人系统实践经验讲解该类系统的设计原则和实现细节。 我们在持续拓展拓展本书的内容,如元学习系统,自动并行,深度学习集群调度,绿色AI系统,图学习系统等。我们也非常欢迎社区对于新内容提出建议,贡献章节。 diff --git a/chapter_introduction/components_of_machine_learning_systems.md b/chapter_introduction/components_of_machine_learning_systems.md index d95a3b9..7a10bd3 100644 --- a/chapter_introduction/components_of_machine_learning_systems.md +++ b/chapter_introduction/components_of_machine_learning_systems.md @@ -1,6 +1,6 @@ ## 机器学习系统基本组成 -为了达到上述设计目标,一个现代的机器学习框架往往具有如 :numref:`framework_architecture`所示的基本架构。 +为了达到上述设计目标,一个现代的机器学习系统往往具有如 :numref:`framework_architecture`所示的基本架构。 ![机器学习框架基本构成](../img/ch01/framework_architecture.svg) :width:`600px` diff --git a/chapter_introduction/machine_learning_applications.md b/chapter_introduction/machine_learning_applications.md index d82caed..2cb5c85 100644 --- a/chapter_introduction/machine_learning_applications.md +++ b/chapter_introduction/machine_learning_applications.md @@ -1,8 +1,8 @@ ## 机器学习应用 -通俗来讲,机器学习是指从数据中学习出有用知识的计算技术。从处理的数据类型和学习模式来说,机器学习可以分为监督学习(Supervised +通俗来讲,机器学习是指从数据中学习出有用知识的计算技术。从学习模式来说,机器学习可以分为监督学习(Supervised Learning)、无监督学习(Unsupervised Learning)、强化学习(Reinforcement -Learning)等等。监督学习是已知输入输出对应关系情况下的学习,比如给定输入图像和它对应的内容标签,则学习图像分类(Classification);而无监督学习是只有输入数据但不知道输出标签情况下的学习,比如:给定一堆猫和狗的图像,自主学会猫和狗的分类,这种无监督分类也称为聚类(Clustering);强化学习则是给定一个学习环境和任务目标,算法自主地去不断尝试、改进自己、以实现任务目标。比如AlphaGo围棋就是用强化学习实现的,给定的环境是围棋的规则、而目标则是胜利得分。 +Learning)等等。监督学习是已知输入输出对应关系情况下的学习,比如给定输入图像和它对应的内容标签,则学习图像分类(Classification)。无监督学习是只有输入数据但不知道输出标签情况下的学习,比如:给定一堆猫和狗的图像,自主学会猫和狗的分类,这种无监督分类也称为聚类(Clustering)。强化学习则是给定一个学习环境和任务目标,算法自主地去不断尝试、改进自己、以实现任务目标。比如AlphaGo围棋就是用强化学习实现的,给定的环境是围棋的规则,而目标则是胜利得分。 从应用领域上划分,主要可以包括计算机视觉、自然语言处理和智能决策这三大部分,而且这三大部分之间也有很多交集。 狭义上来讲基于图像的应用都可归为计算机视觉方面的应用,典型的应用有人脸识别、物体识别、目标跟踪、人体姿态估计、以及图像的理解、修复、分割与检测等等。 @@ -16,4 +16,4 @@ Machine,SVM)、逻辑回归(Logistic Regression)、朴素贝叶斯(Naive Bayes) 等方法。然而得力于大数据互联网和计算机性能的提升,以深度学习(Deep Learning)为代表的方法得到了广泛的研究和应用。 -虽然机器学习算法很多,但无论是经典算法还是深度学习算法的计算往往以向量、矩阵运算为主体的,因此本书主要通过深度神经网络为例子展开机器学习系统的介绍。下面我们来快速了解一下机器学习系统的设计需求、目标、以及其组成原理。 \ No newline at end of file +虽然机器学习算法很多,但无论是经典算法还是深度学习算法的计算往往以向量、矩阵运算为主体的,因此本书主要通过深度神经网络为例子展开机器学习系统的介绍。下面我们来快速了解一下机器学习系统的设计需求、目标以及其组成原理。 \ No newline at end of file diff --git a/chapter_introduction/requirements_for_machine_learning_systems.md b/chapter_introduction/requirements_for_machine_learning_systems.md index f1540c6..9064410 100644 --- a/chapter_introduction/requirements_for_machine_learning_systems.md +++ b/chapter_introduction/requirements_for_machine_learning_systems.md @@ -3,17 +3,17 @@ :width:`600px` :label:`framework_position` -为了支持日益增长的机器学习应用,开发者普遍需要一个新型的系统软件:机器学习框架(如 :numref:`framework_position`所示)。这种框架一方面可以帮助用户进行高效的开发,另一方面使得机器学习模型的训练和部署可以高效使用通用处理器和计算加速器。在设计机器学习框架的过程,人们总结出了以下几个设计需求: +为了支持日益增长的机器学习应用,开发者普遍需要依赖机器学习系统(如 :numref:`framework_position`所示)。在设计这种系统的过程中,人们总结出了以下几个设计需求: - **支持多种神经网络:** - 深度学习的崛起使得神经网络成为了大量机器学习应用的核心。不同的应用具有多种数据形态和机器学习的目标,因此人们设计出了大量不同的神经网络,例如,卷积神经网络(Convolutional + 深度学习的崛起使得神经网络成为了机器学习应用的核心。不同的应用具有多种数据形态和学习目标,因此人们设计出了不同的神经网络,例如,卷积神经网络(Convolutional Neural Networks),图神经网络(Graph Neural Networks),自注意力神经网络(Self-attention Neural - Networks)等等。人们需要一个统一的框架来开发各种各种的神经网络。 + Networks)等等。这些不同的神经网络需要一个共同的系统软件来进行开发。 - **支持自动微分:** - 神经网络模型的的一个核心优点是:其可以利用数据、标注(Label)和目标损失函数(Loss - Function)来自动计算梯度(Gradients),以实现机器学习模型的参数更新。一套神经网络模型可以应用在不同的数据场景中。为了实现这个目标,人们希望机器学习框架可以对任意神经网络自动化地计算出梯度。 + 神经网络模型的核心计算需求是:系统需要利用数据、标注(Label)和目标损失函数(Loss + Function)计算梯度(Gradients),并将梯度用以更新神经网络参数。这其中的挑战是如何让系统对于各式各样的神经网络都能**自动化**推导出梯度的计算方法,这个推导过程往往被称之为自动微分。 - **支持数据管理和处理:** 机器学习的核心是数据,这其中不仅包括训练、评估和测试数据集,还包括训练后产生的模型参数(Checkpoint),以及训练过程中产生的调试数据(Debugging