可视化TensorFlow图形的官方方法是使用TensorBoard,但有时我只想在Jupyter工作时快速查看图形.
是否有快速解决方案,理想情况下基于TensorFlow工具或标准SciPy软件包(如matplotlib),但如果有必要基于第三方库?
我正在使用tensorflow 0.10,我正在对官方HowTo中读取数据的示例进行基准测试.本文介绍了使用相同的MNIST示例将数据移动到tensorflow的不同方法.
我对结果感到惊讶,我想知道是否有人有足够的低层次理解来解释正在发生的事情.
在HowTo中,基本上有3种方法可以读入数据:
Feeding:在python中构建迷你批处理并传递它 sess.run(..., feed_dict={x: mini_batch})Reading from files:使用tf操作打开文件并创建小批量.(在python中绕过处理数据.)Preloaded data:将所有数据加载到单个tf变量或常量中,并使用tf函数将其分解为小批量.变量或常量固定到cpu,而不是gpu.我用来运行基准测试的脚本位于tensorflow中:
Feeding:examples/tutorials/mnist/fully_connected_feed.pyReading from files:examples/how_tos/reading_data/convert_to_records.py和examples/how_tos/reading_data/fully_connected_reader.pyPreloaded data (constant):examples/how_tos/reading_data/fully_connected_preloaded.pyPreloaded data (variable):examples/how_tos/reading_data/fully_connected_preloaded_var.py我没有修改这些脚本,除了最后两个因为它们崩溃 - 至少版本0.10 - 除非我添加一个额外的sess.run(tf.initialize_local_variables()).
在GTX1060上运行100个小批量100个示例的时间:
Feeding: ~0.001 sReading from files: ~0.010 sPreloaded data (constant): ~0.010 sPreloaded data (variable): ~0.010 s这些结果对我来说非常令人惊讶.我Feeding原本期望它是最慢的,因为它在python中几乎完成所有操作,而其他方法使用较低级别的tensorflow/C++来执行类似的操作.这与我的预期完全相反.有谁知道发生了什么?