llm排序
GPT4V
GPT-4V可以很好地理解直接绘制在图像上的视觉指示。它可以直接识别叠加在图像上的不同类型的视觉标记作为指针,例如圆形、方框和手绘(见下图)。虽然GPT-4V能够直接理解坐标,但相比于仅文本坐标,GPT-4V在有视觉指示帮助下能够更可靠地执行任务。
位置编码
相对位置编码
手写
手写softmax,
def softmax(x):
exp_x = np.exp(x - np.max(x, axis=-1, keepdims=True))
sm = exp_x/np.sum(exp_x, axis=-1, keepdims=True)
return sm
手写crossentropy
def cross_entropy(predictions, targets, epsilon=1e-12):
predictions = np.clip(predictions, epsilon, 1.-epsilon)
N = predictions.shape[0]
ce = - np.sum(targets*np.log(predictions)) / N
return ce
手写attention
def saled_dot_product_attention(Q,K,V):
dk = K.shape[-1]
scores = np.dot(Q,K.T)/np.sqrt(dk)
weights = softmax(scores)
output = np.dot(weight,V)
return weight, output
标签平滑label smoothing
标签平滑其实就是将硬标签(hard label)转化为软标签(soft label),也就是将标签的one hot编码中的1转化为比1稍小的数,将0转化为比0稍大的数,这样在计算损失函数时(比如交叉熵损失函数),损失函数会把原来值为0的标签也考虑进来,其实就相当于在标签的one hot编码中的每一维上增加了噪声。本质上是向训练集中增加了信息,使得训练集的信息量增大了,更加接近真实分布的数据集的信息量,所以有利于缓解过拟合
解决Transformer处理长序列
稀疏注意力
和Linformer,Longformer类似,Sparse Attention也是为了解决Transformer模型随着长度的增加,Attention部分所占用的内存和计算呈平方比增加的问题。