自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 多模态大模型学习笔记

2025-04-01 17:00:00 89

原创 激活函数学习笔记

2025-04-01 15:02:33 196

原创 leetcode 错题记录

1. 169多数元素。

2025-03-28 21:38:42 67

原创 大模型面试问题准备

问题描述:上溢出:y=e^x中,如果x取非常大的正数,y(float32格式数据)就会溢出;下溢出:如果x取非常小的负数,y就是0.00000000几,超过有效位数后,y就是0了,如果分母都是0,就会出错。解决方法:x同时减去x_max,即可解决。上溢出:最大值变为了0,因此y不会溢出;下溢出:分母必然存在1,因此不会为0。

2025-02-24 21:02:58 759

原创 多模态模型:学习笔记(二)

本文是在通过各种渠道(视频(李沐)、网站)学习多模态的记录。

2025-02-24 14:52:44 967

原创 Leetcode:学习记录(二)

大于某个数的第一个数的位置有固定模板,其中要讨论最后一个数小于等于目标数的情况1.

2025-02-19 17:32:32 323

原创 多模态模型:学习笔记(一)

例如,在图像中,遮挡掉的补丁可以通过预测正确的像素值来学习图像特征,这涉及到了图像的低频和高频信息的处理。例如,将224x224的图像分割为14x14的patch,每个patch是16x16像素,然后将每个patch的像素值展平为一个256维的向量,通过线性层投影到768维的嵌入空间。例如,在Transformer架构中,不同层的特征具有不同的语义级别(低层偏向于边缘、纹理等细节,高层偏向于对象、场景等语义),跨层注意力可以促进不同语义层次之间的信息流动,让模型更全面地掌握图像的细节和整体信息。

2025-02-16 15:52:35 804

原创 Leetcode:学习记录(一)

大于等于给定值的元素,左指针右指针从两边开始,中间大于等于给定值则右指针变为中间,反之则左指针变为中间。红蓝染色法:以最后一个元素为界可以区分两段,L\M\R中M小于最后一个元素,那么M就在右边一段,M的右侧就是蓝色,大于最后一个元素,M就在左边一段,M的左侧是红色。右指针从左到右遍历,在每个右指针下,如果去掉左边元素的元素和大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。右指针从左到右遍历,在每个右指针下,乘积大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。

2025-02-13 23:36:14 657

原创 机器学习:学习记录(二)

非线性函数:一种非线性映射,在二维空间中不是一条直线(曲线或折线),通常不满足可加性和齐次性。ReLU函数:非线性激活函数,简单可以写作max(0,x),在0处不可导,但是可以人为定义其导数。优点:缓解了sigmoid函数梯度消失的问题,单侧抑制符合生物神经元特征,带来了稀疏性(dropout),缓解了过拟合。softplus函数:非线性激活函数,可以看作ReLU函数的光滑近似,该函数的导数为logistic函数。logistic函数(sigmoid函数):非线性激活函数,将R区间映射到(0,1)区间。

2025-02-09 10:40:09 183

原创 机器学习:学习记录(一)

另外,我们的样本属性并不一定能完全代表分类的标准,可能有漏掉的特征,也可能有不准确的特征。具体来说,首先计算好瓜坏瓜这个随机变量的信息熵,然后计算特征A各个可能性下的好瓜坏瓜的信息熵的期望,相减得到信息增益,计算所有特征的信息增益,选取信息增益最大的作为节点。贝叶斯分类器就是在这种假设下的分类器,只需要求出在输入变量(特征)X1...Xn的条件下,各个可能类别的条件概率,找到最大的即为要分的类。条件概率:一个事件在另一个事件发生条件下的概率,即P(B|A),若两者独立,则等于P(B)

2025-02-07 23:43:53 1156

原创 日拱一卒(20)——leetcode学习记录:大小为 K 且平均值大于等于阈值的子数组数目

滑动窗思路,计算长度为k的滑动窗的平均值,关键点在于,每滑动一次,只需要去掉头增加尾,而不需要重新全部计算,进而将计算量从O(n*k)降低为O(n)给定数组,统计数组中长度为k的子数组且该子数组的平均值大于threshold的数量。

2025-01-15 17:41:39 315

原创 无监督学习通俗理解

