1、背景

在初版模型,基于训练数据集,利用VocabularyProcessor构建了词汇表,存储文件为old_vocab.pickle。在以后的增量更新中

如何把已经保存的上版词汇加载上,同时加入增量中的新词汇,最终形成一版新的词汇。而tf中的VocabularyProcessor没有提供

增量更新的api。

2、解决办法

利用VocabularyProcessor已经提供的接口,vocabulary_._reverse_mapping将老的词汇抽取出来,按照分词的格式重新规范化之后

与增量的词,合并成一个语料,送入新的VocabularyProcessor的训练,最后将其保存为一个新文件,新文件就包括了老版词汇和增量词汇,具体实现方法如下:

#基于老的词汇表,增量更新词汇
#old_input_text = ['a b','c d']
vocab_processor = tf.contrib.learn.preprocessing.VocabularyProcessor.restore('old_vocab.pickle')
new_input_text = ['e f','p q']
new_vocab = [" ".join(vocab_processor.vocabulary_._reverse_mapping)] + new_input_text
new_vocab_processor = tf.contrib.learn.preprocessing.VocabularyProcessor(50,0,\
tokenizer_fn=text_tokenizer)
new_vocab_processor.fit(new_vocab)
print(new_vocab_processor.vocabulary_._mapping)
print(new_vocab_processor.vocabulary_._reverse_mapping)
print(list(new_vocab_processor.transform(new_input_text)))
new_vocab_processor.save('new_vocab.pickle')

利用tensorflow的VocabularyProcessor增量更新词汇表相关推荐

  1. 4 步搞定 Hive 增量更新

    Hive 的更新很有趣. Hive 的表有两种,一种是 managed table, 一种是 external table. managed table 是 Hive 自动帮我们维护的表,自动分割底层 ...

  2. 2019FME博客大赛——【零编码】利用FME实现城市高德路况抓取及增量更新——以深圳为例

    参赛单元:互联网.大数据及云计算 作者:杨忠智 单位:平安国际智慧城市科技股份有限公司 前言 继续我的[零编码]系列. 简单是美.虽为"码农",但本身还是个GISer,所以在进行数 ...

  3. NLP自然语言处理实战(一):利用分词器构建词汇表

    在NLP中,分词(tokenization,也称分词)是一种特殊的文档切分(segmentation)过程.而文档切分能够将文本拆分成更小的文本块或片段,其中含有更集中的信息内容.文档切分可以是将文档 ...

  4. clickhouse初学以及利用ck实现BI系统的增量更新

    文章目录 概述 适用场景 库引擎(部分) 1.Atomic 2.Lazy 3.Mysql.SQLite.PostergreSQL等一系列 数据类型(部分) 表引擎-合并树系列 ReplacingMer ...

  5. tflearn的VocabularyProcessor用法:建立中文词汇表和把文本转为词ID序列

    # -*- coding: utf-8 -*-from hanziconv import HanziConv from jieba import cut from tflearn.data_utils ...

  6. hive增量表和全量表_hive 拉链表 实现全量数据 增量更新

    背景: 数据表字段有IP,IP省份,IP城市,最新访问时间,假如目前一共有100W的IP我第一次初始化的时候完成初始化表插入,然后每天都有5W左右的IP活跃,然后我要更新这5W个IP的记录到初始化的表 ...

  7. 机器学习常用术语词汇表

    EOF是一个计算机术语,为End Of File的缩写 ,在操作系统中表示资料源无更多的资料可读取. 刚接触机器学习框架 TensorFlow 的新手们,这篇由 Google 官方出品的常用术语词汇表 ...

  8. 超全汇总!机器学习常用术语词汇表

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 刚接触机器学习框架 TensorFlow 的新手们,这篇由 Goo ...

  9. 【机器学习基础】超全汇总!机器学习常用术语词汇表(建议收藏)

    刚接触机器学习框架 TensorFlow 的新手们,这篇由 Google 官方出品的常用术语词汇表,一定是你必不可少的入门资料!本术语表列出了基本的机器学习术语和 TensorFlow 专用术语的定义 ...

最新文章

  1. [微信小程序]this.setData , that.setData , this.data.val三者之间的区别和作用
  2. POJ 1190 生日蛋糕 【DFS + 极限剪枝】
  3. IP地址的分类及各类IP的最大网络数、网络号范围和最大主机数
  4. 操作数组的常用方式二-----排序、查找
  5. “远程桌面己停止工作”的解决方法
  6. java io流缓冲理解
  7. 30秒明白tcp的3次握手
  8. python代码运行顺序_python 代码运行顺序问题?
  9. [转载] python3.x总复习
  10. mysql 联合索引 range_MySQL 联合索引使用情况
  11. 基于VHDL语言的一位全加器
  12. Qt 5 下载与安装详解
  13. 计算机 交换机连接设置方法,怎么用串口线连接电脑和交换机 连接步骤教程
  14. 什么是bypass(转载)
  15. MacOS 开发 - isFlipped(坐标系)
  16. Keil(MDK)下用仿真器烧程序的同时烧写附加数据到SPI FLASH
  17. 5、bam格式转为bigwig格式
  18. Zabbix监控笔记
  19. Camshift的优点与缺点
  20. 基于R语言时间序列分析所有指令[2021]

热门文章

  1. 江苏海洋大学计算机工程学院老师,江苏海洋大学计算机工程学院导师教师师资介绍简介-吕小光...
  2. 简单python读取excel操作
  3. 海康录像机RTSP回放流的格式
  4. MapReduce实现好友单向推荐
  5. matlab trisys,Matlab实现——严格对角占优三对角方程组求解(高斯赛尔德Gauss-Seidel迭代、超松弛) | 学步园...
  6. 浏览器插件安装+使用教程,超级简单
  7. 游戏开发40课 像素和分辨率
  8. C语言回调函数 钩子函数,回调函数和钩子函数介绍
  9. 今天逛博客时看到一篇不错的C语言知识点总结,借来看看
  10. 北汽eu5车机降级方法