朴素贝叶斯 | 多分类问题

在正文开始之前,我们先来了解贝叶斯:
贝叶斯公式是由英国数学家贝叶斯提出,它的提出是为了解决后验概率问题,即:事情已经发生,要求这件事情发生的原因是由某个因素引起的概率的问题;

通俗一点讲:就是“执果寻因”的问题

这里我们相应的补充上先验问题的含义:事情还没有发生,要求这件事情发生的概率

一. 贝叶斯公式的推导

根据条件概率公式,我们可以的到
P ( B ∣ A ) = P ( A B ) P ( A ) P(B|A)=\frac{P(AB)}{P(A)} P(BA)=P(A)P(AB)
那么,设 P ( A ) > 0 P(A)>0 P(A)>0,则会有:
P ( A B ) = P ( A ∣ B ) P ( B ) P(AB)=P(A|B)P(B) P(AB)=P(AB)P(B)
由全概率公式
P ( A ) = P ( A ∣ B 1 ) P ( B 1 ) + P ( A ∣ B 2 ) P ( B 2 ) + . . . + P ( A ∣ B n ) P ( B n ) P(A)=P(A|B_{1})P(B_{1})+P(A|B_{2})P(B_{2})+...+P(A|B_{n})P(B_{n}) P(A)=P(AB1)P(B1)+P(AB2)P(B2)+...+P(ABn)P(Bn)
那么,当我想求 P ( B ∣ A ) P(B|A) P(BA)发生的概率时,我可以得到:
P ( B ∣ A ) = P ( A B ) P ( A ) = P ( A ∣ B ) P ( B ) P ( A ∣ B 1 ) P ( B 1 ) + P ( A ∣ B 2 ) P ( B 2 ) + . . . + P ( A ∣ B n ) P ( B n ) P(B|A)=\frac{P(AB)}{P(A)}=\frac{P(A|B)P(B)}{P(A|B_{1})P(B_{1})+P(A|B_{2})P(B_{2})+...+P(A|B_{n})P(B_{n})} P(BA)=P(A)P(AB)=P(AB1)P(B1)+P(AB2)P(B2)+...+P(ABn)P(Bn)P(AB)P(B)
这也就是贝叶斯公式

我们再将公式整合后,就会得到:
P ( B ∣ A ) = P ( A B ) P ( A ) = P ( A ∣ B ) P ( B ) ∑ i = 1 n P ( A ∣ H i ) P ( H i ) P(B|A)=\frac{P(AB)}{P(A)}=\frac{P(A|B)P(B)}{\sum_{i=1}^{n}P(A|H_{i})P(H_{i}) } P(BA)=P(A)P(AB)=i=1nP(AHi)P(Hi)P(AB)P(B)

这里补充一点:

后验概率 P ( B ∣ A ) P(B|A) P(BA)
先验概率 P ( A ∣ B ) P(A|B) P(AB)

后验概率是通过先验概率求出来的

二. 朴素贝叶斯

首先,我们来聊什么是朴素?

  “朴素”的贝叶斯认为:事件与事件之间是独立的

  • 这里用垃圾邮件来举例是比较容易理解的:
        对于一封邮件,如果想要检测是否为垃圾邮件,最简单的做法就是:统计邮件中所有的词,绘制一个词典(可以理解为是一个1维的的向量),对于出现“买”,“优惠”等垃圾邮件高频词的特征标注为1,其他特征标注为0;对于标签值,我们认为 P ( y ) = 1 P(y)=1 P(y)=1时,为垃圾邮件

这样,垃圾邮件问题抽象为数学公式,就变为:

P ( y = 1 ∣ X ) = P ( X ∣ y = 1 ) p ( y = 1 ) p ( X ) P(y=1|X)=\frac{P(X|y=1)p(y=1)}{p(X)} P(y=1∣X)=p(X)P(Xy=1)p(y=1)
P ( y = 0 ∣ X ) = P ( X ∣ y = 0 ) p ( y = 0 ) p ( X ) P(y=0|X)=\frac{P(X|y=0)p(y=0)}{p(X)} P(y=0∣X)=p(X)P(Xy=0)p(y=0)

请注意:
我们之所以可以将问题抽象成公式的前提是,我们认为词与词之间没有关系,是相互独立的(但事实上,“优惠”后面出现“买”这个字的概率非常高,并不是完全独立的)

