自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mr_wuliboy的博客

一个无名的Multi-modal Sentiment Analysis 硕士在读

  • 博客(82)
  • 资源 (1)
  • 收藏
  • 关注

原创 把数据放到内存

相当于开一个200G的内存盘,数据文件放到/train_tmp相当于直接存内存读取,QPS会变得很大。

2023-03-23 16:57:18 149

原创 Pytorch如何合并多个dataloader

将iter(dataloader)都放到一个list,遍历list。2、可以使用zip+cycle来合并两个dataloader。1、利用iter(dataloader)

2022-09-22 17:00:47 3759 2

原创 pytorch import tensorboard ModuleNotFoundError: No module named ‘tensorboard

自带的,pytorch只提供了使用其的接口,所以需要自行下载。tensorboard不是。

2022-09-22 13:12:25 594

转载 torch.cuda.amp

自动混合精度(Automatic Mixed Precision, AMP)训练,是在训练一个数值精度为32的模型时,一部分算子的操作 数值精度为FP16,其余算子的操作精度为FP32。在反向传播时,FP16的梯度数值溢出的问题,amp提供了梯度scaling操作,而且在优化器更新参数前,会自动对梯度 unscaling。但,作为上下文管理器使用时,混合精度计算enable区域得到的FP16数值精度的变量在enable区域外要显式的转换成FP32,否则使用过程中可能会导致类型不匹配的错误。

2022-09-19 15:51:26 1206

转载 Torch训练优化

本文介绍在使用 PyTorch 训练深度模型时最省力、最有效的 17 种方法。该文所提方法,都是假设你在 GPU 环境下训练模型。具体内容如下。01考虑换一种学习率 schedule学习率 schedule 的选择对模型的收敛速度和泛化能力有很大的影响。Leslie N. Smith 等人在论文《Cyclical Learning Rates for Training Neural Networks》、《Super-Convergence: Very Fast Training of Neural Netw

2022-07-04 15:34:28 695 1

原创 linux18.04 Anaconda虚拟环境py3.7安装caffe

先允许我哭一会,安装了五个小时,踩坑无数,安装好后赶紧记录下来!CUDA、Cudnn、dirver、Anaconda自己装,本博客只记录caffe安装过程1、安装依赖包sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compilersudo apt-get install --no-install-recommends li

2022-03-15 15:50:23 2836

转载 ubuntu安装pytorch3d

依赖包安装按照官网建议安装依赖包,以下是我的版本conda create -n pytorch3d python=3.8conda activate pytorch3dconda install -c pytorch pytorch=1.7.1 torchvision cudatoolkit=10.1conda install fvcore iopath因为要自己编译,所以需要下载CUB。从github上下载CUB-1.10.0的release版本,然后解压缩,创建CUB_HOME环境变量.

2022-03-01 16:47:06 1545 1

转载 Pytorch 分布式训练

PyTorch 可以通过torch.nn.DataParallel直接切分数据并行在单机多卡上,实践证明这个接口并行力度并不尽如人意,主要问题在于数据在 master 上处理然后下发到其他 slaver 上训练,而且由于GIL的存在只有计算是并行的。torch.distributed提供了更好的接口和并行方式,搭配多进程接口torch.multiprocessing可以提供更加高效的并行训练。多进程我们都知道由于 GIL 的存在, python 要想真正的并行必须使用多进程,IO ...

2022-01-17 15:19:52 1261

原创 linux创建用户设置权限并密钥登陆

创建用户adduser name将用户目录权限设置为755(不能设置777否则无法密钥登陆)chmod 755 name设置用户sudo权限 vim /etc/sudoersname ALL=(ALL) ALL生成密钥 ssh-keygen -b 1024 -t rsacd .sshmv id_rsa.pubauthorized_keys将id_rsa下载下来用于登陆时密钥验证...

2022-01-13 18:18:07 429

原创 python 封装server clint

server:from flask import Flask, request, jsonifyimport jsonapp = Flask(__name__)@app.route("/ner_asr", methods=["POST"])def hello_world(): print("recv:") try: text = request.form.get('text') except: return "can not get

2021-12-16 16:42:38 506

原创 ffmpeg 合并多个视频同时播放

ffmpeg -i ~/Movies/objectC/facebook.mp4 -i ~/Downloads/pacopacomama-061816_108-FHD/061816_108-paco-720p.mp4 -filter_complex "[1:v]scale=w=176:h=144:force_original_aspect_ratio=decrease[ckout];[0:v][ckout]overlay=x=W-w-10:y=0[out]" -map "[out]" -movflags fa