在洗钱行为的检测中,需要将这种洗钱的异常行为和正常行为区分开,但是我们不知道洗钱行为的标准是什么样的,因此用到了无监督学习。目标是将这些行为数据的分布在一个高维空间中是两大块,类间距离远,类内距离近。因此它的标准就是很难区分开。

2025-01-06 15:50:07 84

原创 日拱一卒(19)——leetcode学习记录:两个子序列的最大点积

初值已经解决,那么下一步则是递推关系,f[i][j]是nums1前i个元素的子序列和nums2前j个元素的子序列的子序列最大点积,将f[i][j]转换为前面的历史计算结果,即可找到递推关系。当nums1[i]和nums2[j]组成点积时,f[i][j] = max(f[i-1][j-1],f[i-1]f[j-1]+xij,xij),不组成点积时,f[i][j] = max(f[i-1][j],f[i][j-1]),取两者最大值即可。遇事不决就递归,左脚踩右脚是升天最好的方式。

2024-12-20 16:04:39 296

原创 日拱一卒(18)——leetcode学习记录:二叉树中的伪回文路径

一、题目给你一棵二叉树,每个节点的值为 1 到 9。我们称二叉树中的一条路径是 「」的,当它满足:路径经过的所有节点值的排列中,存在一个回文序列。请你返回从根到叶子节点的所有路径中路径的数目。二、思路。

2024-12-18 15:22:30 1036

原创 日拱一卒(17)——leetcode学习记录:定长字符串中元音字符的数量

统计前k个字符中元音的数量,然后往后滑动,增加的一个新的,剔除的前面的旧的,判断是否是元音,进行数量更新。时间复杂度与s的长度成正比。的单个子字符串中可能包含的最大元音字母数。子字符串 "iii" 包含 3 个元音字母。

2024-12-14 19:58:07 265

原创 日拱一卒(16)——leetcode学习记录:山脉数组峰值索引

要求是log(n)的时间复杂度,那么应该采用二分法。具体是找到最大的元素的一半,直至找到峰顶元素。这里实现的细节值得推敲,包括终止条件、判断条件的设置。你必须设计并实现时间复杂度为。,其中的值递增到一个。返回峰值元素的下标。

2024-12-13 21:49:56 401

原创 日拱一卒(15)——leetcode学习记录:分割字符串最大得分

这里的计算存在重复的操作,可以进行简化。实际上每次分割后的分数计算,只需要计算分割点处的元素对原始分数的影响,加一或者减一,其他元素无需重复计算。使得时间复杂度降低为O(n).将字符串从头到尾分割,计算每次分割的分数。这里的时间复杂度需要注意,分割的次数与字符串长度线性相关,每次分割的分数计算业余长度线性相关,因此时间复杂度是O(n^2);给你一个由若干 0 和 1 组成的字符串。,请你计算并返回将该字符串分割成两个。子字符串)所能获得的最大得分。「分割字符串的得分」为。

2024-12-11 15:19:49 284

原创 日拱一卒(14)——leetcode学习记录:转置矩阵

创建一个转置矩阵大小的全零二维数组。遍历原二维数组的各个元素,放置到转置后的位置。给定一个二维数组,求这个数组的转置矩阵。难点在于创建新数组。

2024-12-10 23:15:02 308

原创 日拱一卒(13)——leetcode学习记录:3的幂

不同于2的幂次,无法使用按位与进行判断。使用log计算也存在精度问题,无法实现。这里可以使用3^19的因数进行判断。n如果能被3整除,则继续整除,否则返回False。判断一个整数n是否是3的幂次。

2024-12-09 21:40:43 251

原创 日拱一卒(12)——leetcode学习记录:2的幂

2. 数学法:还是从数学上解决这个问题,观察2的幂的整数的规律,在2进制中规律明显,即只存在一个1。利用这一点添加判别条件找出这种类型的,判别条件:n&(n-1)==0,n和n-1进行按位与运算,会将最低位的1去掉。1. 递归法:如果n是0,返回False,如果n是1,返回True,其他情况,将n//2递归。判断一个整数n是否是2的幂次,是返回True,否返回False。

2024-12-07 21:43:19 202

原创 日拱一卒(11)——leetcode学习记录:各位相加

