学习笔记:机器学习中的数学原理(一)

1. 集合

集合分为有限集和无限集;

对于有限集,两集合元素数相等即为等势;

对于无限集,两集合元素存在一一映射关系即为等势;

无限集根据是否与正整数集等势分为可数集和不可数集。

2. sigmoid函数(也叫logistic函数)

公式:f(x)=\frac{1}{1+e^{-x}}

含义:将实数集R映射到区间(0,1),两个区间是等势的,公式就是双射函数(一对一映射函数)。

3. 支持向量机

支持向量机的目标是寻找一个最优超平面,能够最大化分类间隔。

超平面形式:


 

数据到超平面的距离如下:

我们希望SVM在边界点数据(支持向量)的输出是

考虑上非边界点,输出是

我们最大化这个两个边界的距离的一半(支持向量到超平面的距离):

在这两个的约束下,即可求解最优w和b。

4. 决策树

1)信息论概念

信息量是事后的判断:指的是一个随机变量某个可能性(具体事件)发生所带来的信息,满足概率越低信息量越大、不相关事件信息量相加对应概率相乘,因此公式为:

𝐡(𝐱) = −𝒍𝒐𝒈𝟐𝒑(𝒙)

信息熵是事前的预估:指的是一个随机变量所有可能性的信息量的期望,公式为:

𝐇(𝐱) = −𝒔𝒖𝒎(𝒑(𝒙)𝒍𝒐𝒈𝟐𝒑(𝒙))

2)决策树理解

决策树是要找到一棵树,按照这棵树的节点进行递归判断就可以得到判断结果,例如一个瓜是不是好瓜,需要判断一系列特征然后得到结论。

决策树算法则是为了找到这样一颗树,需要确定节点顺序。显然应该优先判断重要特征,即那些对确定性增益最大的,或者说熵减最多的。

3)决策树实现

基于信息论的决策树算法有ID3 、C4.5和 CART等算法,其中C4.5CART两种算法从ID3算法中衍生而来。

ID3算法使用 信息增益 作为分裂的规则,信息增益越大,则选取该分裂规则。具体来说,首先计算好瓜坏瓜这个随机变量的信息熵,然后计算特征A各个可能性下的好瓜坏瓜的信息熵的期望,相减得到信息增益,计算所有特征的信息增益,选取信息增益最大的作为节点。下一个节点则是在该特征的各个可能下继续上述操作来确定。

4)优缺点
优点缺点
易于理解和解释容易过拟合
能够处理多种数据类型对数据分布敏感
对缺失值不敏感倾向于选择具有更多取值的特征
不需要特征缩放难以处理高维稀疏数据
能够捕捉非线性关系不稳定性
计算效率较高对类别不平衡数据敏感
支持分类和回归任务难以表达复杂关系

5)改进方法

为了克服决策树的缺点,可以采用以下方法:

剪枝:通过预剪枝或后剪枝减少过拟合。

集成学习:使用随机森林(Random Forest)或梯度提升树(Gradient Boosting Trees)来提高模型的稳定性和泛化能力。

类别平衡处理:通过过采样、欠采样或调整类别权重来处理类别不平衡问题。

特征工程:对高维稀疏数据进行降维或特征选择。

6)剪枝处理

如果按照我们之前的方法形成决策树后,会存在一定的问题。决策树会无休止的生长,直到训练样本中所有样本都被划分到正确的分类。实际上训练样本中含有异常点,当决策树节点样本越少的时候,异常点就可能使得该结点划分错误。另外,我们的样本属性并不一定能完全代表分类的标准,可能有漏掉的特征,也可能有不准确的特征。这样就会导致决策树在训练集上准确率超高,但是在测试集上效果不好,模型过拟合,泛化能力弱。因此我们需要适当控制决策树的生长。

5. 朴素贝叶斯

1)贝叶斯公式

先验概率:通过经验来判断事情发生的概率

后验概率:事情发生后推测原因的概率

