一言
时间在流淌,生活会改变,没什么是永恒。——神探夏洛克
thumbnail
CLIP、SigLIP、SigLIP2小结
写在前面:这个文章是我快速回顾这些知识点的输出,出发点并不是写一个易懂的知识博客,读者多多包涵。 CLIP CLIP的结构非常简单,输入端是图文对,训练数据中的图文对是具有强相关的,即文本就是图片的描述。 然后图片和文本都会经过一个编特征提取器,一般图片是用R…
熵、交叉熵、KL散度的区别
熵、交叉熵、KL 散度的区别 信息量     很多教程会直接摆出熵的定义,但个人认为这之前最好先了解一下信息量这个概念。     从字面上来说,信息量就是衡量一件事情的信息量有多少…
thumbnail
由Sinusoidal位置编码到RoPE
前言 请打开日间模式进行阅读 本来是想学习RoPE(旋转位置编码),所以回去从头从最开始的三角函数式位置编码开始看,发现自己当时学的还是浅了。在此总结一下。 注:本文涵盖不了所有位置编码,只挑主流的去学习。具体就是由绝对位置编码到相对位置编码再到RoPE 三角…

得补补基础知识了。要学的好多,快两个月没怎么学习基础知识了

224 日 , 2026 17:32
thumbnail
LoRA小结
前言:PEFT的诞生      传统的预训练-下游任务微调的范式,是对预训练模型所有参数进行微调,即全量微调。之前基于Bert、GPT1的下游微调任务都是这么干的。因为当时的预训练模型参数量比较少,所以速度并没有那么慢。…
记录一个好笑的bug

总所周知用nn.CrossEntropyLoss()算损失的时候需要将input_data和label展开对齐,也就是必须符合:(N,C)和(N)的格式,而在NER任务中最后往往输出的是:(batch_size,seq_len,class_num)(batch_size,seqlen),所以需要这两个view一下。我的代码是:

  outputs = model(input_ids=input_ids)
  ouputs=outputs.view(-1, num_classes)  # (batch_size*seq_length, num_classes)
  labels = labels.view(-1)  # (batch_size*seq_length)
  #print(outputs.shape, labels.shape, labels.dtype)
  loss = criterion(outputs, labels)

根本看不出有什么不对劲。 但是debug总是显示这里维度不匹配,问了好几遍GPT,他也没看出来,直到一遍遍排查,我把GPT说的所有可能的错误都说了,又发给他看。

我噗呲一下笑出来—————气笑了。 人在无语的时候真的想笑,尤其搭配上GPT这个语气,他真的好像人一样

1010 日 , 2025 19:30