暴力求解:循环递归,已知num,通过整除和取余获取各位数字,相加得到结果,如果为一位数,直接返回,否则重新进行上述操作。求各位数的方法可以优化,可以直接讲数字转换为str,就可以获取各位,然后再转换为int相加。更高级的方法是从数学上优化,对十进制数字各位相加,本质上是对9进行取余。# 基本的递归终止条件,当 num 已经是一个一位数时直接返回。,反复将各个位上的数字相加,直到结果为一位数。# 递归调用,直到结果为一位数。# 计算各位数字之和。

2024-12-06 12:08:11 411

原创 日拱一卒(10)——leetcode学习记录:统计好三元组

continue # 如果不满足 |arr[i] - arr[j]| <= a,跳过。for j in range(i + 1, n - 1): # j 从 i+1 到 n-2。for k in range(j + 1, n): # k 从 j+1 到 n-1。遍历i,遍历j,不满足条件1则continue,满足则遍历k,满足条件2和3计数加一,否则不加。for i in range(n - 2): # i 从 0 到 n-3。请你统计其中好三元组的数量。满足下列全部条件,则认为它是一个。

2024-12-05 12:40:30 346

原创 日拱一卒(9)——leetcode学习记录:两数组中位数

首先看到时间复杂度的要求,表明应该与二分法相关,如何把这个问题与二分挂钩呢。这个问题要找两个数组合并后的中位数,实际上,合并后数组的中位数就是将数组分成两半,中间的数就是中位数。换句话说要将这个数组分成两个大小相等的数组,其中一个数组中的最大元素小于另一个数组的最小元素,如下图所示。首先要建模,对这个问题有一个具体的表达,建模的方式决定了解决问题的难易程度。可见,问题的关键在于找到这样一个分割线,使得左侧的最大值小于右侧的最小值。的时间复杂度内找出这两个数组的中位数。

2024-12-04 17:04:58 604

原创 衍射光学理解

光场可以用傅里叶变换,得到频谱(物理意义是各个方向的平面波加权求和,权重是U的傅里叶系数)2. 对上面用菲涅尔近似,得到菲涅尔衍射公式(光源和观察屏距离衍射板有限远)3. 进一步近似得到夫琅禾费衍射(光源和观察屏距离衍射板无限远)衍射光学研究的是光场的传播规律。4. 角谱理论(另一种分析思路)1. 基尔霍夫、瑞利索墨菲公式。

2024-11-11 16:22:06 294

原创 数据结构学习

类似于列表,元素有序,因此查询速度快,但增删复杂,每次增删,会影响后面的索引。节点:元素和下一个元素的指针组成,增删快,查询慢,占内存多。多对多,广度优先和深度优先。一对多,包含元素和指针。

2024-09-13 15:51:50 108

原创 大模型的架构分类

核心思想是利用编码器对输入序列进行编码,提取其特征和语义信息,并将编码结果传递给解码器。然后,解码器根据编码结果生成相应的输出序列。这种架构的优点是能够更好地处理输入序列和输出序列之间的关系,从而提高机器翻译和对话生成等任务的准确性。缺点是模型复杂度较高,训练时间和计算资源消耗较大。

2024-09-04 18:00:59 246

原创 日拱一卒(8)——leetcode学习记录:位1的个数

设置位就是值为1的位,因此需要将十进制转换为二进制,方法是余2得到从低到高位的数值,整除2得到下一次计算的数。编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中。

2024-08-20 21:57:20 218

原创 日拱一卒(7)——leetcode学习记录:颠倒二进制位

python3下,输入是10进制整数,依次除以2,获取二进制从低位至高位,翻转正好对应从高位至地位,再转换为十进制输出。因此返回 964176192,其二进制表示形式为。颠倒给定的 32 位无符号整数的二进制位。

2024-08-19 21:00:22 293

原创 日拱一卒(6)——leetcode学习记录:相交链表——我走过你走的路,只为与你相见

用两个指针,node.next查找相同链表,但是无法保证同时到达相同节点,因此需要遍历两遍,即A遍历完,去遍历B,B遍历完去遍历A,这样每个指针都会走A+B这两个链表,而相同之处肯定在末尾,因此在最后会同时达到相同节点。,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回。确实挺浪漫的,我走过你走的路,只为与你相见。,函数返回结果后,链表必须。整个链式结构中不存在环。给你两个单链表的头节点。

2024-08-17 23:56:21 235

原创 日拱一卒(5)——leetcode学习记录:股票购买

