朴素贝叶斯机器学习算法:从基础到高级

news2024/11/15 13:28:27

文章目录

  • 一、说明
  • 二、从一个简单例子入手
    • 2.1 简单示例
    • 2.2 朴素贝叶斯算法的直觉解释
  • 三、在训练阶段,朴素贝叶斯内部会发生什么?
    • 3.1 朴素贝叶斯如何处理数值数据?
    • 3.2 如果数据分布不是高斯分布怎么办?
    • 3.3 朴素贝叶斯的数值稳定性问题:
    • 3.4 朴素贝叶斯的零概率问题:(拉普拉斯加法平滑)
  • 四、使用没有拉普拉斯平滑的基本朴素贝叶斯方法,
  • 五、朴素贝叶斯的类型
    • 5.1 高斯朴素贝叶斯:
    • 5.2 . 分类朴素贝叶斯:
    • 5.3 多项式朴素贝叶斯:
    • 5.4 伯努利朴素贝叶斯

一、说明

朴素贝叶斯算法是一系列概率分类算法,用于文本分类等任务,例如垃圾邮件过滤和情感分析。它假定特征彼此独立,这意味着一个特征的存在与否不会影响另一个特征的概率。这个假设虽然过于简单,但允许朴素的贝叶斯分类器在实践中表现良好,同时计算效率高。

该算法基于概率中的贝叶斯定理。
在这里插入图片描述
朴素贝叶斯分类器在同质类型的输入特征上给出了很好的结果,这就是为什么它在文本数据任务(如情感分析)上给出了非常好的结果。

二、从一个简单例子入手

2.1 简单示例

我们用一个简单的示例,我们假如要提取出天气对翻越可可西里无人区的影响,提取出气候影响的模型,便可预测任意天气下,考察对穿越可可西里的可能性预测。我们先将历史中,穿越可可西里的天气资料,如下表:

天气气温湿度风天是否成功
日照天无风
日照天无风
阴天无风
雨天中等无风
雨天无风
雨天有风
阴天有风
日照天中等无风
日照天正常无风
雨天中等正常无风
日照天中等正常有风
阴天中等有风
阴天无风
雨天中等有风

以下,我们将演示如何使用贝叶斯理论的用法。

2.2 朴素贝叶斯算法的直觉解释

下面显示的数据集基本上是基于这个人是否能穿越可可西里,基于天气条件,如天气、温度、湿度和风,四个要素。

为了解决根据天气条件(天气、温度、湿度和风力)预测一个人是否会穿越的问题,我们可以应用朴素贝叶斯算法。给定特定的天气条件,例如天气 = 晴天,温度 = 凉爽,湿度 = 正常,大风 = 真,我们想预测这个条件穿过可可西里的可能性。

根据贝叶斯定理, P ( A ∣ B ) = ( P ( B ∣ A ) ∗ P ( A )) / P ( B ) P(A|B) = (P(B|A) * P(A)) / P(B) PAB=PBAPA))/PB

对于我们的例子,假设 Y= 能穿越,N= 不能穿越

B = { 天气 = 晴天,温度 = 凉爽,湿度 = 正常,风 = 真 } B= \{天气 = 晴天,温度 = 凉爽,湿度 = 正常,风 = 真\} B={天气=晴天,温度=凉爽,湿度=正常,风=}

因此,为了预测某个团队是否能穿越可可西里,我们需要计算以下概率:
P ( Y ∣ B ) P(Y|B) PYB P ( N ∣ B ) P(N|B) PNB在两者之间,我们根据这一点来决定这个团队是否穿越成功。

根据贝叶斯定理,我们可以按如下方式计算这些概率:

P ( Y ∣ B ) = ( P ( B ∣ Y ) ∗ P ( Y )) / P ( B ) P ( N ∣ B ) = ( P ( B ∣ N ) ∗ P ( N )) / P ( B ) P(Y|B) = (P(B|Y) * P(Y)) / P(B) \\ P(N|B) = (P(B|N) * P(N)) / P(B) PYB=PBYPY))/PBPNB=PBNPN))/PB

这里:

P(B|Y)是观察天气条件B的概率,假设这个团队成功穿越,
P(B|N)是观察天气条件B的概率,假设这个团队不能成功穿越;
P(Y)是成功穿越的先验概率(成功穿越的总概率),
P(N)是成功穿越的先验概率(不成功穿越的总概率),
P(B) 是观察天气条件 B 的概率,无论该人是否穿越。
在这两种情况下,我们用 P(B) 除法,这对两者都是通用的,所以我忽略了这个项,新方程变成了:

P ( Y ∣ B ) = P ( B ∣ Y ) ∗ P ( Y ) 和 P ( N ∣ B ) = P ( B ∣ N ) ∗ P ( N ) P(Y|B) = P(B|Y) * P(Y)\\ 和 P(N|B) = P(B|N) * P(N) PYB=PBYPYPNB=PBNPN

从上面的数据集中, P ( Y ) = 9 / 14 和 P ( N ) = 5 / 14 P(Y) = 9/14 和 P(N) = 5/14 PY=9/14PN=5/14

和 P(B|Y) = P(晴天∩凉爽∩正常∩ 真 |是)
和 P(B|N) = P(晴天∩凉爽∩正常∩ 真 |否)

但是在表中没有这样的条件同时匹配,
所以P(B|Y) = 0 和 P(B|N) =0

因此,P(Y|B) = 0 和 P(N|B) =0

那么,问题来了,我们将如何预测?

这里出现了一个朴素的假设,它假设所有输入列都是相互独立的。因此,我们改变了计算 P(晴天∩凉爽∩正常∩的方法 True |是的),我们计算如下:

P(晴天∩凉爽∩正常∩ 真 |是) = P(晴天 |是) * P(酷 |是) * P(正常 |是) * P(True |是的)

同样,

P(晴天∩凉爽∩正常∩ 真 |No) = P(晴天 |否) * P(酷 |否) * P(正常 |否) * P(真 |否)

在上表的帮助下,P(sunny |是)= 2/9,P(冷却 |是) = 3/9, P(正常 |是) = 6/9, P(True |是)= 3/9

并计算,P(Y|B) = 2/9 * 3/9 * 6/9 * 3/9 * 9/14 = 972/91854

类似地,我们可以计算 P(N |B)在给定的两个中哪个更大,这是我们的预测。

因此,机器学习算法中的朴素贝叶斯算法以这种方式工作。

三、在训练阶段,朴素贝叶斯内部会发生什么?

在朴素贝叶斯算法的训练阶段,所有可能的特征值和类组合的概率都以哈希格式计算和存储。这涉及估计给定每个类的类的先验概率和特征值的条件概率。在测试阶段,该算法根据观察到的特征值检索相应的概率,将它们相乘,并提供最终输出,指示预测的类别。通过在训练期间预计算和存储概率,测试阶段变得更加高效,因为它涉及简单的查找和乘法运算,而不是每次都重新计算概率。

3.1 朴素贝叶斯如何处理数值数据?

假设我有一个数据集,给出了该人的年龄以及是否结婚。
在这里插入图片描述

我今年 46 岁,我想使用朴素贝叶斯预测此人是否已婚。所以我需要计算 P(Y | 46) 和 P(N | 46)。但是在给定的表格中,给定的年龄可能不存在,那么这个时间这些概率就变成了零。为了解决这个问题,我们假设我们的 Age 列遵循高斯分布,并根据此分布计算 μ 和 σ 和 x= 46,并将所有值放入高斯分布函数中:

在这里插入图片描述
现在我们计算 f(x),它给出了相应年龄的概率。因此,通过这种方式,使用概率密度函数,我们可以对数值数据使用朴素贝叶斯算法。

3.2 如果数据分布不是高斯分布怎么办?

数据转换:根据数据的性质,可以应用变换以使其更正态分布。常见的变换包括对数变换、平方根变换和倒数变换。
替代发行版:如果您知道或怀疑您的数据遵循特定的非正态分布(例如,指数分布、泊松分布等),则可以在计算似然时修改朴素贝叶斯算法以假定该特定分布。
离散化:您可以通过对值进行分箱将连续数据转换为分类数据。有多种方法可以确定条柱,包括等宽条柱、等频条柱,或使用更复杂的方法,如 k-means 聚类。
对数据进行分箱后,可以使用标准的多项式或伯努利朴素贝叶斯方法。
核密度估计:一种估计随机变量概率密度函数的非参数方法。当分布未知时,可以使用核密度估计。
使用其他型号:如果上述选项都不起作用,则最好考虑使用不同的分类算法,该算法不会对特征的分布做出强有力的假设,例如决策树、随机森林或支持向量机。

3.3 朴素贝叶斯的数值稳定性问题:

在朴素贝叶斯算法中,数值稳定性可能是一个问题,尤其是在处理非常小的概率时。此问题是由于概率的乘法而产生的,这可能导致值极小,这些值可能会下溢或导致浮点计算中的精度损失。

用于解决朴素贝叶斯中数值稳定性的一种常用技术是使用对数概率而不是原始概率。通过采用概率对数,乘法运算转换为求和运算。这有助于缓解下溢问题,因为添加对数概率在数值上比直接乘以小概率更稳定。

在处理对数概率时,朴素贝叶斯分类的公式略有变化。不是将概率相乘,而是将对数概率相加,并选择结果值最高的类作为预测类。这种方法在解决数值稳定性问题的同时保持了概率的相对排序。

3.4 朴素贝叶斯的零概率问题:(拉普拉斯加法平滑)

拉普拉斯加法平滑是朴素贝叶斯算法中常用的一种技术,用于处理零概率问题。它用于避免在分类过程中遇到看不见的特征和类组合的问题。

在朴素贝叶斯中,在计算概率时,可能会遇到测试数据中未在训练数据中观察到的特征值。因此,此类组合的条件概率为零,这可能导致不准确的预测。

拉普拉斯加法平滑通过在估计概率时在分子和分母上添加一个小常数(通常为 1)来解决这个问题。这样,即使未在训练数据中观察到特定类的特定特征值,它仍然具有非零概率。

P(特征值 | 类) = (给定类 + α 的特征值计数) / (类计数 + n * α)

这里α通常取 1,n 的值取决于您使用的朴素贝叶斯类型。

让我们举个例子来更清楚地理解朴素贝叶斯中的拉普拉斯加法平滑:

假设我们有一个电影评论数据集,根据他们的情绪标记为正面 (+) 或负面 (-)。我们想使用朴素贝叶斯根据某些单词的出现将新评论分类为正面或负面。

下面是一个简化的训练数据集:
在这里插入图片描述
现在,假设我们想对新评论进行分类:“精彩的电影”。我们需要计算每个类(正和负)的概率,给定评论中出现的特定单词。

四、使用没有拉普拉斯平滑的基本朴素贝叶斯方法,

我们会遇到一个问题。“太棒了”这个词不会出现在正面或负面评论的训练数据中。因此,条件概率 P(“Fantastic” | +) 和 P(“Fantastic” | -) 将为零。当我们将这些概率相乘以计算 P(+ |“神奇的电影”)和P(- |“精彩的电影”),结果概率也为零。

如果没有拉普拉斯加法平滑,朴素贝叶斯分类器将无法提供任何预测,因为它遇到的概率为零。

现在,让我们通过在分子和分母上添加一个小常数(例如,1)来应用拉普拉斯平滑。应用拉普拉斯平滑后,正类和负类的“奇妙”概率变为非零。

这种调整允许朴素贝叶斯分类器对看不见的特征组合进行预测。通过添加常数,拉普拉斯平滑可确保概率不会变为零,并提供更稳健、更可靠的概率估计。

综上所述,朴素贝叶斯采用拉普拉斯加法平滑处理零概率问题,提高分类器的泛化能力。它允许在测试数据中遇到看不见的特征组合时进行预测。
使用拉普拉斯加法平滑系数“α”的朴素贝叶斯分类器中的偏差-方差权衡:
如果 alpha 值设置为零(无平滑),朴素贝叶斯分类器可能会过度拟合训练数据并产生过于自信的预测。这是因为分类器为看不见的特征值分配了零的概率,从而导致估计值有偏差。在这种情况下,模型可能具有低偏差但高方差。例如:

假设我们有一个二元分类问题,根据两个特征来预测电子邮件是否是垃圾邮件:“金钱”一词的存在和“彩票”一词的存在。我们在电子邮件及其相应标签的数据集上训练朴素贝叶斯分类器。

在没有平滑处理 (alpha = 0) 的情况下,我们假设训练数据中没有一个垃圾邮件包含“彩票”一词。在预测阶段,当分类器遇到包含单词“lottery”的测试电子邮件时,它会为事件“spam”分配零概率,给定特征“lottery”。这是因为它在训练期间没有观察到垃圾邮件类中的“彩票”一词。

因此,分类器将自信地将任何包含“彩票”一词的电子邮件归类为非垃圾邮件,即使它实际上是具有其他垃圾邮件相关功能的垃圾邮件。这种过度自信的预测是由于分配给看不见的特征值的概率为零。

