目录
​什么是监督学习?
线性回归
使用 Python 的线性回归模型示例
1.导入必要的库
2. 读取和采样我们的数据集" >2. 读取和采样我们的数据集
3. 过滤 Null 和 Infinite 值" >3. 过滤 Null 和 Infinite 值
3. 选择我们依赖和独立的价值观" >3. 选择我们依赖和独立的价值观
4. 拆分数据集" >4. 拆分数据集
7. 以分散的方式绘制我们的数据" >7. 以分散的方式绘制我们的数据
逻辑回归
使用 Python 的逻辑回归模型示例
1.导入必要的库" >1.导入必要的库
2. 导入数据集" >2. 导入数据集
6. 评估我们模型的性能" >6. 评估我们模型的性能
支持向量机
使用 Python 的支持向量机模型示例
其他流行的监督机器学习算法
总结
首页 科技周边 人工智能 监督学习有哪些常见算法?都是如何应用的

监督学习有哪些常见算法?都是如何应用的

Apr 10, 2023 am 08:21 AM
人工智能 机器学习 监督学习

​什么是监督学习?

监督学习是机器学习的子集,监督学习会对机器学习模型的输入数据进行标记,并对其进行练习。因此,监督模型能最大限度地预测模型的输出结果。

监督学习背后的概念也可以从现实生活中找到影子,例如老师给孩子做辅导。假设老师要教孩子认识猫、狗的图像。她/他将通过不断地向孩子展示猫或狗的图像来辅导孩子,同时告知孩子图像是狗还是猫。

展示和告知图像的过程可以被认为是标记数据,机器学习模型训练过程中,会被告知哪些数据属于哪个类别。

监督学习有什么用?监督学习可用于回归和分类问题。分类模型允许算法确定给定数据属于哪个组别。示例可能包括 True/False、Dog/Cat 等。

由于回归模型能够根据历史数据预测将来的数值,因此它会被用于预测员工的工资或房地产的售价。

在本文中,我们将列出一些用于监督学习的常见算法,以及关于此类算法的实用教程。

线性回归

线性回归是一种监督学习算法,它根据给定的输入值预测输出值。当目标(输出)变量返回一个连续值时,使用线性回归。

线性算法主要有两种类型,简单线性回归和多元线性回归。

简单线性回归仅使用一个独立(输入)变量。一个例子是通过给定的身高来预测孩子的年龄。

另一方面,多元线性回归可以使用多个自变量来预测其最终结果。一个例子是根据它的位置、大小、需求等来预测给定房产的价格。

以下是线性回归公式

监督学习有哪些常见算法?都是如何应用的

对于 Python的示例,我们将使用线性回归来预测相对于给定 x 值的 y 值。

我们给定的数据集仅包含两列:x 和 y。请注意,y 结果将返回连续值。

下面是给定数据集的截图:

监督学习有哪些常见算法?都是如何应用的

使用 Python 的线性回归模型示例

1.导入必要的库

import numpy as np <br>import pandas as pd <br>import matplotlib.pyplot as plt <br>import seaborn as sns from sklearn <br>import linear_model from sklearn.model_selection <br>import train_test_split import os
登录后复制

2. 读取和采样我们的数据集

为了简化数据集,我们抽取了 50 个数据行的样本,并将数据值四舍五入为 2 个有效数字。

请注意,您应该在完成此步骤之前导入给定的数据集。

df = pd.read_csv("../input/random-linear-regression/train.csv") <br>df=df.sample(50) df=round(df,2)
登录后复制

3. 过滤 Null 和 Infinite 值

如果数据集包含空值和无限值,则可能会出现错误。因此,我们将使用 clean_dataset 函数来清理这些值的数据集。

def clean_dataset(df): <br>assert isinstance(df, pd.DataFrame), "df needs to be a pd.DataFrame" <br>df.dropna(inplace=True) <br>indices_to_keep = ~df.isin([np.nan, np.inf, -np.inf]).any(1) <br>return df[indices_to_keep].astype(np.float64)<br>df=clean_dataset(df)
登录后复制

4. 选择我们依赖和独立的价值观

请注意,我们将数据转换为 DataFrame 格式。dataframe 数据类型是一种二维结构,可将我们的数据对齐到行和列中。

5. 拆分数据集

我们将数据集划分为训练和测试部分。选择测试数据集大小为总数据集的 20%。

请注意,通过设置 random_state=1,每次模型运行时,都会发生相同的数据拆分,从而产生完全相同的训练和测试数据集。

这在您想进一步调整模型的情况下很有用。

x_train,  x_test, y_train, y_test = train_test_split(X, Y, test_size=0.2, random_state=1)
登录后复制

6.建立线性回模型

使用导入的线性回归模型,我们可以在模型中自由使用线性回归算法,绕过我们为给定模型获得的 x 和 y 训练变量。

lm=linear_model.LinearRegression() lm.fit(x_train,y_train)
登录后复制

7. 以分散的方式绘制我们的数据

df.plot(kind="scatter", x="x", y="y")
登录后复制

8. 制我线性回归线

plt.plot(X,lm.predict(X), color="red")
登录后复制

监督学习有哪些常见算法?都是如何应用的

蓝点表示数据点,而红线是模型绘制的最佳拟合线性回归线。线性模型算法总是会尝试绘制最佳拟合线以尽可能准确地预测结果。

逻辑回归

与线性回归类似,逻辑回归根据输入变量预测输出值,两种算法的主要区别在于逻辑回归算法的输出是分类(离散)变量。

对于 Python示例,使用逻辑回归将”分成两个不同的类别/种类。给定的数据集中会包括不同花的多个特征。

模型的目的是将给花识别为Iris-setosa、Iris-versicolor或 Iris-virginica 几个种类

下面是给定数据集的截图

监督学习有哪些常见算法?都是如何应用的

使用 Python 的逻辑回归模型示例

1.导入必要的库

import numpy as np <br>import pandas as pd from sklearn.model_selection <br>import train_test_split import warnings warnings.filterwarnings('ignore')
登录后复制

2. 导入数据集

data = pd.read_csv('../input/iris-dataset-logistic-regression/iris.csv')
登录后复制

3. 选择我们依赖和独立的价值观

对于独立 value(x) ,将包括除类型列之外的所有可用列。至于我们的可靠值(y),将只包括类型列。

X = data[['x0','x1','x2','x3','x4']] <br>y = data[['type']]
登录后复制

4. 拆分数据集

将数据集分成两部分,80% 用于训练数据集,20% 用于测试数据集。

X_train,X_test,y_train,y_test = train_test_split(X,y, test_size=0.2, random_state=1)
登录后复制

5. 运行逻辑模型

从 linear_model 库中导入整个逻辑回归算法。然后我们可以将 X 和 y 训练数据拟合到逻辑模型中。

from sklearn.linear_model import LogisticRegression <br>model = LogisticRegression(random_state = 0) <br>model.fit(X_train, y_train)
登录后复制

6. 评估我们模型的性能

print(lm.score(x_test, y_test))
登录后复制

返回值为0.9845128775509371,这表明我们模型的高性能。

请注意,随着测试分数的增加,模型的性能也会增加。

7.

import matplotlib.pyplot as plt %matplotlib inline <br>plt.plot(range(len(X_test)), pred,'o',c='r')
登录后复制

输出图:

监督学习有哪些常见算法?都是如何应用的

在逻辑图中,红点表示给定的数据点。这些点清楚地分为 3 类,Virginica、versicolor 和 setosa 花种。

使用这种技术,逻辑回归模型可以根据花在图表上的位置轻松对花类型进行分类。

支持向量机

支持向量机( SVM) 算法是另一个著名的监督机器学习模型,由 Vladimir Vapnik 创建,它能够解决分类和回归问题。实际上它更多地被用到解决分类问题。

SVM 算法能够将给定的数据点分成不同的组。算法绘制数据之后,可以绘制最合适的线将数据分成多个类别,从而分析数据之间的关系

如下图所示,绘制的线将数据集完美地分成 2 个不同的组,蓝色和绿色。

监督学习有哪些常见算法?都是如何应用的

SVM 模型可以根据图形的维度绘制直线或超平面。行只能用于二维数据集,这意味着只有 2 列的数据集。

如果是多个特征来预测数据集,就需要更高的维度。在数据集超过 2 维的情况下,支持向量机模型将绘制超平面。

在支持向量机 Python 的示例中,将对 3 种不同的花卉类型进行物种分类。我们的自变量包括花的所有特征,而因变量是花所属物种。

花卉品种包括Iris-setosa Iris-versicolorIris-virginica

下面是数据集的截图:

监督学习有哪些常见算法?都是如何应用的

使用 Python 的支持向量机模型示例

1.入必要的

import numpy as np <br>import pandas as pd from sklearn.model_selection <br>import train_test_split from sklearn.datasets <br>import load_iris
登录后复制

2. 定的数据集

请注意,在执行此步骤之前,应该导入数据集。

data = pd.read_csv(‘../input/iris-flower-dataset/IRIS.csv’)
登录后复制

3. 将数据列拆分量和自

将 X 值作为自变量,其中包含除物种列之外的所有列。

变量y仅包含模型预测的物种列。

X = data.drop(‘species’, axis=1) y = data[‘species’]
登录后复制