所以,对于朴素用人话来讲就是:我天真的认为事件A与事件B没有关系

1. 离散的朴素贝叶斯

朴素贝叶斯导入示例

在这里插入图片描述
问题:若有一个输入值,他是黑皮肤,卷头发,那么他来自哪个洲?

那么我们的问题可以抽象为:

	P(y=亚|(黑卷)) 或 P(y=非|(黑卷))

是个分类问题呦!!!!


首先,我们需要计算参数,即:

  • 亚洲人比例
  • 非洲人比例
  • 亚洲黑皮肤比例
  • 亚洲黄皮肤比例
  • 亚洲直发比例
  • 亚洲卷发比例

而后,我们需要计算每个特征的条件概率:

  • P(黑皮肤|亚洲)= …
  • P(黑皮肤|非洲)= …

  • P(黄皮肤|亚洲)= …
  • P(黄皮肤|非洲)= …

  • P(直发|亚洲)= …
  • P(直发|非洲)= …

  • P(卷发|亚洲)= …
  • P(卷发|非洲)= …

在假设条件相互独立的前提下,对于问题我们就得到了:
P ( 非 ∣ 黑卷 ) = P ( 黑皮肤 ∣ 非洲 ) P ( 卷发 ∣ 非洲 ) p ( 非洲 ) p ( 黑卷 ) P(非|黑卷)=\frac{P(黑皮肤|非洲)P(卷发|非洲)p(非洲)}{p(黑卷)} P(黑卷)=p(黑卷)P(黑皮肤非洲)P(卷发非洲)p(非洲)

P ( 亚 ∣ 黑卷 ) = P ( 黑皮肤 ∣ 亚洲 ) P ( 卷发 ∣ 亚洲 ) p ( 亚洲 ) p ( 黑卷 ) P(亚|黑卷)=\frac{P(黑皮肤|亚洲)P(卷发|亚洲)p(亚洲)}{p(黑卷)} P(黑卷)=p(黑卷)P(黑皮肤亚洲)P(卷发亚洲)p(亚洲)

最后通过比较概率大小,模型将预测这个人来自…

通过上述例子,我们可以将问题推广,即
P ( y ∣ x 1 , x 2 , . . . , x n ) P(y|x_{1},x_{2},...,x_{n}) P(yx1,x2,...,xn)
也就是
P ( y ∣ x 1 , x 2 , . . . , x n ) = p ( y ) P ( x 1 , x 2 , . . . , x n ∣ y ) P ( x 1 , x 2 , . . . , x n ) P(y|x_{1},x_{2},...,x_{n})=\frac{p(y)P(x_{1},x_{2},...,x_{n}|y)}{P(x_{1},x_{2},...,x_{n})} P(yx1,x2,...,xn)=P(x1,x2,...,xn)p(y)P(x1,x2,...,xny)
在朴素的条件下,我们可以将式子化简为
P ( y ∣ x 1 , x 2 , . . . , x n ) = p ( y ) ∏ i = 1 n P ( x n ∣ y ) P ( x 1 , x 2 , . . . , x n ) P(y|x_{1},x_{2},...,x_{n})=\frac{p(y)\prod_{i=1}^{n} P(x_{n}|y)}{P(x_{1},x_{2},...,x_{n})} P(yx1,x2,...,xn)=P(x1,x2,...,xn)p(y)i=1nP(xny)

其中 P ( x 1 , x 2 , . . . , x n ) P(x_{1},x_{2},...,x_{n}) P(x1,x2,...,xn)为常数,因此
P ( y ∣ x 1 , x 2 , . . . , x n ) ∝ p ( y ) ∏ i = 1 n P ( x n ∣ y ) P(y|x_{1},x_{2},...,x_{n})\propto p(y)\prod_{i=1}^{n} P(x_{n}|y) P(yx1,x2,...,xn)p(y)i=1nP(xny)
所以,我们的计算目标就变成了:
y ^ = a r g max ⁡ y P ( y ) ∏ i = 1 n P ( x n ∣ y ) \hat{y} =arg \max_{y} P(y)\prod_{i=1}^{n} P(x_{n}|y) y^=argymaxP(y)i=1nP(xny)

