当前位置: 首页 > news >正文

统计学习算法——逻辑斯谛回归

内容来自B站Up主:动画讲编程https://www.bilibili.com/video/BV1CR4y1L7RC、风中摇曳的小萝卜https://www.bilibili.com/video/BV17r4y137bW,仅为个人学习所用。

极大似然估计

几率、概率与似然

几率是指某个事件发生的可能性与不发生的可能性之比,即事件发生的几率和不发生的几率的比值。

概率是在特定条件下某事件发生的可能性,在结果没有产生前,根据条件去估算某个事件发生的概率,通常用一个0到1之间的数值表示。

似然的概念与概率相反,是根据已知的事件结果来推测该事件可能在什么条件下发生。我们都知道,抛出一枚质地均匀的硬币,人像和数字在上的概率分别为0.5,假设抛出一枚硬币1万次,其中8千次人像在上,2千次数字在上,那么可以判断该硬币的构造可能有问题,进而推测该硬币的一些参数。

θ \theta θ为条件对应的参数, x x x表示事件发生的结果,在 θ \theta θ条件下 x x x发生的概率表示为 P ( x ∣ θ ) P(x|\theta) P(xθ) P P P是关于 x x x的函数;似然则相反,表示为 L ( θ ∣ x ) L(\theta|x) L(θx),即在已经结果 x x x的条件下, θ \theta θ发生的概率, L L L是关于 θ \theta θ的函数。
在这里插入图片描述

极大似然估计

极大似然估计是在已知观测数据的情况下,找到使这些数据出现的可能性最大的模型参数,即根据事件 x x x的观察结果,推断 θ \theta θ是多少的时候,结果 x x x最有可能发生。

继续抛硬币实验,通过具体实验来得出 θ \theta θ。仍然抛硬币10次,其中7次人像在上,3次数字在上
在这里插入图片描述
假设结果服从二项分布,那么有 L ( θ ) = θ 7 ( 1 − θ ) 3 (有 7 次人像朝上,为 7 个 θ 相乘,其他的同理) L(\theta)=\theta^7(1-\theta)^3 (有7次人像朝上,为7个\theta相乘,其他的同理) L(θ)=θ7(1θ)3(有7次人像朝上,为7θ相乘,其他的同理)
在这里插入图片描述
通过该图像发现,当 θ \theta θ取值为0.7时,函数值达到最大值,说明在当前条件下,最可能发生7次人像在上,3次数字在上。

逻辑斯蒂回归

引入

小明的战队与对手比赛,但小明的战队比较慢热,刚开始找不到手感,与对手零十开,到了10分钟时,与对手一九开,到了游戏中期,手感上来了,与对手五五开,游戏后期达到九一开甚至十零开。
在这里插入图片描述
因为中期的比赛形势不确定,小明想知道在第26分钟的时候能和对面几几开呢?

计算过程

这里说的几几开是指赢下比赛和输掉比赛可能性的比值 几几开 ( 几率 ) = p 1 − p 几几开(几率)=\frac{p}{1-p} 几几开(几率)=1pp

列出相关几率如下图
在这里插入图片描述
转为小数
在这里插入图片描述
当战队十分可能输给对手的时候,赢的几率接近于0,而当战队非常可能赢的时候,该几率更接近于 + ∞ +\infty +

在这里插入图片描述
这种对称轴不对称,不好分析问题,使用几率的对数来分析问题,将数据从正半轴映射到整条数据周轴上。
若以对数几率为y轴,时间为x轴,可以得到线性回归直线。
在这里插入图片描述
通过计算每个点到直线的距离差,然后做最小二乘的优化,可以得到一条最完美的直线来拟合这些数据。查询x轴上某一点,就可以得到当前时间赢下这场比赛的可能性。

问题是有许多点分布在 + ∞ +\infty + − ∞ -\infty 上,如何计算距离误差?在这里插入图片描述
将该直线重新映射回概率空间,通过一系列计算,可以得到逻辑斯蒂函数。
在这里插入图片描述
代入 y = w x + b y=wx+b y=wx+b,得出逻辑斯蒂回归的概率函数在这里插入图片描述
在这里插入图片描述
因此,可以理解为:概率空间里的逻辑斯蒂回归就是对数几率空间里的线性回归。
在这里插入图片描述
在概率空间中,可以使用极大似然估计来得到最好的逻辑斯蒂曲线。

