有这样一套AI算法入门书,学习算法不再难

有这样一套AI算法入门书,学习算法不再难_第1张图片

 

本系列图书将向读者介绍人工智能领域的各种热门主题。由于人工智能是一个庞大而繁杂的领域,并且其涵盖的内容与日俱增,任何一本书都只可能专注于特定领域,因此本书也无意成为一本巨细靡遗的人工智能教程。

本系列图书以一种数学上易于理解的方式讲授人工智能相关概念,这也是本系列图书英文书名中“for Human”的含义。此外:

  • 本系列图书假定读者精通至少一门编程语言;
  • 本系列图书假定读者对大学代数课程有基本的了解;
  • 本系列图书将使用微积分、线性代数、微分方程与统计学中的相关概念和公式;
  • 但是在解释上述第3点的相关内容时,本系列图书并不会假定读者对上述内容十分熟练;
  • 所有概念都不仅有数学公式,还附有编程实例和伪代码。

本系列图书的目标读者是精通至少一门编程语言的程序员,且书中示例均已改写为多种编程语言的形式。

前两卷已经由人民邮电出版社异步社区出版,还有一卷预计明年第一季度可以与大家见面。

卷1:《人工智能算法 卷1 基础算法》

有这样一套AI算法入门书,学习算法不再难_第2张图片

 

第1章“AI入门”,介绍了本书或系列图书其他各卷中会用到的部分人工智能相关的基本概念。大多数人工智能算法是接受一个输入数组,从而产生一个输出数组——人工智能所能解决的问题通常被归为此类模型。而在算法模型内部,还需要有额外的数组来存储长短期记忆。算法的训练实际上就是通过调整长期记忆的值来产生对应于给定输入的预期输出的一个过程。

第2章“数据归一化”,描述了大多数人工智能算法对原始数据的预处理流程。数据需要以一个输入数组的形式传递给算法,但实践中获取到的数据并不一定都是数值型的,也有一些是类别信息,比如颜色、形状、性别、物种抑或其他一些非数值型的描述性特征。此外,就算是现成的数值型数据,也必须在一定范围内归一化,并且通常是归一化到 (-1, 1) 区间。

第3章“距离度量”,展示了我们比较数据的方法,说起来这种比较方法其实跟在地图上标识出两点间的距离十分相像。人工智能通常以数值数组的形式处理数据,包括输入数据、输出数据、长期记忆、短期记忆和其他很多数据都是如此,这些数组很多时候也被称作“向量”。我们可以像计算两点间距离一样,计算出两个数据之间的差异(二维和三维的点可以分别看作长度为二和三的向量)。当然,在人工智能领域,我们经常要处理的是更高维空间中的数据。

第4章“随机数生成”,讲解了人工智能算法中随机数的生成和使用。本章由关于均匀随机数和正态随机数的讨论切入——出现这种不同的根源在于有的时候算法要求随机数具有等可能性,而有的时候又需要它们服从某种既定的分布。此外本章还讨论了生成随机数的方法。

第5章“K均值聚类算法”,详述了将数据按相似度分类的方法。K均值算法本身可以用来将数据按共性分组,同时也可以被用于组成更复杂的算法——比如遗传算法就利用K均值算法对种群按特征归类,各路网商也利用聚类算法划分顾客,依照同类型顾客的消费习惯调整销售策略。

第6章“误差计算”,演示了评估人工智能算法效果的方法。误差计算的过程由一个用以评估算法最终效果的评分函数执行,其结果决定了算法的效果。一类常用的评分函数只需要给定输入向量和预期输出向量,也就是所谓的“训练数据”,算法的效果则是由实际输出与预期输出间的差异决定的。

第7章“迈向机器学习”,概述了可以从数据中学习特征来优化结果的简单机器学习算法。大多数人工智能算法是用权值向量将输入向量转化为期望的输出向量,这些权值向量构成了算法的长期记忆,“训练”就是一个调整长期记忆以产生预期输出的过程。本章会演示几个具有学习能力的简单模型的构建方法,也会介绍一些简单但却行之有效的训练算法,能够调整这种长期记忆(权重向量)并优化输出结果,简单随机漫步和爬山算法正是其中之二。

