Skip to content

Instantly share code, notes, and snippets.

@talolard
Last active February 8, 2018 18:02
Show Gist options
  • Save talolard/dc30215e87c0f7f25b506d3917b065e9 to your computer and use it in GitHub Desktop.
Save talolard/dc30215e87c0f7f25b506d3917b065e9 to your computer and use it in GitHub Desktop.
Quick example of padded_batch for medium post
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import tensorflow as tf"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Preparing the dataset\n",
"We'll get into this later"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [],
"source": [
"def gen_func():\n",
" for i in range(100):\n",
" yield (list(range(i)),)"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [],
"source": [
"dataset = tf.data.Dataset.from_generator(gen_func,(tf.float32,),)\n",
"value = dataset.make_one_shot_iterator().get_next()"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
"sess = tf.InteractiveSession()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When we pull"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([], dtype=float32),)"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sess.run(value)"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([0.], dtype=float32),)"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sess.run(value)"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([0., 1.], dtype=float32),)"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sess.run(value)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Batched"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [],
"source": [
"dataset = tf.data.Dataset.from_generator(gen_func,(tf.float32,),)\n",
"batched_ds = dataset.padded_batch(5,padded_shapes=(tf.TensorShape([None]),))\n",
"batched_value = batched_ds.make_one_shot_iterator().get_next()"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([[0., 0., 0., 0.],\n",
" [0., 0., 0., 0.],\n",
" [0., 1., 0., 0.],\n",
" [0., 1., 2., 0.],\n",
" [0., 1., 2., 3.]], dtype=float32),)"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sess.run(batched_value)"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([[0., 1., 2., 3., 4., 0., 0., 0., 0.],\n",
" [0., 1., 2., 3., 4., 5., 0., 0., 0.],\n",
" [0., 1., 2., 3., 4., 5., 6., 0., 0.],\n",
" [0., 1., 2., 3., 4., 5., 6., 7., 0.],\n",
" [0., 1., 2., 3., 4., 5., 6., 7., 8.]], dtype=float32),)"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sess.run(batched_value)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment