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

机器学习数学基础

机器学习基础

    • 1、标量、向量、矩阵、张量
    • 2、概率函数、概率分布、概率密度、分布函数
    • 3、向量的线性相关性
    • 4、最大似然估计
    • 5、正态分布(高斯分布)
    • 6、向量的外积(叉积)
    • 7、向量的内积(点积)
    • 8、超平面(Hyperplane)
    • 9、广义线性模型(GLM)
    • 10、伯努利分布与二项分布
    • 11、凸函数
    • 12、向量的相似性度量



1、标量、向量、矩阵、张量


标量、向量、矩阵和张量是线性代数中不同维度的数学对象,它们之间的区别在于维数和结构:

  • 标量(Scalar):标量是一个数值,只有大小,没有方向。例如物理学中的时间、质量、温度等

  • 向量(Vector):向量也称为欧几里得向量、几何向量、矢量,向量指既有大小又有方向的量。向量可以形象化地表示为带箭头的线段,箭头所指的方向代表向量的方向,线段的长度代表向量的大小。向量有四种表示方式:代数表示(字母加箭头)、几何表示(平行四边形法则)、坐标表示((x,y,z))和矩阵表示([x y z]T

  • 矩阵(Matrix):矩阵是按照方阵排成m行n列的数值集合。简单来说,矩阵是一个二维数组,由行和列组成,每行和每列都是一个向量。矩阵中的每个元素都有自己的行索引和列索引,它可以用来表示线性变换、方程组或数据表

  • 张量(Tensor):张量源于力学,张量是多维数组,目的是把向量、矩阵推向更高的维度。张量是一种泛化的多维数组概念,它可以是任何维度(秩)的,例如向量(矢量)是一阶张量,矩阵是二阶张量,高于二维的称为三阶张量、四阶张量等

总的来说,标量是最简单的数据形式,而向量、矩阵和更高维度的张量则是复杂度逐渐增加的多维数据结构,它们在现代科学和技术的许多领域中都扮演着重要角色

2、概率函数、概率分布、概率密度、分布函数


研究一个随机变量,不只是要看它能取哪些值,更重要的是它取各种值的概率如何!概率函数、概率分布、概率密度、分布函数,都是在描述概率

1)概率函数

概率函数使用函数的形式来表达概率 P i = P ( X = x i ) ( i = 1 , 2 , 3 , . . . ) P_i=P(X=x_i) \quad (i=1,2,3,...) Pi=P(X=xi)(i=1,2,3,...)

例如, P ( X P(X P(X= 1 ) = 1 / 6 1)=1/6 1)=1/6,这个概率函数表示当随机变量取值为1的概率为1/6。概率函数一次只能表示一个随机变量取值的概率

2)概率分布

概率分布是离散型随机变量和每个随机变量对应的概率:

X x 1 x_1 x1 x 2 x_2 x2 x 3 x_3 x3 x n x_n xn
P i P_i Pi P 1 P_1 P1 P 2 P_2 P2 P 3 P_3 P3 P n P_n Pn

这样的列表被叫做离散型随机变量的概率分布。具体就是离散型随机变量的值与这个取值的概率分布列表

对于连续型随机变量,概率分布被叫作概率密度

3)分布函数

对于离散型随机变量,分布函数称为概率分布函数,是指将某一点的概率与该点前面所有概率的累加,又称累积概率函数 F ( X ) = P ( X ≤ x i ) = ∑ 1 i P i F(X)=P(X≤x_i)=\sum_1^iP_i F(X)=P(Xxi)=1iPi

分布函数是一个永不递减的函数,最右边即为最大值1,最左边为最小值0

对于连续型随机变量,分布函数称为概率密度函数,它就是概率密度从负无穷到当前随机变量值的定积分(面积)
F ( X ) = ∫ − ∞ X f ( x ) d x F(X)=\int_{-\infty}^Xf(x)dx F(X)=Xf(x)dx