4. 将数据集拆分为训练测试数据集

将数据集分为两部分,其中我们将 80% 的数据放入训练数据集中,将 20% 放入测试数据集中。

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1)
登录后复制

5.入SVM并运行模型

导入了支持向量机算法。然后,使用上面步骤中收到的 X 和 y 训练数据集运行它。

from sklearn.svm import SVC <br>model = SVC( ) <br>model.fit(X_train, y_train)
登录后复制

6. 测试模型的性能

model.score(X_test, y_test)
登录后复制

为了评估模型的性能,将使用 score 函数。在第四步中创建的 X 和 y 测试值输入到 score 方法中。

返回值为0.9666666666667,这表明模型的高性能。

请注意,随着测试分数的增加,模型的性能也会增加。

其他流行的监督机器学习算法

虽然线性、逻辑和 SVM 算法非常可靠,但还提到一些有监督的机器学习算法。

1. 决策

监督学习有哪些常见算法?都是如何应用的

决策树算法是一种有监督的机器学习模型,它利用树状结构进行决策。决策树通常用于分类问题,其中模型可以决定数据集中给定项目所属的组。

请注意,使用的树格式是倒置树的格式。

2. 随机森林

监督学习有哪些常见算法?都是如何应用的

被认为是一种更复杂的算法, 随机森林算法通过构建大量决策树来实现其最终目标。

意味着同时构建多个决策树,每个决策树都返回自己的结果,然后将其组合以获得更好的结果。

对于分类问题,随机森林模型将生成多个决策树,并根据大多数树预测的分类组对给定对象进行分类。

模型可以修复由单个树引起的过拟合问题同时,随机森林算法也可用于回归,尽管可能导致不良结果。

3. k-最近

监督学习有哪些常见算法?都是如何应用的

k最近(KNN) 算法是一种监督机器学习方法,它将所有给定数据分组到单独的组中。

这种分组基于不同个体之间的共同特征。KNN 算法可用于分类和回归问题。

KNN 的经典示例就是将动物图像分类到不同的组集中。

总结

本文介绍了监督机器学习及其可以解决的两类问题解释了分类和回归问题,给出了每个输出数据类型的一些示例。

详细解释了线性回归是什么以及它是如何工作的,并提供了一个 Python 中的具体示例,它根据独立的 X 变量预测 Y 值。

随后介绍逻辑回归模型并给出了分类模型示例,该示例将给定的图像分类为具体花的种类

对于支持向量机算法,可以用它来预测 3 种不同花种的给定花种。最后列出了其他著名的监督机器学习算法,例如决策树、随机森林和 K 近邻算法。

无论您是为了学、工作还是娱乐阅读本文,我们认为了解这些算法是开始进入机器学习领域的一个开端。

如果您有兴趣并想了解更多关于机器学习领域的信息,我们建议您深入研究此类算法的工作原理以及如何调整此类模型以进一步提高其性能。

译者介绍

崔皓,51CTO社区编辑,资深架构师,拥有18年的软件开发和架构经验,10年分布式架构经验。曾任惠普技术专家。乐于分享,撰写了很多热门技术文章,阅读量超过60万。​​《分布式架构原理与实践》​​作者。

原文标题:Primary Supervised Learning Algorithms Used in Machine Learning,作者:Kevin Vu

以上是监督学习有哪些常见算法?都是如何应用的的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 Jun 28, 2024 am 03:51 AM

本站6月27日消息,剪映是由字节跳动旗下脸萌科技开发的一款视频剪辑软件,依托于抖音平台且基本面向该平台用户制作短视频内容,并兼容iOS、安卓、Windows、MacOS等操作系统。剪映官方宣布会员体系升级,推出全新SVIP,包含多种AI黑科技,例如智能翻译、智能划重点、智能包装、数字人合成等。价格方面,剪映SVIP月费79元,年费599元(本站注:折合每月49.9元),连续包月则为59元每月,连续包年为499元每年(折合每月41.6元)。此外,剪映官方还表示,为提升用户体验,向已订阅了原版VIP

使用Rag和Sem-Rag提供上下文增强AI编码助手 使用Rag和Sem-Rag提供上下文增强AI编码助手 Jun 10, 2024 am 11:08 AM

通过将检索增强生成和语义记忆纳入AI编码助手,提升开发人员的生产力、效率和准确性。译自EnhancingAICodingAssistantswithContextUsingRAGandSEM-RAG,作者JanakiramMSV。虽然基本AI编程助手自然有帮助,但由于依赖对软件语言和编写软件最常见模式的总体理解,因此常常无法提供最相关和正确的代码建议。这些编码助手生成的代码适合解决他们负责解决的问题,但通常不符合各个团队的编码标准、惯例和风格。这通常会导致需要修改或完善其建议,以便将代码接受到应

