一文搞懂机器学习!2024.6月最新!(附代码实现)


前言

机器学习入门精品文章

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文介绍机器学习的基础内容。


机器学习是人工智能的一个分支,它使计算机系统能够从数据中学习并做出决策或预测,而无需明确编程。它涉及使用算法和统计模型来分析和解释数据,从而发现模式和关系。这些模式随后可以用于预测新数据的结果或分类数据。
机器学习的关键技术包括监督学习、无监督学习、半监督学习和强化学习。监督学习通过标记的训练数据来训练模型,使其能够预测或分类新的输入数据。无监督学习则在没有标签的数据上工作,试图发现数据中的结构。半监督学习是两者的结合,使用少量标记数据和大量未标记数据。强化学习则通过奖励和惩罚来训练模型,使其在环境中做出最优决策。机器学习在多个领域都有应用,包括图像识别、自然语言处理、医疗诊断、股票市场分析等。
在这里插入图片描述

机器学习的经典算法包括:

1.线性回归 Linear Regression
2.逻辑回归Logistic Regression
3.决策树Decision Tree
4.随机森林Random Forest
5.支持向量机Support Vector Machine,SVM
6.朴素贝叶斯算法Naive Bayes
7.聚类Clustering
8.K最近邻K-Nearest Neighbors, KNN
9.强化学习Reinforcement Learning

10.深度学习Deep Learning

文章目录
  • 前言
    • 随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文介绍机器学习的基础内容。
  • 一、线性回归
  • 二、逻辑回归
  • 三、决策树
  • 四、随机森林算法
  • 五、支持向量机SVM
  • 六、朴素贝叶斯
  • 七、聚类
  • 八、K最近邻算法

一、线性回归

线性回归(Linear Regression)简单来说,就是找到一条直线(超平面),这条直线(超平面)尽可能好地拟合给定的数据点。二维空间如图所示。

在这里插入图片描述

线性回归(Linear Regression)是机器学习十大算法中的一种,用于预测连续数值型的输出。它试图找到特征变量(输入)和目标变量(输出)之间的线性关系。线性回归主要有两种形式:简单线性回归和多元线性回归。

简单线性回归(Simple Linear Regression)
简单线性回归涉及一个自变量(解释变量)和一个因变量(响应变量),试图找到它们之间的线性关系。
多元线性回归(Multiple Linear Regression)
多元线性回归涉及两个或更多自变量,试图找到它们与因变量之间的线性关系。

线性回归优点是简单易懂,计算效率高。可以提供连续的输出值,适合预测问题。也可以容易地解释模型参数。缺点是对非线性关系拟合能力有限。对异常值敏感,可能会影响模型性能,需要特征和目标变量之间存在线性关系。
线性回归模型是许多领域中常用的预测工具,如金融、经济、生物统计等。尽管它是一个基础模型,但理解线性回归对于深入学习更复杂的机器学习算法非常重要。

代码链接:https://blog.csdn.net/qq_45591302/article/details/138770944

二、逻辑回归

逻辑回归(Logistic Regression)也称线性判别回归(Linear Discriminant Analysis Regression, LDA),是一种用于二分类问题的统计方法,简单来说就是通过一条直线(三维中是超平面)将两个不同的类分开,如图所示:
在这里插入图片描述

它通过使用Sigmoid函数将线性回归的输出映射到0和1之间,从而预测事件发生的概率。模型参数通常通过最大似然估计来确定,使用二元交叉熵损失作为损失函数,并通过优化算法如梯度下降来求解。逻辑回归可以应用正则化技术来防止过拟合,并通过多种评估指标来衡量模型性能。此外,它还可以扩展到多分类问题,广泛应用于医疗、金融、文本分类等领域。

代码链接:https://blog.csdn.net/qq_45591302/article/details/139550446

三、决策树

决策树(Decision Trees)是一种监督学习算法,用于分类和回归任务。

决策树通过构建树状结构来表示决策规则,其中每个内部节点表示一个属性或特征,每个分支表示该属性可能的取值,每个叶节点表示一个类别或一个数值。

它的优点包括易于理解和解释,能够处理数值和类别特征,并且不需要太多的数据预处理。然而,缺点是决策树容易过拟合,因此可能需要剪枝等技术来提高模型的泛化能力。

在这里插入图片描述

