【机器学习】必会数学知识:一文掌握数据科学核心数学知识点(下),收藏~

核心数学知识点

  • 1、引言
  • 2、数据科学必会数学知识
    • 2.13 K均值聚类
    • 2.14 决策树
    • 2.15 随机森林
    • 2.16 梯度下降
    • 2.17 随机梯度下降(SGD)
    • 2.18 卷积
    • 2.19 拉普拉斯变换
    • 2.20 傅里叶变换
    • 2.21 信息论
    • 2.22 时间序列分析
    • 2.23 生成模型与判别模型
    • 2.24 支持向量机(SVM)
    • 2.25 均方误差(MSE)
    • 2.26 L2 正则化
  • 3、总结

1、引言

小屌丝:鱼哥,数学知识点下一部分呢。
小鱼:别着急,别着急,这就来了。
小屌丝:一点都不自觉,还得我提醒呢。
小鱼:…
在这里插入图片描述

2、数据科学必会数学知识

2.13 K均值聚类

  • 定义:一种分组数据的方法,将数据点划分为K个簇。
  • 核心原理:欧氏距离、质心更新。
  • 用法:数据挖掘、图像分割。
  • 算法公式:质心更新 μ j = 1 ∣ C j ∣ ∑ x i ∈ C j x i \mu_j = \frac{1}{|C_j|} \sum_{x_i \in C_j} x_i μj=Cj1xiCjxi
  • 代码示例
from sklearn.cluster import KMeansX = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)

2.14 决策树

  • 定义:一种递归分割数据的树形模型,用于分类和回归。
  • 核心原理:信息增益、基尼系数、剪枝。
  • 用法:分类、回归、特征选择。
  • 算法公式:信息增益 I G ( D , a ) = H ( D ) − ∑ v ∈ V a l u e s ( a ) ∣ D v ∣ ∣ D ∣ H ( D v ) IG(D, a) = H(D) - \sum_{v \in Values(a)} \frac{|D_v|}{|D|}H(D_v) IG(D,a)=H(D)vValues(a)DDvH(Dv)
  • 代码示例
from sklearn.tree import DecisionTreeClassifier
X = [[0, 0], [1, 1]]
y = [0, 1]
tree = DecisionTreeClassifier().fit(X, y)

2.15 随机森林

  • 定义:通过合并多个决策树模型提高预测准确性的技术。
  • 核心原理:集成学习、Bagging、随机子空间。
  • 用法:分类、回归、特征重要度评估。
  • 算法公式:树的预测加权平均 f ^ = 1 K ∑ k = 1 K f k \hat{f} = \frac{1}{K} \sum_{k=1}^K f_k f^=K1k=1Kfk
  • 代码示例
from sklearn.ensemble import RandomForestClassifierX = [[0, 0], [1, 1]]
y = [0, 1]
rf = RandomForestClassifier(n_estimators=10).fit(X, y)

2.16 梯度下降

  • 定义:一种优化算法,用于最小化成本函数。
  • 核心原理:损失函数、梯度计算、学习率。
  • 用法:模型参数优化、神经网络训练。
  • 算法公式 θ = θ − η ∇ J ( θ ) \theta = \theta - \eta \nabla J(\theta) θ=θηJ(θ)
  • 代码示例
import numpy as npdef gradient_descent(x, y, theta, alpha, iterations):m = len(y)for _ in range(iterations):gradient = np.dot(x.T, (np.dot(x, theta) - y)) / mtheta -= alpha * gradientreturn theta

2.17 随机梯度下降(SGD)

  • 定义:一种基于梯度下降的优化算法,但每次迭代只使用一个样本。
  • 核心原理:随机扰动、收敛性、学习率。
  • 用法:大规模数据集的优化。
  • 算法公式 θ i = θ i − 1 − η ∇ J ( θ i − 1 ; x ( i ) , y ( i ) ) \theta_{i} = \theta_{i-1} - \eta \nabla J(\theta_{i-1}; x^{(i)}, y^{(i)}) θi=θi1ηJ(θi1;x(i),y(i))
  • 代码示例
from sklearn.linear_model import SGDClassifierX = [[0, 0], [1, 1]]
y = [0, 1]
sgd = SGDClassifier().fit(X, y)

2.18 卷积

  • 定义:一种运算,用于信号、图像、数据特征提取。
  • 核心原理:滤波、滑动窗口、卷积核。
  • 用法:卷积神经网络(CNN)、图像处理。
  • 算法公式 ( f ∗ g ) ( t ) = ∫ − ∞ ∞ f ( τ ) g ( t − τ ) d τ (f * g)(t) = \int_{-\infty}^{\infty} f(\tau)g(t - \tau)d\tau (fg)(t)=f(τ)g(tτ)dτ
  • 代码示例
