미래를 이끌 기계 학습 프레임 워크 분석, PyTorch 및 TensorFlow?

인공 지능 오늘날의 급속한 발전으로, 기계 학습 프레임 워크가 뜨거워, 그들은 갑자기 많은 연구자와 실무자의 새로운 사랑이된다. PyTorch 및 TensorFlow : 순간, 전쟁 기계 학습 프레임 워크는 두 가지 주요 경쟁자가있다. 호레이스 그는 코넬 대학에서 비교 연구 모두에 의해 설립 된 스탠포드 인공 지능 연구소 디지털 잡지에 발표 된 연구 결과 " 그라디언트에 에." 학계, 업계 PyTorch 점점 인기가 첫 번째 선택은 여전히 TensorFlow입니다 : 그는 그것을 발견했다.

연구 분야에서 지속적으로하는 것은 PyTorch의 선도적 인 위치를 향상

다음 그림은 각 스터디의 상단을 보여주고, 별도의 PyTorch 서류 및 Tensorflow / PyTorch 용지 --2019 년 PyTorch에서 대부분의 연구에서 달성의 주요 회의 비율의 각.

다음은 연구 커뮤니티 PyTorch 발전의 속도를 보여주는 차트 PyTorch 및 TensorFlow 원료 수,이다 :

2018 년, PyTorch 소수. 이제이 대부분이며, 사용 PyTorch에서 CVPR 회의 PyTorch 연구 NAACL 및 ACL 회의, ICLR에서 ICML 회의의 75 % 이상을 차지하며 50 % 이상이 69 %를 차지했다. 볼 수 있듯이, PyTorch의 시각적 언어 클래스와 강력한에 회의에 지배하지만, 또한 ICLR와 TensorFlow에 비해 같은 ICML 같은 기계 학습 회의에서 더 인기.

왜 연구자들은 그렇게 인기 PyTorch? 다음과 같이 호레이스 몇 가지 이유가 요약 :

  • 간단한. 그것은 NumPy와 매우 파이썬 스타일과 비슷하며, 쉽게 다른 파이썬 생태계와 통합 할 수 있습니다.
  • 다양한 API. TensorFlow는 API에 비해, 대부분의 연구자들은 API PyTorch을 선호합니다.
  • 性能。尽管事实上 PyTorch 的动态图提供的优化机会很少,不过,据传闻 PyTorch 的速度甚至快于 TensorFlow。目前尚不清楚这是否为实,但至少 TensorFlow 在这一领域还没有取得决定性优势。

作者 Horace 认为 TensorFlow 的研究前景还有待观察。毕竟目前 PyTorch 已经覆盖到很多社区,这意味着 PyTorch 的实现将更容易找到,人们也更有动力在 PyTorch 中发布代码。当然,TensorFlow 在 Google/DeepMind 中还是会始终拥有一定的受众群体,但它的地位仍受到威胁,因为“有人抱怨说 Google 内部的许多研究人员都希望使用 TensorFlow 以外的框架”。

“此外,PyTorch 的统治地位可能会开始切断 Google 研究人员与其他研究社区的联系。他们不仅很难在外部研究的基础上进行构建,而且外部研究人员也不太可能在 Google 发布的代码基础上进行构建。”这是需要警惕的地方。

用于生产的 PyTorch 和 TensorFlow

尽管 PyTorch 现在在研究中占据重要地位,但 TensorFlow 仍然是行业内部的主导框架。根据公开数据,TensorFlow 的招募职位多于 PyTorch,GitHub 上 13.7k 的 TensorFlow 星标也多于 7.2k 的 PyTorch 星标。

PyTorch 在业界为什么没有取得与学界同等的受欢迎程度呢?首要答案是一贯性。TensorFlow 早于 PyTorch 出现,而且行业采用新技术的速度比研究人员要慢。另一个原因是 TensorFlow 在生产方面更胜 PyTorch 一筹。

