用于简化对tfrecord文件的读写数据的包

easy-tfrecords的Python项目详细描述


轻松录制

此包旨在以直观的方式帮助读取和写入tfrecord文件,从而保留数据类型和数据结构

目的

tfrecord格式是一种向tensorflow模型提供数据的快速而强大的方法;它可以自动地对数据进行批处理、随机化和跨多个时间段迭代,而无需特殊的指令。使用tfrecord文件的问题来自于在读卡器、写卡器和取卡器之间编排疯狂的匹配功能结构。

easy\u tfrecords模块包含方法和类,这些方法和类允许您以直接、可扩展的方式对tfrecord文件进行写入和读取。

功能

  • 创建tfrecord文件
  • 从单个或多个tfrecord文件中读取
  • 有选择地从tfrecord文件中读取数据
  • 检查tfrecord文件的数据结构

用法

写入

  • 将数据导入到python中,但您通常会(excel、pandas、csv、matlab等)
  • 将每个特性数组重新定形为shape=[N, x[, y[, z[, etc.]]]],其中n是特性的数量。
    • 将多个功能列表作为键值对添加到文件中

读取

  • 创建一个reader类对象,指定文件列表(可以是长度1),可以选择指定批大小和shuffe规范。
  • 传递要从文件中读取的输入的列表

示例代码:

importnumpyasnpimporttensorflowastffromeasy_tfrecordsimportcreate_tfrecords,easy_tfrecordsasrecords# CREATE SOME TEST DATAx=np.array([[0,0,0,0],[0,0,0,0]],np.int32)trainX=np.asarray([x,x+1,x+2])y=np.array([0.25],np.float32)trainY=np.asarray([y,y+1,y+2])# CREATE AND SAVE TO A FEW TFRECORDS FILEScreate_tfrecords('tfr_1.tf',x=trainX,y=trainY)create_tfrecords('tfr_2.tf',x=trainX+10,y=trainY+10)create_tfrecords('tfr_3.tf',x=trainX+100,y=trainY+100,z=trainY+100)# INSTANTIATE THE RECORDS OBJECTrec=records(files=['data_1.tf','data_2.tf'],shuffle=False,batch_size=1,keys=['x','y'])next_factory=rec.get_next_factory()batch_x=next_factory['x']batch_y=next_factory['y']withtf.Session()assess:sess.run(rec.get_initializer())forninrange(10):print('------------')print('n => {}\n'.format(n))x_eval,y_eval=sess.run([batch_x,batch_y])print('x_eval=\n{}\n'.format(x_eval))print('y_eval=\n{}'.format(y_eval))sess.close()

输出:

------------
n => 0

x_eval=
[[ 0.25]]

y_eval=
[[[0 0 0 0]
  [0 0 0 0]]]
------------
n => 1

x_eval=
[[ 1.25]]

y_eval=
[[[1 1 1 1]
  [1 1 1 1]]]
------------
n => 2

x_eval=
[[ 2.25]]

y_eval=
[[[2 2 2 2]
  [2 2 2 2]]]
------------
n => 3

x_eval=
[[ 100.25]]

y_eval=
[[[100 100 100 100]
  [100 100 100 100]]]
------------
n => 4

x_eval=
[[ 101.25]]

y_eval=
[[[101 101 101 101]
  [101 101 101 101]]]
------------
n => 5

x_eval=
[[ 102.25]]

y_eval=
[[[102 102 102 102]
  [102 102 102 102]]]
------------
n => 6

x_eval=
[[ 10.25]]

y_eval=
[[[10 10 10 10]
  [10 10 10 10]]]
------------
n => 7

x_eval=
[[ 11.25]]

y_eval=
[[[11 11 11 11]
  [11 11 11 11]]]
------------
n => 8

x_eval=
[[ 12.25]]

y_eval=
[[[12 12 12 12]
  [12 12 12 12]]]
------------
n => 9

x_eval=
[[ 0.25]]

y_eval=
[[[0 0 0 0]
  [0 0 0 0]]]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在java中查找特定命名方案的所有文件   java需要帮助在这个程序中查找错误,编译但不是计算机所必需的数字   java Androidsocket连接被拒绝   java在单元测试中使用Intent类   sql server 2008换行转义序列在Java中没有以正确的方式回避   嵌入十六进制编码的unicode Java字符串   java无法为类实现tester程序   为json字符串创建通用java映射器   java如何将2个TextView与Android中的if-else条件放在同一位置   java如何初始化锁?   为什么我的多项式类加法函数不起作用?   java Intellij不使用库构建JavaFX   java为什么在EJB类上同时使用@LocalBean和接口?   java无法在Spring Security中登录   Java中的文件创建   运行servlet需要哪个JRE。。服务器JRE还是客户端JRE?   来自Windows命令行的SOAP Web服务中的java SSL证书问题   java JPA如何为实体实施OneOnOne关系?