import numpy as np
from scipy.signal import convolve2dimage = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
kernel = np.array([[1, 0], [0, -1]])
result = convolve2d(image, kernel, mode='valid')

2.19 拉普拉斯变换

  • 定义:用于把微分方程转化为代数方程的一种积分变换。
  • 核心原理:函数变换、线性运算。
  • 用法:信号处理、控制系统。
  • 算法公式 F ( s ) = ∫ 0 ∞ f ( t ) e − s t d t F(s) = \int_{0}^{\infty} f(t) e^{-st} dt F(s)=0f(t)estdt
  • 代码示例
from sympy.integrals.transforms import laplace_transform
from sympy import symbols, expt, s = symbols('t s')
f = exp(-t)
F = laplace_transform(f, t, s)

2.20 傅里叶变换

  • 定义:将时间域信号转换到频域的一种变换技术。

  • 核心原理:频谱分析、滤波。

  • 用法:信号处理、图像处理。

  • 算法公式 F ( ω ) = ∫ − ∞ ∞ f ( t ) e − i ω t d t F(\omega) = \int_{-\infty}^{\infty} f(t) e^{-i\omega t} dt F(ω)=f(t)etdt

  • 代码示例

import numpy as npx = np.linspace(0, 2 * np.pi, 10)
y = np.sin(x)
y_fft = np.fft.fft(y)

2.21 信息论

  • 定义:研究信息的度量、传递和压缩的理论。
  • 核心原理:熵、互信息、编码定理。
  • 用法:数据压缩、特征选择。
  • 算法公式:熵 H ( X ) = − ∑ i P ( x i ) log ⁡ P ( x i ) H(X) = -\sum_{i} P(x_i) \log P(x_i) H(X)=iP(xi)logP(xi)
  • 代码示例
from sklearn.feature_selection import mutual_info_classifX = [[1, 2], [3, 4], [5, 6]]
y = [0, 1, 0]
mi = mutual_info_classif(X, y)

2.22 时间序列分析

  • 定义:分析时间序列数据的统计方法。
  • 核心原理:自相关、移动平均、ARIMA模型。
  • 用法:经济预测、库存控制。
  • 算法公式: ARIMA模型 Y t = c + φ 1 Y t − 1 + ε t + θ 1 ε t − 1 Y_t = c + \varphi_1 Y_{t-1} + \varepsilon_t + \theta_1 \varepsilon_{t-1} Yt=c+φ1Yt1+εt+θ1εt1
  • 代码示例
import pandas as pd
from statsmodels.tsa.arima.model import ARIMAdata = pd.Series([1, 2, 3, 4, 5, 6])
model = ARIMA(data, order=(1, 1, 1))
model_fit = model.fit()

2.23 生成模型与判别模型

  • 定义:生成模型尝试建模输入数据及其标签的联合概率分布,而判别模型则直接建模标签条件概率。
  • 核心原理:生成模型(如高斯混合模型)、判别模型(如逻辑回归)。
  • 用法:分类、聚类。
  • 算法公式
    • 生成模型 P ( X , Y ) = P ( Y ) P ( X ∣ Y ) P(X, Y) = P(Y)P(X|Y) P(X,Y)=P(Y)P(XY)
    • 判别模型 P ( Y ∣ X ) P(Y|X) P(YX)
  • 代码示例
from sklearn.mixture import GaussianMixture
'''
生成模型 - 高斯混合模型 
'''
X = [[1, 2], [3, 4], [5, 6]]
gmm = GaussianMixture(n_components=2).fit(X)

2.24 支持向量机(SVM)

  • 定义:一种监督学习模型,用于分类和回归。
  • 核心原理:最大间隔分类、核函数。
  • 用法:分类、回归、异常检测。
  • 算法公式: 决策边界 w T x + b = 0 w^T x + b = 0 wTx+b=0
  • 代码示例
from sklearn.svm import SVCX = [[0, 0], [1, 1]]
y = [0, 1]
clf = SVC().fit(X, y)

2.25 均方误差(MSE)

  • 定义:一种衡量预测值与实际值之间差异的度量方法。
  • 核心原理:最小化均方误差,找到最优的模型参数。
  • 用法:回归模型的损失函数。
  • 算法公式 MSE = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 MSE=n1i=1n(yiy^i)2
  • 代码示例
