数据科学家必掌握的十大机器学习算法

开通VIP,畅享免费电子书等14项超值服

首页

好书

留言交流

下载APP

联系客服

2024.07.03

机器学习已成为数据科学家工具包中重要的工具,并在过去十多年中因其在各种应用中展现出的炫目成果而变得广为人知。要有效地利用机器学习的力量,理解其基本概念及其实际应用至关重要。

接下来我们将探讨数据科学项目中常用的十个机器学习算法。

线性回归(LinearRegression)通过建立输入变量和输出之间的线性关系来预测连续输出。可以想象在图上的一组点中画一条直线。

它通过找到最适合数据点的直线来做出决定。这条直线是通过最小化实际值和直线预测值之间的差异(误差)来确定的。

评估指标

使用Sci-kitLearn及Diabetes数据集,下面代码块中遵循的常见步骤:

逻辑回归(LogisticRegression)用于分类问题。它预测给定数据点属于某一类的概率,如是/否或0/1。它使用逻辑函数输出一个介于0和1之间的值,然后根据阈值(通常为0.5)将该值映射到特定类别。

评估指标:

使用Sci-kitLearn及BreastCancer数据集的应用逻辑回归的步骤:

#导入必要的库importnumpyasnpimportpandasaspdfromsklearn.datasetsimportload_breast_cancerfromsklearn.model_selectionimporttrain_test_splitfromsklearn.linear_modelimportLogisticRegressionfromsklearn.metricsimportaccuracy_score,precision_score,recall_score,f1_score#加载BreastCancer数据集data=load_breast_cancer()X=data.datay=data.target#拆分数据集为训练集和测试集X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)#创建并训练逻辑回归模型model=LogisticRegression(max_iter=10000)model.fit(X_train,y_train)#进行预测y_pred=model.predict(X_test)#评估模型accuracy=accuracy_score(y_test,y_pred)precision=precision_score(y_test,y_pred)recall=recall_score(y_test,y_pred)f1=f1_score(y_test,y_pred)print(f'Accuracy:{accuracy}')print(f'Precision:{precision}')print(f'Recall:{recall}')print(f'F1Score:{f1}')

决策树(DecisionTrees)类似于树状流程图,根据某些条件或特征对数据进行拆分。它们可以应用于回归和分类。决策树的工作原理是使用特征值将数据集拆分成更易管理的子组。每个内部节点表示一个属性测试,每个分支表示测试结果,每个叶节点表示一个类标签(决策)。

使用Sci-kitLearn及Wine数据集进行决策树分类任务。该数据集是关于基于不同属性将葡萄酒分类为三种类型。训练模型、预测葡萄酒类型,并使用分类指标评估模型。

下面代码是基本流程和步骤:

朴素贝叶斯分类器是一类简单的“概率分类器”,使用贝叶斯定理和特征之间强(朴素)独立性假设。它特别适用于文本分类。

它计算每个类别的概率以及给定每个输入值的每个类别的条件概率。这些概率然后用于根据最高概率分类新值。

使用Sci-kitLearn及Digits数据集进行示例:该数据集涉及对手写数字(0-9)的分类。这是一个多类分类问题。下面是训练朴素贝叶斯模型、预测数字类别,并使用分类指标进行评估。以下代码是基本步骤。

机器学习算法里面,最易于理解的回归和分类方法是K-近邻(K-NearestNeighbors,KNN)。一个数据点根据其邻居的分类进行分类。

KNN查看数据点的“K”个最近点(邻居),并根据这些邻居的多数类进行分类。对于回归,它取“K”个最近点的平均值。

使用Sci-kitLearn和Wine数据集,使用KNN模型来分类葡萄酒类型,并使用分类指标评估其性能。以下是基本步骤和代码。

支持向量机(SupportVectorMachines,SVM)是一种强大且多功能的监督学习模型,用于分类和回归任务。它们在处理复杂数据集时表现良好。

SVM在高维空间中构造一个超平面(或一组超平面)来分隔不同的类别。它旨在找到最好的边界(即线和每个类别最近点之间的距离,称为支持向量),以分隔各个类别。

使用Sci-kitLearn及breast_cancer(乳腺癌数据集)进行SVM分类,重点是将肿瘤分类为良性或恶性。下面是基本步骤:

