当前位置: 首页 > 科技观察

95后哈佛小哥写了一本机器学习入门必备,书资源已经打开

时间:2023-03-15 00:40:43 科技观察

机器学习如何入门最简单?今年刚从哈佛大学统计学专业毕业的DannyFriedman写了一本《转学生教材》,没有基础也能轻松上手,现在资源全部开放。说到机器学习入门书籍,大概有数百种选择。这些书大多是由具有丰富研究经验的学者撰写的,涵盖了各种主题。俗话说“翻书有益”,但对于转专业的初学者来说,这本新书可能更适合入门:最近,一位哈佛大学毕业的小伙子根据自己转专业的经历写了一本书从机器学习开始《从零开始的机器学习》。书籍地址:https://dafriedman97.github.io/mlbook/content/introduction.html本书涵盖了机器学习领域最常用的方法,就像机器学习工程师的工具箱,适合入门学习者。写作的目的是为读者独立构建一些基本的机器学习算法提供实践指导。如果用工具箱类比,就是教读者使用螺丝刀和一盒卷尺。书中每一章都对应一种机器学习方法。作者DannyFriedman说过,学习一种方法最好的方法是从头开始(无论是理论还是代码),所以本书的目的就是提供这些推导。每章分为三个部分:第一部分是从“概念”入手,从数学层面论证推导过程;然后是“构建”部分,如何使用Python从零开始演示这些方法;最后的“实现”部分介绍了如何使用scikit-learn、statsmodels和tensorflow等Python包应用这些方法。本书面向机器学习领域的新手,或者想要深入理解算法的学习者。阅读书中的推论,可以帮助不熟悉算法的读者充分理解方法背后的原理,也可以帮助有建模经验的读者理解不同算法的建模方式,观察每种算法的优缺点。章节介绍在阅读本书“概念”部分之前,读者应该熟悉微积分知识,部分内容可能会用到概率(最大似然和贝叶斯定律)和基本线性代数(矩阵运算和点积)的知识).本节还引用了一些常用的机器学习方法(在附录中介绍),但“概念”部分不需要编程知识。“构造”和“代码”部分将使用一些Python知识。“构建”部分需要了解相应内容部分,熟悉Python的创建函数和类。这些“代码”部分都不是必需的。全书目录如下:1.普通线性回归TheLoss-MinimizationPerspectiveTheLikelihood-MaximizationPerspective2.LinearRegressionExtensionsRegularizedRegressionBayesianRegressionGeneralizedLinearModels3.DiscriminativeClassificationLogisticRegressionThePerceptronAlgorithmFisher'sLinearDiscriminant4.生成分类(GenerativeClassification)线性和二次判别分析,朴素贝叶斯(LinearandQuadraticDiscriminantAnalysis,朴素贝叶斯)5.决策树(DecisionTrees)回归树(RegressionTrees)分类树(ClassificationTrees)6.基于树的综合方法(TreeEnsembleMethods)BaggingRandomForests(随机森林)Boosting7。神经网络(NeuralNetworks)线性回归是一种比较简单的方法,用途广泛,所以也是必学的算法之一。第一章介绍普通线性回归,第二章主要介绍线性回归的扩展。可以通过多种方式扩展线性回归以满足各种建模需求。正则回归惩罚回归系数的大小以避免过度拟合。这对于使用大量预测变量的模型尤其有效,并且贝叶斯回归在回归系数上放置了先验分布,以便协调关于这些参数的现有想法与从新数据中获得的信息。最后,广义线性模型(GLM)通过更改假定的误差结构并考虑预期值来扩展常规线性回归。目标变量是预测变量的非线性函数。分类器是一种监督学习算法。它试图确定观察值属于两个或多个组之一。换句话说,分类中的目标变量代表一个有限集合而不是连续数量的类。例如,检测垃圾邮件或识别手写数字。第3章和第4章分别介绍了判别分类和生成分类。判别分类直接根据观察变量的输入变量对观察变量进行建模。生成分类将输入变量视为观察类的函数。它首先对观测值属于给定类别的先验概率建模。然后它计算观察输入变量的概率,该观察以其类别为条件。最后,使用贝叶斯定律求解属于给定类别的后验概率。逻辑回归不是唯一的判别分类器,书中还介绍了另外两个:感知器算法和Fisher线性判别器。第5章演示如何构建决策树。第一部分涵盖回归任务,其中目标变量是定量的,第二部分涵盖分类任务,其中目标变量是分类的。决策树是用于回归和分类的可解释机器学习方法。树根据所选预测变量的值迭代地拆分训练数据的样本。每次拆分的目的是创建两个子样本(或“子样本”)。它的目标变量比它的“父”变量具有更高的纯度。对于一个分类任务,纯度是指第一个孩子应该观察一个类别,第二个孩子应该主要观察另一个类别。对于回归任务,纯度意味着第一个孩子应该具有较高的目标变量值,而第二个孩子应该具有较低的目标变量值。下面是一个使用企鹅数据集的分类决策树的例子:由于它们的高方差,决策树通常无法达到与其他预测算法相当的准确性。在第5章中,介绍了几种最小化单个决策树方差的方法,例如修剪或调整大小。第6章介绍了另一种方法:集成方法。集成方法结合多个简单模型的输出来创建具有较低方差的最终模型。集成方法是在基于树的学习器的上下文中提出的,但是集成方法也可以用于各种学习算法。在本书中,作者讨论了三种基于树的集成方法:套袋、随机森林和提升。第7章介绍神经网络,这是一种功能强大且用途广泛的模型,已成为机器学习中的热门话题。神经网络也不像您想象的那么复杂,尽管它们通常优于其他模型。相比之下,通过优化高度参数化和非线性结构,神经网络足够灵活,可以对其他模型难以检测的微妙关系进行建模。本章按照以下结构展开:1.模型结构概述层间交互激活函数2.优化反向传播计算梯度并将结果与??链式法则结合3.将观察结果与新的表示梯度结合其他资源推荐另外,作者还推荐三本机器学习理论的经典入门书籍,也可以在网上获取免费资源:1.《统计学习导论:基于 R 应用》资源地址:http://faculty.marshall.usc.edu/gareth-james/ISL/2、《模式识别与机器学习》资源地址:https://web.stanford.edu/~hastie/ElemStatLearn/3、《模式识别与机器学习》资源地址:https://www.microsoft.com/en-us/research/publication/pattern-识别机器学习/