1.倒排索引 2.逻辑斯提回归算法

在这里插入图片描述

1.倒排索引

https://help.aliyun.com/zh/open-search/retrieval-engine-edition/introduction-to-inverted-indexes

倒排索引(Inverted Index)是一种数据结构,用于快速查找包含某个特定词或词语的文档。它主要用于全文搜索引擎等应用,允许用户根据关键词迅速定位相关文档。

倒排索引的基本思想是反转(倒排)文档-词语的映射关系。通常,在构建倒排索引时,会对文档集合中的每个文档进行分词,并记录每个词在哪些文档中出现。每个词都对应一个包含它的文档列表。这样,当需要搜索包含某个关键词的文档时,只需查找倒排索引中相应词的文档列表。

以下是构建倒排索引的基本步骤:

  1. 文档分词: 将每个文档进行分词,得到一组词语。

  2. 构建映射关系: 对每个词语,记录它在哪些文档中出现。

  3. 构建倒排索引: 对每个词语,建立一个索引,将其映射到包含它的文档列表。

倒排索引的优点包括:

  • 高效的检索: 对于大规模文本数据,使用倒排索引可以快速定位包含特定关键词的文档。

  • 省空间: 与直接存储文档之间的映射关系相比,倒排索引通常更省空间。

  • 支持复杂查询: 可以轻松支持多关键词的布尔查询和短语查询等。

倒排索引在全文搜索引擎中被广泛应用,例如在Google、Bing等搜索引擎中,它们利用倒排索引实现了快速而准确的搜索功能。

2.逻辑斯提回归算法

逻辑斯蒂回归(Logistic Regression)是一种用于二分类问题的机器学习算法,尽管名字中包含“回归”一词,但它实际上是一种分类算法而非回归算法。逻辑斯蒂回归可以用于解决概率估计问题,它输出一个在0和1之间的概率值,表示样本属于某一类的可能性。

逻辑斯蒂回归的基本原理如下:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  1. 假设函数: 假设函数采用逻辑斯蒂(sigmoid)函数,它的数学表达式为:

    [ h_\theta(x) = \frac{1}{1 + e{-\thetaT x}} ]

    其中,(h_\theta(x)) 是样本 (x) 属于正类的概率,(\theta) 是模型的参数向量。

  2. 损失函数: 逻辑斯蒂回归使用交叉熵损失函数(Cross-Entropy Loss)来衡量模型的性能,其数学表达式为:

    [ J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log(h_\theta(x^{(i)})) + (1 - y^{(i)}) \log(1 - h_\theta(x^{(i)})) \right] ]

    其中,(m) 是样本数量,(y^{(i)}) 是样本 (x^{(i)}) 的实际类别标签。

  3. 参数优化: 通过最小化损失函数来优化模型的参数 (\theta)。这通常使用梯度下降等优化算法来实现。

逻辑斯蒂回归适用于线性可分的二分类问题,它对特征进行线性组合,并通过逻辑斯蒂函数将结果映射到0到1之间的概率。在实践中,逻辑斯蒂回归广泛应用于各种领域,如医学、金融和自然语言处理等。

需要注意的是,逻辑斯蒂回归虽然名字中包含“回归”,但其实质是一种分类算法,用于解决二分类问题。在处理多分类问题时,可以通过扩展为多类别逻辑斯蒂回归(Multinomial Logistic Regression)或使用其他多分类算法。

2.1 机器学习算法(一):逻辑回归模型(Logistic Regression, LR)

https://blog.csdn.net/weixin_39910711/article/details/81607386

(1) 分类平面是平面,曲面或者超平面分别是什么含义与作用

在机器学习中,分类平面、曲面和超平面是描述决策边界(decision boundary)的概念,这些边界用于将不同类别的样本分开。

  1. 分类平面: 一般指的是在二维空间中的平面,用于将两个类别的数据点分开。在这种情况下,决策边界就是一个平面。分类平面用于解决简单的二分类问题,其中数据可以被直线或平面分开。

  2. 曲面: 当决策边界不能通过平面表示,而需要通过曲面来分隔不同类别的样本时,我们可以使用曲面。曲面可以是在三维空间中的曲面,也可以是在更高维度空间中的曲面。曲面常常用于解决二分类或多分类问题。

  3. 超平面: 超平面是在高维空间中的一个平面。在机器学习中,支持向量机(Support Vector Machine,SVM)等算法常常使用超平面作为决策边界。对于二分类问题,超平面是一个 (n-1) 维的平面,其中 n 是特征的维度。超平面将特征空间分成两个部分,每一部分对应一个类别。

