业界|基于Tensorflow Estimators的文本分类系列之一

2018 年 4 月 19 日 全球人工智能

高薪招聘兼职AI讲师和AI助教!


作者 | Julian Eisenschlos Sebastian Ruder 

来自:AI前线  译者 | 徐鹏

    大家好,今天的推送给大家带来的是如何运用tensorflow提供的估计算法来进行文本类,一下是主要内容:

    1.  使用datasets加载数据

    2.  使用预罐装估计器构建基线。

    3.  使用词向量。

    4.  用卷积和LSTM图层构建自定义估计器。

    5.  加载预先训练的词向量。

    6.  使用TensorBoard评估和比较模型。

    欢迎阅读引入TensorFlow数据集和估算器的博客系列的第4部分。 您不需要阅读所有以前的内容,但是如果您想刷新以下任何概念,请看一看。 第1部分重点介绍预先制定的估算器,第2部分讨论特性列,第3部分介绍如何创建自定义估算器。

    在第4部分中,我们将基于上述内容构建自然语言处理(NLP)中的不同系列问题。 特别是,本文演示如何使用自定义TensorFlow估计器,词向量和tf.layers模块来解决文本分类任务。 一路上,我们将学习word2vec并将学习作为一种技术来提高模型在标签数据匮乏的数据集上表现足够的能力。

    我们会告诉你相关的代码片段。 以下是您可以在本地或Google Colaboratory上运行的完整Jupyter Notebook。 简单的.py源文件也可以在这里找到。 请注意,代码的编写是为了演示Estimators如何在功能上工作,并未针对最高性能进行优化。

我们的任务

    我们将使用的数据集是IMDB大型电影评论数据集,其中包含25,000个用于培训的高度极地电影评论,以及25,000个用于测试的电影评论。 我们将使用这个数据集来训练一个二元分类模型,能够预测评论是正面还是负面。

    Keras为导入数据集提供了一个方便的处理程序,该数据集也可作为序列化numpy数组.npz文件在此处下载。 对于文本分类,标准化是限制词汇的大小,以防止数据集变得太稀疏和高度,导致潜在的过度拟合。 出于这个原因,每个评论包含一系列从4(数据集中最频繁的单词)到4999(相当于橙色)的单词索引。 索引1表示句子的开始,并且索引2被分配给所有未知(也称为词外或OOV)令牌。 这些索引是通过预处理流水线中的文本数据而获得的,该流水线首先清理,标准化并标记每个句子,然后按频率建立索引每个令牌的词典。

    在我们将数据加载到内存中后,我们用0将每个句子填充到固定大小(这里是200),以便我们有两个2维25000×200分别用于训练和测试的阵列。

vocab_size = 5000

sentence_size = 200

(x_train_variable, y_train), \

(x_test_variable, y_test) = imdb.load_data(num_words=vocab_size)

x_train = sequence.pad_sequences(

   x_train_variable,

   maxlen=sentence_size,

   padding='post',

   value=0)

x_test = sequence.pad_sequences(

   x_test_variable,

   maxlen=sentence_size,

   padding='post',

   value=0)

        以上是今天的主要内容,主要介绍了文本分类的数据来源,接下来我们会继续介绍文本分类的输入、模型构建、输出以及使用场景。 

原文链接:http://ruder.io/text-classification-tensorflow-estimators/

-今晚直播预告-

点击“阅读原文”查看直播

登录查看更多
3

相关内容

文本分类(Text Classification)任务是根据给定文档的内容或主题,自动分配预先定义的类别标签。
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
126+阅读 · 2020年3月15日
《强化学习—使用 Open AI、TensorFlow和Keras实现》174页pdf
专知会员服务
136+阅读 · 2020年3月1日
Transformer文本分类代码
专知会员服务
116+阅读 · 2020年2月3日
必读的7篇IJCAI 2019【图神经网络(GNN)】相关论文-Part2
专知会员服务
58+阅读 · 2020年1月10日
【Strata Data Conference】用于自然语言处理的深度学习方法
专知会员服务
48+阅读 · 2019年9月23日
盘一盘 Python 系列 10 - Keras (上)
平均机器
5+阅读 · 2019年8月26日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
深度学习文本分类方法综述(代码)
中国人工智能学会
28+阅读 · 2018年6月16日
教程 | 用TensorFlow Estimator实现文本分类
机器之心
4+阅读 · 2018年5月17日
用TensorFlow开发问答系统
机器学习研究会
7+阅读 · 2017年11月27日
发布TensorFlow 1.4
谷歌开发者
7+阅读 · 2017年11月23日
Tensorflow 文本分类-Python深度学习
Python程序员
12+阅读 · 2017年11月22日
深度学习实战(二)——基于Keras 的深度学习
乐享数据DataScientists
15+阅读 · 2017年7月13日
A Modern Introduction to Online Learning
Arxiv
19+阅读 · 2019年12月31日
Arxiv
15+阅读 · 2019年6月25日
S4Net: Single Stage Salient-Instance Segmentation
Arxiv
10+阅读 · 2019年4月10日
Neural Approaches to Conversational AI
Arxiv
8+阅读 · 2018年12月13日
Arxiv
3+阅读 · 2018年1月31日
Arxiv
7+阅读 · 2017年12月26日
VIP会员
相关VIP内容
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
126+阅读 · 2020年3月15日
《强化学习—使用 Open AI、TensorFlow和Keras实现》174页pdf
专知会员服务
136+阅读 · 2020年3月1日
Transformer文本分类代码
专知会员服务
116+阅读 · 2020年2月3日
必读的7篇IJCAI 2019【图神经网络(GNN)】相关论文-Part2
专知会员服务
58+阅读 · 2020年1月10日
【Strata Data Conference】用于自然语言处理的深度学习方法
专知会员服务
48+阅读 · 2019年9月23日
相关资讯
盘一盘 Python 系列 10 - Keras (上)
平均机器
5+阅读 · 2019年8月26日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
深度学习文本分类方法综述(代码)
中国人工智能学会
28+阅读 · 2018年6月16日
教程 | 用TensorFlow Estimator实现文本分类
机器之心
4+阅读 · 2018年5月17日
用TensorFlow开发问答系统
机器学习研究会
7+阅读 · 2017年11月27日
发布TensorFlow 1.4
谷歌开发者
7+阅读 · 2017年11月23日
Tensorflow 文本分类-Python深度学习
Python程序员
12+阅读 · 2017年11月22日
深度学习实战(二)——基于Keras 的深度学习
乐享数据DataScientists
15+阅读 · 2017年7月13日
相关论文
A Modern Introduction to Online Learning
Arxiv
19+阅读 · 2019年12月31日
Arxiv
15+阅读 · 2019年6月25日
S4Net: Single Stage Salient-Instance Segmentation
Arxiv
10+阅读 · 2019年4月10日
Neural Approaches to Conversational AI
Arxiv
8+阅读 · 2018年12月13日
Arxiv
3+阅读 · 2018年1月31日
Arxiv
7+阅读 · 2017年12月26日
Top
微信扫码咨询专知VIP会员