TensorFlow 1.0 重大功能及改善

XLA(实验版):初始版本的XLA,针对TensorFlow图(graph)的专用编译器,面向CPU和GPU。
TensorFlow Debugger(tfdbg):命令行界面和API。
添加了新的python 3 docker图像。
使pip包兼容pypi。TensorFlow现在可以通过 [pip install tensorflow] 命令安装。
更改了几个python API的调用方式,使其更类似 NumPy。
新的(实验版)Java API。
Android:全新人物检测+跟踪演示实现——“Scalable Object Detection using DNN”(带有额外的YOLO对象检测器支持)。
Android:全新基于摄像头的图像风格转换演示,使用了神经网络艺术风格转换技术。
  重大 API 变动
  为了帮助您升级现有的TensorFlow
Python代码以匹配以下API更改,我们准备了一个转换脚本,详见:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/compatibility
1、TensorFlow / models已经被移动到一个单独的github库。
2、除法和模运算符(/,//,%)现在匹配Python(flooring)语义。这也适用于 [tf.div] 和 [tf.mod]。要获取基于强制整数截断的行为,可以使用 [tf.truncatediv] 和      [tf.truncatemod]。
3、现在推荐使用 [tf.divide()] 作为除法函数。[tf.div()] 将保留,但它的语义不会回应 Python 3 或 [from future] 机制。
4、tf.reverse() 现在取轴的索引要反转。例如 [tf.reverse(a,[True,False,True])] 现在必须写为
[tf.reverse(a,[0,2])]。 [tf.reverse_v2()] 将保持到       TensorFlow 1.0 最终版。
5、[tf.mul,tf.sub ] 和 [tf.neg] 不再使用,改为 [tf.multiply],[tf.subtract] 和 [tf.negative]。
6、[tf.pack] 和 [tf.unpack] 弃用,改为 [tf.stack] 和 [tf.unstack]。
7、[TensorArray.pack] 和 [TensorArray.unpack] 在弃用过程中,将来计划启用 [TensorArray.stack] 和 [TensorArray.unstack]。

以下Python函数的参数在引用特定域时,全部改为使用 [axis]。目前仍将保持旧的关键字参数的兼容性,但计划在 1.0 最终版完成前删除。
1、tf.listdiff已重命名为tf.setdiff1d以匹配NumPy命名。
2、tf.inv已被重命名为tf.reciprocal(组件的倒数),以避免与np.inv的混淆,后者是矩阵求逆。
3、tf.round现在使用banker的舍入(round to even)语义来匹配NumPy。
4、tf.split现在以相反的顺序并使用不同的关键字接受参数。我们现在将NumPy order 匹配为tf.split(value,num_or_size_splits,axis)。
5、tf.sparse_split现在采用相反顺序的参数,并使用不同的关键字。我们现在将NumPy order
匹配为tf.sparse_split(sp_input,num_split,axis)。注意:我们暂时要求   tf.sparse_split
需要关键字参数。
6、tf.concat现在以相反的顺序并使用不同的关键字接受参数。特别地,我们现在将NumPy order匹配为tf.concat(values,axis,name)。
7、默认情况下,tf.image.decode_jpeg使用更快的DCT方法,牺牲一点保真度来提高速度。通过指定属性dct_method ='INTEGER_ACCURATE',可以恢复到旧版行为。
8、tf.complex_abs已从Python界面中删除。 tf.abs支持复杂张量,现在应该使用 tf.abs。
9、Template.var_scope属性重命名为.variable_scope
10、SyncReplicasOptimizer已删除,SyncReplicasOptimizerV2重命名为SyncReplicasOptimizer。
11、tf.zeros_initializer()和tf.ones_initializer()现在返回一个必须用initializer参数调用的可调用值,在代码中用tf.zeros_initializer()替换tf.zeros_initializer。
12、SparseTensor.shape已重命名为SparseTensor.dense_shape。与SparseTensorValue.shape相同。
13、分别替换tf.scalar_summary,tf.histogram_summary,tf.audio_summary,tf.image_summary与tf.summary.scalar, tf.summary.histogram,         tf.summary.audio, tf.summary.image。新的摘要ops以名字而不是标签作为它们的第一个参数,意味着摘要ops现在尊重TensorFlow名称范围。
14、使用tf.summary.FileWriter和tf.summary.FileWriterCache替换tf.train.SummaryWriter和tf.train.SummaryWriterCache。
15、从公共API中删除RegisterShape。使用C++形状函数注册。
16、Python API 中的 _ref dtypes 已经弃用。
17、在C++ API(in tensorflow/cc)中,Input,Output等已经从tensorflow::ops命名空间移动到tensorflow。
18、将{softmax,sparse_softmax,sigmoid} _cross_entropy_with_logits的arg order更改为(labels,predictions),并强制使用已命名的args。
  

Bug 修改及其他变动
1、新的运算 op:parallel_stack。
2、为RecordReader/RecordWriter 增加了 tf io 压缩选项常量。
3、添加了 sparse_column_with_vocabulary_file,指定将字符串特征转换为ID的特征栏(feature column)。
4、添加了index_to_string_table,返回一个将索引映射到字符串的查找表。
5、添加string_to_index_table,返回一个将字符串与索引匹配的查找表。
6、添加ParallelForWithWorkerId函数。
7、添加string_to_index_table,返回一个将字符串与索引匹配的查找表。
8、支持从contrib / session_bundle中的v2中的检查点文件恢复会话。
9、添加了tf.contrib.image.rotate函数,进行任意大小角度旋转。
10、添加了tf.contrib.framework.filter_variables函数,过滤基于正则表达式的变量列表。
11、make_template()可以添加 custom_getter_ param。
112、添加了关于如何处理recursive_create_dir现有目录的注释。
13、添加了QR因式分解的操作。
14、Python API中的分割和mod现在使用flooring(Python)语义。
15、Android:预构建的libs现在每晚构建。
16、Android: TensorFlow 推理库 cmake/gradle build 现在归在 contrib/android/cmake下面
17、Android:更强大的会话初始化(Session initialization)代码。
18、Android:当调试模式激活时,TF stats现在直接显示在demo和日志中
19、Android:全新/更好的 README.md 文档
20、saved_model可用作tf.saved_model。
21、Empty op 现在是有状态的。
22、提高CPU上ASSIGN运算的scatter_update的速度。
23、更改reduce_join,使其处理reduction_indices的方式与其他reduce_ops相同。
24、将TensorForestEstimator移动到contrib/tensor_forest。
25、默认情况下启用编译器优化,并允许在configure中进行配置。
26、使指标权重 broadcasting 更加严格。
27、添加新的类似队列的StagingArea和新运算 ops:stages 和 unstage。

tensorflow1.0中的改善的更多相关文章

  1. Hadoop 2.0 中的资源管理框架 - YARN(Yet Another Resource Negotiator)

    1. Hadoop 2.0 中的资源管理 http://dongxicheng.org/mapreduce-nextgen/hadoop-1-and-2-resource-manage/ Hadoop ...

  2. Apache Spark 2.2.0 中文文档

    Apache Spark 2.2.0 中文文档 - 快速入门 | ApacheCN Geekhoo 关注 2017.09.20 13:55* 字数 2062 阅读 13评论 0喜欢 1 快速入门 使用 ...

  3. [译] C# 5.0 中的 Async 和 Await (整理中...)

    C# 5.0 中的 Async 和 Await [博主]反骨仔 [本文]http://www.cnblogs.com/liqingwen/p/6069062.html 伴随着 .NET 4.5 和 V ...

  4. Spring.Net在Mvc4.0中应用的说明

    案例Demo:http://yunpan.cn/cJ5aZrm7Uybi3 访问密码 414b Spring.Net在Mvc4.0中应用的说明 1.引用dll 2.修改Global文件 (Spring ...

  5. WCF学习之旅—WCF4.0中的简化配置功能(十五)

    六 WCF4.0中的简化配置功能 WCF4.0为了简化服务配置,提供了默认的终结点.绑定和服务行为.也就是说,在开发WCF服务程序的时候,即使我们不提供显示的 服务终结点,WCF框架也能为我们的服务提 ...

  6. 看看C# 6.0中那些语法糖都干了些什么(终结篇)

    终于写到终结篇了,整个人像在梦游一样,说完这一篇我得继续写我的js系列啦. 一:带索引的对象初始化器 还是按照江湖老规矩,先扒开看看到底是个什么玩意. 1 static void Main(strin ...

  7. 看看C# 6.0中那些语法糖都干了些什么(中篇)

    接着上篇继续扯,其实语法糖也不是什么坏事,第一个就是吃不吃随你,第二个就是最好要知道这些糖在底层都做了些什么,不过有一点 叫眼见为实,这样才能安心的使用,一口气上五楼,不费劲. 一:字符串嵌入值 我想 ...

  8. FineUI(开源版)v6.0中FState服务器端验证的实现原理

    前言 1. FineUI(开源版)是完整开源,最早发起于 2008-04,下载全部源代码:http://fineui.codeplex.com/ 2. 你可以通过捐赠作者来支持FineUI(开源版)的 ...

  9. AppBox v6.0中实现子页面和父页面的复杂交互

    前言 1. AppBox是捐赠开源(获取源代码至少需要捐赠作者 1 元钱),基于的 FineUI(开源版)则是完整开源,网址:http://fineui.codeplex.com/ 2. 你可以通过捐 ...

随机推荐

  1. 【Python之路】第十五篇--Web框架

    Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env python #coding:utf- ...

  2. [翻译] flask-SocketIO

    最近开发工作需要用到websocket去替代老办法轮询,因为我们的web系统使用flask搭建,所以使用flask-SocketIO作为我们的websocket方案,因此顺手翻译官方文档 *** Fl ...

  3. Qt for Android 启动短暂的黑屏或白屏问题如何解决?

    解决方法一: 使用透明主题 点击项目 -> 在 构建设置 里面找到 Build Android APK 栏目,点击 create templates 创建一个 AndroidManifest.x ...

  4. boost之网络通信

    ip::tcp的内部类型socket,acceptor以及resolver是TCP通信中最核心的类. 1.同步客户端代码: #include <iostream> #include < ...

  5. vim插件快捷键

    @1:winmanager: #1:打开winmanager的快捷键在.vimrc中配置,默认为":WMToggle",使用nmap可以将其映射到其他的命令. #2:netrw快捷 ...

  6. 我的npm笔记

    本文记录一些npm的使用技巧,主要包括自己常用的命令,做个备忘. NPM 是什么? NPM是NodeJS的包管理工具,现在已经进一步发展,致力于为很多其他平台提供包管理工具,其核心思想就是让包的安装更 ...

  7. keepalived nginx 主备配置

    keepalived  nginx 主备配置(多主多备同理) 1.Nginx服务安装 nginx 不区分主备,在两台服务上安装两个即可. 安装参考:https://www.cnblogs.com/zw ...

  8. springboot获取URL请求参数的几种方法

    原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于pos ...

  9. Linux Shell编程 条件判断语法

    if条件判断语句 单分支 if 条件语句 语法格式: if [条件判断式];then 程序 fi 或者 if [条件判断式] then 程序 fi 在使用单分支 if 条件查询时需要注意几点: if ...

  10. Linux Shell基础 Shell的输入重定向和输出重定向

    概述 在 Linux 中输入设备指的是键盘,输出设备指的是显示器.在 Linux 中,所有的内容都是文件,计算机硬件也是文件,标准输入设备(键盘)和标准输出设备(显示器)也是文件.这些设备的设备文件名 ...