这些概念的作用是定义了模型的决策边界,即在特征空间中,模型如何将不同类别的样本分隔开。决策边界的形状取决于模型的类型和复杂性。线性模型(如逻辑斯蒂回归、线性支持向量机)可能产生线性的决策边界(平面或超平面),而非线性模型(如核支持向量机、决策树)可能产生曲面或更为复杂的决策边界,以更好地拟合数据。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(2)什么是交叉熵?什么是MSE?分别有什么优势和劣势。

交叉熵(Cross-Entropy)和均方误差(Mean Squared Error,MSE)是用于衡量模型预测值与真实值之间差异的两种损失函数。它们在不同的任务和模型中有各自的优势和劣势。

1. 交叉熵(Cross-Entropy):

交叉熵主要用于分类问题,特别是在神经网络中用作分类模型的损失函数。对于二分类问题,交叉熵损失函数的数学表达式如下:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

优势:

  • 适用于分类问题,尤其在深度学习中常用于训练分类模型。
  • 对于分类问题,交叉熵损失函数可以更好地反映模型对不同类别的置信度。

劣势:

  • 对于离散的标签,交叉熵更为适用,但在一些回归问题上不够合适。

2. 均方误差(Mean Squared Error,MSE):

均方误差主要用于回归问题,衡量模型预测值与真实值之间的平方差的平均值。均方误差的数学表达式为:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

其中,(y_i) 是真实标签,(\hat{y}_i) 是模型的预测值,(N) 是样本数量。

优势:

  • 适用于回归问题,对于输出是连续值的任务较为合适。
  • 对异常值不敏感,因为使用了平方。

劣势:

  • 在处理分类问题时,MSE 通常不如交叉熵效果好,因为它对于分类问题中的概率分布不够敏感。

在选择损失函数时,需要根据任务类型和模型特性进行合适的选择。在分类任务中,通常使用交叉熵损失函数;而在回归任务中,可以选择均方误差或其他适用的回归损失函数。

2.2 【机器学习】逻辑回归(非常详细)

https://zhuanlan.zhihu.com/p/74874291

2.3 加入正则化项的作用,以及加入正则化项的形式

正则化是在机器学习模型的训练过程中为损失函数添加额外项,以避免过拟合和提高模型的泛化能力。通过正则化,可以对模型参数的大小进行限制,防止其过于复杂,减小模型对训练数据的过度拟合。

在损失函数中添加正则化项的一般形式为:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

其中,(J(\theta)) 是包含正则化项的新损失函数,(\lambda) 是正则化强度的超参数,(\theta) 是模型的参数。

常用的正则化项包括 L1 正则化和 L2 正则化:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

L2 正则化通过对权重的平方进行惩罚,倾向于让权重尽可能小,但不会让它们变为零。它有助于缓解特征间的共线性问题。

在机器学习中,正则化的作用有以下几点:

  1. 防止过拟合: 正则化通过限制模型的复杂度,防止模型在训练数据上过度拟合,提高对新数据的泛化能力。

  2. 特征选择: L1 正则化的特点是可以使一些特征的权重为零,从而实现特征选择,减少不重要的特征对模型的影响。

  3. 缓解共线性: L2 正则化有助于缓解特征之间的共线性问题,使模型对输入特征变化更为稳健。

在实际应用中,超参数 (\lambda) 的选择通常通过交叉验证等方法来确定。正则化在许多机器学习算法中都得到了广泛的应用,例如线性回归、逻辑斯蒂回归、支持向量机等。

2.4 为什么L1正则化可以产生稀疏模型(L1是怎么让系数等于零的),以及为什么L2正则化可以防止过拟合。

L1 正则化产生稀疏模型的原因:

L1 正则化通过在损失函数中添加 ( \lambda \sum_{i=1}^{n} |w_i| ) 项,其中 (w_i) 是模型的权重,(n) 是权重的数量。这个额外的惩罚项具有一种特殊的性质,它促使模型学习到的权重中的一些值变为零。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

具体来说,L1 正则化在优化过程中,倾向于将某些特征对应的权重直接设为零。这是因为 L1 正则化的梯度在某个特征的权重等于零时不可导,而在其他地方都是可导的。因此,为了最小化损失函数,模型倾向于让一些特征的权重直接变为零,从而实现稀疏性。

