深度学习
文章平均质量分 61
在深度学习上遇到的问题
桐原因
这个作者很懒,什么都没留下…
展开
-
【大模型】开源大模型汇总以及微调策略
自从ChatGPT出世以来,各个大厂/研究院都纷纷推出自己的大模型,大模型领域发展一日千里。随着“百模大战”热度的降低,有必要梳理一下目前主流的大模型以及其变种模型,回顾一下。注:汇总开源模型。原创 2023-06-10 11:11:42 · 7220 阅读 · 1 评论 -
GPT系列模型技术路径演进
人工智能发展的历程如上图所示,从基于规则统计方法到机器学习的方法使用了近40年的时间,从机器学习到深度学习花费了20年的时间,而基于Transoformer预训练模型的发展时间大概是5年,而类ChatGPT模型的推出又将深度学习向前推进一步。在自然语言处理领域根据对语言的处理方式的不同,可分为**自然语言理解(NLU)**和 **自然语言生成(NLG)**两个子方向,自然语言理解:是理解语言、文本,从中提取出有用的信息,用于下游任务中,也就是让自然语言结构化。如:文本分类、信息抽取、信息检索等任务;原创 2023-03-20 17:53:32 · 5588 阅读 · 2 评论 -
【深度学习框架-Paddle】丝滑安装PaddlePaddle,无缝衔接使用多卡
但是,PaddlePaddle安装问题一直都困扰着我,什么````C++```报错了、什么不能使用多卡了,不同Linux环境安装后报错也各不相同。怎么样,才能让Paddle安装像torch那么丝滑,开箱即用,而不是陷入各种报错当中,在不断摸索的过程中,也渐渐看到了方向。某一天,在PaddleNLP文档上查看资料,看到PaddleCloud开源了基于Paddle的镜像,可开箱即用。出现了上面的结果,说明安装成功,但是只能使用单卡,虽然不能使用多卡,但是勉强用着吧,,说明Paddle完全安装成功,没有问题了。原创 2023-01-30 14:50:10 · 2088 阅读 · 0 评论 -
【深度学习框架-Paddle】ExternalError: CUDNN error(4), CUDNN_STATUS_INTERNAL_ERROR.报错原因
别看排查问题步骤写的很简单,但是花费了3个小时进行解决。太让人泪目了。不过,这次问题解决也让我明白了,报错无非是由三个方面出现的,1)逻辑错误、矩阵运算错误,2)版本(环境配置),3)计算资源当然只是简单的划分,其实每一类都存细小的分类。后面,可以按照这个思路总结一下,自己遇到问题的类别,这样bug就会越来越少了,嘻嘻嘻嘻。......原创 2022-08-15 16:25:47 · 3038 阅读 · 1 评论 -
【深度学习框架-torch】torch.norm函数详解用法
torch版本1.6原创 2022-08-14 13:28:53 · 12591 阅读 · 0 评论 -
【代码复现】知识表示学习MHGRN预处理操作(四)
Scalable Multi-Hop Relational Reasoning for Knowledge-Aware Question Answering将外部知识融入模型进行推理学习,在CommonsenseQA数据集中取得SOTA的效果。采用的外部知识为conceptNet代码分为5步:下载相关数据集对数据集进行预处理超参数搜索(可选)训练评估本部分主要讲解第2部分----数据集预处理 。上一部分,解析了有关csqa训练数据相关处理流程,由于有关解析csqa内容较为繁多,.原创 2022-04-12 22:49:18 · 1303 阅读 · 0 评论 -
【transformers】ModuleNotFoundError: No module named ‘transformers.utils.modeling_auto_mapping
最近更新了transformers的版本到4.10.0发现之前旧版本一些import出错了版本更新会导致部分文件路径更换名录,所以会报错如果出现上述错误,可以修改为from transformers.models.auto.modeling_auto大部分之前modeling_auto_mapping的函数或者常量都迁移到modeling_auto下面了...原创 2022-04-12 09:15:07 · 2727 阅读 · 3 评论 -
【代码复现】知识表示学习MHGRN预处理操作(三)
Scalable Multi-Hop Relational Reasoning for Knowledge-Aware Question Answering将外部知识融入模型进行推理学习,在CommonsenseQA数据集中取得SOTA的效果。采用的外部知识为conceptNet代码分为5步:下载相关数据集对数据集进行预处理超参数搜索(可选)训练评估本部分主要讲解第2部分----数据集预处理 。上一部分,解析了有关csqa训练数据相关处理流程,本节继续解析该部分内容基于con.原创 2022-04-09 23:12:03 · 892 阅读 · 0 评论 -
【代码复现】知识表示学习MHGRN预处理操作(二)
Scalable Multi-Hop Relational Reasoning for Knowledge-Aware Question Answering将外部知识融入模型进行推理学习,在CommonsenseQA数据集中取得SOTA的效果。采用的外部知识为conceptNet代码分为5步:下载相关数据集对数据集进行预处理超参数搜索(可选)训练评估本部分主要讲解第2部分----数据集预处理 。上一部分,解析了有关词向量common预处理操作,本节主要解析CommonsenseQ.原创 2022-04-05 23:42:55 · 1148 阅读 · 0 评论 -
【深度学习训练流程】浅析深度学习训练流程
深度学习训练流程是一套固定的模板optimizer定义,选择不同的optimizer,权重衰减,梯度更新。scheduler定义,选择不同的scheduler,进行学习率的更新。(可选,可不使用scheduler进行学习率更新,设为None,则学习率为恒定值)model初始化,选择使用GPU训练还是CPU训练loss选择优化函数,for epoch in range(epochs):# 训练几个epoch for batch_data in range(train_data):原创 2022-04-05 14:49:10 · 4036 阅读 · 0 评论 -
【代码复现】知识表示学习MHGRN预处理操作(一)
*** Scalable Multi-Hop Relational Reasoning for Knowledge-Aware Question Answering ***将外部知识融入模型进行推理学习,在CommonsenseQA数据集中取得SOTA的效果。采用的外部知识为conceptNet代码分为5步:下载相关数据集对数据集进行预处理超参数搜索(可选)训练评估本部分主要讲解第2部分----*** 数据集预处理 *** 。def load_vectors(path, skip_h原创 2022-04-04 22:07:24 · 1876 阅读 · 4 评论 -
【分布式训练】多gpu训练出现负载不均衡,尝试DistributedDataParallel分布式训练
某次训练深度学习模型时,使用*** roberta-large 模型作为基础模块,起初使用 DataParallel *** 的方式,进行单机多卡训练,卡数为2,每张卡显存为10G。训练期间发现,无法使用较大的batch_size,batch_size最大为4。同时,训练时间增加到3个小时一个epoch,时间开销太大。观察GPU利用显存率,0卡占用显存明显比1卡占用的要多,这也是*** DataParallel *** 这种模式的弊端。*** DataParallel *** 数据传输过程包括:1.原创 2022-04-04 19:31:31 · 3470 阅读 · 0 评论 -
【代码复现】NER之GlobalPointer解析
前言在NER任务中,主要分为三类实体:嵌套实体、非嵌套实体、不连续实体,今天分享方法以end-to-end的方式解决前两个问题,GlbalPointer,它利用全局归一化的思路来进行命名实体识别(NER),可以无差别地识别嵌套实体和非嵌套实体,在非嵌套(Flat NER)的情形下它能取得媲美CRF的效果,而在嵌套(Nested NER)情形它也有不错的效果。核心思想GlobalPointer是一种基于span分类的解码方法,它将首尾视为一个整体去进行判别,所以它更有“全局观”(更Global)。而且原创 2022-03-20 13:12:34 · 10367 阅读 · 26 评论 -
BERT中tokenizer的char与token的映射
前言最近在做NER相关任务,数据集是采用start、end的方式。为了能够找到原文text每个char与分词后token的映射,需要进行一番操作问题采用BertTokenizerFast的库函数进行分词举例:from transformers import BertTokenizerFasttokenizer = BertTokenizerFast.from_pretrained('bert-base-chinese',add_special_tokens=True, do_lower_cas原创 2022-03-19 23:12:54 · 2433 阅读 · 0 评论 -
VGPU安装nvidia驱动,并调用GPU服务
最近,在做GPU虚拟化,按照普通GPU安装驱动的方式,总是失败。后来才发现因为虚拟化,导致普通GPU变为vGPU。安装方式也不一样。一、说明Nvidia vGPU 需要配置授权(License)才能正常工作。用户可以选择购买官方授权(入口)或者申请 90 天试用版授权(入口)。二、配置步骤1、登录 vGPU 云主机可以使用熟悉的 ssh 工具登录;2、安装 vGPU 驱动如果创建 vGPU 云主机时选择了带 vGPU 驱动的镜像,可跳过该步。如果使用了标准镜像,则需要运行以下脚本:Cent原创 2022-01-19 13:00:30 · 6261 阅读 · 0 评论 -
Centos7 卸载nvidia驱动和CUDA toolkit
需要重装nvidia驱动,因此需要卸载之前的版本。方法:查看安装的nvidia模块命令rpm -qa|grep -i nvid|sort删除相关模块yum remove kmod-nvidia-*在卸除驱动后一定记得重启sudo reboot原创 2022-01-17 21:59:33 · 3825 阅读 · 0 评论 -
Centos7 离线安装nvidia-docker使用GPU资源
前言想让在docker中使用GPU资源,有两个选择1.安装nvidia-docker toolkit2.安装nvidaia-docker21. 安装nvidia-docker toolkit使用nvidia-container-toolkit的最大优点:linux主机不需要安装 CUDA toolkit,仅安装显卡驱动 cuda-drivers 即可安装nvidia-container-toolkit,后添加—gpus参数来使用Ubuntu 16.04/18.04, Debian Jessie原创 2022-01-13 17:24:09 · 4732 阅读 · 3 评论 -
docker runc 版本升级
1.背景:runc是一个轻量级通用容器运行环境,它允许一个简化的探针到运行和调试的底层容器的功能,不需要整个docker守护进程的接口。runc存在容器逃逸漏洞,该漏洞是由于挂载卷时,runc不信任目标参数,并将使用“filepath-securejoin”库来解析任何符号链接并确保解析的目标在容器根目录中,但是如果用符号链接替换检查的目标文件时,可以将主机文件挂载到容器中。攻击者可利用该漏洞在未授权的情况下,构造恶意数据造成容器逃逸,最终造成服务器敏感性信息泄露。2.解决方案将 runc 升原创 2022-01-12 11:26:55 · 15982 阅读 · 1 评论 -
Liunx 环境下关闭 X 服务
由于使用GUI的图形界面,在安装nVidia的时候会出现冲突,因此需要关闭图形界面,才能保证安装正常。Ubuntu 16.04 关闭x server1. 使用 init.d比如当我们安装 NVIDIA 的驱动程序时,就需要先关闭 X server,关闭的方式有两种:1)gdm# 停止图形界面sudo /etc/init.d/gdm stop# 查看状态sudo /etc/init.d/gdm status如果 /etc/init.d 下面没有 gdm 的话,也可能是ligdm原创 2022-01-11 22:40:16 · 7641 阅读 · 0 评论 -
CentOS7.9安装NVidia和CUDA
最近需要重装一下nVidia和cuda,因此在此记录一下。1. 前提准备前提机器上面有支持CUDA的Nvidia GPU,查看支持CUDA的GPU列表:https://developer.nvidia.com/cuda-gpus lspci | grep -i nvidia重装服务器使用GTX750验证系统是否是受支持的Linux版本uname -m && cat /etc/redhat-release到这里查看受支持的Linux版本:Insta.原创 2022-01-11 17:14:50 · 11682 阅读 · 0 评论 -
nvidia-docker容器中nvidia-smi中CUDA Version显示N/A
nvidia-docker2版本以上增加在启动容器的时候加上 -e NVIDIA_VISIBLE_DEVICES=all在容器中使用nvidia-smi可以显示出GPU信息图源:来自网络但是发现CUDA Version的版本为N/A,使用torch.cuda.is_available()会出现报错UserWarning: CUDA in...原创 2021-11-17 18:07:41 · 8777 阅读 · 2 评论 -
Neo4j---相关查询语句
转载 2021-02-24 22:18:28 · 251 阅读 · 0 评论 -
图数据库选型
做图谱不可避免需要到图数据库,但是如何选择一个适合的图数据库,是一个问题,这篇文章是基于前人做的对比评测,希望能让大家对目前主流的图数据库由大致了解。仅为一家之言,如有偏驳,请指正。文章会出现横向扩展和纵向扩展概念,横向扩展也叫水平扩展,用更多的节点支撑更大量的请求,如成千上万的蚂蚁完成一项搬运工作,也就是多增加几台服务器一起服务。纵向扩展也叫垂直扩展,扩展一个点的能力支撑更大请求,如蜘蛛侠逼停火车,也就是把服务器换成性能更好的机器。美团评测1.1前言美团图谱业务数据量点边总数可达千亿以上,原创 2021-02-04 18:06:46 · 1974 阅读 · 0 评论 -
一些深度学习常见的名词解释
原创 2020-11-23 09:01:12 · 389 阅读 · 0 评论 -
pytorch加载下载好的预训练模型出现问题
在官网上下载好pytorch版的预训练模型,原创 2020-11-13 09:17:39 · 9259 阅读 · 7 评论