2021-10-28 17:29:01 5670

转载 深度学习各种激活函数

在神经网络中,激活函数决定来自给定输入集的节点的输出,其中非线性激活函数允许网络复制复杂的非线性行为。正如绝大多数神经网络借助某种形式的梯度下降进行优化,激活函数需要是可微分(或者至少是几乎完全可微分的)。此外,复杂的激活函数也许产生一些梯度消失或爆炸的问题。因此,神经网络倾向于部署若干个特定的激活函数(identity、sigmoid、ReLU 及其变体)。下面是 26 个激活函数的图示及其一阶导数,图的右侧是一些与神经网络相关的属性。1. Step激活函数 Step 更倾向于理论而不是实

2021-10-09 15:23:59 631

转载 matplotlib可视化番外篇bar()--带误差棒的柱状图

本节主要分2个内容:1. 实现对柱状图添加误差棒; 2. 实现并列型带误差棒柱状图1. 实现对柱状图添加误差棒,bar()篇内容,官方bar()文档,柱状图参数详情补充参数信息xerr, yerr: 分别针对水平、垂直型误差error_kw: 设置误差记号的相关参数,包括elinewidth设置线型粗细,ecolor设置颜色,capsize设置顶部横线大小最简的实现import matplotlib.pyplot as pltx=[1,2,3,4,5]#数据集y=[20,44,21

2021-09-30 15:16:13 3201

转载 keras-BERT ValueError: Unknown layer: TokenEmbedding

问题复现:训练的模型存储方式:model.save_weights(model_path)模型加载方式from keras.models import load_modelmodel = load_model(model_path)异常:ValueError: Unknown layer: TokenEmbedding出现该错误是因为要保存的model中包含了自定义的层(Custom Layer),导致加载模型的时候无法解析该Layer解决该问题的方法是在load_model函..

2021-09-09 14:38:50 498

原创 基于ssh的scp使用

scp -P 10222 -i id_rsa_2048 -r /mnt/datasets/yangkaicheng/multimodal-moviebook/model_train/input_videos [email protected]:/home

2021-08-16 11:18:50 142

原创 2021-03-18

Ubuntu或者Centos 如何安装并使用pyopengl1、第一步安装Anaconda(不多赘述,不会的同学自己查)2、pip install PyOpenGL PyOpenGL_accelerate3、pip install pyglm(注意是pyglm而不是glm)4、pip install glfw(注意不同版本的glfw语法略有区别)5、运行代码,冲吧皮卡丘...

2021-03-18 18:03:05 211

转载 2021-03-16

ffmpeg gl-transitions 图片合成视频 转场特效参考 https://github.com/transitive-bullshit/ffmpeg-gl-transition插件本身支持 GPU 加速功能,需要用到 EGL 安装模式,本案例没有使用 EGL,部署环境为 Ubuntu 18.04注意0:按照 git 教程来反正我的 Ubuntu 是死活启动失败,报如下错误,最后按照 Dockerfile 来安装才可以正常运行,花费了好长时间,告诫需要的朋友们。[AVFil.

2021-03-16 15:23:35 1331

转载 2021-03-12

ubuntu 段错误(核心已转储)解决方法:$ulimit -c unlimited  (只对当前shell进程有效)或在~/.bashrc 的最后加入:ulimit -c unlimited(一劳永逸)

2021-03-12 16:15:11 84

原创 2021-03-11

Xshell Xming 远程显示Ubuntu服务器图形界面1、设置Xming打开Xming安装目录,修改X0.host文件,添加服务器IP2、设置Xshell3、打开服务器,设置DISPLAYecho $DISPLAYexport DISPLAY=笔记本IP(cmd ipconfig 中的IPV4的IP地址):0.0然后运行xclock即可看到表盘了...

2021-03-11 19:27:24 133

转载 使用ffmpeg在2个视频之间交叉淡入淡出

我建议这样做:创建黑色背景,其持续时间和分辨率与输出视频相同 为每个视频添加Alpha通道 为每个视频添加淡入淡出效果 在每个带黑色背景的视频上使用叠加因此,将交叉渐变添加到2个视频(5秒)的命令应该是:这将在第1秒(d = 1)期间将第一个视频淡化为第4秒(st = 4),在1秒(d = 1)期间以0秒(st = 0)淡化第二个视频(d = 1)将显示时间向前移动到4秒(+ 4 / TB)。然后我们只剪了9秒的黑色,缩放它以输出视频大小并覆盖这些东西。ffmpeg -i 1.mp4 -i