第8章“优化训练”,在前面章节的基础上进行了一定的拓展,介绍了像模拟退火算法和Nelder-Mead法[2]这样用来快速优化人工智能模型权重的算法。本章还说明了如何通过一定的调整,将这些优化算法应用于之前提到过的部分模型。

第9章“离散优化”,解释了如何优化非数值型的类别型数据。并非所有优化问题都是数值型的,还有离散型和类别型问题,比如背包问题和旅行商问题。本章将说明模拟退火算法可以用于处理这两个问题,并且该算法既适用于连续的数值型问题,也适用于离散的类别型问题。

第10章“线性回归”,讲解了如何用线性和非线性方程来学习趋势并做出预测。本章将介绍简单线性回归,并演示如何用它来拟合数据为线性模型。此外还将介绍可以拟合非线性数据的广义线性模型(General Linear Model,GLM)。

卷2:《人工智能算法 卷1 基础算法》

有这样一套AI算法入门书,学习算法不再难_第3张图片

 

第1章 “种群、计分和选择”引入本书其余部分将要使用的概念。受大自然启发 的算法通过形成解的种群来解决问题。评分允许算法评估种群成员的有效性。

第2章 “交叉和突变”介绍几种交叉和突变的方法,种群成员可以为下一代创建潜在的更好的解。交叉允许两个或多个潜在解结合其特征,产生下一代的解。突变让个体可以为下一代创建其自奂的稍有变化的版本。

第3章 “遗传算法”将第1章和第2章的思想组合成一个具体的算法。遗传算法通过演化来优化定长数组,以提供更好的结果。本章将展示如何使用定长数组找到旅行商问题的解决方案,以及如何使用花朵的测量值来预测鸢尾花种类。

第4章 “遗传编程”展示了演化算法的解数组不一定总是固定长度的。实际上,利用这些想法,可以将计算机程序表示为树,这些树可以演化并生成其他程序,以更好地执行其预期任务。

第5章“ 物种形成”讨论如何将种群划分为一个物种。就像交叉是通过种群中两个个体的组合来创造后代一样,物种形成也通过相似解决方案的交配而产生后代。程序员从大自然中借用了这个概念,只有同一物种的生物才可以配对并繁殖。

第6章“ 粒子群优化”使用粒子组搜索最优解。计算机软件中的这种分组本能是根据自然建模的。“牛群”“昆虫群”“鸟群”和“鱼群”等例子表明,有机体自然倾向成群出行,将成群出行作为对付捕食者的最佳解决方案。

第7章 “ 蚁群优化”讨论蚂蚁的信息素追踪如何为计算机程序员提供灵感。随着越来越多的蚂蚁跟随其同伴留下的化学物质前进,足迹变得越来越强。计算机程序可以采用类似的技术来找到最优解。

第8章“ 细胞自动机”利用简单的规则来产生非常复杂的结果和模式。创建有趣的细胞自动机的关键,是找到一些可以利用基于遗传算法进行演化的简单规则。

第9章“ 人工生命”旨在反映出真实生命的特征,其中包含本书的一个重点项目。本章将创建一个模拟植物生长的程序。为了帮助读者查看进度,本章将该程序划分为3个里程碑,并提供代码。

第10章 "建模"讨论数据科学如何使用受大算然启发的算法。本章还包含了本书的第二个重点项目。本书将利用自Kaggle教程竞赛之一的数据集,向读者展示如何创建模型来预测泰坦尼克号上的乘客是幸存还是死亡。本章也会用3个里程碑展示这个项目,以便读者验证进度。

卷3 人工智能算法(卷3):深度学习和神经网络(2021年上半年出版)

有这样一套AI算法入门书,学习算法不再难_第4张图片

 

本书中,我们将演示各种现实世界任务中的神经网络,例如图像识别和数据科学。我们研究了当前的神经网络技术,包括 ReLU 激活、随机梯度下降、交叉熵、正则化,Dropout 和可视化。

你可能感兴趣的:(算法,人工智能,ai)