- 博客(166)
- 资源 (3)
- 收藏
- 关注
原创 循环神经网络RNN文本分类
杀死神经元#实现RNN神经网络的双向构造,用LSTM模型。self.rnn1 = tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(params['rnn_units'], return_sequences=True)) #LSTM维度为200,返回单个 hidden state值。
2024-11-05 16:20:14
239
原创 基于逻辑回归进行THUCNews文本分类
基于逻辑回归进行THUCNews文本分类的项目背景主要涉及数据集的选择与利用、文本分类任务的定义、逻辑回归模型的应用与比较、实际应用场景的支持,以及特征工程和模型评估技术。通过这一项目,研究者可以深入理解逻辑回归在文本分类中的应用,并为后续更复杂的模型提供基线参考。
2024-10-28 23:25:58
419
原创 科研绘图之折线图
基本折线图适用于数据量较小且无需显示误差的简单对比。带误差范围的折线图提供了额外的信息,能够更好地反映数据的不确定性,适合需要详细数据展示和分析的场景。
2024-08-29 09:16:45
976
原创 科研绘图之tSNE图
t-SNE(t-Distributed Stochastic Neighbor Embedding,t分布随机邻域嵌入)是一种用于数据降维和可视化的算法。它可以将高维数据映射到二维或三维空间,同时尽可能地保留数据点之间的局部关系。t-SNE特别适用于探索数据的内部结构和模式,常用于聚类分析和发现数据中的群集。在机器学习和数据分析中,t-SNE图通常用来展示数据点在降维后的分布情况,帮助观察数据点之间的相似性或差异性。
2024-07-11 16:12:45
3500
原创 意图数据集HWU、Banking预处理
来源与用途:HWU数据集通常用于自然语言处理和任务型对话系统的研究中,特别是在意图识别和对话状态追踪方面。内容特点:该数据集包含多种用户意图和对应的语句,这些语句旨在反映真实世界中用户可能提出的各种请求和查询。使用场景:研究人员可以使用HWU数据集来训练和测试他们的模型,以准确识别用户的意图,并据此作出相应的响应。
2024-07-05 10:00:06
1119
1
原创 python实现符文加、解密
在历史悠久的加密技术中,恺撒密码以其简单却有效的原理闻名。通过固定的字母位移,明文可以被转换成密文,而解密则是逆向操作。这种技术不仅适用于英文字母,还可以扩展到其他语言的字符体系,如日语的平假名或汉语的拼音。本文探讨了恺撒密码的基本原理及其在实际应用中的使用案例,并用python来实现该方法。工作中经常性会需要对一些信息进行解密,人们普遍使用一些较为简单的加密方式。加密技术不仅令人着迷,还在信息安全领域发挥着重要作用。
2024-07-01 08:59:13
1106
原创 我的创作纪念日
在过去的1095天里,我创作了150余篇博文,这些博文不仅涵盖了我对技术的理解和实践经验,也包含了我对生活的感悟和思考。同时,我的代码被分享了2.4万余次,这让我感到非常欣慰,因为我知道我的作品正在帮助和影响更多的人。三年前的今天,我踏上了成为创作者的旅程。我的初心很简单,希望通过分享实战项目中的经验,记录日常学习过程中的点滴,以及进行技术交流,让更多的人受益。
2024-06-24 11:11:56
361
原创 python实现进度条的方法和实现代码
在Python中,有多种方式可以实现进度条。这里,我将介绍七种常见的方法:使用tqdm(这是一个外部库,非常流行且易于使用)、rich、click、progressbar2等库以及纯Python的print函数与time库来模拟进度条。
2024-06-19 23:05:20
8099
1
原创 Python绘制热力图
最近投SCI论文的时候,有些实验结果需要热力图展示,所以专门试了一下如何用python绘制热力图,发现简单好用,下面分享给大家具体方法。
2024-02-04 09:54:34
8216
1
原创 统计数据集句子长度信息
在文本分类任务做科研写论文的时候,我们有时候需要对对数据集的大小进行分析,如果你想统计CSV文件中某一列英语句子的单词个数(不包含标题),可以使用Python的split()函数将句子拆分为单词,并计算单词的个数,具体实现代码和结果分析如下。
2024-01-09 09:32:21
674
原创 如何在Github上快速下载代码
这些方法中的任何一个都能让你快速下载 GitHub 上的项目代码。选择其中一个方法根据你的喜好和需求,我一般网速比较好的时候是选择第一种,如果第一种下载存在困难,则第二种是最佳选择。上述路径选择,cd 后面是你想要保存下载文件的具体路径,当然,还有一种方法是直接在你要存储的文件夹右键然后选择Open Git bash here。4. 在 GitHub 项目页面中,点击 “Code” 按钮,并复制项目的 URL。我们发现执行该命令后,Git 将会将代码库中的内容下载到你刚才指定的文件夹中。
2024-01-08 14:03:39
30079
4
原创 再见2023,你好2024(附新年烟花python实现)
坦白说,有时候我觉得自己好像是在时间的漩涡中被席卷着,努力地追逐着每一个梦想,却又无法把握住每一刻的风景。我意识到,我需要给自己留出一些时间来回首过去,反思成长,并重新调整自己的目标与方向。你们的鼓励和反馈是我前进的动力,是我坚持不断学习和成长的源泉。2023年的最后时刻,我希望你们也能找到属于自己的答案,找到自己激情的源泉。无论是过去的成就还是未来的挑战,都是值得被铭记的一部分,让我们珍惜每一次成长的机会。
2023-12-29 15:29:40
7746
16
原创 本地部署多语言代码生成模型CodeGeeX2
CodeGeeX2 是多语言代码生成模型CodeGeeXKDD’23) 的第二代模型。CodeGeeX2 基于ChatGLM2架构加入代码预训练实现,得益于 ChatGLM2 的更优性能,CodeGeeX2 在多项指标上取得性能提升(+107% > CodeGeeX;更强大的代码能力:基于 ChatGLM2-6B 基座语言模型,CodeGeeX2-6B 进一步经过了 600B 代码数据预训练,相比一代模型,在代码能力上全面提升,
2023-10-11 19:28:53
4871
原创 通义千问本地部署
*通义千问-14B(Qwen-14B)**是阿里云研发的通义千问大模型系列的140亿参数规模的模型。Qwen-14B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样,覆盖广泛,包括大量网络文本、专业书籍、代码等。同时,在Qwen-14B的基础上,我们使用对齐机制打造了基于大语言模型的AI助手Qwen-14B-Chat。本仓库为Qwen-14B-Chat的Int4量化模型的仓库。如果您想了解更多关于通义千问-14B开源模型的细节,我们建议您参阅。
2023-10-08 09:36:21
10415
6
原创 使用Git下载大语言模型
在下载Huggingface和ModelScope上面的大语言预训练模型的时候,经常会因为网页无法访问或者文件太大无法下载的情况,是大家常常比较苦恼的事情,下面给出用Git下载模型到本地的方法,可以轻松解决上述问题。
2023-09-27 14:31:18
7489
6
原创 Baichuan2大模型本地部署
我们在和六个领域的中英文和多语言权威数据集上对模型进行了广泛测试。在通用领域我们在以下数据集上进行了 5-shot 测试。推理所需的模型权重、源码、配置已发布在 Hugging Face,下载链接见本文档最开始的表格。我们在此示范多种推理方式。程序会自动从 Hugging Face 下载所需资源。>>> messages.append({"role": "user", "content": "解释一下“温故而知新”"})"温故而知新"是一句中国古代的成语,出自《论语·为政》篇。
2023-09-21 22:50:08
8948
6
原创 Windows10更新CUDA
更新CUDA版本有几个主要原因:性能优化:新版本的CUDA通常会包含针对最新GPU架构的优化,这些优化可以提升GPU的计算性能,使得你的应用程序能够更快地运行。新功能支持:更新CUDA版本可以获得新功能的支持,这些功能可能会提供更方便、更高效的编程模型,以及更丰富的GPU计算功能。这些新功能可以帮助你开发更强大和更复杂的应用程序。错误修复和稳定性改进:每个CUDA版本都会包含错误修复和稳定性改进,这些修复和改进可以提升CUDA的可靠性和稳定性。
2023-09-20 11:58:53
3881
3
原创 将PyCharm中的终端运行前面的PS修改成当前环境
最近使用Pycharm中的Terminal来pip安装一些pakage,发现Terminal运行前面的显示的是PS,然后输入安装指令报错。“python无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。重启之后,发现进入Terminal显示默认在虚拟环境中,成功解决问题。3.将shell path的位置改为cmd.exe;1.打开pycharm中的settings;2.找到Terminal选项;5.重启pycharm即可。
2023-09-08 22:22:43
2858
1
原创 轻松搭建本地知识库的ChatGLM2-6B
近期发现了一个项目,它的前身是ChatGLM,在我之前的博客中有关于ChatGLM的部署过程,本项目在前者基础上进行了优化,可以基于当前主流的LLM模型和庞大的知识库,实现本地部署自己的ChatGPT,并可结合自己的知识对模型进行微调,让问答中包含自己上传的知识。依托于本项目支持的开源 LLM 与 Embedding 模型,本项目可实现全部使用模型。与此同时,本项目也支持 OpenAI GPT API 的调用,并将在后续持续扩充对各类模型及模型 API 的接入。
2023-09-08 15:20:41
5382
4
原创 GPU版本pytorch(Cuda12.1)安装教程
我们通过Pytorch官网安装torch的时候,会发现常常由于网速问题安装不成功,下面提供一种简单的方法可以成功安装Cuda12.1,亲测有效。如上图所示,pytorch(Cuda12.1)安装成功!添加清华源可以实现网络加速,大幅度提升安装的成功率。会发现安装速度非常慢,而且很容易失败。2.1 创建并激活虚拟环境。2.3 安装torch。
2023-08-25 22:12:32
6350
1
原创 对比学习在NLP中应用全面解读
对比学习(Contrastive Learning)在自然语言处理(NLP)中具有广泛的应用。对比学习是一种无监督学习方法,旨在将相似样本聚集在一起,并将不相似样本分开。在NLP中,对比学习的目标是学习出具有语义相似性的向量表示。以下是对比学习在NLP中的一些常见应用:文本相似度计算:对比学习可以学习将语义上相似的文本对映射到相近的向量空间中。通过计算文本对之间的相似度,可以用于文本匹配、重述检测、问答系统、信息检索等任务。
2023-08-22 12:11:49
5168
4
原创 Zotero+坚果云解决存储空间不足
Zotero实现同步有三种思路:①zotero自带同步(文件同步方式选择Zotero);②zotfile+坚果云网盘同步;③zotero选项勾选文件同步+坚果云同步。由于第一种只有300M使用空间,使用一段时间就会提示存储空间不足,而且想付费扩展空间操作比较繁琐,亲测采用第三种方式是比较好的选择。
2023-08-08 12:13:55
4721
1
原创 完美解决win10系统cmd命令无法使用ssh
最近我在远程访问服务器的时候,在win+R运行cmd的时候,输入ssh来获得本地和服务器映射,无法实现。提示:’SSH’ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
2023-07-12 18:27:57
3930
原创 服务器上的Notebook在本地运行
3090TI的服务器,用的是Ubuntu系统,在使用的时候,如何让服务器资源在本地的JupyterNotebook运行呢?一、在3090TI服务器上指定一个特定的访问端口1. 在服务器上指定一个特定的访问端口一般我们配置好 jupyter notebook 之后,启动的时候只需要使用命令。
2023-07-12 10:57:25
937
原创 Ubuntu下载速度过慢解决
今天用Ubuntu下载Roberta文件到本地,速度特别慢,Ubuntu 系统自带的源文件,都是国外的源网址,在国内下载安装升级源或者依赖的时候,都比较慢,更换国内的源地址,轻松搞定此问题。
2023-06-19 23:00:32
4673
1
原创 快速解决Github无法访问的问题
Github访问慢,是困扰很多人的问题,今天就出一个解决方案,按照下面思路,可以实现快速访问Github,来查看我们需要的资源。
2023-06-16 20:27:18
5125
3
原创 数据增强在文本分类任务中的应用
我主要采用两种对比方法,一种是Roberta+数据增强(随机替换、删除、插入、交换);另一种是Roberta+数据增强(随机替换、删除、插入),然后经过对比使用,查看具体效果。数据增强(Data augmentation)这是自然语言处理(NLP)中的一个重要技术,用于增强数据集的多样性和数量,以改善模型的泛化性能和鲁棒性。可以看到效果不是很好,还没有数据增强之前好,原因分析可能是数据增强的方法过多,产生过多干扰样本,影响分类结果。一、 Roberta+数据增强(随机替换、删除、插入、交换)
2023-06-14 23:31:54
957
原创 Robert+Prompt+对比学习+对抗训练文本分类
至此,我们已经成功地训练了一款基于RoBERTa模型的文本分类器。下面是加入融合技术的实现。
2023-06-12 20:39:59
2649
7
原创 对比学习+Prompt+FGSM实现文本分类
这段代码定义了一个文本分类模型TextClassificationModel。该模型接受三个参数:model_name表示预训练模型的名称,num_labels表示分类任务的类别数,use_contrastive_learning表示是否使用对比学习进行数据增强,use_prompt表示是否使用提示进行分类。在__init__方法中,首先根据model_name加载预训练模型的配置文件,并设置num_labels为分类任务的类别数。
2023-06-10 11:02:06
1310
原创 对偶对比学习方法在文本分类任务中的应用
对偶对比学习(Dual Contrastive Learning,DCL)是一种新兴的自监督学习方法,它可以用于学习文本的表示。与传统的对比学习方法不同,DCL使用对偶性原理,将正样本和负样本的对比学习转化为两个对称的任务,从而提高了模型的性能。在文本分类任务中,DCL可以用于学习文本的表示,从而提高分类的准确性。具体来说,DCL使用两个对称的任务来学习文本的表示:正样本任务和负样本任务。在正样本任务中,DCL将同一篇文本的不同片段作为正样本,将其他文本的任意片段作为负样本,从而学习文本的表示。
2023-06-10 10:09:37
1026
原创 Robert+SimCLR+PGD实现文本分类
定义模型# 定义模型和对抗训练# 对抗训练adv_input_ids = input_ids.detach() # 分离输入以保持梯度不变# 创建PGD攻击器eps=0.3,# 对输入进行攻击# 计算对抗损失# 原始训练# 总损失为原始损失和对抗损失之和return accreturn acc。
2023-06-09 16:38:53
1361
原创 Robert+SimCLR+FGSM实现文本分类
我们选择使用RoBERTa作为文本分类模型,RoBERTa是BERT的改进版,它在BERT的基础上做了一些改进,例如使用更大的训练数据、使用更长的训练时间、去掉了NSP任务等。在训练函数中,我们首先定义了两个数据增强函数,分别为随机掩码和随机替换。随机掩码是将输入文本中的一些单词随机替换成掩码,随机替换是将输入文本中的一些单词随机替换成其他单词。这两个数据增强函数将用于生成SimCLR中的两个样本。然后我们定义了对抗训练中使用的FGM攻击函数和训练函数。
2023-06-09 14:40:47
1231
原创 ChatGPT 的实现原理和核心代码
GPT 模型是一种基于 Transformer 的语言模型,可以生成符合上下文语境的文本。在预训练阶段,GPT 模型使用大量的文本数据进行训练,学习到了丰富的语言知识。在微调阶段,我们可以使用对话数据对 GPT 模型进行微调,以使其生成符合对话场景的文本。ChatGPT 是一种基于 GPT 模型的对话生成模型,其原理是在预训练的 GPT 模型基础上,使用对话数据进行微调,以生成符合对话场景的文本。,并将其移动到 GPU 上。接着使用模型计算损失并反向传播,以微调模型。这个函数使用模型和分词器生成对话文本。
2023-06-07 14:46:22
6057
2
原创 Bert+FGSM中文文本分类
接下来,它使用torch.max()和torch.min()函数将张量X中的元素限制在下限和上限之间,并返回截断后的张量。需要注意的是,该函数中使用了clone().detach()方法来复制构造一个新的张量,这是为了避免在函数中修改原始张量X。同时,该函数中使用了X.device来将下限和上限张量分配给与X相同的设备,这是为了保证在不同设备上运行时代码的兼容性。这段代码实现了一个张量的截断操作,即将张量X中的元素限制在一个上下限范围内,返回截断后的张量。中的实现思路,下面开始记录下来具体实验代码。
2023-06-05 15:34:29
919
1
原创 Bert+FGSM/PGD实现中文文本分类(Loss=0.5L1+0.5L2)
这段代码的主要作用是创建一个用于文本分类的 BERT 模型,并初始化优化器和损失函数。其中: BertForSequenceClassification.from_pretrained('bert-base-chinese', num_labels=10) 加载了预训练的 BERT 模型,并创建了一个用于文本分类的 BERT 模型。其中,'bert-base-chinese' 表示使用中文 BERT 模型,num_labels=10 表示模型的输出类别数为 10。
2023-06-05 14:14:53
751
1
原创 Bert+对抗训练+对抗性样本防御的文本分类实战
我们用Bert实现对THUCNews文本分类,在embdedding使用FGSM添加干扰实现对抗训练,并且考虑对抗性样本的防御,代码实现并进行逐行注释,使用pytorch实现。
2023-05-27 14:28:19
1291
1
原创 基于Bert+对抗训练的文本分类实现
由于Bert的强大,它文本分类取得了非常好的效果,而通过对抗训练提升模型的鲁棒性是一个非常有研究意义的方向,下面将通过代码实战与大家一起探讨交流对抗训练在Bert文本分类领域的应用。
2023-05-26 16:14:02
1454
3
ChatGPT开源代码,可以快速实现本地部署
2023-04-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人