本书的编程语言以MATLAB为主,分别从学习方式和理论知识两个方面来对机器学习(实现人工智能的方法)的算法进行分类介绍。通过阅读本书,读者可以对人工智能的子集机器学习形成一个系统、全面、完整的认识,并且在今后的研究工作中逐步拓展,*终形成自己的体系。全书共6篇,分别为特征处理算法、分类和聚类算法、神经网络算法、优化算法、基于不同数学思想的算法以及集成算法,每一篇都对该类别中常见算法的思想、流程、核心知识和优缺点等内容进行了详细介绍,并通过实际的案例分析和代码展示,对算法的具体应用进行了完整解析。
本书适用的读者对象包括金融机构的量化投资经理、科研工作者、互联网企业的算法工程师、大中专院校相关专业师生,以及其他对实现人工智能的机器学习技术感兴趣的读者。
全面解析算法的思想、流程、核心知识、优缺点、典型案例及源代码
从特征处理、分类聚类到规模建模、优化分析,完整的研究流程展示
涉及工程优化、医学检测、量化投资、计算数学以及商业分析等领域
适用于算法工程师、量化投资经理、科研工作者及高校相关专业师生
机器学习是一种实现人工智能的方法,用于研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,其算法本质上是一种规律发现或问题解决的工具和方法。本书共分6篇,每一篇都对相应类别下常见算法的理论知识进行了详细介绍,并配有应用算法和代码的案例。
篇为特征处理算法篇,主要介绍了特征工程领域针对数据研究的几种常用特征处理算法的相关知识,包括ReliefF特征选择算法、Chi-Merge算法,以及特征规约算法。作为迈向机器学习的步,本篇详细介绍了特征处理算法的相关思想、流程、优缺点,并通过实例对算法的具体应用进行了总结。
第二篇为分类和聚类算法篇,主要对几种常见的分类和聚类算法进行介绍,包括KNN算法、K-Means算法、高斯混合聚类算法、ISODATA算法和谱聚类算法,详细介绍了这些算法的思想、流程、核心知识和优缺点,并通过实际案例,对分类和聚类相关算法的具体应用进行了详细讲解。
第三篇为神经网络算法篇,神经网络算法是当下较为热门的一个机器学习分支。神经网络有多种分类,一般较为公认的有DNN、CNN、RNN三种。本篇将对与其相关的BP神经网络与径向基神经网络算法、Hopfield神经网络算法以及LSTM长短期记忆网络算法的思想、流程、结构、优缺点进行了详细介绍,并通过实际案例,展示了神经网络算法的具体应用。
第四篇为优化算法篇,优化是数据分析的常用方法,在许多经典问题的求解中,优化算法都起到至关重要的作用。本篇对几种常见优化算法的思想、流程、优缺点以及具体应用进行了介绍,包括网格寻优算法、模拟退火聚类算法和EMD经验模态分解算法等。
第五篇为基于不同数学思想的算法篇,通过对粗糙集算法、基于核的Fisher算法、SVM支持向量机算法和傅里叶级数及变换算法的思想、流程、概念、优缺点以及具体应用进行了详细介绍,帮助读者拓展对于算法这一概念的进一步理解。
第六篇为集成算法篇,集成算法的主旨是将弱学习器通过某种形式良好地组织起来,使得这些弱学习器各自的性能相加组合,从而达到强学习器的效果。本篇分别对AdaBoost、Bagging、Stacking和Gradient Boosting四种集成算法的思想、流程、优缺点以及具体应用进行了详细介绍,从数据、弱学习器、集成方法三个角度出发进行深层次阐述。通过本篇的学习,读者可以对集成算法形成较为全面的认识。
本书主要为有志于从事机器学习领域相关工作的读者建立起一个通用性的流程和框架,并对流程的关键环节适当展开,给出一些介绍和程序案例。读者可以从本书的学习中了解机器学习到底是什么,并在今后结合自身的工作,进一步丰富和拓展这个流程和框架,从而终成为一个机器学习算法的高级开发和应用者。
读者定位和阅读方法
本书分别从学习方式和理论知识两个方面来对机器学习的算法进行分类介绍。在介绍每个算法时,都对其原理、思想、流程、优缺点等理论知识进行了详细介绍,然后以具体的实例分析和代码展示来对该算法的应用进行完整解说。通过阅读本书,读者可以对机器学习形成一个系统、全面、完整的认识,并且在今后的研究工作中逐步拓展,终形成自己的体系。本书适用的读者对象:金融机构的量化投资经理、科研工作者、互联网企业的算法工程师、大中专院校相关专业师生,以及其他对机器学习技术感兴趣的读者。
配套资源
编者在金融业从业多年,有着丰富的业界积累。读者可以扫描封底二维码(IT有得聊),进入读者俱乐部,其中有本书相关的视频授课资源,以及丰富的机器学习算法资源和其他研究资源。
由于编者水平有限,书中错误和疏漏之处在所难免。在此,诚恳地期待广大读者批评指正。在技术之路上如能与大家互勉共进,也将倍感荣幸。
李一邨,浙江杭州人,浙江大学量化金融博士,现任杭州伊园科技有限公司总经理。前沿量化科学领域的深耕者,多年来致力于将多元学科的前沿理论嫁接融合到金融投资领域。被聘为杭州科促会数据科学家、杭州师范大学指导老师。曾连续5届(第8~12届)获得《证券时报》和《期货日报》联合评选的中国*佳金融量化策略工程师。
前言
篇特征处理算法
第1章ReliefF特征选择算法
1.1原理介绍
1.1.1算法思想
1.1.2算法流程
1.1.3算法详细介绍
1.2ReliefF特征选择算法优缺点
1.3实例分析
1.3.1数据集介绍
1.3.2函数介绍
1.3.3ReliefF算法在分类问题中的实例分析
1.3.4ReliefF算法在回归问题中的实例分析
1.4房价回归预测问题的特征选择案例代码
第2章Chi-Merge算法
2.1原理介绍
2.1.1算法思想
2.1.2算法流程
2.2Chi-Merge算法的优缺点
2.3实例分析
2.3.1数据集介绍
2.3.2函数介绍
2.3.3结果分析
2.4代码获取
第3章特征规约算法
3.1特征规约算法原理介绍
3.1.1特征规约算法思想
3.1.2特征规约算法流程
3.1.3PCA算法及相关矩阵分解
3.2几种特征规约算法的优缺点
3.3特征规约算法实例分析
3.3.1数据集介绍
3.3.2函数介绍
3.3.3结果分析
3.4代码获取
第二篇分类和聚类算法
第4章KNN算法
4.1原理介绍
4.1.1算法思想
4.1.2算法流程
4.2KNN算法的核心知识
4.2.1距离或相似度的衡量
4.2.2K值的选取
4.2.3K个邻近样本的选取
4.3KNN算法的优缺点
4.4实例分析
4.4.1数据集介绍
4.4.2函数介绍
4.4.3结果分析
4.5代码获取
第5章K-Means算法
5.1原理介绍
5.1.1算法思想
5.1.2算法流程
5.1.3K值的选取
5.2K-Means算法的优点与缺点
5.2.1K-Means算法的优点
5.2.2K-Means算法的缺点
5.3实例分析
5.3.1数据集介绍
5.3.2函数介绍
5.3.3K的选择
5.3.4训练结果分析
5.4代码介绍
5.4.1K-Means训练的函数代码
5.4.2计算距离矩阵的函数代码
5.4.3分析模型的代码
5.5代码获取
第6章高斯混合聚类算法
6.1原理介绍
6.1.1算法思想
6.1.2算法流程
6.1.3EM算法理论与GMM参数推导
6.1.4EM聚类与K-Means聚类的对比
6.2高斯混合聚类算法的优缺点
6.3实例分析
6.3.1数据集介绍
6.3.2函数介绍
6.3.3学习过程
6.3.4样本聚类结果
6.4代码获取
第7章ISODATA算法
7.1.1算法思想
7.1.2算法流程
7.2ISODATA算法的优缺点
7.3实例分析
7.3.1函数介绍
7.3.2数据介绍
7.3.3训练结果
7.3.4其他参数下的聚类结果
7.4代码介绍
7.4.1鸢尾花数据测试代码
7.4.2代码获取
第8章谱聚类算法
8.1原理介绍
8.1.1算法思想
8.1.2谱聚类的切图聚类
8.1.3算法流程
8.2聚类普算法的优缺点
8.3实例分析
8.3.1数据集介绍
8.3.2函数介绍
8.3.3结果分析
8.3.4代码获取
第三篇神经网络算法
第9章BP神经网络与径向基神经网络算法
9.1原理介绍
9.1.1算法思想
9.1.2算法流程
9.1.3BP神经网络与径向基神经网络结构说明
9.1.4误差反向传递(含权值偏置调整)
9.1.5调整输出层的权值偏置矩阵
9.1.6调整隐含层权值偏置矩阵
9.1.7径向基神经网络
9.2BP和径向基神经网络算法的优缺点
9.2.1BP神经网络和径向基神经网络的优点
9.2.2BP神经网络和径向基神经网络的缺点
9.3实例分析
9.3.1数据集介绍
9.3.2BP神经网络使用
9.3.3径向基神经网络的应用
9.4代码获取
第10章Hopfield神经网络算法
10.1原理介绍
10.1.1算法思想
10.1.2算法流程
10.1.3Hopfield神经网络结构
10.1.4离散Hopfield网络能量函数收敛性证明
10.2Hopfield神经网络算法的优点与缺点
10.3正交法权值计算
10.4正交法权值计算的吸引情况说明
10.5实例分析
10.6代码获取
第11章LSTM长短期记忆网络算法
11.1原理介绍
11.1.1算法思想
11.1.2算法流程
11.2LSTM的数学推导和说明
11.2.1数据集符号申明
11.2.2训练过程
11.3激活函数求导说明
11.4补充
11.5LSTM算法的优点与缺点
11.6实例分析
11.6.1数据集介绍
11.6.2函数介绍
11.6.3结果分析
11.7代码获取
第四篇优 化 算 法
第12章网格寻优算法
12.1原理介绍
12.1.1算法思想
12.1.2算法流程
12.2网格寻优算法的优缺点
12.3实例分析
12.3.1函数介绍
12.3.2结果分析
12.4代码获取
第13章模拟退火聚类算法
13.1原理介绍
13.1.1算法思想
13.1.2算法流程
13.2模拟退火算法的优缺点
13.3实例分析
13.3.1数据介绍
13.3.2函数介绍
13.3.3结果分析
13.4代码介绍
13.4.1分析模型的代码
13.4.2模拟退火结合K-Means算法的代码获取
第14章EMD经验模态分解算法
14.1原理介绍
14.1.1算法思想
14.1.2算法流程
14.1.3经验模态分解(EMD)的核心要点
14.1.4经验模态分解的理论基础
14.1.5包络线拟合
14.1.6三次样条插值的应用
14.1.7其他插值方法介绍
14.2EMD经验模态分解算法的优缺点
14.3实例分析
14.3.1数据集介绍
14.3.2函数介绍
14.3.3上证指数EMD分解
14.4代码获取
第五篇基于不同数学思想的算法
第15章粗糙集算法
15.1原理介绍
15.1.1算法思想
15.1.2算法流程
15.1.3基本概念
15.2粗糙集算法的优缺点
15.3实例分析
15.3.1数据集介绍
15.3.2函数介绍
15.3.3训练结果
15.3.4其他说明
15.4代码介绍
15.4.1测试案例代码
15.4.2粗糙集算法涉及的其他代码获取
第16章基于核的Fisher算法
16.1基于核的Fisher算法介绍
16.1.1算法思想
16.1.2基于核的Fisher算法数学推