【人工智能】流行且重要的智能算法整理

在这里插入图片描述
✍🏻记录学习过程中的输出,坚持每天学习一点点~
❤️希望能给大家提供帮助~欢迎点赞👍🏻+收藏⭐+评论✍🏻+指点🙏

小记:
今天在看之前写的文档时,发现有人工智能十大算法的内容,考虑一下觉得之前写的不够严谨,于是找语言模型问了一下,这里就讲新学到的知识做一个汇总。

在这里插入图片描述

决策树(Decision Tree)

定义

基于树形结构进行决策判断的算法,通过每个节点的特征判断将数据划分到不同的类别。是一种常用的监督学习算法,用于分类和回归任务。

特点

简单易懂、容易解释、可视化、适用性广、容易过拟合、数据中的小变化会影响结果、每一个节点的选择都是贪婪算法,不能保证全局最优解。

应用

分类问题,如根据病人的症状预测疾病类型。

说明

在这一算法中,训练模型通过学习树表示(Treerepresentation)的决策规则来学习预测目标变量的值。树是由具有相应属性的节点组成的。
在每个节点上,我们根据可用的特征询问有关数据的问题。左右分支代表可能的答案。最终节点(即叶节点)对应于一个预测值。
每个特征的重要性是通过自顶向下方法确定的。节点越高,其属性就越重要。下图为决定是否在餐厅等候的决策树示例。

在这里插入图片描述

随机森林(Random Forest)

定义

基于多棵决策树的集成学习算法,通过投票或平均方式提高预测精度。

特点

可以处理高维特征数据,防止过拟合。

应用

分类、回归和特征选择等问题。

说明

为了对新对象进行分类,我们从每个决策树中进行投票,并结合结果,然后根据多数投票做出最终决定。
在训练过程中,每个决策树都是基于训练集的引导样本来构建的。
在分类过程中,输入实例的决定是根据多数投票做出的。
在这里插入图片描述

逻辑回归(Logistic Regression)

定义

一种广义的线性回归模型,用于处理因变量为二分类或多分类的分类问题。

特点

简单、易于实现,速度快,可解释性强。

应用

信用评分、疾病预测等。

说明

逻辑回归(Logisticregression)与线性回归类似,但它是用于输出为二进制的情况(即当结果只能有两个可能的值)。对最终输出的预测是一个非线性的S型函数,称为logisticfunction,g()。
这个逻辑函数将中间结果值映射到结果变量Y,其值范围从0到1。然后,这些值可以解释为Y出现的概率。S型逻辑函数的性质使得逻辑回归更适合用于分类任务。

在这里插入图片描述

线性回归(Linear Regression)

定义

通过拟合自变量和因变量之间的线性关系来进行预测。

特点

直观易懂,计算简单。

应用

房价预测、销售预测等。

说明

线性回归(LinearRegression)是利用数理统计中的回归分析,来确定两种或两种以上变量间,相互依赖的定量关系的一种统计分析方法。它可能是最流行的机器学习算法。它试图通过将直线方程与该数据拟合来表示自变量(x 值)和数值结果(y 值),然后就可以用这条线来预测未来的值。
这种算法最常用的技术是最小二乘法(Leastofsquares)。这个方法计算出最佳拟合线,以使得与直线上每个数据点的垂直距离最小。总距离是所有数据点的垂直距离(绿线)的平方和。其思想是通过最小化这个平方误差或距离来拟合模型。

在这里插入图片描述

支持向量机(SVM, Support Vector Machine)

定义

一种监督学习算法,通过寻找超平面来对数据进行分类。

特点

对小样本、高维数据有较好效果,能处理非线性问题。

应用

图像识别、文本分类等。

说明

支持向量机(SupportVectorMachine,SVM)是一种用于分类问题的监督算法。支持向量机试图在数据点之间绘制两条线,它们之间的边距最大。为此,我们将数据项绘制为n维空间中的点,其中,n是输入特征的数量。在此基础上,支持向量机找到一个最优边界,称为超平面(Hyperplane),它通过类标签将可能的输出进行最佳分离。
超平面与最近的类点之间的距离称为边距。最优超平面具有最大的边界,可以对点进行分类,从而使最近的数据点与这两个类之间的距离最大化。
例如,H1没有将这两个类分开。但H2有,不过只有很小的边距。而H3以最大的边距将它们分开了。

在这里插入图片描述

朴素贝叶斯(Naive Bayes)

定义