这就要从研究人员和行业的不同需求讲起。研究人员关心他们能够以多快的速度进行研究,该研究通常是在相对较小的数据集(可以容纳在一台计算机上的数据集)上运行的。通常,这与性能方面的考虑无关,而是依靠他们快速实施新想法的能力来决定。与之相反,业界认为性能是重中之重。将运行时间提高 10% 对研究人员而言意义不大,但对公司来说,这可以直接节省数百万美元的费用。

另一个区别在于部署。研究人员在自己的计算机或专用于运行研究工作的服务器集群上进行实验。行业则有很多限制和要求:

  • No Python。一些公司会运行服务器,这些服务器的 Python 运行时开销太大。
  • 移动。无法在移动二进制文件中嵌入 Python 解释器。
  • 服务。要求功能全面,例如无停机更新模型、在模型之间无缝切换、在预测时进行批处理等。

TensorFlow 恰巧专门针对这些要求而构建,并为所有这些问题提供了解决方案:图形格式和执行引擎本来就不需要 Python,并且 TensorFlow Lite 和 TensorFlow Serving 能够分别解决移动和服务注意事项。

从历史上看,PyTorch 未能满足这些考虑,因此大多数公司目前在生产中使用 TensorFlow。

机器学习框架的现状

以上事实折射出机器学习框架的当前状态:PyTorch 拥有研究市场,并且正在尝试扩展到行业领域;TensorFlow 试图在不牺牲太多生产力的情况下,在研究界中尽其所能。TensorFlow 目前在行业中根深蒂固,且行业发展较为缓慢,因此 PyTorch 对行业产生有意义的影响肯定还需要相当长时间。不过,从 TensorFlow 1.0 到 2.0 的过渡将存在一些困难,这也恰好为公司评估 PyTorch 提供了自然机遇。

Horace 认为,未来将取决于谁能够更好地回答以下问题:

研究人员的偏好会在多大程度上影响行业?当前的博士生开始毕业时,他们将携带 PyTorch 技能。关键在于这种偏好是否足够强大,以至于公司会出于招聘目的选择 PyTorch。另一种可能是,毕业生会创办基于 PyTorch 的创业公司吗?

TensorFlow 的 Eager 模式能否赶上 PyTorch 的可用性?TensorFlow Eager 受到性能/内存问题的严重困扰,Google 将在这方面花费大量工程精力。

PyTorch 可以多快达到生产状态?PyTorch 仍然有许多基本问题尚未解决:没有好的量化指标、不支持移动、服务问题等等。在这些问题解决之前,PyTorch 不会成为许多公司的选择。 它能否做出足够的改变?(最新消息:近期 PyTorch 宣布支持量化和移动技术,两者都仍处于试验阶段,表示着 PyTorch 在这方面终于有了重大进展。)

Google 在行业中的孤立会使自身受到伤害吗?Google 推动 TensorFlow 的主要原因之一是帮助其迅速发展的云服务。由于 Google 试图拥有整个 ML 垂直市场,这激励了与 Google 竞争的公司(微软、亚马逊、Nvidia 等),来支持唯一的替代机器学习框架。

最后,Horace 指出,不仅仅是快速发展的框架,机器学习研究本身也处于不断变化的状态。框架不仅会发生变化,而且 5 年内使用的模型/硬件/范例可能与我们今天所使用的一切大不相同。随着另一种计算模型的普及,也许 PyTorch 和 TensorFlow 之间的竞争将变得无关紧要。我们应当将焦点维持在机器学习本身上,无论是喜欢 TensorFlow 还是 PyTorch,试图使机器学习软件达到最佳状态就好。

原文:https://thegradient.pub/state-of-ml-frameworks-2019-pytorch-dominates-research-tensorflow-dominates-industry

추천

출처www.oschina.net/news/110773/state-of-ml-frameworks-pytorch-and-tensorflow