import numpy as np# 示例数据
y_true = np.array([3.0, -0.5, 2.0, 7.0])
y_pred = np.array([2.5, 0.0, 2.0, 8.0])# 计算MSE
mse = np.mean((y_true - y_pred)**2)
print("MSE:", mse)

2.26 L2 正则化

  • 定义:通过在损失函数中增加所有参数的平方和来惩罚大幅度的权重,旨在防止模型过拟合。
  • 核心原理:通过惩罚较大的权重系数来减少模型的复杂度。
  • 用法:线性回归、逻辑回归、神经网络。
  • 算法公式 J ( θ ) = MSE + λ 2 ∑ j = 1 m θ j 2 J(\theta) = \text{MSE} + \frac{\lambda}{2} \sum_{j=1}^{m} \theta_j^2 J(θ)=MSE+2λj=1mθj2
  • 代码示例
from sklearn.linear_model import Ridge
import numpy as np# 示例数据
X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])
y = np.dot(X, np.array([1, 2])) + 3# 创建Ridge回归模型
ridge = Ridge(alpha=1.0)
ridge.fit(X, y)# 预测
y_pred = ridge.predict(X)# 计算MSE
mse_ridge = np.mean((y - y_pred)**2)
print("MSE with L2 regularization:", mse_ridge)

3、总结

要想学好数学科学、或者机器学习,数学知识是必会的,也是基础。
所以,以上的这26个数学知识点,一定要掌握。
为了方便我们学习, 我把两篇的链接都放到下面了,点击即可跳转。

  • 【机器学习】必会数学知识:一文掌握数据科学核心数学知识点(上),收藏~
  • 【机器学习】必会数学知识:一文掌握数据科学核心数学知识点(下),收藏~

我是小鱼

  • CSDN 博客专家
  • 阿里云 专家博主
  • 51CTO博客专家
  • 企业认证金牌面试官
  • 多个名企认证&特邀讲师等
  • 名企签约职场面试培训、职场规划师
  • 多个国内主流技术社区的认证专家博主
  • 多款主流产品(阿里云等)评测一等奖获得者

关注小鱼,学习【机器学习】&【深度学习】领域的知识。

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

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

相关文章

基于Python的哔哩哔哩数据分析系统设计实现过程,技术使用flask、MySQL、echarts,前端使用Layui

背景和意义 随着互联网和数字媒体行业的快速发展,视频网站作为重要的内容传播平台之一,用户量和内容丰富度呈现爆发式增长。本研究旨在设计并实现一种基于Python的哔哩哔哩数据分析系统,采用Flask框架、MySQL数据库以及echarts数据可视化技术…

NSObject‘s MetaClass 的 super_class 指向谁 ?

在 Objective-C 运行时系统中,NSObject 是所有类的根类。为了理解 NSObject 的元类(MetaClass)以及它的 super_class 指针指向谁,我们需要理解元类的继承关系。 类和元类的关系 每个类对象都有一个 isa 指针,指向其元…

46、lvs集群- 博客

1、lvs集群: lvs:linux virtual server----章文嵩发起的开源项目,阿里。linux的内核层面实现负载均衡的软件。 主要作用:将多个后端服务器组成一个高可用,高性能的服务器集群,通过负载均衡的算法将客户端的…

基于cmake为项目自动获取git分支tag的版本号和commitid

目录 1. 引言2. 实现过程2.1 工程目录规划2.2 c程序文件2.3 CMakeLists.txt2.4 GitVersion.cmake文件2.5 BuildNumber.cmake文件1. 引言 在项目构建的时候,我们经常会希望能够将git提交的分支信息和提交号(commitid)以及当前版本发布的tag信息作为版本号自动构建到程序里面,以…

自建搜索引擎-基于美丽云

Meilisearch 是一个搜索引擎,主程序完全开源,除了使用官方提供的美丽云服务(收费)进行对接之外,还可以通过自建搜索引擎来实现完全独立的搜索服务。 由于成本问题,本博客采用自建的方式,本文就…

通过git将文件push到github 远程仓库

1.先git clone 代码地址 git clone htttp://github.com/用户名/test.git 2. 添加文件 例如:touch 1.txt 3.将文件添加到暂存区 git add 1.txt 4.提交 git commit -m "commit 1.txt" 5.与远程仓库建立关联 git remote add 远程仓库名 远程仓库…

LLM 研究方向(一): LLM Prompts--p-tuning、LoRA

