MathJax = {
tex: {
inlineMath: [['$', '$'], ['\\(', '\\)']],
processEscapes: true,
}
};
为什么会有MLP?transformer架构中,最主要的两个模块就是Attention-Layer和MLP-Layer。MLP全称为多层感知机,是神经网络的最主要的组成部分。其结构十分简单,主要由两层线性变换层和一个激活函数构成,其公式如下:
$$MLP = \sigma(X \cdot W_1 + b_1) \cdot W_2 + b_2 \tag{1.1}$$
在神经网络中, ...
RAG学习数据加载我们需要利用给定的数据形成知识库,数据的类型多种多样,langchain提供了很多工具来帮助我们加载和处理数据。比如加载PDF文档。
从某一个目录下加载所有PDF文档123456from langchain_community.document_loaders import PyPDFDirectoryLoaderDATA_PATH = "data"document_loader = PyPDFDirectoryLoader(DATA_PATH)document = document_loader.load()
上面返回的document是一个列表,其中的 ...
MathJax = {
tex: {
inlineMath: [['$', '$'], ['\\(', '\\)']],
processEscapes: true,
}
};
NormalizationTransformer学习笔记三:为什么Transformer要用LayerNorm/Batch Normalization & Layer Normalization (批量&层标准化)
深入理解Batch Normalization原理与作用
Normalization又称为标准化或者规范化,是在深度学习中经常使用的一种算法。其核心思 ...
MathJax = {
tex: {
inlineMath: [['$', '$'], ['\\(', '\\)']],
processEscapes: true,
}
};
Transformer之位置编码为什么需要位置编码注意力计算公式如下图所示:
.pqapbbcybovx{width: 40%; height: 40%;}
其中q和k分别为query和key,代表token的语义信息。如果没有位置编码,那么q和k的计算结果是不受二者之间相对距离大小的影响的。也就是说,如果没有位置编码,那么transformer就是一个类词袋模型。
词袋模型 ...
Linux安装comsol在linux系统中安装comsol和在win中有所不同,接下来从下载压缩包,解压,创建文件夹,挂载,安装等步骤讲解如何在linux系统中安装一个comsol。
下载iso文件首先到IT技术之家下载comsol的iso文件,版本是comsol6.3。下载地址下载好后需要上传到远程linux服务器,可以使用xftp或者ssh,如果你是直接在现场操作的话则不需要上传了,拷贝一下就行。注意如果U盘插入到电脑中但却点不开的话,可能需要先将U盘挂载到某一个文件夹下,这样才能将U盘中的文件取出
解压rar文件上面下载的压缩包是带密码的,建议使用unrar解压,sudo apt in ...
ssh连接远程主机
ssh -p 22 root@host
其中-p后面是端口号,root是远程主机上的用户名,host是远程主机的ip地址。以组里的服务器为例,则为:ssh -p 22 123@10.181.83.26
如果连接不上
检查是否启动:sudo systemctl status sshd如果显示activate,则表明ssh服务已经启动
启动命令:sudo systemctl start sshd
设置开机自启动命令:sudo systemctl enable sshd
也有可能时防火墙不允许指定端口通过,检查防火墙规则:sudo ufw status
允许端口22通过:sud ...
环境配置记录本地配置方法:去pytorch官网找到要下载的历代版本,比如本次配置版本为 conda install pytorch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 pytorch-cuda=11.8 -c pytorch -c nvidia直接使用这个命令即可下载pytoch相关包以及cuda包,此处cuda包的版本不需要非得和电脑上安装的cuda软件版本一致。最后在下载一个cudnn的包即可
速度太慢直接使用上述命令的速度太慢,故采用本地下载方式。
1.去清华镜像 ...
步骤:1.github创建一个与工程名同名的仓库,不要勾选任何可选项
2.进入工程名目录
3.右键打开git bash
4.运行以下代码:
git init
touch README.md
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:wu-diu-diu/仓库名.git
git push -u origin main
main可以换成master
本步骤适用于将一个完善了的project上传至github的情况
tensordot使用方法主要是对张量进行点乘,对于多维张量来说,有时候需要指定维度进行点乘。numpy.tensordot(a, b, axes=0,1,2)axes=1的话,则结果是两个数组以矩阵相乘的形式计算.实际为a的最后一个维度和b的第一个维度进行点乘
若a,b是二维数组,此时即为矩阵乘法。numpy中的轴分布如下图:
axis=0和axis=2的情况参考numpy的官方解释
对于多维数组,axis可以指定多个轴进行点乘,例如(3, 4, 5)数组和(5, 4, 2)数组,可以指定第一个数组的1, 2轴和第二个数组的1, 0轴相点乘。代码为:
np.ra ...
Dezero Bug 记录在步骤52的时候,添加cupy库,引起一系列bug。1.UserWarning: Failed to auto-detect cl.exe path: <class 'distutils.errors.DistutilsPlatformError'>: No Microsoft Visual C++ version found即cupy库需要使用编译器构建C/C++扩展模块。在 Windows 系统上,通常使用 Microsoft Visual C++ 编译器(cl.exe)。如果你的系统上没有安装适当版本的 Visual C++ ...