即:求 P ( y ) ∏ i = 1 n P ( x n ∣ y ) P(y)\prod_{i=1}^{n} P(x_{n}|y) P(y)i=1nP(xny)取最大值时,y的取值

其中y的取值在实际中不一定只有两个(亚洲,非洲),所以朴素贝叶斯算法自身就可以做多分类的,而不需要使用OVR或者OVO的方法

离散的朴素贝叶斯训练

朴素贝叶斯的准备过程:

  • 构建模型:算出所有的先验概率

朴素贝叶斯的训练过程:

  • 计算 p ( y i ) , p ( x j ∣ y i ) p(y_{i}),p(x_{j}|y_{i}) p(yi),p(xjyi)

朴素贝叶斯的应用过程:

  • p ( x ∣ y i ) p ( y i ) p(x|y_{i})p(y_{i}) p(xyi)p(yi)最大项作为x属性的类别

【注意:朴素贝叶斯没有梯度下降过程,只是在计算先验概率】

2. 连续的朴素贝叶斯

对于连续的特征属性 x i x_{i} xi,我们引入密度概率,即高斯朴素贝叶斯:当特征属性为连续值时,分布服从高斯分布,在计算 P ( x ∣ y ) P(x|y) P(xy)的时候,可以直接使用高斯分布的概率密度公式:
g ( x , η , σ ) = 1 2 π σ e − ( x − η ) 2 2 σ 2 g(x,\eta ,\sigma )=\frac{1}{\sqrt{2\pi }\sigma} e^{-\frac{(x-\eta )^{2}}{2\sigma ^{2}} } g(x,η,σ)=2π σ1e2σ2(xη)2
P ( x i ∣ y k ) = g ( x i , η i , y k , σ i , y k ) P(x_{i}|y_{k})=g(x_{i},\eta _{i,y_{k}},\sigma _{i,y_{k}}) P(xiyk)=g(xi,ηi,yk,σi,yk)

假设有一些连续的数据,他们的label值有1,2,3…

训练过程:
特征连续时,取label为1的数据,算 η \eta η均值, σ \sigma σ方差
特征连续时,取label为2的数据,算 η \eta η均值, σ \sigma σ方差
特征连续时,取label为3的数据,算 η \eta η均值, σ \sigma σ方差

3. 伯努利朴素贝叶斯

伯努利分布是二项分布的一种特殊情况,可以看作是只进行一次实验的二项分布

  • 二项分布是一种离散分布,即标签值为1或0

  • 如果接收到了除了1和0以外的数据作为参数,可以通过BernoulliNB把输入数据二元化(取决于binarize 参数设置)

当特征属性服从伯努利分布时,公式为:
P ( x k ∣ y ) = p ( 1 ∣ y ) x k ∗ ( 1 − p ( 1 ∣ y ) ) 1 − x k P(x_{k}|y)=p(1|y)^{x_{k}}\ast (1-p(1|y))^{1-x_{k}} P(xky)=p(1∣y)xk(1p(1∣y))1xk

4. 多项式朴素贝叶斯

在特征服从多项分布时(即特征离散,比如:非洲人、亚洲人的例子),对于朴素贝叶斯而言,我们的预测结果是否准确完全取决于我们的样本是否全面;

当样本存在数据小或是不全面的情况下(比如:未统计到亚洲存在黑皮肤),我们可以用平滑解决:

	平滑的主要作用是克服条件概率为0的问题

4.1 Laplace平滑

p ( y k ) = N y k + α N + k ∗ α p(y_{k})=\frac{N_{y_{k}}+\alpha }{N+k\ast \alpha } p(yk)=N+kαNyk+α
p ( x i ∣ y k ) = N y k , x i + α N y k , x i + n i ∗ α p(x_{i}|y_{k})=\frac{N_{y_{k},x_{i}}+\alpha }{N_{y_{k},x_{i}}+n_{i}\ast \alpha } p(xiyk)=Nyk,xi+niαNyk,xi+α

其中 α = 1 α=1 α=1

4.2 Lidstone平滑

p ( y k ) = N y k + α N + k ∗ α p(y_{k})=\frac{N_{y_{k}}+\alpha }{N+k\ast \alpha } p(yk)=N+kαNyk+α
p ( x i ∣ y k ) = N y k , x i + α N y k , x i + n i ∗ α p(x_{i}|y_{k})=\frac{N_{y_{k},x_{i}}+\alpha }{N_{y_{k},x_{i}}+n_{i}\ast \alpha } p(xiyk)=Nyk,xi+niαNyk,xi+α