返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回。遍历价格中的元素,以及该元素前的最小元素,计算利润,更新最大利润。遍历价格中的元素,及该元素后最大的元素,计算利润,更新最大利润。问题:每次计算最大值都需要遍历一次,如果改为复用就能减少时间。设计一个算法来计算你所能获取的最大利润。买入这只股票,并选择在。1. 暴力求解(超时)

2024-08-17 22:06:38 255

原创 日拱一卒(4)——leetcode学习记录:路径总和

左右节点都存在,返回 递归(左子节点,targetSum-root.val)or递归(右子节点,targetSum-root.val)其他,返回 递归(左子节点or右子节点,targetSum-root.val)左右子节点都不存在,返回targetSum == root.val。的路径,这条路径上所有节点值相加等于目标和。和一个表示目标和的整数。节点不存在,返回False。是指没有子节点的节点。

2024-08-17 20:25:49 280

原创 日拱一卒(3)——leetcode学习记录:二叉树最小深度

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。给定一个二叉树,找出其最小深度。叶子节点是指没有子节点的节点。编程小白,所以结果比较差,见笑。1. 递归计算二叉树的深度。一、任务:平衡二叉树。

2024-08-16 21:11:00 276

原创 日拱一卒(2)——leetcode学习记录:平衡二叉树(二)

b. 左右子节点都存在,返回 max(1+递归(左子节点),1+递归(右子节点))3. 左右子节点深度差小于等于1,返回 递归 左子节点判断and右子节点判断。a. 左右子节点存在一个,返回 1+递归(存在的子节点)d.大前提,如果主节点为None,返回 0。c. 左右子节点都不存在,返回1。2. 左右子节点深度差大于1,返回 False。给定一个二叉树,判断它是否是 平衡二叉树。编程小白,所以结果比较差,见笑。1. 递归计算二叉树的深度。一、任务:平衡二叉树。

2024-08-15 23:21:02 314

原创 机器学习——全连接(MLP多层感知机)的理解

全连接即是矩阵乘,因此在transformer中获取QKV理论上是输入与QKV权重矩阵相乘,但实际操作则是使用全连接即nn.Linear(),注意这里的输入和输出都是二维的[batch,d_model],即每个样本是一维的。

2024-08-15 11:45:11 422

原创 transformer学习——注意力、自注意力、交叉注意力、多头注意力

注意力机制、自注意力机制、交叉注意力机制 注意力机制的查询和键是不同源的,常见于Encoder-Decoder模型中,例如在中译英模型中,查询是中文单词的特征,键是英文单词的特征 下图,注意力被引导至书的原因是查询(自主性提示,想读一本书)和键(非自主性提示,书的特征)相互作用,引导值(输入,书的信息)被看到。 自注意力机制(输入是一个batchsize,即多个样本,即QKV同源) 交叉注意力机制(输入是不同特征空间的数据,例如文本和图像,即Q与KV不同源),自注意力机制和交叉注

2024-08-15 11:40:22 570

原创 日拱一卒——leetcode学习记录:平衡二叉树

2. 注意每次返回的都是TreeNode,即二叉树,二叉树定义很简单,但是通过递归可以使left和right都为TreeNode。c. nums长度大于2,返回TreeNode,val为中心值,left递归,right递归。b. nums长度为2,返回TreeNode,val为第二个元素,left递归。a. nums长度为1,返回TreeNode,val为第一个元素。编程小白,所以结果比较差,见笑。排列,请你将其转换为一棵。

2024-08-14 22:56:06 446

原创 远程服务器训练网络之tensorboard可视化

创建tunnel映射到本地,在本地ssh,最好使用公网地址。启动tensorboard。

2024-08-01 16:08:11 473

原创 卷积神经网络理解

五、因此神经网络是在拟合一个分布,能够明显的将这个类别与其他区分开。三、K1*K2*K3是一个更大的卷积核(全卷积)一、神经网络的卷积和二维离散卷积的区别。四、相关操作:分布越相似,相关结果越大。

2024-08-01 15:14:57 258

原创 CNN神经网络调参技巧

2.若干块,每块:卷积+激活+Dropout。3.若干块,每块:fc+激活+Dropout。1.若干块,每块:卷积+BN+激活+池化。

2024-06-27 15:19:58 648

原创 pip install\conda install区别

尽量使用conda install,会自动匹配合适的版本,从而避免不同包之间的版本冲突。

2024-04-24 18:36:21 303

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除