在这种情况下,分类器将具有低偏差,因为它通过为看不见的特征值分配零概率来完美地拟合训练数据。但是,它将具有很高的方差,因为它无法很好地泛化到看不见的实例。

通过引入具有非零 alpha 值(如 alpha = 1)的拉普拉斯平滑,分类器将非零概率分配给看不见的特征值。它将观测到的特征值的概率质量重新分配到看不见的特征值,从而减少偏差并避免零概率。

使用拉普拉斯平滑,分类器将为给定特征“lottery”的事件“spam”分配一个小的非零概率。这允许模型做出更合理的预测,同时考虑其他特征和数据的整体分布。它减少了过度拟合,并改进了对看不见的实例的泛化,在偏差和方差之间取得了更好的平衡。

另一方面当 alpha 非常大时,添加的伪计数 (alpha) 在训练数据中实际观察到的计数中占主导地位。因此,平滑概率在所有特征值中变得非常相似,从而降低了模型的判别能力。这种过度平滑会导致朴素贝叶斯分类器变得过于保守,对数据中的特定模式不太敏感。

在极端情况下,当 alpha 设置为无穷大时,每个特征值的所有概率都相等,从而产生均匀分布。这基本上完全忽略了观察到的数据,并为所有可能的结果分配了相等的概率。这种极端的过度平滑导致泛化能力差和重要判别信息的丢失。

让我们考虑一个简单的例子,根据两个特征的存在将电子邮件分类为垃圾邮件或非垃圾邮件:“金钱”一词和“彩票”一词。我们有一个训练数据集,其计数如下:

垃圾邮件:100 次出现“金钱”,20 次出现“彩票”。
非垃圾邮件:“金钱”出现 10 次,“彩票”出现 90 次。
现在,让我们来看看不同 alpha 值对朴素贝叶斯分类器分配的概率的影响:

当然!让我们考虑一个简单的例子,根据两个特征的存在将电子邮件分类为垃圾邮件或非垃圾邮件:“金钱”一词和“彩票”一词。我们有一个训练数据集,其计数如下:

垃圾邮件:100 次出现“金钱”,20 次出现“彩票”。
非垃圾邮件:“金钱”出现 10 次,“彩票”出现 90 次。
现在,让我们来看看不同 alpha 值对朴素贝叶斯分类器分配的概率的影响:

无平滑 (alpha = 0):在没有任何平滑的情况下,如果我们遇到一封新电子邮件,其中包含训练数据中未看到的特征值,则其概率将为零。在这种情况下,如果电子邮件中不存在“金钱”一词,则无论是否出现“彩票”,它成为垃圾邮件的概率都将为零。这种灵活性的缺乏会导致过拟合。
中度平滑 (alpha = 1):使用拉普拉斯平滑,我们将伪计数 1 添加到所有特征出现中。概率计算如下:
P(“money” | spam) = (100 + 1) / (100 + 10 + 2) = 0.5038
P(“彩票”|垃圾邮件) = (20 + 1) / (100 + 10 + 2) = 0.1887
P(“money” | non-spam) = (10 + 1) / (10 + 90 + 2) = 0.1098
P(“彩票”|非垃圾邮件) = (90 + 1) / (10 + 90 + 2) = 0.8902
有了这些概率,我们可以对新电子邮件进行分类。但是,如果新电子邮件包含以前未见过的功能值(例如,“头奖”),则其概率仍为零。这限制了模型在观测特征值之外进行泛化的能力。

  1. 极端平滑 (alpha = 1000):现在,让我们考虑一个非常大的 alpha 值。概率计算如下:

P(“money” | spam) = (100 + 1000) / (100 + 10 + 2 * 1000) = 0.1887
P(“彩票” | 垃圾邮件) = (20 + 1000) / (100 + 10 + 2 * 1000) = 0.1887
P(“money” | 非垃圾邮件) = (10 + 1000) / (10 + 90 + 2 * 1000) = 0.1098
P(“彩票”|非垃圾邮件) = (90 + 1000) / (10 + 90 + 2 * 1000) = 0.1098
如您所见,垃圾邮件和非垃圾邮件类的所有概率都变得相同。这种极端的过度平滑会导致分类器变得过于保守,并失去根据观察到的特征值区分两个类的能力。因此,模型的性能会受到影响,并且与训练数据拟合不足。

