every blog every motto:

0. 前言

文本生成—1. 数据处理

1. 代码部分

1. 导入模块

import matplotlib as mpl
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
import sklearn
import pandas as pd
import os
import sys
import time
import tensorflow as tf
from tensorflow import kerasos.environ['CUDA_VISIBLE_DEVICES'] = '/gpu:0'
print(tf.__version__)
print(sys.version_info)
for module in mpl,np,pd,sklearn,tf,keras:print(module.__name__,module.__version__)

2. 读取文件与处理

2.1 读取

input_filepath = './shakespear.txt'
text = open(input_filepath,'r').read()print(len(text))
print(text[0:100])

2.2 生成词表

  1. generate vocab
  2. build mapping char->id
  3. data -> id_data
  4. abcd -> bcd
# 1. generate vocab
# 2. build mapping char->id
# 3. data -> id_data
# 4. abcd -> bcd<eos>vocab = sorted(set(text))
print(len(vocab))
print(vocab)

2.3 char -> id

char2idx = {char:idx for idx,char in enumerate(vocab)}
print(char2idx)

2.4 id -> char

idx2char = np.array(vocab)
print(idx2char)
text_as_int = np.array([char2idx[c] for c in text])
print(text_as_int[0:10])
print(text[0:10])

2.5 生成输入和输出

def split_input_target(id_text):""" abcde -> abcd,bcde"""return id_text[0:-1],id_text[1:]char_dataset = tf.data.Dataset.from_tensor_slices(text_as_int)
seq_length = 100
seq_dataset = char_dataset.batch(seq_length + 1,drop_remainder = True)for ch_id in char_dataset.take(2):print(ch_id,idx2char[ch_id.numpy()])for seq_id in seq_dataset.take(2):print(seq_id)print(repr('.join(idx2char[seq_id.numpy()])'))
seq_dataset = seq_dataset.map(split_input_target)for item_input,item_output in seq_dataset.take(2):print(item_input.numpy())print(item_output.numpy())
batch_size = 64
buffer_size = 10000seq_dataset = seq_dataset.shuffle(buffer_size).batch(batch_size,drop_remainder=True)

从零基础入门Tensorflow2.0 ----七、35. 文本生成之---1.数据处理相关推荐

  1. 视频编码零基础入门(0):零基础,史上最通俗视频编码技术入门

    [来源申明]本文引用了微信公众号"鲜枣课堂"的<视频编码零基础入门>文章内容.为了更好的内容呈现,即时通讯网在引用和收录时内容有改动,转载时请注明原文来源信息,尊重原作 ...

  2. SQL零基础入门学习(七)

    SQL零基础入门学习(六) SQL BETWEEN 操作符 BETWEEN 操作符选取介于两个值之间的数据范围内的值.这些值可以是数值.文本或者日期. SQL BETWEEN 语法 SELECT co ...

  3. C语言零基础入门习题(七)谁在说谎

    前言 C语言是大多数小白走上程序员道路的第一步,在了解基础语法后,你就可以来尝试解决以下的题目.放心,本系列的文章都对新手非常友好. Tips:题目是英文的,但我相信你肯定能看懂 一.There is ...

  4. 零基础入门学习Python(35)--图形用户界面入门:EasyGui

    知识点 EasyGui学习文档[超详细中文版] 1. 建议不要在IDLE上运行EasyGui EasyGui是运行在TKinter上并拥有自身的事件循环,而IDLE也是Tkinter写的一个应用程序并 ...

  5. 函数04 - 零基础入门学习C语言35

    第七章:函数04 让编程改变世界 Change the world by program 上节课的练习简单讲解,给力!! 1.自己实现pow()函数并尝试验证--   2.猜想下sqrt()函数的原理 ...

  6. 【转】Dynamics CRM 365零基础入门学习(七)Dynamics 365 DataMigrationUtility tool使用

    SDK里有个工具叫DataMigrationUtility,这个工具适合两个CRM系统之间的数据迁移.例如:在项目上线之初会做数据初始化的工作,一般这个工作会在UAT开始前完成,当UAT完成之后再把这 ...

  7. Task03——零基础入门NLP - 基于机器学习的文本分类

    学习目标 学会TF-IDF使用原理 使用sklearn的机器学习模型完成文本分类 文本表示方法 one-hot bag of words N-grams TF-IDF 基于机器学习的文本分类代码

  8. SQL零基础入门学习(八)

    SQL零基础入门学习(七) SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来. 下图展示了 LEFT JOIN.RIGHT JOIN.INNER JOIN.OUTER J ...

  9. bigdecimal判断大于零_Python零基础入门(七):运算符

    点击蓝字 一起划水 Review: Python零基础入门(一):对Python的简单认识 Python零基础入门(二):字符串基础 Python零基础入门(三):字符串进阶 Python零基础入门( ...

  10. 七天LLVM零基础入门(Linux版本)------总结

    七天LLVM零基础入门这系列文章,为了让刚接触LLVM的人在最短的时间内快速的熟悉LLVM.这系列文章,现在经过将近一年的时间的使用,有了不少反馈的意见,现在将这些情况总结一下. 1. 在按照这个七天 ...

最新文章

  1. Go 学习笔记(47)— Go 标准库之 strconv(string/int 互相转换、Parse 字符串转换为指定类型、Format 指定类型格式化为字符串)
  2. 基于redis的cas集群配置(转)
  3. c++ 怎么读取rtf文件_最全集合!Word、PPT、Excel、PDF文件转换方法大全!建议收藏...
  4. leetcode算法题--最低票价★
  5. count 多个字段_一句话实现字段拆分成多行
  6. 写给MongoDB开发者的50条建议Tip6
  7. 有关identity的小技巧
  8. php类使用自己的静态方法吗,php在类中使用静态方法有几种方式
  9. 五指棋,贪吃蛇,中国银行ATM源码链接
  10. 机器学习算法总结--K近邻
  11. css3中的渐变效果及花斑动画的实现
  12. 在线HTTP/HTTPS协议GET,POST,RESTful接口测试
  13. preg_match
  14. 第二十届全国中小学电脑制作活动通知
  15. SSH 免密码/免用户名/免IP登录云服务器实践
  16. python函数分为哪几种_python函数有哪几种
  17. mq相关的面试突击笔记 大神公众号“石杉的架构笔记
  18. Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day37】—— 并发编程3
  19. 专访:台湾这家设计公司如何hold住甲方爸爸?
  20. scalac: Token not found...

热门文章

  1. 每天一道剑指offer-栈的压入,弹出序列
  2. zeppelin 连接hive 认证方式_HIVE的学习之路(六)Hive的分组Join排序
  3. (day 27 - 递归分治 )剑指 Offer 33. 二叉搜索树的后序遍历序列
  4. 四因素三水平正交试验表_正交实验设计过程
  5. Java:面向对象编程
  6. Javascript特效:进度条
  7. 2018年单招理科考计算机吗,2018高职单招考试难吗 单招考试的内容
  8. android播放视频功能,android surfaceView实现播放视频功能
  9. java课题设计实验报告,JAVA简单记事本程序设计实验报告
  10. php mysql 数据库类_PHP操作MySQL数据库的类