优化是一个数学领域,涉及在众多候选解中寻找一个好的或最佳的解。
它是机器学习中一个重要的基础主题,因为大多数机器学习算法都是使用优化算法在历史数据上进行拟合的。此外,更广泛的问题,如模型选择和超参数调整,也可以被构建成一个优化问题。
尽管对机器学习从业者来说,具备一些优化背景至关重要,但鉴于它通常使用高度数学化的语言来描述,这可能是一个令人生畏的主题。
在本文中,您将发现有助于机器学习从业者的顶级优化书籍。
通过我的新书《机器学习优化》,开始您的项目,书中包含分步教程和所有示例的Python源代码文件。
让我们开始吧。
机器学习优化书籍
图片来源:Patrick Alexander,部分权利保留。
概述
优化领域非常广阔,因为它涉及许多其他研究领域。
因此,关于这个主题的书籍有数百本,其中大多数是充满了数学和证明的教科书。考虑到它是一个高度数学化的学科,这是非常合理的。
尽管如此,仍有一些书籍对优化算法的描述更为平易近人。
并非所有优化算法都与机器学习相关;相反,专注于一小部分算法是有益的。
坦率地说,很难对优化算法进行分组,因为有很多需要考虑的方面。尽管如此,了解一些简单算法(如线性回归和逻辑回归(例如凸优化、最小二乘法、牛顿法等))以及神经网络(一阶方法、梯度下降等)背后的优化原理是很重要的。
这些是大多数优化教科书都涵盖的基础优化算法。
机器学习中的并非所有优化问题都运行良好,例如 AutoML 和超参数调整中使用的优化。因此,需要了解随机优化算法(模拟退火、遗传算法、粒子群优化等)。尽管这些是优化算法,但它们也属于一种称为受生物启发计算或计算智能的学习算法。
因此,我们将同时关注涵盖经典优化算法的书籍以及关于替代优化算法的书籍。
事实上,我们将要介绍的第一本书涵盖了这两种类型的算法,以及更多内容。
优化算法
这本书由Mykel Kochenderfer和Tim Wheeler撰写,并于2019年出版。
这本书可能是我见过的为数不多的几本广泛涵盖与现代机器学习相关的优化技术领域的教科书之一。
本书提供了对优化的广泛介绍,重点关注工程系统设计的实用算法。我们涵盖了各种优化主题,介绍了底层的数学问题公式以及用于解决这些问题的算法。提供图表、示例和练习以传达各种方法的直观理解。
— 第xiiix页,《优化算法》,2019年。
重要的是,这些算法范围广泛,从单变量方法(二分法、线搜索等)到一阶方法(梯度下降)、二阶方法(牛顿法)、直接方法(模式搜索)、随机方法(模拟退火)和种群方法(遗传算法、粒子群),等等。
它包含算法的技术描述和参考文献,以及 Julia 中的算法工作示例。可惜示例不是 Python 的,否则这本书在我看来就近乎完美了。
完整的目录如下。
- 第一章:引言
- 第02章:导数与梯度
- 第03章:分段
- 第04章:局部下降
- 第05章:一阶方法
- 第06章:二阶方法
- 第07章:直接方法
- 第08章:随机方法
- 第09章:种群方法
- 第10章:约束
- 第11章:线性约束优化
- 第12章:多目标优化
- 第13章:采样方案
- 第14章:代理模型
- 第15章:概率代理模型
- 第16章:代理优化
- 第17章:不确定性下的优化
- 第18章:不确定性传播
- 第19章:离散优化
- 第20章:表达式优化
- 第21章:多学科优化
我非常喜欢这本书;它充满了宝贵的实用建议。我强烈推荐它!
了解更多
- 优化算法, 2019.
想要开始学习优化算法吗?
立即参加我为期7天的免费电子邮件速成课程(附示例代码)。
点击注册,同时获得该课程的免费PDF电子书版本。
数值优化
这本书由Jorge Nocedal和Stephen Wright撰写,并于2006年出版。
这本书侧重于所介绍的优化算法的数学和理论,确实涵盖了许多常用机器学习算法所使用的基础技术。对于普通从业者来说,它可能有点过于深入。
本书旨在作为数学专业研究生课程的教科书。
我们希望本书能用于工程、运筹学、计算机科学和数学系的优化研究生课程。
— 第xviii页,《数值优化》,2006年。
即使它高度数学化,但对算法的描述却很精确,并可能提供有用的替代描述来补充列出的其他书籍。
完整的目录如下。
- 第一章:引言
- 第02章:无约束优化基础
- 第03章:线搜索方法
- 第04章:信任域方法
- 第05章:共轭梯度法
- 第06章:拟牛顿法
- 第07章:大规模无约束优化
- 第08章:计算导数
- 第09章:无导数优化
- 第10章:最小二乘问题
- 第11章:非线性方程
- 第12章:约束优化理论
- 第13章:线性规划:单纯形法
- 第14章:线性规划:内点法
- 第15章:非线性约束优化算法基础
- 第16章:二次规划
- 第17章:惩罚法和增广拉格朗日法
- 第18章:序列二次规划
- 第19章:非线性规划内点法
这是一本扎实的优化教科书。
了解更多
- 数值优化, 2006.
如果您更喜欢该主题的理论方法,另一本广泛使用的数学优化书籍是Stephen Boyd和Lieven Vandenberghe合著、于2004年出版的《凸优化》。
计算智能导论
这本书由Andries Engelbrecht撰写,并于2007年出版。
这本书提供了对自然启发式优化算法(也称为计算智能)领域的绝佳概述。这包括进化计算和群智能等领域。
这本书的数学性远低于之前的教科书,更侧重于启发式系统的隐喻以及如何配置和使用特定算法,并附有大量的伪代码解释。
虽然内容性质偏向介绍性,但它并未回避细节,而是为感兴趣的读者提供了数学基础。本书的目的不是详尽地介绍所有计算智能范式和算法,而是概述最受欢迎和最常用的模型。
— 第xxix页,《计算智能导论》,2007年。
遗传算法、遗传编程、进化策略、差分进化和粒子群优化等算法对于机器学习模型的超参数调整,甚至模型选择都很有用。它们也是许多现代 AutoML 系统的核心。
完整的目录如下。
- 第一部分 引言
- 第01章:计算智能导论
- 第二部分 人工神经网络
- 第02章:人工神经元
- 第03章:监督学习神经网络
- 第04章:无监督学习神经网络
- 第05章:径向基函数网络
- 第06章:强化学习
- 第07章:性能问题(监督学习)
- 第三部分 进化计算
- 第08章:进化计算导论
- 第09章:遗传算法
- 第10章:遗传编程
- 第11章:进化编程
- 第12章:进化策略
- 第13章:差分进化
- 第14章:文化算法
- 第15章:共进化
- 第四部分 计算群智能
- 第16章:粒子群优化
- 第17章:蚁群算法
- 第五部分 人工免疫系统
- 第18章:自然免疫系统
- 第19章:人工免疫模型
- 第六部分 模糊系统
- 第20章:模糊集合
- 第21章:模糊逻辑与推理
我是这本书的粉丝,并推荐它。
了解更多
- 计算智能导论, 2007.
总结
在本文中,您了解了有助于应用机器学习的优化算法书籍。
我是否遗漏了优秀的优化书籍?
在下面的评论中告诉我。
您读过上面列出的任何一本书吗?
在评论中告诉我您的想法。
信息不错。
谢谢。
不错的合集!我最喜欢:《优化算法》。
谢谢!
感谢提供这些指导。
不客气。
谢谢。您是最棒的。您会写一本关于约束优化的书吗?我非常喜欢您的书,它们是最好的。
感谢您的建议!
我看到您现在已经发布了“机器学习优化”这本书。万分祝贺。感谢您花时间倾听读者的声音。您是最棒的。我很高兴能购买您的书。
嗯,我偶然发现了一本书:《机器学习超参数优化》。
《机器学习超参数优化:让您的机器学习和深度学习模型更高效》 https://www.amazon.co.uk/dp/1484265785/ref=cm_sw_r_awdo_navT_g_Z6R1VX94G614VTJH6CN9
您对此有何看法?
嗨 Stuart…我还没有读过您提到的那本书。您可能也会发现以下资料很有趣
https://machinelearning.org.cn/hyperparameter-optimization-with-random-search-and-grid-search/