- 博客(19)
- 收藏
- 关注
原创 数据不平衡
1.是否符合真实样本分布?不符合,补充数据或调整样本权重2.注意看少数类的P\R,PR曲线训练模型前:欠采样、过采样和生成合成数据欠采样:从样本较多的类中再抽取,仅保留这些样本点的一部分;过采样:复制少数类中的一些点,以增加其基数;生成合成数据:从少数类创建新的合成点,以增加其基数。SMOTE第一种和第二种方法都会明显的改变数据分布,我们的训练数据假设不再是真实数据的无偏表述。在第一种方法中,我们浪费了很多数据。而第二类方法中有无中生有或者重复使用了数据,会导致过拟合的发生。调整概率阈值在s
2021-08-30 17:13:39
360
原创 决策树(Decision Tree)
定义基本原理先列举决策树算法最有名的几个版本哈,版本之间最明显的差异就是用于分裂节点的特征的选择标准不同,另外在应用场景(自变量离散或连续、因变量离散或连续)、剪枝、缺失值处理等操作上也有区别。函数假设:广义线性函数 f(x)=11+e−(wx+b)=11+e−wTxf(x)=\frac{1}{1+e^{-(wx+b)}}=\frac{1}{1+e^{-\textbf{w}^{T}\textbf{x}}}f(x)=1+e−(wx+b)1=1+e−wTx1损失函数:交叉熵损失函数L(θ)=−(y
2021-08-15 22:42:19
455
原创 leetcode解题常见思路
(梳理框架主要由up主提供)双指针方法与应用场景双指针常用于数组、链表两种线性表(有序)数据结构相关的题,具体又分为相向双指针:两个指针一头一尾往中间移动多应用于数组的连续子序列或两两组合,有规律的缩小范围单向双指针两个指针往同一个方向移动(没想到什么场景后续补充吧)快慢指针:通常慢指针向前走一步,快指针向前走两步多用于链表、因为链表无法直接通过索引访问通常利用快慢指针找到链表的中点或公共节点题目881. 救生艇11. 盛最多水的容器141. 环形链表
2021-08-01 22:51:15
1087
原创 tensorflow安装
系统Linux CentOS 7.6tensorflow 2tensorflow 2.x不再区分是否gpu,当检测到gpu并安装cuda后,自动调用gpu。conda创建虚拟环境conda create --name tf2 python=3.7conda安装cuda和cudnnCUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问
2021-07-27 18:26:26
433
原创 GBDT系列(含XGBoost、LightGBM)
GBDT(Gradient boosting decision tree)下一个基学习器学习的是上一个基学习器的负梯度(当损失函数是平方损失时,等价于学习残差),最后预测结果是所有基学习器预测结果相加。由于残差只有回归场景下存在,所以GBDT基学习器都是回归树,但能通过预测类别概率来实现分类场景。Ft(x)=∑i=1tfi(x)F_{t}(x)=\sum_{i=1}^{t}f_i(x)Ft(x)=∑i=1tfi(x)l(y,Ft(x))=l(y,Ft−1(x)+(Ft(x)−Ft−1(x)))
2021-07-26 16:18:05
236
原创 数据结构-堆
(该篇基本等价于up主视频的学习笔记记录)基本概念堆是一种满足某种特性的完全二叉树大顶堆特性是父节点大于等于任一子节点,堆顶元素是整个堆最大的值小顶堆特性是父节点小于等于任一子节点,堆顶元素是整个堆最小的值基本操作及其时间复杂度访问(通过索引获取):-(堆没有索引)搜索(通过元素获取):O(N)插入:O(logn)删除:O(logn)基本操作python实现以小顶堆为例#调用import heapqnums = [2, 3, 5, 1, 54, 23, 132]#第一
2021-07-25 19:31:11
129
1
原创 数据结构-树
(该篇基本等价于up主视频的学习笔记记录)基本概念根节点:顶层节点,只会作为父节点、不会作为其他节点的子节点父节点、子节点:节点存在分支,那这个节点与其分裂出的节点为父子关系非叶子节点(存在至少一个子节点的节点)、叶子节点(没有子节点的节点)二叉树:每个节点最多分裂出左右子节点的数搜索二叉树:每个节点上的值大于其左子树上所有节点的节点值,小于其右子树上所有节点的节点值完全二叉树:从上到下,从左到右节点无缺失的二叉树平衡树二叉树:平衡树是二叉搜索树和堆合并构成的数据结构,它是一 棵空树或它的
2021-07-25 17:07:05
82
原创 数据结构-哈希表
(该篇基本等价于up主视频:哈希表与up主视频:集合的学习笔记记录)基本概念key-value对,key通过哈希函数映射为哈希值(内存地址),存储对应value同一个key一定会有相同的哈希值,但同一个哈希值不一定对应同一个key,对应多个key时说明发生了哈希冲突,这种情况可以再加链表存储来解决基本操作及其时间复杂度- 访问(通过索引获取):-(哈希表没有顺序)- 搜索(通过元素获取):O(1),冲突时O(K),K为冲突数- 插入:O(1),冲突时O(K),K为冲突数- 删除:O(1),
2021-07-25 01:01:53
162
原创 数据结构-队列&栈
(该篇基本等价于up主视频1:队列、up主视频2:栈的学习笔记记录)队列基本概念先入先出基本操作及其时间复杂度- 访问(通过索引获取):O(n)- 搜索(通过元素获取):O(n)- 插入:O(1)- 删除:O(1)(访问是指根据索引查询,搜索是指根据指根据值查询)优点先入先出,添加删除快缺点:存取其他位置元素较慢应用场景:先入先出的场景,如排队基本操作python实现#调用from queue import Queueq=Queue()q.
2021-07-24 22:31:04
103
原创 数据结构-链表
(该篇基本等价于up主视频的学习笔记记录)基本概念在不连续内存空间中,存储当前元素与next指针指向下一个元素,即存储下一个元素的内存地址。存在单向链表和双向链表(存在previous指针指向上一个元素)基本操作及其时间复杂度- 访问(通过索引获取):O(n)- 搜索(通过元素获取):O(n)- 插入:O(1)- 删除:O(1)(访问是指根据索引查询,搜索是指根据指根据值查询)优点易插入删除缺点:不易查询应用场景:适用于读少些多、变化频繁的线性表基
2021-07-24 17:50:36
100
1
原创 正则化
定义正则化通过限制模型参数的范数过大,降低模型复杂度,从而防止过拟合。范数用于衡量向量和矩阵的大小l2-norm:∥w∥2=∑iwi2{\Vert \bold{w} \Vert}_2=\sqrt{\sum_{i} {w_i}^2}∥w∥2=∑iwi2l1-norm:∥w∥1=∑i∣wi∣{\Vert \bold{w} \Vert}_1=\sum_{i} |w_i|∥w∥1=∑i∣wi∣https://zhuanlan.zhihu.com/p/35356992...
2021-04-27 01:57:40
103
原创 刷题经验总结
都说没有最好的数据结构,只有最适合的数据结构。虽然我们现在竟然调用一些现成代码包,这东西看着不一定能马上使用,但蕴含着编程最本质的一些逻辑与思想,使我们能够创作出更优美的代码。不过学习它的过程并不容易,有时候遇到一些难题需要硬啃,真正理解那些巧妙的解法,再通过不断练习让自己学会运用、举一反三。后面会按主题一一记录一些题目与解题思路,主题可能按数据结构、也可能按主要解题方法,题目范围会有交叠。基本概念数据:描述客观事物的符号,计算机可以接收处理的对象数据结构:相互之间存在一种或多种关系的数
2021-04-24 12:11:50
322
原创 偏差与方差
定义偏差:真实值与预测值的误差大小方差:预测值的离散程度特点:模型过拟合时,往往偏差小、方差大;欠拟合时,往往偏差大,方差小经典示意图:
2021-04-20 22:52:29
237
原创 过拟合与欠拟合
定义过拟合:模型训练误差很小、但测试误差很大,模型过分拟合了训练集的分布特点,当测试集分布与训练集有一定差距时,会在测试集上表现较差。即模型预测训练集偏差小、测试集方差大(?)欠拟合:模型训练误差很大,即模型预测训练集偏差大、方差小(?)其他问题如何避免过拟合增加数据,使训练集数据分布更接近于真实分布简化模型,降低模型复杂度正则化early stopping如何避免欠拟合...
2021-04-20 08:35:04
93
原创 逻辑回归( Logistics Regression)
定义逻辑回归( Logistics Regression)是一种以线性函数与假设来拟合自变量与因变量之间关系的方法。基本原理函数假设:线性函数损失函数:平方损失函数学习方法:最小二乘法梯度下降法优缺点优点实现简单可解释性强:模型的参数直观体现了每一个自变量对因变量的影响强弱缺点局限于线性函数假设对比应用场景回归预测:线性回归可以在拟合到已知数据集后用于预测自变量所对应的因变量。变量可解释性:线性回归可以用于量化因变量与自变量之间关系的强度。代
2021-02-16 16:21:34
272
原创 线性回归(Linear regression)
定义线性回归(Linear regression)是一种以线性模型假设来拟合自变量与因变量之间关系的方法。通常来说,当自变量只有一个的情况被称为一元线性回归,自变量大于一个的情况被称为多元线性回归。一元线性回归如下图所示,线性模型由图中直线表示。基本原理函数假设:线性函数损失函数:平方损失函数学习方法:最小二乘法梯度下降法存在自变量为x1,x2,...,xmx_1,x_2,...,x_mx1,x2,...,xm,因变量为yyy,假设x1,x2,...,xmx_1,x_2
2021-02-15 19:13:49
1440
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人