总之,拉普拉斯平滑中非常大的 alpha 值会导致过度平滑,其中所有特征出现都被分配了相似的概率。这会导致欠拟合情况,即模型对观察到的数据变得不那么敏感,并且在泛化到新的、看不见的实例时表现不佳。

五、朴素贝叶斯的类型

**在这里插入图片描述

5.1 高斯朴素贝叶斯:

当所有输入特征都是数值时,则使用高斯朴素贝叶斯。拉普拉斯加性平滑不适用于高斯朴素贝叶斯,因为对于任何输入特征,这里的概率永远不会为零。
在这里插入图片描述

5.2 . 分类朴素贝叶斯:

当所有输入特征都是分类的时,此时使用分类朴素贝叶斯。在本例中应用拉普拉斯加法平滑时,“n”表示特定输入列的唯一特征值或类别的数量。

5.3 多项式朴素贝叶斯:

多项式朴素贝叶斯是朴素贝叶斯算法的一种变体,专为文本分类问题而设计,其中特征表示文档中单词的频率或出现次数。它通常用于自然语言处理任务,例如情绪分析、垃圾邮件过滤、主题分类和文档分类。

在多项式朴素贝叶斯中,特征通常表示为术语频率(例如单词在文档中出现的次数)或 TF-IDF(术语频率-反向文档频率)值,该值同时考虑了文档中单词的频率及其在整个数据集中的稀有性。

让我们举个例子来理解多项式朴素贝叶斯。
在这里插入图片描述
上表表示 docID,该文档中出现了不同的单词。训练集包含四个不同的文档,根据单词,我们需要预测 docID 5 是否来自中国。现在应用基于计数的词袋,我将每个文档转换为词频表,其中列代表不同的单词,行代表每个文档。
在这里插入图片描述
现在对于文档 5,我们需要预测它是否是 c= 中国。

因此,对于上述预测,我们需要计算
,P(Yes |中文=3,北京=0,上海=0,澳门=0,东京=1,日本=1)和P(否 |中国=3,北京=0,上海=0,澳门=0,东京=1,日本=1)

假设,B=(中国=3,北京=0,上海=0,澳门=0,东京=1,日本=1)

P(是 |B) = P(是) * P(B |是)
P(是)= 3/4,

P(中文 |是的)= 5 + 1/8+6 = 6/14,这里在分子中加上 1,在分母中加上 6 表示拉普拉斯加法平滑,alpha=1 和 n=6,因为 n 表示不同单词的总数。

P(北京 |是)= 1+1/8+6 = 2/14
P(上海 |是) = 1+1/8+6 = 2/14
P(澳门 |是) = 1+1/8+6 = 2/14
P(东京 |是) = 0+1/8+6= 1/14
P(日本 |是)= 0+1/8+6= 1/14

同样,所有这些概率也是针对 No 选项计算的,

P(No) = 1/4
P(北京 |No)= 0+1/3+6 = 1/9
P(上海 |No) = 1+1/3+6 = 1/9
P(澳门 |No) = 0+1/3+6 = 1/9
P(东京 |No) = 1+1/3+6= 2/9
P(日本 |No) = 1+1/3+6= 2/9
P(中文 |否) = 1+1/3+6 = 2/9

P(是 |B) = 3/4 * (6/14)³ *1/14 * 1/14 = 0.0003
P(否 |B) = 1/4 * (2/9)³ * 2/9 * 2/9 = 0.0001

所以对于文档 5 来自中国,因为 P( 是 |B) > P(否 |B).

5.4 伯努利朴素贝叶斯

伯努利朴素贝叶斯常用于特征为二进制或布尔变量的场景。在伯努利朴素贝叶斯中,输入数据表示为二进制特征向量,其中每个特征表示特定属性的存在与否。例如,在文本分类中,每个特征都可以对应于文档中特定单词的存在与否。

让我们举个例子来理解伯努利朴素贝叶斯。
在这里插入图片描述
上表表示 docID,该文档中出现了不同的单词。训练集包含四个不同的文档,根据单词,我们需要预测 docID 5 是否来自中国。现在应用二进制词袋,我将每个文档转换为二进制词频表,其中列代表不同的单词,行代表每个文档。
在这里插入图片描述
现在对于文档 5,我们需要预测它是否是 c= 中国。

因此,对于上述预测,我们需要计算
,P(Yes |中文=1,北京=0,上海=0,澳门=0,东京=1,日本=1)和P(否 |中国=1,北京=0,上海=0,澳门=0,东京=1,日本=1)