2021-03-09 10:02:17 1205

转载 如何加速git clone下载

前言最近发现github上的工程clone下来很慢,刚开始还以为公司进行了限制。后来上网一查原来大家都有这种问题。试了一些前人提供的方法也没有生效,这里只能说可能电脑自身原因吧,说不定别人用着就好用。这里提供一个简单粗暴的办法,来自知乎一位高赞回答。参考链接如下,该话题也有一些其他的方法,不过个人感觉有些方法过于麻烦,例如码云、修改代理方法,而且需要根据自己的平台来区别对待,mac和windows平台配置起来还是差别很大的。参考资料:https://www.zhihu.com/question/2

2021-01-15 12:49:28 173

原创 linux创建新用户

/添加linux用户useradd -d /home/xdliu -m -s /bin/bash xdliu//设置linux用户密码passwd xdliu

2021-01-05 13:20:26 445

原创 pytorch如何实现门控机制?

#设置前置网络及 可学习参数self.cnn=cnn_output4()self.fuse_weight_1 = torch.nn.Parameter(torch.FloatTensor(1), requires_grad=True)self.fuse_weight_2 = torch.nn.Parameter(torch.FloatTensor(1), requires_grad=Tru...

2019-11-29 15:46:29 2604

原创 BERT疑惑记录

1、单个句子的任务,我们拿第一个cls向量,上面接一些全连接层,做一个分类,标注的数据 fine-tuningbert参数也包括全连接的一个参数,为什么选择第一个?bert任务还是预测这个词,预测的时候会参考其他的词,如eat本身还是吃的语义,直接根据eat去分类,显然是不可以的,cls没有太多其他词的语义,所以它的语义完全来自其他的语义 来自整个句子,编码了整个句子的语义,用它做可以,当然...

2019-11-27 14:50:13 354

原创 cuda runtime error (59)

主要检查两个问题:1、label是否从0开始2、embedding层的input数据是否有负数,除此之外embediing的vocab_size是否正确

2019-11-21 16:45:02 549

原创 如何将tensorflow版本的预训练BERT模型转化为pytorch版本的预训练模型

https://huggingface.co/transformers/converting_tensorflow_models.htmlexport BERT_BASE_DIR=/path/to/bert/uncased_L-12_H-768_A-12transformers bert \ $BERT_BASE_DIR/bert_model.ckpt \ $BERT_BA...

2019-11-16 15:45:25 3026

原创 VSCode中pytorch出现’torch’ has no member 'xxx’的错误

VSCode中pytorch出现’torch’ has no member 'xxx’的错误在VSCode setting中搜索python.linting.pylintPath并且修改值为(你的Anaconda安装路径)/home/yangkaicheng/anaconda3/pkgs/pylint-1.8.2-py36_0/bin/pylint,修改完后就不会再报错了。如下图:...

2019-10-09 19:33:19 477

原创 解决报错:TabError: inconsistent use of tabs and spaces in indentation

python出现了报错:TabError: inconsistent use of tabs and spaces in indentation分析:这个报错就是说混用了tab和4个空格造成的,解决办法:检查代码,要不全部用tab,要不全部用4个空格,或者用IDE编辑器校正。最笨的方法,把所有代码全都手动统一成tab或者四个空格...

2019-10-09 15:17:59 340

转载 mask 机制不同框架下的应用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/zwqjoy/article/details/95050794一 Padding文本数据在处理的时候,由于各样本的长度并不一样,有的句子长有的句子短。抛开动态图、静态图模型的差异,由于需要进行矩阵运算,句长需要是等长的才可以,这就需要...

2019-09-26 12:01:38 1361

原创 LSTM详解

废话不多说,直接上重点LSTM模型是由时刻的输入词,细胞状态,临时细胞状态,隐层状态,遗忘门,记忆门,输出门组成。LSTM的计算过程可以概括为,通过对细胞状态中信息遗忘和记忆新的信息使得对后续时刻计算有用的信息得以传递,而无用的信息被丢弃,并在每个时间步都会输出隐层状态,其中遗忘,记忆与输出由通过上个时刻的隐层状态和当前输入计算出来的遗忘门,记忆门,输出门来控制。总体框架如图1所示。...

2019-09-20 17:47:42 2237