基于贝叶斯定理和特征条件独立假设的分类方法。

特点

简单、高效,常用于文本分类。

应用

垃圾邮件过滤、情感分析等。

说明

朴素贝叶斯(NaiveBayes)是基于贝叶斯定理。它测量每个类的概率,每个类的条件概率给出 x 的值。这个算法用于分类问题,得到一个二进制“是 / 非”的结果。看看下面的方程式。
朴素贝叶斯分类器是一种流行的统计技术,可用于过滤垃圾邮件。

在这里插入图片描述

K最近邻算法(K-NN, K-Nearest Neighbors)

定义

根据样本在特征空间中的k个最相邻样本的类别来预测新样本的类别。

特点

简单易懂,无需训练模型,但计算量大。

应用

图像识别、推荐系统等。

说明

K-均值(K-means)是通过对数据集进行分类来聚类的。例如,这个算法可用于根据购买历史将用户分组。它在数据集中找到K个聚类。K-均值用于无监督学习,因此,我们只需使用训练数据X,以及我们想要识别的聚类数量K。
该算法根据每个数据点的特征,将每个数据点迭代地分配给K个组中的一个组。它为每个K-聚类(称为质心)选择K个点。基于相似度,将新的数据点添加到具有最近质心的聚类中。这个过程一直持续到质心停止变化为止。

在这里插入图片描述

人工神经网络(Artificial Neural Networks)

定义

模拟人脑神经元连接结构的一种算法,通过多层网络结构学习数据的内在规律。

特点

具有强大的学习能力,可以处理复杂问题。

应用

图像识别、语音识别、自然语言处理等。

说明

人工神经网络(Artificial Neural Networks,ANN)可以处理大型复杂的机器学习任务。神经网络本质上是一组带有权值的边和节点组成的相互连接的层,称为神经元。在输入层和输出层之间,我们可以插入多个隐藏层。人工神经网络使用了两个隐藏层。除此之外,还需要处理深度学习。
人工神经网络的工作原理与大脑的结构类似。一组神经元被赋予一个随机权重,以确定神经元如何处理输入数据。通过对输入数据训练神经网络来学习输入和输出之间的关系。在训练阶段,系统可以访问正确的答案。
如果网络不能准确识别输入,系统就会调整权重。经过充分的训练后,它将始终如一地识别出正确的模式。
每个圆形节点表示一个人工神经元,箭头表示从一个人工神经元的输出到另一个人工神经元的输入的连接。

在这里插入图片描述

卷积神经网络(CNN, Convolutional Neural Network)

定义

专门用于处理具有类似网格结构数据的神经网络,如图像和视频。

特点

局部连接、权值共享,能够有效降低网络复杂度。

应用

图像识别、物体检测、人脸识别等。

说明

卷积操作:通过卷积核对输入图像进行滑动窗口式的计算,提取出图像中的局部特征。
特征提取:卷积层通过卷积操作从输入数据中提取出局部特征,这些特征被存储在特征图中。
特征映射:池化层对特征图进行下采样,降低数据维度,同时保留主要特征。
分类:全连接层将学到的特征映射到样本标记空间,实现分类任务。

在这里插入图片描述

循环神经网络(RNN, Recurrent Neural Network)

定义

用于处理序列数据的神经网络,能够捕捉序列中的长期依赖关系。

特点

能够处理任意长度的序列数据,但存在梯度消失和梯度爆炸的问题。

应用

自然语言处理、机器翻译、语音识别等。

说明

循环连接:RNN通过循环连接在序列的各个位置共享参数,从而捕捉序列中的时序依赖关系。
隐藏状态:隐藏状态在RNN中起着关键作用,它存储了序列的历史信息,并用于影响后续的输出。
训练过程:RNN的训练通常使用反向传播算法和梯度下降算法。然而,由于RNN中存在梯度消失和梯度爆炸等问题,因此需要采用一些特殊的训练方法,如梯度裁剪、LSTM等。

在这里插入图片描述

K-均值(K-means)

定义

一种无监督学习算法,用于将数据点划分为K个集群。

特点

简单、高效,且易于理解和实现。

应用

聚类分析、图像处理、推荐系统等。

说明