最为常用的回归和分类的集成学习技术是随机森林(RandomForest)。它通过构建多个决策树并将它们组合来提供更可靠和准确的预测。

在随机森林中,每棵树都会做出预测,而模型的预测(对于分类)则属于获得最多投票的类别。对于回归,它取不同树输出的平均值。

使用Sci-kitLearn及breast_cancer(乳腺癌数据集)进行随机森林(RandomForest)分类,重点是将肿瘤分类为良性或恶性。下面是训练随机森林模型、并使用分类指标评估其性能的流程和代码。

K-Means聚类(K-MeansClustering)是一种无监督学习算法,用于将数据分组为“K”个簇。通过确定k个质心,每个数据点被分配到最接近的簇,目标是最小化质心的距离。

该算法将数据点分配到一个簇中,使得数据点和簇的质心之间的平方距离之和最小。簇内数据点的同质性随着簇内方差的减少而增加。

使用Sci-kitLearn及Iris数据集进行K-Means聚类。任务是根据花的测量值将鸢尾花分组为不同的簇。下面是训练模型、分配簇,并评估聚类效果的流程和代码。

主成分分析(PrincipalComponentAnalysis,PCA)是比较经典的降维算法,是将数据转换为一个新的坐标系统,减少变量的数量同时尽可能保留原始数据的变化。

PCA识别出在数据中最大化方差的主成分或轴。第一个主成分捕捉最大的方差,第二个主成分(与第一个正交)捕捉次大的方差,依此类推。

使用Sci-kitLearn及breast_cancer(乳腺癌数据集)进行PCA。该数据集包括从乳腺肿块的细针穿刺(FNA)数字图像中获取的特征,目标是在保留尽可能多的信息的同时,降低数据集的维度。以下是主要的流程和步骤:

梯度提升(GradientBoostingAlgorithms)是一种先进的机器学习技术。它逐步构建多个弱预测模型(通常是决策树)。每个新模型逐渐减少整个系统的损失函数(误差)。

这种技术涉及三个主要组成部分:一个添加模型,用于逐步添加弱学习器以最小化损失函数;一个需要优化的损失函数;以及一个需要生成预测的弱学习器。每棵新树修正前面树所做的错误。

使用Sci-kitLearn及breast_cancer(乳腺癌数据集)进行梯度提升。目标是基于多种特征预测糖尿病的进展。将训练一个梯度提升模型并评估其性能。以下是将要执行的步骤:

简单介绍了数据科学中十种常用的机器学习算法及它们的应用场景。涵盖了从线性回归、逻辑回归到决策树、朴素贝叶斯、K近邻、支持向量机、随机森林和K均值聚类等多个算法的使用方法及评估指标。每种算法都通过具体的示例展示了如何在实际项目中应用,从而帮助读者理解和选择适合的算法解决数据科学问题。