原创 记录第一次投稿的一些心得体会

本弱鸡有幸成为AAAI2020的一名分母,甚是荣幸。第一次投稿,遇到很多麻烦,首先要说的是!!!!工作量一定要够多!!!这点非常重要。会看大佬们的论文,人家都是从众多工作中选出最具创新的写入论文,其他的工作只是很短篇幅的介绍一下,然而本弱鸡工作量明显不足,为了凑够8页,自然写了不少的废话。还有就是,第一次写论文一定要规划好时间,先把论文大纲列出来,然后按照大纲一步一步的写,这样写出来的...

2019-09-07 12:23:55 1633 2

原创 各种activation function(激活函数) 简介

之前在使用activation function的时候只是根据自己的经验来用,例如二分类使用sigmoid或者softmax,多分类使用softmax,Dense一般都是Relu,例如tanh几乎没用过,最近在复线别人代码的时候发现别人Dense层使用的tanh激活函数,所以决定系统的看一下各类激活函数以及其优缺点。激活函数分类线性和非线性,例如Dense层如果不指定激活函数则会默认activ...

2019-07-02 15:19:15 8776

原创 Masking Layer的作用

在使用keras的时候,有一个Masking层,在数据预处理的时候,我们经常会为了将数据维度控制到同一维度从而使用0 填充,使用0填充后如果使用CNN神经网络其实是没有什么影响的,但是如果使用的是RNN网络的话,填充一堆无意义的0会产生一定的影响,因此这个Masking层就是来屏蔽掉这些0的,一般用于input后面mask = Masking(mask_value = 0)(input_da...

2019-07-02 14:51:07 2508

原创 使用keras二分类与多分类任务中'binary_crossentropy'与categorical_crossentropy

简单地说,'binary_crossentropy'不能用于多分类任务,如果使用了所得到的Accuary是不对的没有意义,如果多分类任务应该使用categorical_crossentropy

2019-06-30 15:15:26 9863 6

原创 Open-Smile

2019-06-18 21:08:31 193

原创 pytorch 踩坑之'tuple' object has no attribute 'size'

最近因为要用BERT的原因,需要将之前keras写的一些代码,移植到pytorch上,在写BiLSTM的时候,遇到一个问题,一脸懵逼,哪里来的tuple!!!疯了,后来,弱小无助的小菜鸡终于忍不住向大佬请教,然后大佬也疯了,最终发现这是pytorch summary的一个bug,因为pytorch在写LSTM的时候的output是一个tuple,除了output之外还有所谓的hn,cn然而su...

2019-05-24 17:20:10 50235 43

原创 随机种子

torch.manual_seed(args.seed) #为CPU设置种子用于生成随机数,以使得结果是确定的if args.cuda:torch.cuda.manual_seed(args.seed)#为当前GPU设置随机种子;如果使用多个GPU,应该使用torch.cuda.manual_seed_all()为所有的GPU设置种子。...

2019-05-13 09:40:00 544

转载 Linux服务器配置ipython远程访问

本文转自:https://blog.csdn.net/a819825294/article/details/556574961.背景  一直苦恼于本地机器和服务器上都要配置一些机器学习方面的环境,今天花了点时间研究了下Jupter notebook远程访问服务器,所以记录一下。  有些步骤非必须,这里尽量写清楚,读者理解后自行决定如何安装,本文以非root用户安装。2.安装步...

2019-05-05 13:11:52 432

原创 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 论文笔记

下游NLP任务分为两类:基于特征(feature-based),例如ELMO,使用特定于任务的体系结构,其中包括作为附加功能的预训练表示。fine-tuning,例如openAI提出的GPT,引入最小的特定于任务的参数,并通过简单地微调预训练参数对下游任务进行训练。之前的工作使用单项的语言模型去学习一般语言表示,这也是最大的限制。GPT中使用的是单项的transform...

2019-04-23 16:52:57 218

转载 keras实现transformer

#! -*- coding: utf-8 -*-#%%from __future__ import print_functionfrom keras import backend as Kfrom keras.engine.topology import Layer class Position_Embedding(Layer): def __init__(self, s...

2019-04-22 20:54:08 12680 1

TextCNN+Attention.ipynb

使用TextCNN神经网络以及Attention机制来实现文本的情感分类,该文档只是提供了完整的模型部分,可以根据自己的需要更改数据集等以及数据预处理部分.

2019-07-06

空空如也

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

TA关注的人

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