K-均值(K-means)是通过对数据集进行分类来聚类的。例如,这个算法可用于根据购买历史将用户分组。它在数据集中找到K个聚类。K-均值用于无监督学习,因此,我们只需使用训练数据X,以及我们想要识别的聚类数量K。
该算法根据每个数据点的特征,将每个数据点迭代地分配给K个组中的一个组。它为每个K-聚类(称为质心)选择K个点。基于相似度,将新的数据点添加到具有最近质心的聚类中。这个过程一直持续到质心停止变化为止。
以下是对200X2的数组做的均值处理。
在这里插入图片描述

降维

定义

用于减少数据维度的技术,同时尽可能保留数据的主要特征。

流行方法

主成分分析(PCA)、t-分布邻域嵌入(t-SNE)等。

特点

有助于可视化高维数据、提高计算效率、减少过拟合等。

应用

数据预处理、特征提取、异常检测等。

说明

由于我们今天能够捕获的数据量之大,机器学习问题变得更加复杂。这就意味着训练极其缓慢,而且很难找到一个好的解决方案。这一问题,通常被称为“维数灾难”(Curseofdimensionality)。
降维(Dimensionalityreduction)试图在不丢失最重要信息的情况下,通过将特定的特征组合成更高层次的特征来解决这个问题。主成分分析(PrincipalComponentAnalysis,PCA)是最流行的降维技术。
主成分分析通过将数据集压缩到低维线或超平面/子空间来降低数据集的维数。这尽可能地保留了原始数据的显著特征。

在这里插入图片描述

梯度提升机(Gradient Boosting Machine)

定义

一种基于决策树的集成学习算法,通过迭代地添加新的决策树来优化预测结果。

特点

能够处理非线性关系、对异常值不敏感、易于调整参数。

应用

回归问题、分类问题等。

说明

初始化模型:将目标变量的平均值作为初始预测值。
迭代训练:通过不断迭代训练一系列基学习器(如决策树),对当前模型的残差进行拟合,得到下一轮的预测模型。
更新模型:将当前模型的预测结果与真实值进行比较,得到残差,然后将残差作为下一轮训练的目标变量,继续进行迭代训练。
终止迭代:当达到预设的迭代次数或者目标函数已经收敛时,停止迭代并得到最终的预测模型。

在这里插入图片描述
简单的展示示例
在这里插入图片描述

随机梯度下降(Stochastic Gradient Descent, SGD)

定义

一种优化算法,用于在训练过程中更新模型的参数。

特点

计算效率高、对大规模数据集友好、支持在线学习。

应用

深度学习、神经网络训练等。

说明

选择样本:在每次迭代中,随机选择一个样本或一小批样本(mini-batch)进行参数更新。
计算梯度:根据所选样本或mini-batch计算损失函数关于模型参数的梯度。
更新参数:按照负梯度方向更新模型参数,通常还需要乘以一个学习率(learning rate)来控制参数更新的步长。
重复迭代:重复以上步骤,直到模型参数收敛或达到预设的迭代次数。
在这里插入图片描述

在这里插入图片描述

集成学习(Ensemble Learning)

定义

通过组合多个学习器(如决策树、神经网络等)来提高预测性能的方法。

流行方法

Bagging、Boosting、Stacking等。

特点

能够降低过拟合风险、提高模型泛化能力。

应用

分类问题、回归问题等。

说明

集成学习(Ensemble Learning)是一种通过结合多个学习器(也称为基学习器或弱学习器)来解决问题的机器学习范式。其核心理念在于,通过构建多个基学习器,并让它们对输入数据进行独立的预测,然后采用某种策略将这些预测结果结合起来,以产生最终的预测结果。集成学习能够有效提高模型的性能,降低模型的泛化误差。
集成学习的基本思想可以概括为“多样性和投票”。即,通过构建多个基学习器,并让它们对输入数据进行独立的预测,然后通过某种方式(如投票法、加权投票法等)将各个基学习器的预测结果结合起来,产生一个最终的预测结果。
Bagging:如随机森林(Random Forest),通过在原始训练集的随机子集上构建多个基学习器,并将它们的预测结果结合起来。
Boosting:如AdaBoost、GBDT(Gradient Boosting Decision Tree)等,通过迭代地训练基学习器,并在每次迭代中调整样本的权重,以关注那些之前被错误分类的样本。
Stacking:通过将不同的基本学习模型进行级联,将前一层模型的预测结果作为后一层模型的输入,以产生最终的预测结果。

推荐系统算法

定义

用于预测用户可能感兴趣的项目或内容的算法。

流行方法

基于内容的推荐、协同过滤(如用户-用户协同过滤、物品-物品协同过滤)、深度学习推荐等。

特点

能够个性化地满足用户需求、提高用户满意度和忠诚度。

应用

电子商务平台、社交媒体、视频流媒体平台等。

说明

推荐系统算法是人工智能领域的一个重要分支,用于根据用户的历史行为、偏好等信息,向用户推荐可能感兴趣的内容或物品。以下是对几种常见的推荐系统算法的清晰归纳和介绍:

基于人口统计学的推荐算法

原理:根据系统用户的基本信息(如年龄、性别、地域等)发现用户之间的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户。
特点:易于实现,但可能忽略用户的具体行为或兴趣。

基于内容的推荐算法(Content-based Recommendations, CB)

原理:根据推荐物品或内容的元数据(如电影的类型、演员、导演等),发现物品之间的相关性,再基于用户过去的喜好记录,为用户推荐相似的物品。
特点:能够捕捉用户的个性化兴趣,但可能受限于物品元数据的丰富程度。

协同过滤算法(Collaborative Filtering, CF)

原理:通过分析用户之间的历史行为(如购买、浏览、评分等),找到相似用户或物品,进行推荐。
分类
基于用户的协同过滤(User-based CF):分析各个用户对物品的评价,计算用户之间的相似度,然后基于相似用户的喜好推荐物品给当前用户。
基于物品的协同过滤(Item-based CF):分析各个用户对物品的浏览记录,计算物品之间的相似度,然后基于用户喜欢的物品推荐相似的物品给用户。
特点:应用广泛,效果好,但需要大量的用户行为数据。

基于流行度的算法

原理:根据物品的流行度(如点击量、购买量、分享量等)进行排序,将最流行的物品推荐给用户。
特点:简单直观,但缺乏个性化。

混合推荐算法

原理:结合上述多种推荐算法的优点,通过加权、切换、特征组合等方式,形成更准确的推荐结果。
特点:能够充分利用各种算法的优势,提高推荐的准确性和多样性。
基于模型的推荐算法:
原理:使用机器学习或深度学习模型(如矩阵分解、隐语义模型、神经网络等)来预测用户对物品的喜好程度,从而进行推荐。
特点:能够处理复杂的非线性关系,但需要大量的训练数据和计算资源。

基于上下文信息的推荐算法

原理:考虑用户所处的上下文环境(如时间、地点、天气等)进行推荐。
特点:能够提供更符合当前情境的推荐结果。

在实际应用中,推荐系统通常会根据具体的需求和场景选择合适的算法或算法组合。同时,随着技术的发展和数据的积累,新的推荐算法和策略也在不断涌现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/24215.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国标GB/T 28181详解:国标GBT28181-2022的客户端主动发起历史视音频回放流程

目录 一、定义 二、作用 1、提供有效的数据回顾机制 2、增强监控系统的功能性 3、保障数据传输与存储的可靠性 4、实现精细化的操作与控制 5、促进监控系统的集成与发展 三、历史视音频回放的基本要求 四、命令流程 1、流程图 2、流程描述 五、协议接口 1、会话控…

【Stable Diffusion】(基础篇二)—— Stable Diffusion图形界面介绍和基本使用流程

本系列笔记主要参考B站nenly同学的视频教程,传送门:B站第一套系统的AI绘画课!零基础学会Stable Diffusion,这绝对是你看过的最容易上手的AI绘画教程 | SD WebUI 保姆级攻略_哔哩哔哩_bilibili 在上一篇博客中,我们成功…

【C++ | 拷贝构造函数】一文了解C++的 拷贝(复制)构造函数

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-06-07 2…

Android无障碍服务

Hi I’m Shendi Android无障碍服务 最近想制作一个记录点击操作并重复播放的工具,用以解放双手,因现在的Android高版本基本上难以Root,所以选择了使用无障碍来实现,在这里记录下来。 Android无障碍 可参考文档:https:…

Solon2分布式事件总线的应用价值探讨

随着现代软件系统的复杂性日益增加,微服务架构逐渐成为开发大型应用的主流选择。在这种架构下,服务之间的通信和协同变得至关重要。Solon2作为一个高性能的Java微服务框架,其分布式事件总线(Distributed Event Bus)为微…

Mac OS 用户开启 8080 端口

开启端口 sudo vim /etc/pf.conf # 开放对应端口 pass out proto tcp from any to any port 8080 # 刷新配置文件 sudo pfctl -f /etc/pf.conf sudo pfctl -e获取本机ip地址 ifconfig en0 | grep inet | grep -v inet6 | awk {print $2}访问指定端口

C语言数据结构(排序算法总结)

目录 算法类型 算法比较 稳定性描述 插入排序 选择排序 冒泡排序 希尔排序 堆排序 快速排序 霍尔排序(递归) 挖坑法(递归) 双指针(递归) 快排(非递归) 归并排序 计数排序 总结(速…

Android Lottie 体积优化实践:从 6.4 MB 降到 530 KB

一、说明 产品提出需求:用户有 8 个等级,每个等级对应一个奖牌动画。 按照常用的实现方式: 设计提供 8 个 lottie 动画(8 个 json 文件)。研发将 json 文件打包进入 APK 中。根据不同等级播放指定的动画。 每一个 …

Unity ShaderGraph 扭曲

需要注意的是: HDRP ShaderGraph中 你不能扭曲UI,所以假如你要扭曲视频,请把视频在材质上渲染 播放,这样就可以扭曲视频了喔, ShaderGraph扭曲

C++STL---stack queue模拟实现

前言 对于这两个容器适配器的模拟实现非常简单,因为stack和queue只是对其他容器的接口进行了包装,在STL中,若我们不指明用哪种容器作为底层实现,栈和队列都默认是又deque作为底层实现的。 也就是说,stack和queue不管是…

数据挖掘实战-基于Catboost算法的艾滋病数据可视化与建模分析

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

FANUC机器人SRVO-348 DCS MCC关闭报警处理方法总结

FANUC机器人SRVO-348 DCS MCC关闭报警处理方法总结 如下图所示,由于操作人员在操机时误打开了安全门,导致机器人紧急制动停止,示教器上显示: SRV0-348 DCS MCC关闭报警0,1, 如下图所示,查看手册中关于SRVO-348报警的具体内容: 原因分析:给机器人主电源上电的接触器在紧…

《机器学习特征提取》

书籍:Building Feature Extraction with Machine Learning: Geospatial Applications 作者:Bharath.H. Aithal,Prakash P.S. 出版:CRC Press 书籍下载-《机器学习特征提取》这是一本面向专业人士和研究生的实用指南&#xff0c…

SSM框架整合,内嵌Tomcat。基于注解的方式集成

介绍: SSM相信大家都不陌生,在spring boot出现之前,SSM一直是Java在web开发中的老大哥。现在虽说有了spring boot能自动整合第三方框架了,但是现在市面上任然有很多老项目是基于SSM技术的。因此,能熟练掌握SSM进行开发…

队列的讲解与实现

这里写目录标题 一、队列的概念及结构二、队列的实现(使用VS2022的C语言)1.初始化、销毁2.入队、出队3.返回队头元素、返回队尾元素、判空、返回有效元素个数 三、完整 Queue.c 源代码 一、队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端…

【Linux】进程(8):Linux真正是如何调度的

大家好,我是苏貝,本篇博客带大家了解Linux进程(8):Linux真正是如何调度的,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 之前我们讲过,在大…

代码随想录算法训练营第四十九天 | 139.单词拆分、多重背包、背包问题总结

139.单词拆分 视频讲解: 动态规划之完全背包,你的背包如何装满?| LeetCode:139.单词拆分_哔哩哔哩_bilibili 代码随想录 解题思路 1.dp[i] 字符串的长度为i,dp[i]是否可以被组成 2.递推公式 if( [j,i] && d…

硬件IIC和软件IIC的比较

(一)硬件IIC 硬件IIC是由STM32内部的硬件模块实现的,使用CPU的时钟信号来控制数据传输和时序,通信速度较快,可以达到几十MHz的速度。硬件IIC的实现相对简单,无需编写复杂的代码,因此在实现IIC通…

如何理解与学习数学分析——第二部分——数学分析中的基本概念——第5章——序列

第2 部分:数学分析中的基本概念 (Concepts in Analysis) 5. 序列(Sequences) 本章介绍了序列属性,例如单调性、有界性和收敛性,使用图表和示例来解释这些属性,并演示如何在各种证明中使用它们的定义。讨论了趋于无穷大的序列出…

centos官方yum源不可用 解决方案(随手记)

昨天用yum安装软件的时候,就报错了 [rootop01 ~]# yum install -y net-tools CentOS Stream 8 - AppStream 73 B/s | 38 B 00:00 Error: Failed to download metadata for repo appstream: Cannot prepare internal mirrorlis…