THE END
1.独家菜鸟级机器学习入门(附代码实例)现在当这些算法需要训练(Train)和校对(Calibrate)的时候, 其实是需要去找出一组点之间的最小距离。让我们看图更能说清楚。 以上图为例。这是一个经典的线性回归(Simple Linear Regression)的例子。蓝点表示想要预测的数据。红线表示“最佳拟和线”,该线是机器学习https://mp.weixin.qq.com/s?__biz=MzI1MjQ2OTQ3Ng==&mid=2247496248&idx=1&sn=ea19a9160d85b92060eafd4eeef8ce36&chksm=e9e1fbb3de9672a56e3c7c35792536e5abd1cf536d829beeeed52e1182059642c88e2b4ac4f7&scene=27
2.67页PPT,学透机器学习算法应用及数据处理(附下载)作为AI的重要分支,机器学习在推荐系统、在线广告、金融市场分析、计算机视觉、语言学、生物信息学等诸多领域都取得了巨大的成功。机器学习并不是像我们字面理解的那样,让冷冰冰的机器去学习,或者狭义的理解为让机器人去学习。 机器学习,从本质上来说,可以理解为算法学习(Algorithm Learning)、模型学习(Model Learning)或https://www.jianshu.com/p/fd5cff6ce3bf
3.机器学习实习记录:探索机器学习算法的实践与应用机器学习在这篇文章中,我将分享我的机器学习实习经历,包括实践项目的详细描述以及相应的源代码。通过这些实践项目,我深入了解了机器学习算法的原理,并将其应用于不同的领域,以解决现实世界中的问题。 项目1:房价预测 在这个项目中,我使用了一个经典的机器学习算法——线性回归,来预测房屋的价格。首先,我收集了一个包含房屋https://download.csdn.net/blog/column/12438025/133230425
4.张量神经网络机器学习算法及其应用题目:张量神经网络机器学习算法及其应用报告人:谢和虎 研究员 中国科学院数学与系统科学研究院)时间:2023年9月19日(星期二)15:00-16:00地点:宁静楼117室报告摘要:本报告介绍我们最近设计和发展的张量神经网络及其相应的机器学习算法,然后介绍其在求解高维偏微分方https://math.tongji.edu.cn/info/1385/10895.htm
5.机器学习及其应用——汪荣贵杨娟薛丽霞编著深度凝练机器学习的现有知识体系,注重突出对基本理论与关键技术的介绍和讨论。 尽可能用朴实的语言深入浅出地介绍机器学习理论及相关算法设计技术。 在每个章节穿插相应的应用实例,使得广大读者能够比较系统地掌握机器学习应用技术。 本书教学资源,样书可添加小编微信13146070618索取 《机器学习及其应用》比较系统地介绍机器学http://www.cmpedu.com/books/book/5600562.htm
6.字节跳动AI高级产品经理田宇洲:AI产品经理需要掌握的核心算法这个问题我们拆解开看,先说AI产品经理,我个人接触到的AI产品经理可以分为两类,一类是将机器学习和深度学习能力产品化的产品经理,如阿里PI,第四范式先知平台的产品经理,或者BI系统中负责机器学习算法模块组件化抽象的产品经理;一类是AI解决方案产品经理,也就是将AI技术(机器学习,深度学习等技术)应用于业务或用户使用场https://maimai.cn/article/detail?fid=1246742214&efid=hW5NlFAEkS-MHjfZl5IAxg
7.机器学习(32)之典型相关性分析(CCA)详解文末有福利【机器学习算法】:排名第一 【机器学习】:排名第一 【Python】:排名第三 【算法】:排名第四 人工智能与Python公开课 限时免费 文末领取 前言 典型关联分析(Canonical Correlation Analysis,简称CCA)是最常用的挖掘数据关联关系的算法之一。比如我们拿到两组数据,第一组是人身高和体重的数据,第二组是对应的跑步能力https://cloud.tencent.com/developer/article/1085170
8.BoostKit大数据业界趋势鲲鹏大数据组件增强特性和典型配置业务场景延伸,数据量爆发式增长,使得开源大数据机器学习算法的应用场景广泛而多样。但随之也带来了更大的挑战,开源算法收敛速度慢,硬件匹配度不足,导致很多场景算不了、算不快、算得贵。 鲲鹏应用使能套件BoostKit提供基于开源算法深度优化的机器学习算法,为开发者提供极致性能的大数据分析体验。 https://developer.huawei.com/consumer/cn/blog/topic/03898238728230088
9.数字化观察(100)华夏银行吴永飞等:数字金融领域小样本学习技术的机器学习算法模型 传统的商业银行风控体系以定性风险管理为主,主要使用风控规则及客户评级等方法,辅以线下尽调的方法;传统风控模型对包含客户历史行为和相关活动的数据进行分析,但难以预测性地揭示未来风险的变化情况,且数据获取方式单一、定量分析结果相对较弱。数字经济时代下面向数字金融发展,商业银行越来越强调运用金融https://bank.hexun.com/2022-05-31/206058282.html
10.《常用算法之智能计算(三)》:机器学习计算从更广泛的意义上来看,机器学习是人工智能的一个子集。人工智能旨在使计算机更加智能化,而机器学习已经证明如何做到这一点。简而言之,机器学习是人工智能的应用,通过应用从数据中反复学习得到算法,可以改进计算机的功能,而无需进行明确的编程。 在给出机器学习计算各种算法之前,最好是先研究一下什么是机器学习和如何对http://www.kepu.net/blog/zhangjianzhong/201903/t20190327_475625.html