自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 利用Transformer库搭建情感分析模型

本文讲介绍如何利用Transformer库来快速搭建一个情感分析模型,同时也将利用BeautifulSoup从Yelp中获取评论,以便能够更大规模地计算情绪。1. 导入依赖库没有的话请提前安装,安装若有问题可以留言。from transformers import AutoTokenizer, AutoModelForSequenceClassificationimport torchimport requestsfrom bs4 import BeautifulSoupimport re

2022-01-11 17:03:43 2289

原创 情感分析介绍

情感分析技术背景近些年来,随着电子商务和社交网络兴起和发展,互联网上出现了大量的主观性文本任务定义对带有感情色彩的主观性文本进行分析、处理、归纳和推理的过程 应用电商评论分析:抽取用户评论的观点以及观点的极性 舆情分析:对某个人物或某一事件的看法(以下百分数为支持的比例) 主观性文本分析:技术难点背景知识电视机的声音小(消极)电冰箱的声音小(积极)反讽/隐晦情感表达我觉得你的香水不错,你应该关起窗户省着点闻(消极)网络新词《觉醒时代》yyds!(积极)

2021-12-21 21:48:49 1045

原创 HuggingFace:pipeline为特定NLP任务直接调用

1. English Sentiment Analysis默认情况下,pipeline选择一个特定的预训练模型,该模型已为英语情绪分析进行了微调。创建分类器对象时,将下载并缓存模型。如果重新运行该命令,则将使用缓存的模型,无需再次下载该模型。from transformers import pipelineclassifier = pipeline("sentiment-analysis")classifier("I've been waiting for a HuggingFace course

2021-12-08 16:34:44 2050

原创 BERT微调之单句文本分类

单句文本分类是最常见的自然语言处理任务,需要将输入文本分成不同类别。例如:在情感分类任务SST-2中,需要将影评文本输入文本分类模型中,并将其分成褒义或贬义。1. 建模方法应用BERT处理单句文本分类任务的模型由输入层、BERT编码层和分类输出层构成。处理过程如下图所示(图源李宏毅老师课件):首先在句子的开头加一个代表分类的符号[CLS]然后将该位置的output输入到Linear Classifier,进行predict,输出一个分类。注:整个过程中 Linear Classifier

2021-12-07 15:33:23 2080

原创 BERT简单解读

BERT的原论文为:BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingBERT是Google公司在2018年提出的基于深层Transformer的预训练语言模型。BERT不仅充分利用了大规模无标注文本来挖掘其中丰富的语义信息,同时还进一步加深了NLP模型的深度。1. 整体结构BERT的基本模型结构由多层Transformer构成,包含两个预训练任务:掩码语言模型(MLM)和下一个句子预测(NS

2021-12-06 19:14:23 3274

原创 自己设计一个Transformer模型

Transformer模型在2017年被Google提出,直接基于self-attention结构,不再依赖于RNN、LSTM或者CNN,是一种Seg2Seg模型。近些年提出了许多基于Transformer的模型,有学者甚至将这一类模型称为基础模型。该模型的原始论文为Attention Is All You Need。0. 如何设计Transformer阅读该部分需要有Attention基础在Seg2Seg的基础上:剥离RNN,保留Attention–>TransformerAtte

2021-11-15 11:49:13 1911 1

原创 如何读论文

论文结构titleabstractintroductionmethodexperimentsconclusion三遍读论文第一遍:标题、摘要、结论。读完这三个部分就可以知道这篇论文大概在讲什么东西,是否值得继续阅读可以看一看方法和实验部分重要的图和表。这样可以花费十几分钟时间了解到论文是否适合你的研究方向。第二遍:确定论文值得读之后,可以快速的把整个论文过一遍,不需要知道所有的细节,需要了解重要的图和表,知道每一个部分在干什么,圈出相关文献。觉得文章太难,可以读引用的文献

2021-11-12 14:22:35 2579

原创 Self-Attention

受Attention的启发,当要表示序列中某一时刻的状态时,可以通过该状态与其他时刻状态之间的相关性计算,即所谓的“观其伴,知其意”,这又被称作自注意力机制(Self-Attention)。self-attention:把Attention用在一个RNN网络上。在提出self-attention的原始论文:Long Short-Term Memory-Networks for Machine Reading中,对LSTM网络使用了Self-Attention。本文为了方便理解,对SimpleRNN

2021-11-10 15:56:52 1289

原创 Attention及其pytorch代码实现

基于RNN的Seq2Seq的基本假设:原始序列的最后一个隐含状态(一个向量)包含了该序列的全部信息。(这显然是不合理的)Seg2Seg问题:记忆长序列能力不足解决:当要生成一个目标语言单词的时候,不光考虑前一个时刻的状态和已经生成的单词,还要考虑当前要生成的单词和源句子中的哪些单词更加相关,即更关注源句子中的哪些词,这种做法就叫做注意力机制(Attention)AttentionLuong等人在2015年发布的Effective Approaches to Attention-bas.

2021-11-09 17:07:02 19635 3

原创 Seg2Seg及其pytorch实现

Seq2Seq由来在基于词语的语言模型中,我们使用了循环神经网络。它的输入是一段不定长的序列,输出却是定长的,例如输入:They are,输出可能是 watching 或者 sleeping。many to many然而,很多问题的输出是不定长的序列。以机器翻译为例,输入是一段英文,输出是一段法语,输入和输出皆不定长,例如:英语:The are watching法语:lls regardent当输入输出序列都是不定长时,我们可以使用编码器 - 解码器(encoder-decoder)或者

2021-11-08 10:48:41 868

原创 LSTM详解

LSTM网络Long short-term Memory Networks很多地方翻译为长短期记忆网络,给人一种歧义,以为是网络一会儿能记很长的内容,一会儿能记很短的内容,但其实正确的翻译应该是长时间的短期记忆网络。它的本质就是能够记住很长时期内的信息1. 普通的RNN所有循环神经网络结构都是由结构完全相同的模块进行复制而成的。在普通的 RNN 中,这个模块非常简单2. LSTMLSTM 也有类似的结构,唯一的区别就是中间的部分,LSTM 不再只是一个单一的 层,而使用了四个相互作用的层

2021-11-04 16:37:43 4789

原创 TextRNN pytorch实现

Recurrent Neural NetworksRNN用来处理序列数据具有记忆能力Simple RNNhth_tht​:状态矩阵,不断更新(h_0: the;h_1: the cat…)只有一个参数矩阵A:随机初始化,然后用训练数据来学习A为什么需要tanh激活函数:如果不激活可能会出现梯度消失或者梯度爆炸。LSTMLSTM可以避免梯度消失的问题LSTM的记忆力要比SimpleRNN强结构图:LSTM有四个参数矩阵传送带(conveyor bert):过去

2021-11-03 14:49:25 733

原创 词向量介绍以及Word2Vec的pytorch实现

NNLM和word2vec不像图像,其本身输入到计算机中是矩阵,矩阵里的数字就隐含了其各种各样的特征,这些特征可以通过模型去学习和捕捉。而文本的输入,是字符串,这是计算机处理不了的,所以当初人们首先想到的就是独热编码,第一是这样就可以将文本转化为数字,计算机能进行处理;第二就是每个词都可以独一无二的被表示。但是这种表示丢失了词的一个很重要的特征,即语义。为了进行语义信息,联想到了分布式表示,分布式表示一个很重要的核心思想是:语义相近的词在高维度上是相互接近的。这里用一个简单的例子来感受一下分布式表示的魅

2021-11-02 17:05:18 2254

原创 TextCNN pytorch实现

TextCNN结构以下为原论文中的模型结构图:embedding卷积层MaxPoolingFlatten全连接层卷积操作在卷积神经网络中仅涉及离散卷积的情形。卷积运算的作用就类似与滤波,因此也称卷积核为filter滤波器。卷积神经网络的核心思想是捕捉局部特征(n-gram)。CNN的优势在于能够自动地对g-gram特征进行组合和筛选,获得不同抽象层次的语义信息。下图为用于文本分类任务的TextCNN结构描述(这里详细解释了TextCNN架构以及词向量矩阵是如何做卷积的)

2021-11-02 16:59:12 3420 2

原创 神经网络语言模型pytorch实现

任务是输入前(n−1)(n-1)(n−1)个单词,然后预测出下一个单词wtw_twt​数学符号说明:C(i)C(i)C(i):单词www 对应的词向量,其中iii 为词www 在整个词汇表中的索引CCC:词向量,大小为∣V∣Xm|V|Xm∣V∣Xm 的矩阵∣V∣|V|∣V∣:词汇表的大小,即预料库中去重后的单词个数mmm:词向量的维度,一般大于 50HHH:隐藏层的 weightddd:隐藏层的 biasUUU:输出层的 weightbbb:输出层的 biasWWW:输入.

2021-11-01 10:29:50 235

原创 task6 transformer情感分析

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)本文使用 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 论文中的 BERT模型。我们将固定(而不训练)transformer,只训练从

2021-09-28 11:10:06 733

原创 task5 多类别情感分析

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)本文主要是使用了新的数据集(TREC)该数据集为问答数据集,答案分为六个类别使用了前文的textcnn模型主要区别只在准确率的计算设置字段并加载数据集与之前的区别第一,我们不需要在 LABEL 字段中设置 dtype。在处理多类问题