假设在时间 x x x的条件下,赢下比赛(y=1)的几率为 p p p,输掉比赛(y=0)的几率为 1 − p 1-p 1p在这里插入图片描述
注意:与前面的函数计算方法类似( L ( θ ) = θ 7 ( 1 − θ ) 3 L(\theta)=\theta^7(1-\theta)^3 L(θ)=θ7(1θ)3

由于一系列式子的乘积是不太容易优化的表达,取对数变成其加法形式
在这里插入图片描述
展开括号,整理,有
在这里插入图片描述
标黄的 l o g log log部分是对数几率,概率空间里的逻辑斯蒂回归就是对数几率空间里的线性回归,将其替换成直线方程, p i p_i pi是逻辑斯蒂函数,代入,得出如下结果
在这里插入图片描述
继续优化得到最好的参数值在这里插入图片描述

a r g m a x argmax argmax函数:找出使函数取得最大值的自变量。假设教计算机识别图片是猫、狗还是兔子。计算机对一张图片会输出三个数字[0.2,0.7.0.1],比如说 ,这三个数字分别代表这张图片是猫、狗、兔子的可能性。这里的函数就是计算可能性的那个规则。那 argmax 就是帮你找出哪个可能性最大。在这个例子中,最大的是0.7 ,对应的是狗,所以计算机就会认为这张图片是狗。

将时间代入,就可以得到相关的概率。
在这里插入图片描述

相关文章:

统计学习算法——逻辑斯谛回归

内容来自B站Up主:动画讲编程https://www.bilibili.com/video/BV1CR4y1L7RC、风中摇曳的小萝卜https://www.bilibili.com/video/BV17r4y137bW,仅为个人学习所用。 极大似然估计 几率、概率与似然 几率是指某个事件发生的可能性与不发生的可能性之比&am…...

算法(蓝桥杯)贪心算法5——删数问题的解题思路

问题描述 给定一个高精度的正整数 n(n≤1000 位),需要删除其中任意 s 个数字,使得剩下的数字按原左右顺序组成一个新的正整数,并且这个新的正整数最小。例如,对于数字 153748,删除 2 个数字后&a…...

数字孪生发展及应用

一、数字孪生的前世今生 (一)萌芽的种子:概念的首次提出 数字孪生的概念最早可追溯到 20 世纪 60 年代,美国国家航空航天局(NASA)在阿波罗计划中,为了训练宇航员和指挥控制人员,使用…...

MYSQL对表的增删改查

表的基本操作 创建表create table [if not exists] <tableName> (<columnName> <columnType> [constraints] [comment] , ...<columnName> <columnType> [constraints] [comment] ) ;删除表drop table [if exists] <tableName> ;…...

左神算法基础提升--4

文章目录 树形dp问题Morris遍历 树形dp问题 求解这个问题需要用到我们在基础班上学到的从节点的左子树和右子树上拿信息的方法。 求最大距离主要分为两种情况&#xff1a;1.当前节点参与最大距离的求解&#xff1b;2.当前节点不参与最大距离的求解&#xff1b; 1.当前节点参与最…...

【docker踩坑记录】

docker踩坑记录 踩坑记录(持续更新中.......)docker images 权限问题 踩坑记录(持续更新中…) docker images 权限问题 permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.s…...

CloudberryDB(四)并行执行

要查看CloudberryDB & Greenplum数据库的并行度配置&#xff0c;可以使用以下几种方法&#xff1a; ### 方法一&#xff1a;使用SHOW命令 在Greenplum数据库中&#xff0c;可以使用SHOW命令来查看当前的并行度配置。例如&#xff1a; sql SHOW gp_parallel_degree ; SH…...

LARGE LANGUAGE MODELS ARE HUMAN-LEVEL PROMPT ENGINEERS

题目 大型语言模型是人类级别的提示工程师 论文地址&#xff1a;https://arxiv.org/abs/2211.01910 项目地址&#xff1a;https://github.com/keirp/automatic_prompt_engineer 摘要 通过对自然语言指令进行调节&#xff0c;大语言模型 (LLM) 显示了作为通用计算机的令人印象深…...

rabbitmq安装延迟队列

在RabbitMQ中&#xff0c;延迟队列是一种特殊的队列类型。当消息被发送到此类队列后&#xff0c;不会立即投递给消费者&#xff0c;而是会等待预设的一段时间&#xff0c;待延迟期满后才进行投递。这种队列在多种场景下都极具价值&#xff0c;比如可用于处理需要在特定时间触发…...

Kubernetes (K8s) 入门指南

Kubernetes (K8s) 入门指南 什么是Kubernetes&#xff1f; Kubernetes&#xff0c;通常简称为 K8s&#xff08;因为从 “K” 到 “s” 之间有八个字符&#xff09;&#xff0c;是一个开源的容器编排平台&#xff0c;用于自动化部署、扩展和管理容器化应用程序。它最初由谷歌设…...

Python 调用 Ollama 库:本地大语言模型使用详解

ollama 是一个用于调用本地大语言模型&#xff08;Large Language Models&#xff0c;LLMs&#xff09;的 Python 库&#xff0c;旨在提供简单、高效的 API 接口&#xff0c;以便开发者能够方便地与本地的大语言模型进行交互。以下是关于如何在 Python 中使用 ollama 库的详细介…...

python matplotlib绘图,显示和保存没有标题栏和菜单栏的图像

目录 1. 使用plt.savefig保存无边框图形 2. 显示在屏幕上&#xff0c;并且去掉窗口的标题栏和工具栏 3. 通过配置 matplotlib 的 backend 和使用 Tkinter&#xff08;或其他图形库&#xff09; 方法 1&#xff1a;使用 TkAgg 后端&#xff0c;并禁用窗口的工具栏和标题栏 …...

无人机(Unmanned Aerial Vehicle, UAV)路径规划介绍

无人机&#xff08;Unmanned Aerial Vehicle, UAV&#xff09;是无人驾驶飞行器的简称。凭借其体积小巧、操作简便、生存能力强等诸多优势&#xff0c;无人机在军事、电力巡检、航空航天与科学研究等诸多领域得到了广泛应用。在执行任务时&#xff0c;无人机可搭载多种传感器设…...

python爬虫入门(实践)

python爬虫入门&#xff08;实践&#xff09; 一、对目标网站进行分析 二、博客爬取 获取博客所有h2标题的路由 确定目标&#xff0c;查看源码 代码实现 """ 获取博客所有h2标题的路由 """url "http://www.crazyant.net"import re…...

于灵动的变量变幻间:函数与计算逻辑的浪漫交织(下)

大家好啊&#xff0c;我是小象٩(๑ω๑)۶ 我的博客&#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家&#xff0c;希望能够和大家一起交流学习&#xff0c;共同进步。 这一节我们主要来学习单个函数的声明与定义&#xff0c;static和extern… 这里写目录标题 一、单个函数…...

python实现pdf转word和excel

一、引言   在办公中&#xff0c;我们经常遇收到pdf文件格式&#xff0c;因为pdf格式文件不易修改&#xff0c;当我们需要编辑这些pdf文件时&#xff0c;经常需要开通会员或收费功能才能使用编辑功能。今天&#xff0c;我要和大家分享的&#xff0c;是如何使用python编程实现…...

Pandas使用笔记

个人学习笔记 日期转换 索引日期格式&#xff1a;2023-09-12 15:00:00 转换为&#xff1a;2023-09-12 import pandas as pd# 假设你的 DataFrame 名为 df&#xff0c;索引是 2023-09-12 15:00:00 # 这里创建一个示例 DataFrame 用于演示 data {value: [1, 2, 3]} index pd…...

高等数学学习笔记 ☞ 定积分与积分公式

1. 定积分的基本概念 1.1 定积分的定义 1. 定义&#xff1a;设函数在闭区间上有界。在闭区间上任意插入若干个分点&#xff0c;即&#xff0c; 此时每个小区间的长度记作(不一定是等分的)。然后在每个小区间上任意取&#xff0c;对应的函数值为。 为保证每段的值(即矩形面积)无…...

wow-agent---task2使用llama-index创建Agent

一&#xff1a;创造俩个函数&#xff0c;multiply和add作为fuction calling被LLM当做工具来使用&#xff0c;实现计算一个简单的计算题&#xff1a; from llama_index.llms.ollama import Ollama from llama_index.core.agent import ReActAgent from llama_index.core.tools …...

RabbitMQ实现延迟消息发送——实战篇

在项目中&#xff0c;我们经常需要使用消息队列来实现延迟任务&#xff0c;本篇文章就向各位介绍使用RabbitMQ如何实现延迟消息发送&#xff0c;由于是实战篇&#xff0c;所以不会讲太多理论的知识&#xff0c;还不太理解的可以先看看MQ的延迟消息的一个实现原理再来看这篇文章…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06&#xff08;十亿美元&#xff09;。漏洞扫描服务市场行业预计将从 2024 年的 3.48&#xff08;十亿美元&#xff09;增长到 2032 年的 9.54&#xff08;十亿美元&#xff09;。预测期内漏洞扫描服务市场 CAGR&#xff08;增长率&…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...