- 博客(37)
- 收藏
- 关注
原创 LLM进阶
prologue:最近大模型火出天际,2022年毕业之后就很少在系统的跟踪一个domain了,所以这次下定决心要跟踪一下大模型的技术细节和实现过程,不做AI丁真。
2025-03-02 12:13:05
717
原创 interpritation of naive bayes classifier
朴素贝叶斯分类器是一个监督学习算法,经常用在分类任务上(比如文本分类),也是现在一系列生成学习算法的一部分,因为它试图对给定类别的输入分布进行建模,即建模条件概率分布。表示Evidence(证据)。所以条件概率表示的就是在证据发生的情况下(或者说在证据发生的样本空间内),假设成立的概率。它和logistics regression(分类算法)等判别式分类器不同,因为它不学习哪些特征对于判断类别是最重要的。因为朴素贝叶斯是一个基于贝叶斯统计理论的概率分类器,所以这部分对贝叶斯统计理论做个解释。
2024-12-28 15:27:36
949
原创 money-oriented programming
preface:休假一周去了苏州散心,发现苏州人真的很重视英语,看了不少于前0个家庭都在教孩子英语了。深感内地教育落后于他们,如果再不学习,会落后的更厉害,加上现在国际国内形势如此严峻,所谓的铁饭碗将来可能将不复存在,所以学好一门技能还是非常有必要的,所以我决心把leetcode继续刷起来。这篇笔记只会记录本人刷题的一些心得体会或者有用的八股。fighting!!!
2024-12-28 15:10:21
1016
原创 diffusion model
以 mnist 数据集为例,输入数据为 input.shape=[4, 1, 28, 28],输入网络之前进行归一化并加上一个均值分布的“噪声”:input = input / 256. * 255. + torch.rand_like(X) / 256,随后生成一个预定义的。就可以得到多尺度的正态随机噪声。之后将该输入通过分数网络得到分数,随后计算损失。,维度为[10,],之后对输入batch-size的每个图像分别添加一个符合。
2024-08-03 18:31:04
438
原创 资料分析题目类型分类
例如:2020年,H省秋粮玉米和稻谷的市场平均交易价格分别为2.34元/公斤和2.74元/公斤,分别比上年上涨28.6%和8.7%。ans:机播和机收先比较基数,机播2020年成本21.7,同比下降-1.1%,机收2020年成本62.3,同比下降-2.0,明显基数机收大很多,所以根据基数相同,下降相同倍数,基数大的下降量大,可知下降量机收更大。(<12%),排灌下降量=排灌基数*12%,由于技术没有差到6倍,所以机收下降量小于排灌,带负号比较即增长量机收大于排灌。大小居中,偏向于量大的一方。
2024-06-29 16:59:28
975
原创 公考jjj‘
1、一组图:一般是给一连串图形,左边的规律可以套到右边。两组图:先找第一组图的规律,把规律套到第二组2、分类型:给定6张图,给6张图分类别。3、九宫格:给定一个九宫格,一般要根据格中的图形选择右下角最合适的图形。九宫格优先考虑横着看找每一行的规律,实在找不到再竖着看找列的规律,最后考虑“米”字型规律。4、折纸盒(六面体)*5、四面体*6、三视图*7、平面拼合*8、截面图。
2024-03-09 15:21:57
494
原创 微电子相关知识
1、SRAM 芯片容量表示为 64k ×\times× 16位,则该芯片的地址线和数据线数目为 16, 16。因为存储容量= 2^地址线 x 数据线,即64k ×\times× 16位 ≈216×16\approx 2^{16}\times 16≈216×16, 故地址线为16.一个64K x 8位的存储器,可以由()个16k x 1位的存储芯片构成?分析:存储器取值是按照存储字来取的,64K x 8位,从上图可以看出该存储器一次数据线输入是8位,即以 8 位构成一个字,因此,每读出一个字,需要
2022-04-05 16:02:05
1979
原创 医学专业知识
1、单臂研究(single arm study)在临床研究中,常用的是为试验组或病例组设计一个参比的对照组。对照组的形式,在ICH E10文件中提供了五种类型:安慰剂对照、空白对照、剂量对照、阳性药物对照和外部对照,前四种对照方式要求试验组和对照组来自相同的受试者总体,而“外部对照”组和试验组不来自同一受试者。单臂研究(single arm study):即单组临床试验,顾名思义,就是仅有一个组的研究,没有为试验组设计相对应的对照。但单臂研究并不是就没有参比的对象,实际上,它的参比对象就是上面提到的“外部
2021-11-27 22:37:09
1976
原创 机器学习笔记
绪论分类:如果模型预测的是离散值,例如"好瓜",“坏瓜”,此类学习任务称为分类。回归:如果模型预测的是连续值,例如甜度"0.75",“0.63”,此类学习任务称为回归。分类和回归是监督学习的代表,聚类则是无监督学习的代表。模型的评估与选择1、错误率:分类错误的样本数占样本总数的比例称为错误率。正确率:分类正确的样本数占样本总数的比例称为正确率。2、误差error:把学习器在训练集上的误差称为“训练误差”或者“经验误差”(empirical error),在新样本上的误差称为“泛化误差”。很多情
2021-10-15 20:45:49
533
原创 mySQL
mySQL数据库学习1、MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。2、什么是数据库?数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,现在我们使用**关系型数据库管理
2021-10-06 21:31:03
108
原创 c++八股文
c++内存管理在c++中,内存分为 5 个区,堆区heap:分配堆区内存也叫动态内存分配。程序在运行的时候使用malloc或者new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生命周期由程序员决定,使用非常灵活,但如果在堆上分配了空间,既有责任回收它,否则运行的程序会出现内存泄漏,频繁的分配和释放不同大小的堆空间将会产生内存碎片,如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。栈区:在执行函数时,函数内局部变量的存储单元可以在栈上创建,函数执
2021-10-02 18:16:05
1159
原创 图像处理知识点
直方图均衡化,直方图规定化1、均衡化:如果图像太亮或者太暗时,说明图像的灰度集中在坐标轴的右边或者左边,用直方图均衡化可以提高对比度,也就是清晰度。(对比度小就是说两个像素点之间的灰度值差不多,人眼分不出来,比如太黑和太暗的一块区域,就是对比度比较小的,用了均衡化之后就可以将对比度变大,图像变得清晰)。均衡化可以用一个公式来表示:y=G(x)⋅xy = G(x) \cdot xy=G(x)⋅x,其中 G(x)G(x)G(x)是映射函数2、规定化:也叫直方图匹配,也就是将图像的直方图变换到预设的直方图
2021-09-26 22:32:33
8965
原创 Swin Transformer解读
Swin Transformer详细解读这里以Swin-T(imagenet-1k)为例。PPL如下图:Swin Transformer的解读按PPL的流程主要包括4个部分。(1)Patch Embedding过程(2)W-MSA块的过程(3)WS-MSA块的过程(4)Patch Merging过程<1>Patch Embedding过程首先设定patch的大小为44,所以一张2242243的输入图片被分成5656*3个patch(注意此处,先定patch大小,然后算patch
2021-09-21 16:29:24
879
原创 损失函数
Loss函数机器学习中的监督学习本质上是给定一系列训练样本(xi,yi)(\bf{x_i}, \bf{y_i})(xi,yi), 尝试学习x⟶y\bf{x} \longrightarrow \bf{y}x⟶y,使得给定一个x\bf{x}x,即便这个x\bf{x}x不在训练样本中,也能够输出y^\bf{\hat{y}}y^,尽量与真实的y\bf{y}y接近。损失函数是用来估量模型的输出y^\bf{\hat{y}}y^与真实值y\bf{y}y之间的差距,给模型的优化指引方向。首先区分损失函数、代价函
2021-09-21 15:33:03
447
原创 目标检测评价算法代码
(1) IOU的计算def iou_xywh_torch(boxes1, boxes2): """ :param boxes1: boxes1和boxes2的shape可以不相同,但是需要满足广播机制,且需要是Tensor :param boxes2: 且需要保证最后一维为坐标维,以及坐标的存储结构为(x, y, w, h) :return: 返回boxes1和boxes2的IOU,IOU的shape为boxes1和boxes2广播后的shape[:-1] """
2021-09-20 14:37:09
875
原创 深度学习八股文
残差连接的有效性详解(1)网络性能退化问题。一般认为神经网络的每一层分别对应于提取不同层次的特征信息,有低层,中层和高层,而网络越深的时候,提取到的不同层次的信息会越多,而不同层次间的层次信息的组合也会越多,表达出来的特征也更更好,所以要构建深层神经网络,但是随着网络层数的加深,网络的性能反而下降,这就是深层网络退化的现象,这种现象出现的根本原因就是梯度消失和梯度爆炸的问题。(2)BN可以用来解决梯度消失/爆炸的问题,但是是在数据层面上的做法。covariate shift(协方差偏移):这个现象指
2021-09-17 12:50:49
8227
1
原创 faster-rcnn理解
R-CNN(1)R-CNN主要的过程有三步:首先生成与类别无关的区域候选,这些候选定义了检测器可用的候选检测集(通过 selective search 方法生成),第二步是使用CNN从每个候选区域中提取固定长度的特征向量(无论候选框的长宽比如何,都通过 warp 将其扭曲到 CNN 网络所需的大小), 第三个模块是一组类特定的线性支持向量机,用来做分类。说RCNN是 two-stage 算法就是指它的第一个模块和第二个模块是分开的。(2)SPP-net, 通过特征金字塔共享计算来提高RCNN的效率。
2021-09-14 22:04:12
426
原创 c++类和对象
类和对象类和结构体一样的,是个自定义的数据类型,同时类和结构体是很像的,包括内存大小等性质都很像。(1)类的定义class Box { protected: // 访问修饰符 double length = 1.0; double breedth = 1.0; double height = 1.0; public: double get(); void set(double len, double bre, double hei);}; // 类的定义结束后有分号d
2021-09-11 15:37:19
292
原创 结构体用法
结构体(1)结构体定义方法。#include <iostream>using namespace std;typedef struct books { // typedef给books定义别名 a string title; string autor; string subject; int book_id;} a; // 结构体声明完了要加 分号int main() { a book1; a book2; book1.book_id = 20; bo
2021-09-08 17:32:32
214
原创 c++指针常量和常量指针的区别
指针常量:指向不能动,但是指向的内容可以动指针常量存的其实是一个地址。指针常量的定义方法:int i = 1;int *const p = &i; // p 是指针常量指针常量也可以叫地址常量,说明指针常量里面存的是地址, 且是不可改变的,也就是指向不变。但是地址里面的值是可以改的。//64bit 系统上运行的结果#include <iostream>using namespace std;// 指针常量, int *const p。指针常量占8个字节(64 bit
2021-09-08 14:57:09
275
1
原创 岛屿数量、岛屿面积,岛屿周长
1、BFSclass Solution {public: int numIslands(vector<vector<char>>& grid) { int nr = grid.size(); if (!nr) return 0; int nc = grid[0].size(); int num_islands = 0; for (int r = 0; r < nr; ++r)
2021-09-02 23:39:41
312
原创 python的generator、iterator、iterable
##python的高级特性----迭代器 参考:python的高级特性----迭代器 迭代器主要就是节省内存。在python中可以直接作用于for循环的数据类型有以下几种:(1)集合类型的数据:list, tuple, dict, set,str(2)generator: 包括生成器和 带yield 的 generator function上述对象可以直接作用于for循环,统称为可迭代对象:iterable,我们可以通过isinstance() 判断一个对象是否是Iterable对象:i
2021-09-01 10:37:24
148
原创 pytorch底层
1、L2normalize:L2归一化:将一组数变成0-1之间。pytorch调用的函数是F.normalize。一般池化后会有一层l2norm层。# l2norm 的实现如下x = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]])norm = x.pow(p).sum(1, keepdim=True).pow(1./ p) # l2norm p=2print(norm)out = x.div(norm)print(out)2、torch的几
2021-08-28 17:37:40
1641
原创 yolo系列笔记
yolo v1yolo v1的模型训练过程。首先要做标签的变换,因为yolo v1生成的 embedding 是 batch−size×S×S×30batch-size \times S \times S \times 30batch−size×S×S×30的维度,所以首先要把每张图像的标签也转换成相同的S×S×30S \times S \times 30S×S×30的维度。标签转换的具体流程如下: def encoder(self, boxes, labels): //这里的boxes
2021-07-24 17:35:25
432
原创 c++容器用法
c++中的vector、map和set标准库类型vectorvector表示对象的集合,其中所有对象的类型都相同。集合中的每个对象都有一个与之对应的索引,索引用于访问对象。因为vector 容纳着 其他对象,所以它也常被称为容器container。要想使用 vector,必须包含适当的头文件。需要做如下的声明#include <vector>using std::vector;注意:vector是模板而非类型,由vector生成的类型必须包含vctor中元素的类型。1.1 定
2021-07-12 16:20:12
8819
原创 关于L1, L2的深度学习知识点
关于L0、L1和L2范数所有的范数都可以用闵可夫斯基距离(也叫 L−PL-PL−P 范数)公式求得,闵可夫斯基距离公式:Lp=(∑1nxip)1p,x⃗=(x1,x2,....,xn)L_p =(\sum_{1}^{n} x_i^p)^\frac{1}{p}, \vec x=(x_1,x_2, ....,x_n)Lp=(∑1nxip)p1,x=(x1,x2,....,xn)L0 范数(∣∣x⃗∣∣0||\vec x||_0∣∣x∣∣0)按照闵可夫斯基公式可知会带开0次方,但是开0
2021-06-26 11:13:33
1179
原创 线性模型和非线性模型的区别
**线性模型和非线性模型的区别**按照周志华西瓜书的回答:线性模型试图学的一个通过属性的线性组合来进行预测的函数,即f(x)=w1x1+w2x2+...+wdxd+bf(x)=w_1x_1+w_2x_2+...+w_dx_d+bf(x)=w1x1+w2x2+...+wdxd+b的函数,这个函数中的 xix_ixi 代表的就是属性,说明线性模型并不是说模型的函数代表的是一条直线,同理,非线性模型也不是说模型函数代表的是一条曲线。如果模型的函数是属性的非线性组合的话,比如f(x)=...
2021-06-04 11:56:01
5130
原创 机器学习--回归笔记
回归分析回归等效于函数拟合,使用函数曲线使其能很好的拟合给定的离散数据(特征),如果原始数据不是离散值或者连续变量值必须想办法把他们转化为离散值(1、0变量值)或者连续变量值 。回归包括线性回归和非线性回归,非线性回归一般是和概率相关的,很复杂。线性回归并不是说因变量Y和自变量X(也可以称特征)是呈一条直线的,而时说Y可以用X的线性组合来拟合。线性回归可以分为一元线性回归和多元线性回归,(1)一元线性回归是指自变量(输入特征)只有一维:hθ=θ0+x1θ1;对于非线性的一维数据,用线性回归拟合结果并不好
2021-06-04 11:09:03
258
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人