NLP
优雅一只猫
文章大多为笔记随笔,谢谢大佬们指错,杠精留言发泄请绕路。
展开
-
NLP学习:(二)特征提取
特征提取总结起来2步分词词向量1.分词直接参考结巴的分词就可以#注意: 中文分词后要用空格做字符#" ".join(text)2.词向量这是特征提取的关键部分# 读取停用词表def get_stopwords(stop_file): f = open(file, encoding="utf-8") stopwords = f.read() sto...原创 2019-05-14 20:43:50 · 475 阅读 · 0 评论 -
NLP(十)Bert使用
Bertbert的原理+代码估计啃至少一个星期本来bert的源代码要用起来挺不容易的,还好有大神写了个pytorch的高级封装腾讯也有个服务器的封装版 bert_as_service注:bert的序列最大长度是512,调长好像会报错pip install fast-bertfrom fast_bert.data import *from fast_bert.learner impo...原创 2019-05-30 20:17:41 · 1871 阅读 · 5 评论 -
NLP(四)词向量
词向量关于word2vec的原理网上很详细了本文代码共2种词向量转换方式1、独热编码2、word2vec1、独热编码from sklearn.preprocessing import LabelEncoderone-hot = LabelEncoder()# 输入为列表好像也可以word_vector = one-hot.fit_transform(df[‘列名’].values...原创 2019-05-18 10:29:55 · 231 阅读 · 0 评论 -
NLP(六)Fasttext
Fasttextgithub上给的文件不太会用,就用写好的fasttext包1、fasttext的特点2、代码使用1、fasttext特点层次化softmax使用霍夫曼树对标签进行编码,应对不同类别的数量不平衡问题N-gram特征可以向N-gram一样考虑到词的顺序2、代码使用import fasttext#训练集格式#__label__ , 字符串1, 字符串...原创 2019-05-22 18:11:29 · 115 阅读 · 0 评论 -
NLP(八)TextRNN文本分类
TextRNNTextRnn使用了双层RNN基本结构:embedding layer—>Bi-LSTM layer—>concat output—>FC layer —> softmax层# X是Eembeding后输入的向量lstm_1 = LSTM(100, input_dim=256, return_sequences=True)(X)lstm_2 = LS...原创 2019-05-26 21:07:59 · 734 阅读 · 2 评论 -
NLP学习:(一)数据集探索
数据集探索总结起来三步走读取数据集文件建立ID与字符串映射数组填充本文使用THUCNews数据集1.读取数据集文件encoding参数主要解决编码问题, 不报错可忽略#读取词典with open("./dataset/cnews/cnews.vocab.txt",encoding='UTF-8') as f: vocab = f.readlines() voc...原创 2019-05-12 19:00:49 · 236 阅读 · 0 评论 -
NLP学习:(三)TF-IDF
TFIDF补充上一篇文章中已经使用了sklearn的TFIDF这次补充,数据集用了高校大数据预选赛的数据集from gensim import corporaimport jiebaimport jieba.analyseimport pandas as pdimport numpy as nptext = pd.read_csv("../train.csv",linetermi...原创 2019-05-16 20:37:15 · 129 阅读 · 0 评论 -
NLP(七)TextCNN
TextCNN简要的说TextCNN提供了处理NLP的CNN框架,即卷积层等的搭配方案关于TextCNN的介绍,网上也很详细这里记录下Keras如何使用#参数可调maxlen=200max_features=2000embed_size=32comment_seq = Input(shape=[maxlen])# Embeddingemb_comment = Embeddi...原创 2019-05-24 19:32:14 · 175 阅读 · 0 评论 -
NLP(五)文本分类
文本分类1、SVM2、朴素贝叶斯3、LDA本文给出代码和使用中的效果1、SVMsvm做文本分类准确率并不高, 而且耗时, 训练集少时推荐逻辑回归from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.svm import SVCtfidf = TfidfVectorizer()# X_...原创 2019-05-20 21:14:21 · 195 阅读 · 0 评论 -
NLP(九)Attention
Attention模块需要使用keras的自定义写法简要的说Attention模块时将n个时刻的LSTM输出结合算出一个向量输入到下一个RNN中自己之前在看恩达的课程的时候,画了张图class AttentionLayer(Layer): def __init__(self, **kwargs): self.init = initializations.get('no...原创 2019-05-28 21:51:29 · 323 阅读 · 0 评论