在这里插入图片描述

如图所示,左图表示 F ( x ) F(x) F(x)是连续型随机变量的概率密度,右图表示 f ( x ) f(x) f(x)是连续型随机变量的概率密度函数,它们之间的关系是:概率密度函数是概率密度的导函数

需要注意的是,概率密度函数在某点取值的几何意义表示概率密度函数在该点的变化率(导数),而不是概率值

3、向量的线性相关性


所有分量为实数的n维向量构成的集合, 称为一个n维向量空间,向量空间又称线性空间

对于n维向量 a 1 , a 2 , . . . a m a_1,a_2,...a_m a1,a2,...am,如果存在不全为0的数使得
k 1 a 1 + k 2 a 2 + . . . + k m a m = 0 k_1a_1+k_2a_2+...+k_ma_m=0 k1a1+k2a2+...+kmam=0

则称向量组 a 1 , a 2 , . . . a m a_1,a_2,...a_m a1,a2,...am是线性相关的,否则,称向量组 a 1 , a 2 , . . . a m a_1,a_2,...a_m a1,a2,...am线性无关

例如,对于向量 a 1 , a 2 , a 3 a_1,a_2,a_3 a1,a2,a3,若它们之间满足
a ⃗ 3 = − 1 2 a ⃗ 1 + 2 3 a ⃗ 2 \vec a_3 = -\frac{1}{2}\vec a_1+\frac{2}{3}\vec a_2 a 3=21a 1+32a 2

即向量 a 3 a_3 a3可以用向量 a 1 a_1 a1 a 2 a_2 a2线性表示,说明 a 1 , a 2 , a 3 a_1,a_2,a_3 a1,a2,a3这三个向量是线性相关的

4、最大似然估计


最大似然估计的原理详解及推导见文章:传送门

5、正态分布(高斯分布)


正态分布(高斯分布)的介绍详见文章:传送门

6、向量的外积(叉积)


向量的叉乘(叉积),也叫向量的外积、向量积。在二维空间中,对于两个向量 a ⃗ = ( x 1 , y 1 ) \vec a=(x_1,y_1) a =(x1,y1) b ⃗ = ( x 2 , y 2 ) \vec b=(x_2,y_2) b =(x2,y2),定义它们的向量积为以下向量:
a ⃗ × b ⃗ = ∣ i ⃗ j ⃗ x 1 y 1 x 2 y 2 ∣ = x 1 y 2 i ⃗ − y 1 x 2 j ⃗ \vec a \times \vec b= \begin{vmatrix} \vec i&\vec j\\ x_1&y_1\\ x_2&y_2 \end{vmatrix} = x_1y_2 \vec i-y_1x_2 \vec j a ×b = i x1x2j y1y2 =x1y2i y1x2j

对于行列数相同的两个向量,叉积运算就是对这两个向量对角位相乘后求差的操作,叉积的结果是一个向量

在二维空间中,叉乘的几何意义是:叉乘的结果表示由向量 a ⃗ \vec a a 和向量 b ⃗ \vec b b 所构成的平行四边形的面积

在这里插入图片描述


a ⃗ × b ⃗ = ∣ a ⃗ ∣ ∣ b ⃗ ∣ sin ⁡ θ \vec a \times \vec b=|\vec a||\vec b|\sin\theta a ×b =a ∣∣b sinθ

在三维空间中,对于两个向量 a ⃗ = ( x 1 , y 1 , z 1 ) \vec a=(x_1,y_1,z_1) a =(x1,y1,z1) b ⃗ = ( x 2 , y 2 , z 2 ) \vec b=(x_2,y_2,z_2) b =(x2,y2,z2),定义它们的向量积为以下向量:
a ⃗ × b ⃗ = ∣ i ⃗ j ⃗ k ⃗ x 1 y 1 z 1 x 2 y 2 z 2 ∣ = ( y 1 z 2 − y 2 z 1 ) i ⃗ − ( x 1 z 2 − x 2 z 1 ) j ⃗ + ( x 1 y 2 − x 2 y 1 ) k ⃗ \vec a \times \vec b= \begin{vmatrix} \vec i&\vec j&\vec k\\ x_1&y_1&z_1\\ x_2&y_2&z_2 \end{vmatrix} = (y_1z_2-y_2z_1)\vec i-(x_1z_2-x_2z_1)\vec j+(x_1y_2-x_2y_1)\vec k a ×b =

