华南技术栈CNN+Bilstm+Attention

62 篇文章 11 订阅
26 篇文章 3 订阅

我的目标适用于文本分类,
这里有一个 技术栈完全一样但是目标不一样的应该可以参考

现在的情况

2022年7月6日21:16:04已解决 换成了CPU 因为电脑太破旧了。cuda跟不上pytorch官网。

已安装 cuda cudnn anaconda pycharm

cuda 9.0对应的cudnn已经安装,对应的python是3.7和以下

尝试过anaconda添加源 创建新环境创建不了

目标:配置Win10下 的pytorch
下面是自己两天的努力过程和报错:
希望得到指点!!

基本介绍
bilstm介绍:(用的是微信登录)

实现代码
attention介绍
bert层 (大部分来源于cbow
做预训练,
一个很不错的bert讲解

该博主 bert+cnn也给了代码

该博主的代码几乎和这个是一样的,讲解有差别,可以参考着看互为补充
包括attention 机制
总之该博主是个宝藏博主 ,
txt和CSV 的区别,
(不是很清楚。。)
对txt进行数据划分

训练的时候 好像还要用 cuda

我自己安装的9.1版本的。对应的python是3.7 以及以下。

然后验证一下 算是安装好了。
在这里插入图片描述
安装完还是用不了。
找了个不用GPU的方法
当然我肯定想用,,先试试再debug
于是第二天再找,注意版本对应关系
艹。。显卡原因。最低的cuda都是10.2.。。离谱,还是用CPU试试吧。
在这里插入图片描述

纯纯看不起9.1的人哇。。

最终采取anaconda路线来搞定环境问题

装就完事了 其实还挺好用(这个好处是顺带自带了 动手学深度学习李沐那个记事本,应该可以用)
然后完美的搭建方案应该是这个,步骤靠谱
然后卸载重装cuda
这个是重装 比较细致的教程

pycharm安装torch和cuda(在anaconda创建的新环境下)

cudnn下载需要密码,账号邮箱89,密码Szy73041
这是我的cuda版本对应的cudnn
在这里插入图片描述
完成下载之后解压放到对应文件夹。分别对应的复制进去文件夹,相当于是一个补充的作用。
验证:

win+R,cmd打开命令窗,输入: cd /d C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v11.3\extras\demo_suite 回车切换路径 输入:bandwidthTest.exe
显示PASS则安装成功 输入:deviceQuery.exe 显示PASS,则cuda和cudnn均安装成功。

两个pass。。。。真的泪目,,,应该是安装成功了,
在这里插入图片描述
这一篇完美解释了anaconda环境导入到pycharm
主要是查看anaconda配置python目录的位置,但是我觉得不需要那么麻烦好像。
一会直接看看在他最后的目录看看能不能找到。
所以接下来的思路是在anaconda中配置好python解释器,然后导入到pycharm。

anaconda需要在一个配置文件里面更新一下源

创建虚拟环境失败报错之后,最后的倔强

(base) C:\Users\Administrator>conda create -n pytorch python=3.6
Collecting package metadata (current_repodata.json): failed

ProxyError: Conda cannot proceed due to an error in your proxy
configuration. Check for typos and other configuration errors in any
‘.netrc’ file in your home directory, any environment variables ending
in ‘_PROXY’, and any other system-wide proxy configuration settings.

太累了。。。这样。(又在想要不要换CPU了)
在这里插入图片描述

最终因为显卡不行换cpu,思路先通过anaconda配置好,再导入。
执行命令
(这也是自己的环境)

conda create -n pytorch_1.4.0_cpu python=3.7#CPU

配置好之后

done
#
# To activate this environment, use
#
#     $ conda activate pytorch_1.4.0_cpu
#
# To deactivate an active environment, use
#
#     $ conda deactivate

这时候 重点在于你明白你创建好的python 环境在哪个位置,一般在env

安装CPU版本的torch
基本就是这个思路

之后有些库如果不能用的话
因为conda和pip 有些库名字不一样,但是使用的时候应该是一样的

需要注意的地方是,pycharm切换解释器之后,导入的 anaconda 环境用pip或者conda命令安装包的话,安装的不在当前解释器下面,需要手动通过搜索的方式添加,也就是点击如图那个+号,不知道为啥。
在这里插入图片描述
暂时无伤大雅,记住需要注意就行。
不过如果用的是CPU的话,注意把这句话加上,(先全文搜索torch。load 然后加上后半句)不然会报错

model.load_state_dict(torch.load(config.save_path,map_location='cpu'))

至此,第一次文本分类模型复现成成功,期间心态起伏数次却始终没有放弃,恩师教诲仿佛时刻能在耳畔响起。自己虽然没有昂贵的GPU拿来学习用,
CPU无非也就是多花些时间罢了。
穷人家的孩子就是这样,要学会些什么付出的代价远远比资本家的孩子高许多许多。

自古志士无不是穷且益坚,
自古寒门无不有坚韧之志,
此去研途漫漫,山高路远,
虽贫不可忘初心之志,虽简不可忘出山之心。

2022年7月6日14:20:26 于 山西老家
在这里插入图片描述

### 回答1: CNN+Bilstm+Attention是一种深度学习模型,用于自然语言处理任务,如文本分类、情感分析等。CNN用于提取文本中的局部特征,Bilstm用于捕捉文本中的长程依赖关系,而Attention机制则可以对文本中的重要信息进行加权,从而提高模型的性能。这种模型在自然语言处理领域取得了很好的效果。 ### 回答2: CNN双向LSTM注意力机制(CNN-BiLSTM-Attention)是一种智能语义分析模型,用于自然语言处理领域的文本分类等任务中。它结合了卷积神经网络(CNN)、双向长短时记忆网络(BiLSTM)和注意力机制(Attention),能够从语义和上下文等多个角度对文本进行深入分析,同时避免了传统模型的一些缺陷和局限性。 CNN作为第一层网络,主要用于捕捉文本空间特征,比如单词、句子或段落之间的局部关联性。它通过卷积操作对文本进行特征提取,从而得到整个文本的语义表示。接着,BiLSTM作为第二层网络,主要用于捕捉文本序列特征,比如单词之间的时间依赖关系。具体地,它通过正向和反向两个LSTM网络进行计算,得到整体文本的时序表示。 最后,Attention作为第三层网络,主要用于加强文本的关键部分,比如重要的单词、短语或句子。它基于文本的向量表示,以及主题模型等技术,进行加权计算,使得模型在处理长文本时更加准确和高效。 总之,CNN-BiLSTM-Attention模型是一种基于深度学习技术的高级模型,能够胜任各种文本处理任务,比如文本分类、情感分析、机器翻译等。它不仅具备传统NLP模型的优势,而且可解决传统模型的瓶颈问题,从而提高了分析结果的准确性和实用性。当然,在实际应用中,我们需要根据具体任务选择合适的模型和参数,以达到最佳效果。 ### 回答3: CNNBiLSTMAttention都是深度学习领域中常用的模型。CNN(卷积神经网络)主要用于图像识别、物体检测等领域,可以提取图片中的空间信息,通过对不同卷积核的学习,获得不同的特征,从而实现对图片的准确分类BiLSTM(双向长短时记忆网络)则可以处理序列数据,比如自然语言处理中的文本、语音识别中的信号等。BiLSTM网络能够维护输入序列的历史信息,并且具有长短时记忆性,能够在循环神经网络中解决梯度消失和梯度爆炸问题,提高模型的泛化能力。Attention机制则是可以让模型有机会选择性地关注序列中的一部分,动态地将输入的各个元素赋予不同的权重,从而加强模型对关键信息的学习。Attention机制可以应用于自然语言处理、图像处理等领域,在机器翻译、文本摘要和图像描述方面有很好的效果。 CNNBiLSTM的结合是利用两者互补的特点,CNN能够提取局部的空间特征,而BiLSTM能够学习序列中的上下文信息。在自然语言处理中,句子中的一些单词可能会在本句话和后面的句子中重复出现,这些单词传统的深度学习模型容易忽略掉。而引入Attention机制之后,模型可以将最重要的词汇加强学习,同时忽略掉无关的词汇,从而提高模型的准确率和效果。因此,结合CNNBiLSTMAttention机制进行建模的CNN-BiLSTM-Attention模型在自然语言处理和语音识别中被广泛应用,并取得了不错的效果。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东方-教育技术博主

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值