其中 0 < α < 1 0<α<1 0<α<1

三. 概率图模型

上面我们讨论了,当事件与事件相互独立时,朴素贝叶斯多分类任务的思想与算法;但事实是,事件与事件之间并不是完全独立的,比如:垃圾邮件中“优惠”后通常接的是“买”;machine learning中的learning是动名词而不是动词等等

诸如此类的例子,我们都可以将他们归为概率图模型,即:一种用于学习这些带有依赖的模型的强大框架

1. 贝叶斯网络(Bayesian Network)

当多个特征属性之间存在着某种相关关系的时候,朴素贝叶斯算法就无法解决问题了;而贝叶斯网络却是解决这类应用场景的一个非常好的算法

在这里插入图片描述
针对上面这个图,我们来做一些概念解释:

	贝叶斯网络,即:把研究系统中涉及到的随机变量,根据是否条件独立绘制在一个有向图中,就形成了贝叶斯网络贝叶斯网络又称有向无环图模型节点表示随机变量,可以是可观察到的变量、隐变量、未知参数等等接两个节点之间的箭头表式两个随机变量之间的因果关系,即这两个随机变量之间非条件独立贝叶斯网络的关键方法是图模型

针对上面这幅图,我们可以得到公式
P ( a , b , c ) = P ( a ) P ( b ∣ a ) P ( c ∣ a , b ) P(a,b,c)=P(a)P(b|a)P(c|a,b) P(a,b,c)=P(a)P(ba)P(ca,b)

1.1 全连接贝叶斯网络

在这里插入图片描述
网络拓扑图全连接时,我们可以得到公式
P ( A , B , C , D , E ) = P ( A ) P ( B ∣ A ) P ( C ∣ A , B ) P ( D ∣ A , B , C ) P ( E ∣ A , B , C , D ) P(A,B,C,D,E)=P(A)P(B|A)P(C|A,B)P(D|A,B,C)P(E|A,B,C,D) P(A,B,C,D,E)=P(A)P(BA)P(CA,B)P(DA,B,C)P(EA,B,C,D)
进一步抽象,我们就可以得到数学关系:
P ( x 1 , x 2 , . . . , x n ) = ∏ i = 2 n P ( x n ∣ x 1 , x 2 , . . . , x n − 1 ) P ( x 2 ∣ x 1 ) P ( x 1 ) P(x_{1},x_{2},...,x_{n})=\prod_{i=2}^{n} P(x_{n}|x_{1},x_{2},...,x_{n-1})P(x_{2}|x_{1})P(x_{1}) P(x1,x2,...,xn)=i=2nP(xnx1,x2,...,xn1)P(x2x1)P(x1)

1.2 “正常”贝叶斯网络

在这里插入图片描述
P ( x 1 , x 2 , x 3 , x 4 , x 5 , x 6 , x 7 ) = P ( x 1 ) P ( x 2 ) P ( x 3 ) P ( x 4 ∣ x 1 , x 2 , x 3 ) P ( x 5 ∣ x 1 , x 3 ) P ( x 6 ∣ x 4 ) P ( x 7 ∣ x 4 , x 5 ) P(x_{1},x_{2},x_{3},x_{4},x_{5},x_{6},x_{7})=P(x_{1})P(x_{2})P(x_{3})P(x_{4}|x_{1},x_{2},x_{3})P(x_{5}|x_{1},x_{3})P(x_{6}|x_{4})P(x_{7}|x_{4},x_{5}) P(x1,x2,x3,x4,x5,x6,x7)=P(x1)P(x2)P(x3)P(x4x1,x2,x3)P(x5x1,x3)P(x6x4)P(x7x4,x5)

2. 隐马尔可夫模型(HiddenMarkovModel)

隐马尔科夫模型是一类基于概率统计的模型,是一种结构最简单的动态贝叶斯网,也是有向图模型

在时序数据建模,例如:语音识别、文字识别、自然语言处理等领域广泛应用

  • 马尔可夫性质:
    随机过程中某一状态 S t S_{t} St发生的概率,只与它的前一个状态有关,而与更前的所有状态无关

  • 若某一随机过程满足马尔科夫性质,则称这一过程为马尔科夫过程,或称马尔科夫链