目录 1. prompt-tuning background 2. Prompt Tuning 模型介绍 2.1 2021 prefix-tuning 2.2 2021 P-tuning v1 2.3 2021 Parameter-efficient prompt tuning (PET) 2.4 2022 P-tuning v2 2.5 2019 Adapter ​2.6 2021 LoRA (Low-Rank Adaptation) 2.7 2024 DoRA (…

详解[USACO07OPEN] Cheapest Palindrome G(洛谷PP2890)(区间DP经典题)

题目 思路 考虑区间DP。 设dp[i][j]为从i到j这段区间被修正为回文串的最小花费 c[cc][1]为添加字符cc的花费 c[cc][2]为删去字符cc的花费 s为题目给出的字符串。 用[i 1,j]区间转移:这种转移相当于在[i1,j]区间的左边加入一个字符,让[i,j]变为回文的方…

云仓适合什么商家?

1、电商平台和网店: 对于拥有大量在线订单但没有自建仓储和物流能力的小型和中型电商企业,云仓可以在成本和效率上提供显著优势,帮助快速处理订单并缩短配送时间。 —————————————————————————————————— …

【独家揭秘】视频号矩阵系统火爆上线,一键式多平台管理,你的内容营销神器!

在信息爆炸的时代,内容创作者们面临着前所未有的挑战与机遇。如何让自己的内容在众多平台中脱颖而出,快速传播并吸引大量观众,成为了每个创作者关注的焦点。近日,一款名为“迅狐视频号矩阵系统”的神器震撼来袭,它以其…

UV胶,它是否有毒?如同那些隐藏在黑暗中的危险之物?

UV胶,它是否有毒?如同那些隐藏在黑暗中的危险之物? 关于uv胶的毒性问题,或许我们可以这样深入探讨。UV胶,如同一位戴着神秘面纱的访客,在我们的生活中悄然出现,却带着诸多疑问。那么&#xff0…

二维码生成需知:名片二维码尺寸多少合适?电子名片二维码制作方法?

随着数字化时代的到来,二维码在各个领域的应用越来越广泛,名片作为商业交流的重要工具之一,也开始逐渐融入二维码的元素。通过在名片上添加二维码,我们可以轻松实现信息的快速传递和分享。然而,名片二维码的尺寸选择成…

Monorepo仓库管理策略之 Lerna

这里写目录标题 前言:一、简介二、新建项目使用安装生成结构 三、复用现有项目执行命令查看包 四、配置package相互引用导入现有的包 五、发布包确定项目版本发布项目添加项目到到git发布包到NPM包发布出错解决方案 五、实例代码 前言: 将大型代码仓库分…

文心一言的流式接口数据进行处理 增加属性

需求:需要对文心一言的流式接口数据进行处理 增加属性 return ResponseEntity.ok().header("Access-Control-Allow-Origin", "*").contentType(org.springframework.http.MediaType.TEXT_EVENT_STREAM).cacheControl(org.springframework.http…

python调用串口收发数据

1、确认串口信息 2、安装pyserial库 打开终端或命令行,敲入这行命令:pip install pyserial 3、python编程 import serial def main(): #创建串口对象 ser serial.Serial(COM4, 9600, timeout1) if not ser.isOpen(): print("串…

飞睿智能6公里WiFi图传接收模块,低延迟、抗干扰、高速稳定传输数据,无人机、农田远距离WiFi模块

在科技日新月异的今天,无线通信技术正以前所未有的速度发展,不仅改变了我们的生活方式,还为企业带来了前所未有的商业机遇。今天,我要向大家介绍一款飞睿智能的产品——6公里WiFi图传接收模块,它以其高性能、稳定的传输…

【React】基础数据回填--useForm与setFieldsValue详解

相关属性 1.form 2.setFieldsValue 代码 import{Form }from"antd";const Publish =

体积大的快递怎么寄便宜?如何寄件寄包裹更省钱?

大学毕业了,面对即将到来的工作生活,小李不得不把宿舍里的大包小包打包寄回家。可是,当他真正开始打包行李时,才发现这可不是一件简单的事:衣服、被子、书籍、杂物……这些东西加起来体积不小,想要省钱寄快…

基于stm32单片机的智能手环的设计

摘 要 随着科技的飞速发展和人们生活水平的提高,健康与科技日益融合,智能可穿戴设备已成为现代人生活中不可或缺的一部分。智能手环,作为一种便携、实用且功能丰富的可穿戴设备,受到越来越多用户的喜爱。它不仅能够实时监测用户的…

特殊的“user profile service服务登录失”情况

记录一下比较特殊的user profile service服务登录失败情况 公司电脑,某次之后每次来公司电脑开机后就会出现这个情况,后来发现只要是关机后再开机百分百出现,重启就不会,一开始也百度、google了,网上有很多解决方式&am…