百科问答小站 logo
百科问答小站 font logo



如何看待Keras正式从TensorFlow中分离? 第1页

  

user avatar   zhu-qian-li-17 网友的相关建议: 
      

谢邀。

我是Keras团队的工程师,也是主持这次code分离的工程师。

首先来介绍一下这个项目最早的初衷是什么。TF是一个巨大的项目,涉及到的代码从最底层硬件交互,到中间的算子,然后到最上层用户python,编译整个项目是一个非常耗时耗力的过程。在google内部,我们有十分强大的编译工具和cache,一般build整个项目只要几分钟。但是在普通用户的单机上,基本上就是几个小时。(我们以前组里开玩笑说租一个最大的GCP虚拟机来编译TF,七七八八大概一次要5美金左右)。所以基本上让用户从GitHub上来贡献代码就是个劝退的过程。要么PR是只改document,要么就是完全没有测试过,然后我们工程师要自己帮用户跑一遍测试。

在19年的时候大家就意识到了这个问题,TF这个项目不能无限的扩大下去。Infra组的Gunhan就提出了一个modular TF的设计(感兴趣的小伙伴可以去看看)。

主要的想法就是把不同层的代码分开打包和编译,然后互相只通过公开的接口来交互。我们这次的项目也是同样的初衷,具体的设计可以从下面看到。

原本这个设计在20年初就通过了,后来因为疫情稍微延后了一下。主要的时间是花在了清理TF和Keras之间的依赖关系上,而且原本很多Keras代码直接使用了非公开API,把它们全都改写成公开API花了很多功夫。

具体的成果就是现在编译Keras完全不耗时(因为python不需要编译),跑单元测试也基本很快,更重要的是基本理清了既存代码里的依赖关系。

站在用户的角度说,这个改动是基本没有影响的,我们只是把代码挪了个地方,正常的tf.keras API也没有任何改变。对于想贡献代码的小伙伴应该会让体验更加好一点。

希望这个回答能够解答大家的疑问,而不是让大家觉得我们在反复横跳[doge]。

谢谢




  

相关话题

  如何看待腾讯再投500亿助力共同富裕? 
  怎么看待特斯拉回应上海工厂曾因缺芯部分停产? 
  如何看待华为已捐赠鸿蒙最核心基础架构?意味着什么? 
  如何看待华为 P50 Pro 开售就被抢购一空? 
  如何看待微信将于 5 月 19 日停止小程序打开 App 技术服务?微信此举意在何处? 
  如何评价微软和英伟达推出的迄今为止训练最大最强的语言模型 MT-NLG? 
  微软 2021 年 6 月 24 日发布的 Windows11 体验如何?在哪些方面做了改进? 
  如何评价 7 月 29 日发布的华为 P50 系列手机? 
  如何看待淘宝推出「给爱的人也送一份」功能,支持双地址填写,有哪些东西购买时会想给父母或爱人也买一份? 
  如何评价 Apple Watch 通过国家药品监督管理局医疗器械批准,这意味着什么? 

前一个讨论
如何学习好 Git ?
下一个讨论
你是如何自学R语言的?





© 2024-05-13 - tinynew.org. All Rights Reserved.
© 2024-05-13 - tinynew.org. 保留所有权利