对于具有大量特征的问题,L1 正则化能够帮助识别并保留对目标变量预测有贡献的关键特征,而将其他特征的权重设为零。这种特性在特征选择和解释模型中很有用。

L2 正则化防止过拟合的原因:

L2 正则化通过在损失函数中添加 ( \lambda \sum_{i=1}^{n} w_i^2 ) 项,其中 (w_i) 是模型的权重,(n) 是权重的数量。相比于 L1 正则化,L2 正则化的梯度在任何地方都是可导的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

L2 正则化的效果主要表现在对权重的平方进行惩罚。这导致模型在训练过程中倾向于将权重保持较小的值,避免过度拟合训练数据。

防止过拟合的原因在于,L2 正则化通过限制权重的大小,减缓了模型对训练数据中噪声的过度拟合。较小的权重值使得模型对输入特征的小变化不敏感,从而提高了模型对新数据的泛化能力。

综合来看,L1 正则化通过产生稀疏模型,有助于特征选择和模型解释;而 L2 正则化通过控制权重的大小,有助于防止模型过拟合。在实际应用中,可以根据问题的特性选择使用 L1 正则化、L2 正则化,或者它们的组合(弹性网络 Elastic Net)。

2.5 softmax函数

Softmax 函数是一种常用的激活函数,特别适用于多分类问题。它将一个包含任意实数的 K 维向量,映射为一个 K 维的概率分布,其中每个元素的取值范围在 (0, 1) 之间,并且所有元素的和为 1。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Softmax 函数的性质使得它在多分类问题中特别有用,因为它可以将模型的原始输出转换为类别概率。在深度学习中,通常将 Softmax 函数作为神经网络输出层的激活函数,以便将神经网络的原始输出转换为类别概率。

Softmax 函数的特点包括:

  1. 归一性: Softmax 函数的输出是一个概率分布,因此所有元素的和等于 1,这使得它可以表示一个完整的类别分布。

  2. 连续性: Softmax 函数是光滑的,可导数的,这在梯度下降等优化算法中很有用。

  3. 转换作用: Softmax 函数对原始分数进行了指数变换,使得大的分数更大,小的分数更小,这有助于突显模型在输入上的置信度。

Softmax 函数在交叉熵损失(Cross-Entropy Loss)等多分类问题中的配合使用,使得模型能够输出概率分布,并且在训练过程中通过最小化损失函数来调整模型参数,以便更好地匹配真实的类别分布。

5 为什么逻辑斯蒂回归的输出值可以作为概率

逻辑斯蒂回归(Logistic Regression)的输出值可以被解释为样本属于某一类别的概率,这是因为逻辑斯蒂回归使用了逻辑斯蒂函数(sigmoid函数)作为激活函数。

逻辑斯蒂函数的数学表达式为:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

逻辑斯蒂函数具有以下性质:

  1. 输出范围:逻辑斯蒂函数的输出范围在 (0, 1) 之间,即对于任何实数输入,输出都在 0 到 1 之间。

  2. 单调性:逻辑斯蒂函数是单调递增的,即当 (z_1 < z_2) 时,(\sigma(z_1) < \sigma(z_2))。

  3. 饱和性:逻辑斯蒂函数在两端接近 0 或 1,但不会完全到达,因此避免了输出值严格等于 0 或 1。

由于逻辑斯蒂函数的输出在 (0, 1) 之间,并且趋向于0或1,可以将其解释为某个样本属于正类别的概率。在二分类问题中,通常设定一个阈值(例如0.5),当逻辑斯蒂函数的输出大于阈值时,将样本划分为正类别,否则划分为负类别。

这种概率的解释使得逻辑斯蒂回归在分类问题中非常有用,尤其是在需要估计概率而不仅仅是类别标签的情况下。逻辑斯蒂回归的训练过程通过最小化对数损失函数,使得模型输出的概率尽量接近真实标签的概率。

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

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

相关文章

计算机图形学理论(3):着色器编程

本系列根据国外一个图形小哥的讲解为本&#xff0c;整合互联网的一些资料&#xff0c;结合自己的一些理解。 CPU vs GPU CPU支持&#xff1a; 快速缓存分支适应性高性能 GPU支持&#xff1a; 多个 ALU快速板载内存并行任务的高吞吐量&#xff08;在每个片段、顶点上执行着色…