条件概率:一个事件在另一个事件发生条件下的概率,即P(B|A),若两者独立,则等于P(B)

全概率公式:P(Y) = P(Y,X1) + ... + P(Y,Xn) = P(X1)P(Y|X1) + ... + P(Xn)P(Y|Xn)

贝叶斯公式:

2)朴素贝叶斯(贝叶斯分类器)

朴素贝叶斯,假设每个输入变量之间独立。即全概率中各个X是独立的。

贝叶斯分类器就是在这种假设下的分类器,只需要求出在输入变量(特征)X1...Xn的条件下,各个可能类别的条件概率,找到最大的即为要分的类

贝叶斯分类器的参数(先验概率 P(c) 和条件概率 P(xi​∣c))通常是通过一次训练过程计算得到的,不需要多轮训练。这是因为贝叶斯分类器的训练过程主要是基于训练数据来估计这些参数,而这些参数的估计通常是直接的统计计算,不需要像一些复杂的神经网络模型那样通过迭代优化来调整参数。

参考:【机器学习算法笔记系列】决策树(Decision Tree)算法详解和实战_decisiontreeclassifier是什么算法-CSDN博客

决策树原理详解(无基础的同样可以看懂)-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

音频进阶学习十一——离散傅里叶级数DFS

文章目录 前言一、傅里叶级数1.定义2.周期信号序列3.表达式DFSIDFS参数含义 4.DFS公式解析1)右边解析 T T T、 f f f、 ω \omega ω的关系求和公式N的释义求和公式K的释义 e j ( − 2 π k n N ) e^{j(\frac{-2\pi kn}{N})} ej(N−2πkn​)的释义 ∑ n 0 N − 1 e…

互联网分布式ID解决方案

业界实现方案 1. 基于UUID 2. 基于DB数据库多种模式(自增主键、segment) 3. 基于Redis 4. 基于ZK、ETCD 5. 基于SnowFlake 6. 美团Leaf(DB-Segment、zkSnowFlake) 7. 百度uid-generator() 基于UUID生成唯一ID UUID生成策略 推荐阅读 DDD领域驱动与微服务架构设计设计模…

BUU28 [GXYCTF2019]BabySQli1

常规万能密码,发现登不上去 过滤掉了or,,当尝试了n种方法以后,最关键的是发现()居然也被过滤了 哈哈,那玩个淡, 再搜wp!! 当输入admin的时候,提示密码错误&#xff0…

数据分析:企业数字化转型的金钥匙

引言:数字化浪潮下的数据金矿 在数字化浪潮席卷全球的背景下,有研究表明,只有不到30%的企业能够充分利用手中掌握的数据,这是否让人深思?数据已然成为企业最为宝贵的资产之一。然而,企业是否真正准备好从数…

git SourceTree 使用

Source Tree 使用原理 文件的状态 创建仓库和提交 验证 再克隆的时候发发现一个问题,就是有一个 这个验证,起始很简单 就是 gitee 的账号和密码,但是要搞清楚的是账号不是名称,我之前一直再使用名称登录老是出问题 这个很简单的…

485网关数据收发测试

目录 1.UDP SERVER数据收发测试 使用产品: || ZQWL-GW1600NM 产品||【智嵌物联】智能网关型串口服务器 1.UDP SERVER数据收发测试 A(TX)连接RX B(RX)连接TX 打开1个网络调试助手,模拟用户的UDP客户端设…

xinference 安装(http导致错误解决)

为什么要使用xinference 安装xinference 环境 1)conda create -n Xinference python3.11 注意:3.9 3.10均可能出现xinference 安装时候出现numpy兼容性,以及无法安装all版本 错误: error while attempting to bind on address&am…

路由器如何进行数据包转发?

路由器进行数据包转发的过程是网络通信的核心之一,主要涉及以下几个步骤: 接收数据包:当一个数据包到达路由器的一个接口时,它首先被暂时存储在该接口的缓冲区中。 解析目标地址:路由器会检查数据包中的目标IP地址。…

集合类不安全问题