相关文章:

机器学习数学基础

机器学习基础 1、标量、向量、矩阵、张量2、概率函数、概率分布、概率密度、分布函数3、向量的线性相关性4、最大似然估计5、正态分布(高斯分布)6、向量的外积(叉积)7、向量的内积(点积)8、超平面(Hyperplane)9、广义线性模型(GLM)10、伯努利分布与二项分布11、凸函数…...

SpringBoot注解--04--01--注解@Mapper在IDEA中自动注入警告的解决方案

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 问题原因 解决方案方法1:为 Autowired 注解设置required false方法2:用 Resource 替换 Autowired方法3:在Mapper接口上加上Repo…...

【Java八股面试系列】JVM-垃圾回收

目录 垃圾回收 堆空间的基本结构 内存分配和回收原则 分代收集机制 Minor GC 流程 空间分配担保 老年代 大对象直接进入老年代 长期存活的对象将进入老年代 GC的区域 对象存活判定算法 引用计数法 可达性分析算法 finalize() 字符串常量判活 类判活 垃圾回收算…...

Elasticsearch:集群故障排除和优化综合指南

Elasticsearch 是一个强大的搜索和分析引擎,是许多数据驱动应用程序和服务的核心。 它实时处理、分析和存储大量数据的能力使其成为当今快节奏的数字世界中不可或缺的工具。 然而,与任何复杂的系统一样,Elasticsearch 可能会遇到影响其性能和…...

初识C语言·编译与链接

1 翻译环境和运行环境 C语言标准ANSI C 实现C语言代码的时候 一般需要经过两种环境,一是翻译环境,二是运行环境,计算机能识别的是二进制的指令,人写完代码后通过翻译环境,使代码变成计算机能读懂的可执行的机器指令&a…...

堆与滑动窗口的结合(算法村第十六关黄金挑战)

滑动窗口最大值 239. 滑动窗口最大值 - 力扣(LeetCode) 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大…...

ES6-let

一、基本语法 ES6 中的 let 关键字用于声明变量,并且具有块级作用域。 - 语法:let 标识符;let 标识符初始值; - 规则:1.不能重复声明let不允许在相同作用域内重复声明同一个变量2.不存在变量提升在同一作用域内,必须先声明才能试…...

如何发布自己的npm包:

1.创建一个打包组件或者库: 安装weback: 打开项目: 创建webpack.config.js,创建src目录 打包好了后发现两个js文件都被压缩了,我们想开发使用未压缩,生产使用压缩文件。 erserPlugin:(推荐使用…...

JavaSE——流程控制-跳转关键字(break、continue),小案例(随机数、猜数字)

目录 跳转关键字 小案例(随机数) Random 猜数字 跳转关键字 break:跳出并结束当前所在循环的执行。continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行。 注意事项: break:只能…...

Java HashSet 重写 equals() 和 hashCode() 对象去重

Ailt Insert 选择 equals() 和 hashCode() package com.zhong.collection.set;import java.util.HashSet; import java.util.Objects;public class HashSetDeduplication {public static void main(String[] args) {// HashSet 对象去重HashSet<Student> students new …...

Mac电脑到手后的配置

一、Homebrew 1、Homebrew安装 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 桌面的Old_Homebrew文件夹&#xff0c;没有你需要的可以删除。 2、Homebrew卸载 /bin/zsh -c "$(curl -fsSL https://gitee.com/c…...

Python中的while循环,知其然知其所以然

文章目录 while循环结构1.用循环打印1 ~ 100步骤解析2. 1 ~ 100的累加和3.死循环1. 用死循环的方法实现 1 ~ 100累加和 4. 单向循环(1)打印 一行十个小星星*(2)通过打印一个变量的形式,展现一行十个小星星(3)一行十个换色的星星 ★☆★☆★☆★☆★☆(4)用一个循环,打印十行十列…...

云瞻无代码开发:连接并集成电商平台、营销系统和CRM

无缝集成优势 云瞻信息已在电商领域取得杰出成就&#xff0c;其亮点在于其高效的社群运营和传统导购业务。云瞻的SAAS开放平台&#xff0c;一个连接和集成各种应用的工具&#xff0c;简化了传统的API开发流程。这赋能商家&#xff0c;即使没有专业的技术知识&#xff0c;也能够…...

LeetCode-第2469题=温度转换

1.题目描述 给你一个四舍五入到两位小数的非负浮点数 celsius 来表示温度&#xff0c;以 摄氏度&#xff08;Celsius&#xff09;为单位。 你需要将摄氏度转换为 开氏度&#xff08;Kelvin&#xff09;和 华氏度&#xff08;Fahrenheit&#xff09;&#xff0c;并以数组 ans …...

docer compose部署simple-docker

简介 一个看似简陋但是功能足够用的docker管理工具 安装 创建目录 mkdir -p /opt/simple-docker cd /opt/simple-docker 创建并启动容器 编写docker-compose.yml文件,内容如下 version: 3 services: redis: image: redis:latest restart: always web: image: registry.cn-…...

Android Studio中打开文件管理器

文章目录 一、前言二、操作步骤 一、前言 在Android Studio中有时候需要查看手机的文件目录或者复制文件&#xff0c;但是有时候文件管理器找不到在哪&#xff0c;这里记录该操作流程 二、操作步骤 第一步: 第二步: 第三步:...

算法42:天际线问题(力扣218题)---线段树

218. 天际线问题 城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度&#xff0c;请返回 由这些建筑物形成的 天际线 。 每个建筑物的几何信息由数组 buildings 表示&#xff0c;其中三元组 buildings[i] [lefti, righti, heig…...

SpringBoot中使用Spring自带线程池ThreadPoolTaskExecutor与Java8CompletableFuture实现异步任务示例

场景 关于线程池的使用&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)_executorservice executorservice executors.newfix-CSDN博客 Java中创建线程的方式…...

OpenCV/C++:点线面相关计算(二)

接续&#xff0c;继续更新 OpenCV/C:点线面相关计算_线面相交的点 代码计算-CSDN博客文章浏览阅读1.6k次&#xff0c;点赞2次&#xff0c;收藏12次。OpenCV处理点线面的常用操作_线面相交的点 代码计算https://blog.csdn.net/cd_yourheart/article/details/125626239 目录 1、…...

2024最新版鸿蒙HarmonyOS开发工具安装使用指南

2024最新版鸿蒙HarmonyOS开发工具安装使用指南 By JacksonML 0. 什么是鸿蒙Harmony OS&#xff1f; 华为鸿蒙系统&#xff08;HUAWEI Harmony OS&#xff09;&#xff0c;是华为公司在2019年8月9日于东莞举行的华为开发者大会&#xff08;HDC.2019&#xff09;上正式发布的分…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

关于nvm与node.js

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

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

测试markdown--肇兴

day1&#xff1a; 1、去程&#xff1a;7:04 --11:32高铁 高铁右转上售票大厅2楼&#xff0c;穿过候车厅下一楼&#xff0c;上大巴车 &#xffe5;10/人 **2、到达&#xff1a;**12点多到达寨子&#xff0c;买门票&#xff0c;美团/抖音&#xff1a;&#xffe5;78人 3、中饭&a…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...