反激式开关电源电路的测试记录(一)

反激式开关电源电路的测试记录&#xff08;一&#xff09; Chapter1 反激式开关电源电路的测试记录&#xff08;一&#xff09;一、测前准备二、测试总结 Chapter2 反激式开关电源电路测试记录&#xff08;二&#xff09;Chapter3 UC3842电源管理芯片详细解读一、管脚描述&…

蓝桥杯2020年5月青少组Python程序设计国赛真题

1、 上边是一个算法流程图,最后输出的b的值是() A.377 B.987 C.1597 D.2584 2、 3、如果整个整数X本身是完全平方数,同时它的每一位数字也都是完全平方数我们就称X 是完美平方数。前几个完美平方数是0、1、4、9、49、100、144......即第1个完美平方数是0,第2个是 1,第3个…

TypeScript学习笔记归纳(持续更新ing)

文章目录 前言 二、TypeScript的优势体现在哪里&#xff1f; 1、执行时间上的区别 2、基础数据类型区别 3、TS优势 三、TypeScript的关键特性 四、TypeScript的类型系统 1、什么是类型注释&#xff1f; 2、类型系统核心 - 常用类型 1&#xff09; 基本类型&#xff0…

Verilog RAM/ROM的数据初始化

文章目录 一、初始化方式二、测试 FPGA设计中RAM和ROM作为存储器用来存储可变或不可变类型的数据。 ROM初始化一般是加载固定数据&#xff0c;RAM声明时默认为不定态数据&#xff0c;初始化时可以让数据为全1或者全0。 一、初始化方式 复位时按地址写入初值always (posedge cl…

基于阿里云服务网格流量泳道的全链路流量管理(二):宽松模式流量泳道

作者&#xff1a;尹航 在前文基于阿里云服务网格流量泳道的全链路流量管理&#xff08;一&#xff09;&#xff1a;严格模式流量泳道中&#xff0c;我们介绍了使用服务网格 ASM 的严格模式流量泳道进行全链路灰度管理的使用场景。该模式对于应用程序无任何要求&#xff0c;只需…

Linux poll 和 select 机制

poll select 介绍 使用非阻塞 I/O 的应用程序常常使用 poll, select, 和 epoll 系统调用. poll, select 和 epoll 本质上有相同的功能: 每个允许一个进程来决定它是否可读或者写一个 或多个文件而不阻塞. 这些调用也可阻塞进程直到任何一个给定集合的文件描述符可用来 读或写.…

Linux 宝塔mysql莫名其妙数据库不见了恢复数据库

起因&#xff1a;宝塔安装的mysql 线上运行突然表包括库都不见了&#xff0c;想办法恢复数据库 登陆mysql cd /www/server/mysql/binmysql -u root -p查看binlog日志是否打开 show variables like log_%;log_bin如果为 ON 则为开启状态&#xff0c;如果开启了才可以进行下一…

C# WPF上位机开发(从demo编写到项目开发)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 C# WPF编程&#xff0c;特别是控件部分&#xff0c;其实学起来特别快。只是后面多了多线程、锁、数据库、网络这部分稍微复杂一点&#xff0c;不过…

【贪心】单源最短路径Python实现

文章目录 [toc]问题描述Dijkstra算法Dijkstra算法应用示例时间复杂性Python实现 个人主页&#xff1a;丷从心 系列专栏&#xff1a;贪心算法 问题描述 给定一个带权有向图 G ( V , E ) G (V , E) G(V,E)&#xff0c;其中每条边的权是非负实数&#xff0c;给定 V V V中的一个…

计算机网络-网络层

计算机网络-网络层 以下笔记整理为哔哩哔哩湖科大教书匠的《计算机网络微课堂》的教学视频。 链接&#xff1a;计算机网络微课堂 1. 网络层概述 1.1 网络层的主要任务是实现网络互联&#xff0c;进而实现数据包在各网络之间的传输。 1.2 要实现网络层任务&#xff0c;需要解决…

nodejs+vue+微信小程序+python+PHP计算机网络在线考试系统-计算机毕业设计推荐

信息数据的处理完全依赖人工进行操作&#xff0c; 所以电子化信息管理的出现就能缓解以及改变传统人工方式面临的处境&#xff0c;一方面可以确保信息数据在短时间被高效处理&#xff0c;还能节省人力成本&#xff0c;另一方面可以确保信息数据的安全性&#xff0c;可靠性&…