2021-09-27 21:00:03 528

原创 task4 卷积情感分析

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)本文实现 Convolutional Neural Networks for Sentence Classification中的模型。(TextCNN)1. 数据预处理import torchfrom torchtext.legacy impo

2021-09-24 16:55:56 147

原创 task3 Faster情感分析

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)本文实现论文 Bag of Tricks for Efficient Text Classification中的模型(fasttext)该模型与改进后的RNN有相当的性能,但训练速度要快得多1. 数据预处理1.1 n-gramsFastTe

2021-09-22 17:06:16 225

原创 task2 Updated情感分析

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)本文为情感分析baseline的改进优化涉及到如何使用压缩填充序列、加载和使用预训练词向量、采用不同的优化器、选择不同的RNN体系结构(包括双向RNN、多层RNN)和正则化。1. 准备数据在准备数据的时候需要注意到,由于 RNN 只能处理序列

2021-09-17 21:52:58 170

原创 task1 情感分析baseline

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)这部分用pytorch和torchtext构造一个简单的机器学习模型来预测句子的情绪(即句子表达的情绪是正面还是负面)使用的数据集:IMDB该baseline使用RNNRNN由于循环神经网络(RNN) 通常在序列模型上表现良好,所以在第一节中

2021-09-14 15:54:30 503

原创 task0-pytorch情感分析简介

该文档为datawhale情感分析组队学习的笔记Github地址:team-learning-nlp/Emotional_Analysis at master · datawhalechina/team-learning-nlp (github.com)学习内容本次组队学习主要从一下几个方面进行学习:利用RNN进行情感二分类利用RNN的各种变体,如LSTM, BiLSTM等进行情感二分类利用更快的模型FastText进行情感二分类利用CNN进行情感二分类情感多分类利用BERT进行情感分类

2021-09-13 16:35:38 226

原创 机器学习线性回归

线性回归应用Stock Market ForecastSelf-driving(input:sensor数据;output:方向盘角度)Recommendation(input:购买人A,商品B特性;output:购买B的可能性)Combat Power of Pokemon(李宏毅宝可梦学习……)模型步骤模型假设,选择框架模型模型评估,损失函数模型优化,如何筛选最优的模型线性回归定义线性回归的定义是:目标值预期是输入变量的线性组合Hypothesis:y=b+∑i=0nwi

2021-07-14 11:12:20 112

空空如也

空空如也

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

TA关注的人

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