然而现实中,许多现象并不符合这一性质,但是我们可以假设某个事件具有马尔科夫性质,这个性质为很多无章可循的问题提供了一种解法

P ( S t ∣ S t − 1 , S t − 2 , . . , S t − n ) = P ( S t ∣ S t − 1 ) P(S_{t}|S_{t-1},S_{t-2},..,S_{t-n})=P(S_{t}|S_{t-1}) P(StSt1,St2,..,Stn)=P(StSt1)

2.1 马尔科夫过程

在这里插入图片描述

	中每一个节点代表相应时刻的状态有向箭头代表了可能的状态转移,值表示状态转移概率

2.2 隐马尔科夫过程

在一个随机过程中,马尔科夫链虽然无法直接观测到,但可以观测到每个状态的输出结果。这个输出结果只与状态有关,并且是可观测到的。这种过程被称为隐马尔科夫过程,或者称为隐马尔科夫模型。
在这里插入图片描述

	隐马尔科夫模型中,马尔科夫链指的是隐状态S0,S1,…,St 序列

感谢阅读🌼
如果喜欢这篇文章,记得点赞👍和转发🔄哦!
有任何想法或问题,欢迎留言交流💬,我们下次见!
本文相关代码存放位置
    【代码实现

祝愉快🌟!


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

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

相关文章

中国城市统计年鉴、中国县域统计年鉴、中国财政统计年鉴、中国税务统计年鉴、中国科技统计年鉴、中国卫生统计年鉴​

统计年鉴是指以统计图表和分析说明为主&#xff0c;通过高度密集的统计数据来全面、系统、连续地记录年度经济、社会等各方面发展情况的大型工具书来获取统计数据资料。 统计年鉴是进行各项经济、社会研究的必要前提。而借助于统计年鉴&#xff0c;则是研究者常用的途径。目前国…

redis在微服务领域的贡献,字节跳动只面试两轮

dubbo.registry.addressredis://127.0.0.1:6379 注册上来的数据是这样&#xff0c;类型是hash /dubbo/ s e r v i c e / {service}/ service/{category} 如 /dubbo/com.newboo.sample.api.DemoService/consumers /dubbo/com.newboo.sample.api.DemoService/providers has…

Prompt Learning:人工智能的新篇章

开篇&#xff1a;AI的进化之旅 想象一下&#xff0c;你正在和一位智能助手对话&#xff0c;它不仅理解你的问题&#xff0c;还能提出引导性的问题帮助你更深入地思考。这正是prompt learning的魔力所在——它让机器学习模型变得更加智能和互动。在这篇博客中&#xff0c;我们将…

安装MySQL8.0及以上版本操作步骤

关于mysql安装过程中命令mysqld --initialize --console出错的解答 C:\mysql-8.3.0-winx64\bin>mysqld --initialize --usermysql --console 2024-03-12T11:21:23.201387Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start. 2024-03-12T11:21:23.2068…

【05】消失的数字

hellohello~这里是土土数据结构学习笔记&#x1f973;&#x1f973; &#x1f4a5;个人主页&#xff1a;大耳朵土土垚的博客 &#x1f4a5;所属专栏&#xff1a;C语言函数实现 感谢大家的观看与支持&#x1f339;&#x1f339;&#x1f339; 有问题可以写在评论区或者私信我哦…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Text)

显示一段文本的组件。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 可以包含Span和ImageSpan子组件。 接口 Text(content?: string | Resource, value?: TextOptions) 从API versi…

论文阅读——ViTAE

ViTAE: Vision Transformer Advanced by Exploring Intrinsic Inductive Bias ViTAE旨在将细胞神经网络中固有的IB引入视觉转换器。如图2所示&#xff0c;ViTAE由两种类型的细胞组成&#xff0c;即RC和NC。RC负责将多尺度上下文和局部信息嵌入到令牌中&#xff0c;NC用于进一步…

AUTOSAR软件配置(3):MCAL下载安装

前言 所有的NXP软件的下载安装都是需要自己在官网去注册账号的 中文的NXP官方网址&#xff1a;恩智浦半导体官方网站 | NXP 半导体 注&#xff1a;本文指导安装教程将以S32K144平台为例展开。 下载 找到下载入口的指引 然后在左侧的导航栏找到AUTOSAR 然后选择4.2版本 在…

