题目
'''
Description: 文本特征处理
Autor: 365JHWZGo
Date: 2021-12-04 17:51:02
LastEditors: 365JHWZGo
LastEditTime: 2021-12-04 17:58:19
'''
什么是文本特征处理
为语料添加具有普适性的文本特征
对加入特征之后的文本语料进行必要的处理
常见的文本特征处理方法
- 添加n-gram特征
- 文本长度规范
N元模型
下一个单词出现的概率只和之前n-1个单词有关
EG:
2元模型中,输入列表有[1,2,3,4],它们中共同出现且相邻的元素为2元模型特征组合
ngram_range = 2
def create_ngram_set(input_list):
return set(zip(*[input_list[i:] for i in range(ngram_range)]))
if __name__ == '__main__':
input_list = [1,2,3,4]
print(create_ngram_set(input_list))
文本长度规范
from keras.preprocessing import sequence
cutlen = 10
# 使用pad_sequences()将x_train里的数组长度变得长度一样
def padding(x_train):
return sequence.pad_sequences(x_train,cutlen)
if __name__ == '__main__':
x_train = [
[1,4,2,9,1,29,11,23,42,421,22,42,44,56,93,89],
[7,2,1,32,9,23]
]
print(padding(x_train))