ArrayList不是线程安全类,在多线程同时写的情况下,会抛出java.util.ConcurrentModificationException异常 解决办法: 1.使用Vector(ArrayList所有方法加synchronized,太重) 2.使用Collections.synchronized…

Windows Docker笔记-安装docker

安装环境 操作系统:Windows 11 家庭中文版 docker版本:Docker Desktop version: 4.36.0 (175267) 注意: Docker Desktop 支持以下Windows操作系统: 支持的版本:Windows 10(家庭版、专业版、企业版、教育…

docker /var/lib/docker/overlay2目录把磁盘空间占满问题

1、查看服务器磁盘空间 df -h果然100%了,docker系统文件把磁盘空间占满了。 2、进入overlay2目录,查找那个容器工作目录占用最高 cd /var/lib/docker/overlay2du -h --max-depth1详见下图 好家伙占用110G!复制目录名称2c3c48ccac533c5d4a366d45a19bb9…

【python】简单的flask做页面。一组字母组成的所有单词。这里的输入是一组字母,而输出是所有可能得字母组成的单词列表

目录结构如下: . ├── static │ ├── css │ │ └── styles.css │ └── js │ └── scripts.js ├── templates │ ├── base.html │ ├── case_converter.html │ ├── index.html │ └── word_finder.html ├── app.py ├── tree.py…

吴恩达深度学习——卷积神经网络实例分析

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。 文章目录 LeNet-5AlexNetVGG-16ResNets残差块 1*1卷积 LeNet-5 输入层:输入为一张尺寸是 32 32 1 32321 32321的图像,其中 32 32 3232 3232是图像的长和宽&…

利用 IMU 估计人体关节轴向和位置 —— 论文推导

Title: 利用 IMU 估计人体关节轴向和位置 —— “Joint axis and position estimation from inertial measurement data by exploiting kinematic constraints” —— 论文推导 文章目录 I. 论文回顾II. 铰接关节的约束1. 铰接关节约束的原理2. 铰接关节约束的梯度3. 铰接关节约…

oracle ORA-27054报错处理

现象 在oracle执行expdp,rman备份,xtts的时候,由于没有足够的本地空间,只能使用到NFS的文件系统但有时候会出现如下报错 ORA-27054: NFS file system where the file is created or resides is not mounted with correct options根据提示信…

python模拟键盘输入(可视化界操作面)

因为受到一些限制,无法在输入框进行文本的复制粘贴,这时我们便需要模拟键盘输入一些文本内容,话不多说,直接上干货(文末附成品工具,需要自取,操作简单无脑,工具功能:将粘…

k8s部署go-fastdfs

前置环境:已部署k8s集群,ip地址为 192.168.10.1~192.168.10.5,总共5台机器。 1. 创建provisioner制备器(如果已存在,则不需要) 制备器的具体部署方式可参考我的上一篇文章: k8s部署rabbitmq-CSDN博客文章浏览阅读254次,点赞3次,收藏5次。k8s部署rabbitmqhttps://blo…

DeepSeek在FPGA/IC开发中的创新应用与未来潜力

随着人工智能技术的飞速发展,以DeepSeek为代表的大语言模型(LLM)正在逐步渗透到传统硬件开发领域。在FPGA(现场可编程门阵列)和IC(集成电路)开发这一技术密集型行业中,DeepSeek凭借其…

(一)DeepSeek大模型安装部署-Ollama安装

大模型deepseek安装部署 (一)、安装ollama curl -fsSL https://ollama.com/install.sh | sh sudo systemctl start ollama sudo systemctl enable ollama sudo systemctl status ollama(二)、安装ollama遇到网络问题,请手动下载 ollama-linux-amd64.tgz curl -L …

基于Flask的汽车质量投诉可视化分析系统的设计与实现

【FLask】基于Flask的汽车质量投诉可视化分析系统的设计与实现(完整系统源码开发笔记详细部署教程)✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 随着汽车市场的不断扩大和消费者维权意识的增强,汽车质量投诉问题日益…