假设,B=(中国=1,北京=0,上海=0,澳门=0,东京=1,日本=1)

P(是 |B) = P(是) * P(B |是)
P(是)= 3/4,

伯努利随机变量的概率由下式给出,
P(X=K) = PK + (1-P)(1-K)

P(中文=1 |是的) = 3 +1/3+2 =4/5 ,因为这里 K=1
和 P(X=1) = P*1 +0 = P ,P 表示概率为 1,我也对概率应用了拉普拉斯加法平滑。

P(北京=0 |是)= 2+1/3+2 = 3/5
P(上海=0 |是) = 2+1/3+2 = 3/5
P(澳门=0 |是) = 2+1/3+2 = 3/5
P(Tokyo=1 |是) = 0+1/3+2 = 1/5
P(日本=1 |是)= 0+1/3+2 = 1/5

同样,所有这些概率也是针对 No 选项计算的,

P(No) = 1/4
P(北京 =0|否)= 1+1/1+2 = 2/3
P(上海=0 |否) = 1+1/1+2=2/3
P(澳门=0 |否) = 1+1/1+2=2/3
P(东京=1 |否) = 1+1/1+2=2/3
P(日本=1 |No) = 1+1/1+2=2/3
P(中文=1 |否) = 1+1/1+2=2/3

P(是 |B) =3/4 *4/5 * 3/5 * 3/5 * 3/5 *1/5 *1/5 = 0.005
P(否 |B) = 1/4 * 2/3 * 2/3 * 2/3 * 2/3 * 2/3 * 2/3= 0.022

因此,对于文档 5 不是来自中国,因为 P( No| B) > P(Yes |B).

总之,朴素贝叶斯算法是一个强大而高效的概率分类器。它通过假设分布或应用变换来处理数值数据。数值稳定性通过使用对数概率来解决,拉普拉斯平滑用于处理零概率。平滑参数的选择会影响偏差-方差的权衡。

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

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

相关文章

linux配置Vnc Server给Windows连接

1. linux 安装必要vnc server和桌面组件 sudo apt -y install tightvncserversudo apt install xfce4 xfce4-goodies2. linux 配置vncserver密码 #bash vncserver参考: https://cn.linux-console.net/?p21846#google_vignette 3. 将启动桌面命令写入.vnc/xstartup # .vnc/x…

06-操作元素

在前面的文章中重点介绍了一些元素的定位方法,定位到元素后,就需要操作元素了。本篇通过简单案例来介绍app应用中的一些常用操作。 一、案例介绍 下面列表中有四个字典,每个字典中的num1代表第一个操作数,num2代表第二个操作数&a…

2024.6.16周报

目录 摘要 ABSTRACT 一、文献阅读 一、题目 二、摘要 三、创新点 四、模型架构 五、文章解读 1、Introduction 2、实验 3、结论 二、代码复现 1、模型代码 2、实验结果 三、总结 摘要 本周我阅读了一篇题目为《Contaminant Transport Modeling and Source Att…

第九届信也科技杯全球AI算法大赛——语音深度鉴伪识别参赛A榜 0.968961分

遗憾没有进复赛,只是第41名。先贴个A榜的成绩。A榜的前三十名晋级,个个都是99分的大佬,但是B榜的成绩就有点低了,应该是数据不同源的问题,第一名0.78分。官网链接:语音深度鉴伪识别 官方baselin:https://g…

XHS-Downloader是一款小红书图片视频下载工具

这款软件可以提取账号发布、收藏、点赞作品链接;提取搜索结果作品链接、用户链接;下载小红书作品信息;提取小红书作品下载地址;下载小红书无水印作品文件! 📑 功能清单 ✅ 采集小红书图文 / 视频作品信息…

项目五 OpenStack镜像管理与制作

任务一 理解OpenStack镜像服务 1.1 •什么是镜像 • 镜像通常 是指一系列文件或一个磁盘驱动器的精确副本 。 • 虚拟机 所使用的虚拟磁盘, 实际上是 一种特殊格式的镜像文件 。 • 云 环境下尤其需要 镜像。 • 镜像 就是一个模板,类似于 VMware 的虚拟…

每日复盘-202406019

今日关注: 20240619 六日涨幅最大: ------1--------300868--------- 杰美特 五日涨幅最大: ------1--------300462--------- 华铭智能 四日涨幅最大: ------1--------300462--------- 华铭智能 三日涨幅最大: ------1--------300462--------- 华铭智能 二日涨幅最大…

