前言
今天总结的是文本张量的处理方法。
一、文本张量表示方法
常见的文本张量表示方法包括以下三种: 1 one-hot编码 是一种0,1表示方式,将有的地方表示为1,无的地方表示为0 2 word2vec 包括CBOW和Skipgram 3 word embedding 词嵌入方式,将文本转化为张量
二、文本数据分析
1.标签数量分布
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('fivethirtyeight')
train_data=pd.read_csv("./training_dataset.csv")
valid_data=pd.read_csv("./validation_dataset.csv")
#标签分布
#若标签为离散值
sns.countplot("label",data=train_data)
plt.title("train_data")
plt.show()
sns.countplot("label",data=valid_data)
plt.title("valid_data")
plt.show()
#若标签为连续值
sns.distplot(train_data["label"])
plt.ysticks([])
plt.title("train_data")
plt.show()
sns.distplot(valid_data["label"])
plt.ysticks([])
plt.title("valid_data")
plt.show()
2.句子长度分布
#若句子长度为离散值
train_data["sentence_length"]=list(map(lambda x: len(x), train_data["sequence"]))
valid_data["sentence_length"]=list(map(lambda x: len(x), valid_data["sequence"]))
sns.countplot("sentence_length",data=train_data)
plt.xsticks([])
plt.show()
sns.countplot("sentence_length",data=valid_data)
plt.xsticks([])
plt.show()
sns.stripplot(y='sentence_length',x='label',data=train_data)
plt.show()
sns.stripplot(y='sentence_length',x='label',data=valid_data)
plt.show()
#若句子长度为连续值
sns.distplot(train_data["sentence_length"])
plt.ysticks([])
plt.show()
sns.distplot(valid_data["sentence_length"])
plt.ysticks([])
plt.show()
总结
总结了一下文本张量的处理方法,如上所示,最近太久没有学习,太久没写代码,感觉手生了,更新也不太及时,希望之后至少周更。
|