七个很酷的GenAI & LLM技术性面试问题 七个很酷的GenAI & LLM技术性面试问题 Jun 07, 2024 am 10:06 AM

想了解更多AIGC的内容,请访问:51CTOAI.x社区https://www.51cto.com/aigc/译者|晶颜审校|重楼不同于互联网上随处可见的传统问题库,这些问题需要跳出常规思维。大语言模型(LLM)在数据科学、生成式人工智能(GenAI)和人工智能领域越来越重要。这些复杂的算法提升了人类的技能,并在诸多行业中推动了效率和创新性的提升,成为企业保持竞争力的关键。LLM的应用范围非常广泛,它可以用于自然语言处理、文本生成、语音识别和推荐系统等领域。通过学习大量的数据,LLM能够生成文本

微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 Jun 11, 2024 pm 03:57 PM

大型语言模型(LLM)是在巨大的文本数据库上训练的,在那里它们获得了大量的实际知识。这些知识嵌入到它们的参数中,然后可以在需要时使用。这些模型的知识在训练结束时被“具体化”。在预训练结束时,模型实际上停止学习。对模型进行对齐或进行指令调优,让模型学习如何充分利用这些知识,以及如何更自然地响应用户的问题。但是有时模型知识是不够的,尽管模型可以通过RAG访问外部内容,但通过微调使用模型适应新的领域被认为是有益的。这种微调是使用人工标注者或其他llm创建的输入进行的,模型会遇到额外的实际知识并将其整合

为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 Jul 25, 2024 am 06:42 AM

编辑|ScienceAI问答(QA)数据集在推动自然语言处理(NLP)研究发挥着至关重要的作用。高质量QA数据集不仅可以用于微调模型,也可以有效评估大语言模型(LLM)的能力,尤其是针对科学知识的理解和推理能力。尽管当前已有许多科学QA数据集,涵盖了医学、化学、生物等领域,但这些数据集仍存在一些不足。其一,数据形式较为单一,大多数为多项选择题(multiple-choicequestions),它们易于进行评估,但限制了模型的答案选择范围,无法充分测试模型的科学问题解答能力。相比之下,开放式问答

你所不知道的机器学习五大学派 你所不知道的机器学习五大学派 Jun 05, 2024 pm 08:51 PM

机器学习是人工智能的重要分支,它赋予计算机从数据中学习的能力,并能够在无需明确编程的情况下改进自身能力。机器学习在各个领域都有着广泛的应用,从图像识别和自然语言处理到推荐系统和欺诈检测,它正在改变我们的生活方式。机器学习领域存在着多种不同的方法和理论,其中最具影响力的五种方法被称为“机器学习五大派”。这五大派分别为符号派、联结派、进化派、贝叶斯派和类推学派。1.符号学派符号学(Symbolism),又称为符号主义,强调利用符号进行逻辑推理和表达知识。该学派认为学习是一种逆向演绎的过程,通过已有的

SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 Jul 17, 2024 pm 06:37 PM

编辑|KX在药物研发领域,准确有效地预测蛋白质与配体的结合亲和力对于药物筛选和优化至关重要。然而,目前的研究没有考虑到分子表面信息在蛋白质-配体相互作用中的重要作用。基于此,来自厦门大学的研究人员提出了一种新颖的多模态特征提取(MFE)框架,该框架首次结合了蛋白质表面、3D结构和序列的信息,并使用交叉注意机制进行不同模态之间的特征对齐。实验结果表明,该方法在预测蛋白质-配体结合亲和力方面取得了最先进的性能。此外,消融研究证明了该框架内蛋白质表面信息和多模态特征对齐的有效性和必要性。相关研究以「S

布局 AI 等市场,格芯收购泰戈尔科技氮化镓技术和相关团队 布局 AI 等市场,格芯收购泰戈尔科技氮化镓技术和相关团队 Jul 15, 2024 pm 12:21 PM

本站7月5日消息,格芯(GlobalFoundries)于今年7月1日发布新闻稿,宣布收购泰戈尔科技(TagoreTechnology)的功率氮化镓(GaN)技术及知识产权组合,希望在汽车、物联网和人工智能数据中心应用领域探索更高的效率和更好的性能。随着生成式人工智能(GenerativeAI)等技术在数字世界的不断发展,氮化镓(GaN)已成为可持续高效电源管理(尤其是在数据中心)的关键解决方案。本站援引官方公告内容,在本次收购过程中,泰戈尔科技公司工程师团队将加入格芯,进一步开发氮化镓技术。G

See all articles