使用MAT定位线上OOM问题

目录 1.什么是OOM? 2.发生的可能原因 3.常见类型的OOM 4.如何定位问题? 4.1 获取dump文件 4.2 MAT分析 「Leak Suspects」泄露嫌疑 「Histogram」直方图 「dominator tree」支配树 「thread overview」线程视图 目录 1.什么是OOM? 2.发生的可能原因 …

MPLS TE简介

定义 MPLS TE(MPLS Traffic Engineering),即MPLS流量工程。MPLS流量工程通过建立基于一定约束条件的LSP隧道,并将流量引入到这些隧道中进行转发,使网络流量按照指定的路径进行传输,达到流量工程的目的。 …

vue3+element ui +ts 封装周范围选择器

vue3element ui ts 封装周范围选择器 在业务场景中,产品需要在页面中使用周范围选择器,我们在使用ant-design的时候里面是有自带的,但是在emement中只有指定周的范围选择器: 这个是ant-design的周范围选择器 这个是element ui 的…

C# WinForm —— 36 布局控件 GroupBox 和 Panel

1. 简介 两个可以盛放其他控件的容器,可以用于把不同的控件分组,一般不会注册事件 GroupBox:为其他控件提供可识别的分组。可通过Text属性设置标题;有边框;没有滚动条,一般用于按功能分组 Panel&#xff…

鸿蒙小案例-短视频

参加泡泡玛特写了个小demo,然后给它稍微完善了一下 基于API11 演示效果 hfvideo演示视频 主要功能集中在4个tab页内 1.首页-视频播放页 2.朋友-关注、朋友、粉丝聚合 3.消息-聊天列表 4.我的-当前用户信息展示 主页页面 1.用户主页 2.聊天页面 3.朋友页面 4.视频播放页 因为不…

【嵌入式】嵌入式Linux开发实战指南:从交叉编译到触摸屏交互

文章目录 前言:1.简介1.1. 交叉编译工具1.2. 项目开发流程:1.3. ARM开发板的连接方法 2. 开发板连接3. 系统文件 IO4. 设置共享文件夹3.1. 读文件3.2. 写文件3.2. 设置文件偏移量 4. LCD显示屏显示4.1. LCD 显示颜色4.2. 将文件下载到开发板4.2.1. 在CRT…

shadertoy-安装和使用

一、安装vscode 安装vscode流程 二、安装插件 1.安装glsl编辑插件 2.安装shader toy插件 三、创建glsl文件 test.glsl文件 float Grid(float size, vec2 fragCoord) {vec2 r fragCoord / size;vec2 grid abs(fract(r - 0.5) - 0.5) / fwidth(r);float line min(grid…

免费域名第二弹:手把手教你获取个性化免费域名并托管至Cloudflare

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 免费申请域名的方法 📒📝 注册账号📝 创建免费域名📝 将域名添加到 Cloudflare⚓️ 相关链接 ⚓️📖 介绍 📖 在如今的数字时代,拥有一个个性化的域名已经成为越来越多人的需求。无论是建立个人博客、项目展示,还…

JWT整合Gateway实现鉴权(RSA与公私密钥工具类)

一.业务流程 1.使用RSA生成公钥和私钥。私钥保存在授权中心,公钥保存在网关(gateway)和各个信任微服务中。 2.用户请求登录。 3.授权中心进行校验,通过后使用私钥对JWT进行签名加密。并将JWT返回给用户 4.用户携带JWT访问 5.gateway直接通过公钥解密JWT进…

前端页面实现【矩阵表格与列表】

实现页面&#xff1a; 1.动态表绘制&#xff08;可用于矩阵构建&#xff09; <template><div><h4><b>基于层次分析法的权重计算</b></h4><table table-layout"fixed"><thead><tr><th v-for"(_, colI…

王思聪隐形女儿曝光

王思聪"隐形"女儿曝光&#xff01;黄一鸣独自面对怀孕风波&#xff0c;坚持生下爱情结晶近日&#xff0c;娱乐圈掀起了一场惊天波澜&#xff01;前王思聪绯闻女友黄一鸣在接受专访时&#xff0c;大胆揭露了她与王思聪之间的爱恨纠葛&#xff0c;并首度公开承认&#…

VBA技术资料MF161:按需要显示特定工作表

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…