java-集合工具类Collections

我们在使用它的时候记得导包 常见API 我们就简单看看第一第二个方法&#xff0c;代码如下&#xff0c;其余的知道用就行

信息系统项目管理师--沟通管理

IT 项⽬成功有关的最重要的四个因素是&#xff1a;主管层的⽀持、⽤户参与、有经验的项⽬经理和清晰的业务⽬标 项⽬沟通管理是确保及时、正确地产⽣、收集、分发、存储和最终处理项⽬信息所需的过程 项⽬沟通管理由两部分组成&#xff1a;⼀是制定策略&#xff0c;确保沟通对…

leetcode一天一题-第1天

为了增加自己的代码实战能力&#xff0c;希望通过刷leetcode的题目&#xff0c;不断提高自己&#xff0c;增加对代码的理解&#xff0c;同时开拓自己的思维方面。 题目名称&#xff1a;两数之和 题目编号&#xff1a;1 题目介绍&#xff1a; 给定一个整数数组 nums 和一个整数…

中介者模式(Mediator Pattern)

中介者模式 说明 中介者模式&#xff08;Mediator Pattern&#xff09;属于行为型模式&#xff0c;又称为调解者模式或调停者模式。用一个中介对象封装一系列的对象交互&#xff0c;中介者使各对象不需要显示地相互作用&#xff0c;从而使其耦合松散&#xff0c;而且可以独立…

【AI大模型应用开发】【LangChain系列】9. 实用技巧:大模型的流式输出在 OpenAI 和 LangChain 中的使用

大家好&#xff0c;我是同学小张&#xff0c;日常分享AI知识和实战案例欢迎 点赞 关注 &#x1f44f;&#xff0c;持续学习&#xff0c;持续干货输出。v: jasper_8017 一起交流&#x1f4ac;&#xff0c;一起进步&#x1f4aa;。微信公众号也可搜【同学小张】 &#x1f64f; 本…

Python使用openpyxl库或pandas库创建.xlsx格式的Excel文件,并向文件不同的sheet按行或按列写入内容

import openpyxl# 创建-一个Workbook对象 wb openpyxl.Workbook()# 创建多个工作表 sheet1 wb.active sheet1.title "s1"sheet2 wb.create_sheet("s2")# 在不同的工作表中写入数据 sheet1["A1"] Data for Sheet1 sheet1["A2"] D…

数学问题难解?新研究提出MathScale方法,让AI更懂数学推理

引言&#xff1a;数学问题解决中的语言模型挑战 数学问题解决是一个复杂的认知过程&#xff0c;它要求参与者不仅要掌握数学知识&#xff0c;还要能够进行多步骤的逻辑推理。近年来&#xff0c;大语言模型&#xff08;LLMs&#xff09;在解决问题方面展现出了显著的能力&#…

18. 查看帖子详情

文章目录 一、建立路由二、开发GetPostDetailHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 router/route.go v1.GET("/post/:id", controller.GetPostDetailHandler)二、开发GetPostDetailHandler controller/post.go func GetPostDetailHand…

java数据结构与算法刷题-----LeetCode90. 子集 II

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 解题思路:时间复杂度O( n 2 ∗ n n^2*n n2∗n),空间复杂度O(n) 7…

JAVA初阶数据结构栈(工程文件后续会上传)(+专栏数据结构练习是完整版)

1.栈的概念讲解(Stack)&#xff09; 定义&#xff1a;栈是一种先进后出的数据结构 要想拿到12就要把它头上的所有东西给移出去 2.栈的实现&#xff08;代码&#xff09; 2.1栈的方法逻辑的讲解 &#xff08;1&#xff09;新建一个测试类Frank &#xff08;2&#xff09;进…

机器学习模型—决策树

机器学习模型—决策树 决策树是最强大和最流行的算法之一。Python 决策树算法属于监督学习算法的范畴。它适用于连续输出变量和分类输出变量也就是可以处理分类和回归任务。在本文中,我们将在 UCI 上提供平衡秤体重和距离数据库上用 Python 算法实现决策树。 决策树算法,是…

【MySQL探索之旅】MySQL数据表的增删查改(初阶)

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 |《MySQL探索之旅》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &…