自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (4)
  • 收藏
  • 关注

原创 自然语言基础 IMDB下的 MLM (掩码模型) & Bert Fine-tuning (模型微调)

本文是Hugging Face 上 NLP的一篇代码教程,通过imdb数据集, Fine-tuning微调 Bert预训练模型。涉及关键词包括: MLM, Bert, Fine-tuning, IMDB, Huggingface Repo。

2023-07-09 15:48:59 1166

原创 自然语言基础: 文本标记算法 (Tokenization Algorithm) : Byte-Pair Encoding (BPE) 和 WordPiece

BPE最初是用于文本压缩的算法,当前是最常见tokenizer的编码方法,用于 GPT (OpenAI) 和 Bert (Google) 的 Pre-training Model。

2023-07-05 16:10:41 754

原创 自然语言基础2 BERT源码 & 大模型技术(attention/transformer/LLM) 如何处理各类NLP任务

本文以huggingface BERT模型为例,概述常见Transformer的结构,以及数据处理的过程和相关概念,这里一定要牢记attention论文中的那张图,bert主要是其中encoder部分的实现(其实也可以通过参数变为decoder部分)现在的transformer模型 (大模型LLM) 有很多了,包括GPTs, LLaMa, Moss等等,但作为初学者,4-5年前的GPT2和BERT相对会好上手一些,一方面可借此了解常见NLP任务,数据处理和模型基本结构等。

2023-06-28 17:37:05 1174

原创 Ubuntu cuda 10.2下调通ChatGLM-6B经验

比如 torch 1.12.1就可以适配cuda 10.2,代码如下。

2023-06-01 02:21:10 423

原创 对AI初学者和学生的若干学习建议

包括如何学好AI, 打好基础,以及如何做好AI研究

2023-05-30 14:21:52 342

原创 从训练数据视角:看机器学习和深度学习的大三范式

通过数据看学习的范式

2023-04-28 20:05:43 1117 1

原创 深度学习的Fine-tuning相关概念分析:微调 迁移学习 蒸馏学习 元学习

这里的相关概念都是基于已有预训练模型,就是模型本身已经训练好,有一定泛化能力。需要“再加工”满足别的任务需求。当下GPT语言模型逐步流行,对模型的Fine-tuning也将成为趋势,借此机会,我来分析下相关概念。

2023-04-28 18:36:19 925

原创 自然语言处理_1_基本概念&WikiText数据集

WikiText数据集介绍,自然语言处理

2022-12-30 12:39:51 3946

原创 Attention和Transformer的Pytorch实现

讲解NLP和神经网络中常见的注意力(Attention)模块和transformer模块实现(Pytorch)。

2022-12-18 20:11:31 1478

原创 一句话完美去除plt保存图像的白边 (plt.savefig去白边, 坐标值和轴)

plt保存图片都会留有白边,或者坐标轴,保存再用多有不遍,其实去除白边就两个参数:plt.savefig(‘xxx.jpg’,bbox_inches=‘tight’, pad_inches = -0.1) # 注意两个参数demo:... #图片代码plt.axis('off') # 去坐标轴 plt.xticks([]) # 去刻度 plt.imshow((imgs) plt.savefig('xxx.jpg',bbox_inches='tight', pad_inches = -0.

2022-03-17 16:08:57 13819 2

原创 conda的使用(速查手册)

conda命令

2022-02-03 14:38:31 1437

原创 损失函数小结 - Loss function

介绍现在nn常用的损失函数,如分类任务

2021-12-21 14:02:35 254

原创 Matplotlib画图

科学计算少不了用matplotlib画图, 这里写一点心得笔记:基础概念Figure这个是一个画布,所有图片都在这个画布上import matplotlib.pyplot as pltfig = plt.figure()Subplot这个是一个子图, 画布上可以有多个子图,按:“行-列-个数” 排列,即有规律的顺序.# 2行1列ax1 = plt.subplot(211) # 第一个子图plt.imshow(np.random.random((100, 100)), cmap=

2021-10-15 18:42:12 134

原创 多维数据运算(矩阵乘法)

很多人把线性代数中的矩阵乘法在编程中搞复杂了,这里说明如下:多维数据一般是用np运算,乘法可简单分为元素乘积和矩阵乘积1. 元素乘积这个简单,符号为:A*B,即对应元素相乘,这个必须保证矩阵维度相同, 即 A.shape = B.shapeimport numpy as npA = np.random.randn(2,2) # shape:[2,2]print(A)print(A*A)2.矩阵运算类似线性代数中的矩阵乘积 (行列乘积等于新矩阵的一个元素),计算符号包括4个:A@B

2021-09-20 17:00:28 1947

原创 sklearn中的数据集2 (Covertype 一个关于植被的数据集)

Covertype 简介植被覆盖类型数据集,包括位于美国科罗拉多州北部罗斯福国家森林的四个荒野区域。样本总数为581012,在kaggle中,样本划分为训练集(training set):15120,以及测试集 (test set) :565892 。每个样本来自一块30m x 30m 的区域采样。每个样本有54个特征,且有7种类型, 这七种类型是:1 - 云杉/冷杉2 - 洛奇波尔松3 - 黄松4 - 三叶杨/柳树5 - 阿斯彭6 - 花旗松7 - 克鲁姆霍尔茨除了前10个特征是浮点数

2021-09-19 16:54:37 3903

原创 有趣的矩阵(Interesting Matrix in linear algebra)

1.矩阵属性Covariance matrix (协方差矩阵)Toeplitz matrix (托普利兹)diagonal-constant matrix, 即对角线元素相同2.矩阵方法Gram–Schmidt process正交分解,即已知An×nA_{n \times n}An×n​中的a个正交向量,求另外n-a个正交向量。 主要用到的公式是proju(v)=<u,v><u,u>v proj_u (v) = \frac{<u,v>}{<u,u&gt

2021-09-19 16:28:46 388

原创 图片压缩:SVD和PCA提取主成分使图片降维

这里写自定义目录标题通过SVD降维,提取主成分并重构图片Reference通过SVD降维,提取主成分并重构图片大概思路:图片是长宽为 H,W的矩阵Mat, 那么Mat的特征数量为Max(H,W).对Mat进行SVD分解: U, s, v = SVD(Mat). 即图中的 M = U.s.v。然后提取U,diag(s)以及vt的前30个特征, 重构后图片如下(灰度图,若RGB则选择B通道):代码如下:import numpy as npimport matplotlib.pyplot as

2021-09-15 15:10:14 607

原创 sklearn中的数据集1 (toy_datasets)

sklearn 中的小规模数据集 (toy datasets)

2021-09-07 09:23:22 1706

原创 激活函数numpy实现(Sigmoid, Tanh, Relu, Softmax)

激活函数numpy实现1.Sigmoid2.Tanh3.Relu4.Softmax你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。1.Sigmoidsigmoid(y)=11+e−x sigmoid(y) = \frac{1}{1 + e^{-x}} sigmoid(y)=1+e−x1​2.Tanhtanh(y)=2∗sigmoid(2∗x)−1 tanh(y) = 2

2021-08-29 22:40:10 610

原创 毕业设计(毕设)目标和要求 (以计算机软件毕业设计为例)

超越师生视角,谈毕业设计毕业设计需要做什么,这是每一个大学生都会遇到的问题。从总体上要求大致如下:1. 独立完成一个“东西”通过3-4年所学,针对一个目标(可以是兴趣相关,也可以是实际项目驱动),完成一个综合性的项目这个区别于一般的课程期末要求,不仅要解决一个问题,而是系统地解决一系列问题(为达到最终目标)。例如根据所学知识做一个app,一个网站,一个程序,有独立的功能,且涵盖主要大学所学知识。2.撰写文稿 (毕业设计)东西做出来,能运行演示固然是证明你完成毕设的能力。但是

2020-10-08 17:56:40 6061

原创 深度学习中优化器 (optimizer) 的选择:SGD, AdaGrad, AdaDelta

optim的一些理论基础1.训练过程神经网络的训练过程如下:做一个神经网络用于拟合目标函数做一个真实值和目标函数值直接估计误差的损失函数,用损失函数值前向输入值求导,再根据导数的反方向去更新网络参数(x),目的是让损失函数值最终为0.2.专有名词SGD在第四步中,参数的更新就是pytorch中的optim(优化过程),现在都是随机梯度下降,即每次更新是通过随机抽样来更新参数(总数的一小部分,简称为一个batch)。公式: (1)为此,需要设置一个学习率,保证每个batc

2020-10-06 18:37:29 2440

原创 神经网络计算过程(正向传播,反向传播,优化策略和参数更新)

神经网络计算过程原理是设计一个多参数的非线性组合模型,即多层神经网络model.用这个model来近似(拟合)一个无法求出的复杂函数 y = f(x).(输入x和输出y皆为高维变量的)定义这个模型的前向传播过程,即forward : 即数据input进model,model输出output,类似y=f(x).根据Loss的定义,一般为真实样本的(y,x),和模型的随机输入和输出 (z,y’)的比较函数。在Loss中分别对每个维度的参数求其偏导数,得到每个参数的偏导数值即x_i.grad()

2020-10-06 18:31:10 1070

原创 图片中的上采样,下采样和通道融合(up-sample, down-sample, channel confusion)

前言以conv2d为例(即图片),Pytorch中输入的数据格式为tensor,格式为:[N, C, W, H, W]第一维N.代表图片个数,类似一个batch里面有N张图片第二维C. 代表通道数,在模型中输入如果为彩色,常用RGB三色图,那么就是3维,即C=3。如果是黑白的,即灰度图,那么只有一个通道,即C=1第三维H. 代表图片的高度,H的数量是图片像素的列数第四维W. 代表图片的宽度,W的数量是图片像素的列数如果H=W,那么图片是正方形的,总像素为H*W, 和分辨率是同义词。

2020-08-19 18:08:00 6567

原创 git命令,同步本地和github项目的常见操作

同步本地和github上的项目以下xxx指项目的地址,如果是自己的项目需要先创建才有地址全部命令需要在本地项目目录下操作命令行1.设置git账户密钥参考:https://www.cnblogs.com/xiaoxiaodevlog/p/10704977.html2.下载一个项目到本地两种方法:下载新项目git clone xxx2.1 从git更新到本地(可以不断更新)初始化(第一次需要)git init添加项目(第一次需要)git remote add

2020-07-09 22:37:49 2302

原创 Python下操作图片的库(scipy, PIL, matplotlib, opencv)

主要有4个库,我们通过CV中的常见读写操作来介绍:path = ‘1.jpg’1.scipy.misc (imageio)这个库老版本(1.3.0)是用 imread()和 imwirte()完成操作,新版本改用imageioimport imageioa1 = imageio.imread(path)plt.imshow(a1)plt.show()imageio.imwrite('imageio.png',im2)#默认4通道,且像素范围是0-255的整数print(a1.dt

2020-07-03 16:17:29 258

原创 celeba数据集,以及pytorch加载图片文件夹遇到的坑

1.celeba数据集这是一个大规模人脸数据集官网香港中文大学发布的,提供了百度云盘的下载,使用很方便。总共有202,599张图片,且有图片的标注(Label)文件。 最常用的是剪裁过的图片,文件名叫img_align_celeba[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rYb9SAts-1588433391655)(https://s1.ax1x.c...

2020-05-02 23:31:15 5826 3

原创 LSUN数据集 (简介,下载,格式转换及bug修复)

LSUN数据集类似ImageNet的大规模数据集,最早出自这篇论文:《LSUN: Construction of a Large-Scale Image Datasetusing Deep Learning with Humans in the Loop》这个数据集借助深度学习自动标注图片,相比ImageNet, 其标注更丰富,不仅有图片中主要物体的标注,还有场景标注。其中场景标注是...

2020-04-27 11:42:09 10147 5

原创 数据集规则化(归一化):transforms.Normalize()

规则化(Normalize)pytorch在加载数据时,常需要归一化,如transforms.Normalize((0.5,0.5,0.5),(0.5,0.5,0.5))灰度图是:transforms.Normalize(mean=[0.5],std=[0.5])一般我们加载的数据,RGB的值范围是[0,255],常见数据集如MNIST的数值范围是[0,1]。这里取0.5是归一...

2020-04-27 10:42:34 4850 2

原创 Pytorch中的卷积与反卷积详解(conv2d和convTranspose2d)

Pytorch中的卷积与反卷积详解(conv2d和convTranspose2d)卷积和反卷积是图片计算在深度学习中常用的上采样和下采样操作。相比其他采样操作,卷积计算不仅可以保存参数的梯度传递(适用用BP),还可以改变图片的通道以更好的整合局部特征。在torchn.nn中,卷积操作是一个函数,输入为一组图片或特征变量[n,c,w,h],输出也为一组变量[n,c,w,h].变量类型为tenso...

2020-04-26 09:28:38 13752 7

原创 Pytorch的gather()和scatter()

Pytorch的gather()和scatter()1.gather()gather是取的意思,意为把某一tensor矩阵按照一个索引序列index取出,组成一个新的矩阵。gather(input,dim,index)参数:input是要取值的矩阵dim指操作的维度,0为竖向操作即按行操作,1为横向操作即按列操作index为索引序列下面这个例子是按行取出第一行的’0号元素’,'...

2020-04-21 23:32:48 393

原创 Python命令行参数设置

Python命令行参数设置(args)1.sys模块通过传入sys.argv列表,这里列表元素必须大于等于代码中设定的长度(长了会截断),不然会报错。import sysdef test_for_sys(year, name, body): print('the year is', year) print('the name is', name) print('t...

2020-03-29 12:31:00 2279

原创 pytorch下dataset和dataloader极简实践(包括自带图片)

数据类数据集主要是torch.utils.data类要实现加载和预处理数据可分为以下两个步骤:1.加载数据集(Dateset)1.1 自带数据集(Mnist/FashionMnist等)加载时需要完成数据格式的转换(transform).一种加载方法是用自带的数据集,来自torchvision大类:transform = transforms.Compose( [tr...

2020-03-28 18:19:15 1573

原创 浅谈 benchmark 和 baseline 的理解

benchmark & baselinebenchmark ,是基准的意思。而baseline是基准线的意思,两者有类似的成分,看一下英文解释:a baseline is a measurement or state at a point in time这里关键词是 state 和 a point in timea benchmark is a measurement if ...

2019-12-31 20:48:30 5017 2

原创 浅谈torch.nn库和torch.nn.functional库(Pytorch)

浅谈torch.nn库和torch.nn.functional库这两个库很类似,都涵盖了神经网络的各层操作,只是用法有点不同,nn下是类实现,nn.functional下是函数实现。conv1d在nn下是一个类,一般继承nn.module通过定义forward()函数计算其值class Conv1d(_ConvNd): def __init__(self, in_chan...

2019-12-23 12:16:17 806

原创 Python入门教程:训练过程(分类为例)

Python入门教程:训练过程(分类为例)更多代码和教程请参看:disanda.github.io 或 https://github.com/disanda1.数据集操作Pillow和OpenCV常用于操作图像scipy和librosa常用于操作语音NLTK and SpaCy常用于操作文本torchvision.datasets and torch.utils.data.Da...

2019-11-24 13:49:37 1117

原创 DCGAN的PyTorch实现

DCGAN1.什么是GANGAN是一个框架,让深度模型可以学习到数据的分布,从而通过数据的分布生成新的数据(服从同一分布)。其由一个判别器和一个生成器构成,生成器负责生成“仿造数据”,判别器负责判断“仿造数据”的质量。两者一起进化,导致造假货和识别假货的两个模型G/D都能有超强的造假和识别假货的能力。最终训练达到类似纳什均衡的平衡状态,就是分辨器已经分辨不出真假,其分别真假的成功率只有50...

2019-11-09 00:26:50 3908 8

原创 4.MNIST 改进的cnn

该模型是TF书中97页的改进版,来源于CSDN,模型使用tf框架的范围管理scope技术来优化参数设定,最终准确率为0.984这里主要引入较多参数来改进原有的cnn模型:使用激活函数去线性化使用隐藏层即加深层数以解决复杂问题使用学习率调整更新参数的频度使用滑动平均模型来调整模型结果# 导入必要的库import tensorflow as tfimport osfrom ...

2019-06-02 23:02:01 309

原创 3.cnn实现分类(MNIST数据集)

该模型是tensorflow官方文档的第二个模型,使用了cnn卷积网络该技术源于最早的lenet模型,细分计算过程,算上输入和输出,过程可分为卷积、池化、卷积、池化、全联接,总共七层。卷积是用一个卷积核(比二维图像更小的一个二维数组)去扫一遍(就是矩阵积运算)图像,卷积计算可以提取带有卷积核的特征图像池化是放大原图像局部特征,如3*3的像素值数组,突出最大像素值,清零其他像...

2019-06-02 22:56:27 2173

原创 2.MNIST 最简单的识别模型

该模型是tensorflow官方文档首个模型,没有使用卷积网络关键是构建一个公式公式为y=wx+b,带有二维像素值的数组(图片)作为输入x,标签(图片结果)作为输出y用正向传播把数据(x,y)带入训练,再反向传播提升梯度来不断调整参数(w,b),使得公式的输出尽量准确。正确率约为92%一、模型构建(计算公式实现)为了得到一章图片(28*28=784个像素值)属于...

2019-06-02 22:32:41 1178

原创 1.MNIST(简介&可视化)

1.简介MNIST 数据集来自美国国家标准与技术研究所, 是NIST(National Institute of Standards and Technology)的缩小版,训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局 (the Census Bureau) 的工作人员,测试集(test set) 也是同样比例...

2019-06-02 22:17:46 3892 1

LSUN数据集(包括论文和kitchen子集)

类似ImageNet的大规模数据集,相对ImageNet,LSUN分类更丰富,不仅有物品分类,也要场景分类,下载文件内附百度云盘提取码。

2020-04-27

LSUN数据集(dining_room子集)

类似ImageNet的大规模数据集,相对ImageNet,LSUN分类更丰富,不仅有物品分类,也要场景分类,下载文件内附百度云盘提取码。

2020-04-27

LSUN数据集(bedroom子集)

LSUN数据集(bedroom),文件中包含百度网盘提取码。LSUN是一个比较有特色的大规模数据集,相对ImageNet而言,分类更丰富,不仅有物体分类,还有场景分类。

2020-04-27

macTex.txt

mactex,总大小约4G(txt中附百度云提取码)。可用于mac系统下的latex编写。各种论文格式包全覆盖。小伙伴可以下载。

2020-04-27

空空如也

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

TA关注的人

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