决策树的构建过程通常从根节点开始,根据给定的数据集和属性集,选择一个最优的属性作为根节点。然后,根据该属性的不同取值将数据集分割成不同的子集,并递归地构建子树。这个过程会不断地重复,直到满足某个终止条件,例如达到预定的树深度、所有样本都属于同一类别或子集的纯度达到一定的阈值。

在决策树的构建过程中,有多种算法可以用于选择最优的属性,例如信息增益和基尼系数。信息增益是通过计算属性对数据集的纯度改善程度来选择最优的属性,而基尼系数是通过计算属性对数据集进行划分后的不纯度来选择最优的属性。

决策树构建完成后,可以使用该树对新的样本进行分类或回归预测。对于分类问题,通过从根节点开始,按照属性的取值依次遍历树,最终到达一个叶节点,该叶节点所表示的类别即为该样本的预测类别。对于回归问题,类似地,根据树的结构和样本的属性值,可以找到对应的预测数值。

代码链接:https://blog.csdn.net/qq_45591302/article/details/139550537

四、随机森林算法

随机森林算法是一种集成学习方法,通过构建多个决策树模型来进行分类或回归任务。随机森林算法的基本思想是将多个决策树模型集成在一起,通过投票或平均的方式进行预测。具体步骤如下:

  1. 随机选择训练数据集中的部分样本进行有放回抽样,构建一个决策树模型。这样可以保证每个决策树的训练数据不完全相同,增加模型的多样性。

  2. 在每个节点上,随机选择一部分特征进行划分。这样可以保证每个决策树的划分规则不完全相同,增加模型的多样性。

  3. 重复步骤1和步骤2,构建多个决策树模型。

  4. 针对分类任务,使用投票的方式进行预测,即每个决策树对于一个样本都进行预测,最后选择预测结果最多的类别作为最终的预测结果。针对回归任务,使用平均的方式进行预测,即每个决策树都对一个样本进行预测,最后选择预测结果的平均值作为最终的预测结果。

单决策树与随机森林示例图:
在这里插入图片描述

随机森林预测的示例:现在要对浣熊进行预测,使用随机森林算法,其中每个决策树都对浣熊进行一次预测,多数决策树认为是浣熊,则最终预测结果为浣熊。
在这里插入图片描述

随机森林算法具有以下优点:

  1. 随机森林算法可以处理高维数据,且对于特征的缺失和异常值不敏感。

  2. 随机森林算法可以通过特征的重要性评估,提供有关特征的重要信息,用于特征选择。

  3. 随机森林算法可以有效地处理大型数据集,具有较高的计算效率。

  4. 随机森林算法能够自动处理非线性关系和交互效应,具有较强的建模能力。

总之,随机森林算法是一种强大的集成学习方法,能够有效地进行分类和回归任务,并具有良好的鲁棒性和泛化能力。

代码链接:https://blog.csdn.net/qq_45591302/article/details/139634463

五、支持向量机SVM

支持向量机(Support Vector Machines, SVM)试图在特征空间中找到最优的分割平面(或线)来分开两类样本,适用于分类和回归问题。
在这里插入图片描述

在这里插入图片描述

SVM是一种强大的分类算法,通过在数据点之间寻找最大间隔的决策边界来区分不同的类别。它使用支持向量,即距离边界最近的点,来确定这个边界。SVM通过核技巧处理非线性问题,将数据映射到高维空间以找到线性分隔面。常见的核函数包括线性核、多项式核和径向基函数核。SVM的训练是一个凸优化问题,旨在最大化间隔同时最小化误差。它对异常值和噪声具有鲁棒性,因为只有支持向量影响最终的决策边界。

六、朴素贝叶斯

1、简介
朴素贝叶斯是一种基于贝叶斯定理的分类算法,它假设特征之间相互独立,即给定目标值时,一个特征出现的概率不影响其他特征的出现概率。这种算法通过计算每个类别的后验概率来预测新数据点的类别。具体来说,朴素贝叶斯首先计算每个类别的先验概率,然后对每个类别,计算给定特征值的条件概率,并将这些概率相乘。最后,选择具有最高后验概率的类别作为预测结果。朴素贝叶斯算法简单、易于实现,且在处理大量特征的数据集时表现良好,尤其适用于文本分类等任务。
​​在这里插入图片描述

朴素贝叶斯分类器的基本步骤如下:

数据预处理:对输入数据进行清洗、转换和归一化等操作。

特征选择:选择与分类目标相关的特征。

计算先验概率:统计训练集中各个类别出现的概率。

计算条件概率:对于每个特征,计算在给定类别的条件下该特征的概率。

应用贝叶斯定理:通过乘积法则计算给定特征的条件下各类别的概率。

分类决策:选择概率最大的类别作为分类结果。


2、贝叶斯定理

要想学习朴素贝叶斯分类器,要先搞懂贝叶斯定理,贝叶斯定理是概率论中一个重要的定理,用于根据已知的条件概率来计算逆条件概率。

贝叶斯定理可以用以下公式表示:
在这里插入图片描述

其中,P(A|B)表示事件A在事件B发生的条件下发生的概率,P(B|A)表示事件B在事件A发生的条件下发生的概率,P(A)和P(B)分别表示事件A和事件B发生的概率。

贝叶斯定理的应用范围非常广泛,包括机器学习、数据分析、模式识别等领域。它可以用于根据已知的先验概率和观测数据来更新概率的估计。

贝叶斯定理的核心思想是通过先验概率和观测数据的关系,来计算后验概率。先验概率是在没有观测数据的情况下对事件发生概率的估计,而后验概率是在观测到数据之后对事件发生概率的修正。

贝叶斯定理的应用可以帮助我们在面对不完全信息和不确定性的情况下,通过观测数据来更新和修正我们的概率估计,从而做出更准确的推断和决策。

七、聚类

聚类(Clustering)是一种无监督学习的方法,用于将数据集中的数据点分组成N个簇。其目标是使每个聚类内部的样本之间的相似度最大化,而不同聚类之间的相似度最小化。

图中每一块不同颜色的区局称为”簇“。
在这里插入图片描述

在这里插入图片描述

聚类的优点是可以自动发现数据中的潜在结构,并且不需要事先标记的训练样本。它可以应用于各种领域,如生物学、社交网络分析、市场细分等。然而,简介聚类也存在一些挑战,如对初始聚类中心的选择比较敏感,以及对数据的维度较为敏感等。因此,在实际应用中,需要根据具体问题选择合适的聚类算法和参数设置。

聚类的过程通常包括以下步骤:

  1. 选择合适的相似度度量方法,如欧氏距离或余弦相似度等。这些度量方法用于计算样本之间的相似性。
  2. 初始化一些聚类中心,可以是随机选择的样本或者根据先验知识确定的初始值。
  3. 将每个样本分配给最近的聚类中心,形成初始的聚类。
  4. 根据当前的聚类分配,更新聚类中心的位置,通常采用均值或者中位数等方法。
  5. 重复步骤3和4,直到聚类中心的位置不再发生变化或达到预定的迭代次数。

八、K最近邻算法

K最近邻算法(k-Nearest Neighbors,简称KNN)是一种常见的分类和回归算法。简单来说,通过查找测试数据点的K个最近邻居来进行分类或回归。它基于一个简单的假设:如果一个样本在特征空间中的K个最近邻中的大多数属于某个类别,则该样本也属于该类别。
在这里插入图片描述

在这里插入图片描述

KNN算法的关键是选择合适的K值和距离度量方法。K值的选择需要根据具体问题和数据集的特点进行调整。常用的距离度量方法包括欧氏距离、曼哈顿距离和闵可夫斯基距离。

KNN算法的优点是简单易实现,适用于多分类和回归问题。
但它的缺点是计算复杂度高,需要存储全部训练样本,对于大规模数据集计算开销较大。此外,KNN对于类别不平衡和噪声数据比较敏感,需要进行数据预处理和特征选择。KNN算法在实际应用中广泛使用,特别是在模式识别、图像处理和推荐系统等领域。

KNN算法的实现步骤如下:

  1. 计算测试样本与每个训练样本之间的距离。
  2. 根据距离将训练样本排序。
  3. 选取距离最近的K个训练样本。
  4. 统计这K个训练样本中每个类别的出现次数。
  5. 将测试样本分类为出现次数最多的类别。

持续更新中。。。

读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
在这里插入图片描述

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉大模型视频和PDF合集👈

观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
在这里插入图片描述

  • 22
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值