写点什么

谷歌宣布 TensorFlow Object Detection API 支持 TensorFlow 2

  • 2020 年 7 月 29 日
  • 本文字数:1161 字

    阅读完需:约 4 分钟

谷歌宣布TensorFlow Object Detection API支持TensorFlow 2

谷歌宣布 TensorFlow Object Detection API(OD)支持 TensorFlow 2(TF2)。该版本包含与 eager 模式兼容的二进制文件、两个新的网络架构和针对所有受支持模型的预训练权重。


软件工程师 Vivek Rathod 和研究科学家 Jonathan Huang 在 TensorFlow 博客上对新版本的新特性做了概述。大部分工作是让现有的预训练模型与 TF2 兼容,对模型代码进行移植,使用了 Keras 层,并提供权重作为 TF2 检查点。OD 框架还支持同步分布式训练,以及用于训练、评估和导出的 eager 模式二进制文件。虽然所有的新模型和新的开发工作都只与 TF2 有关,但 TF1 仍然受支持。大多数代码模块都兼容 TensorFlow 的两个版本,不兼容的模块则分成两个版本。Rathod 和 Huang 写道:


我们的想法是让 TF2 和 Keras 的所有好处都暴露出来,同时继续为 TF1 的广大用户群提供支持。


TensorFlow Object Detection API 是“一个建立在 TensorFlow 之上的开源框架,让对象检测模型的构建、训练和部署变得更加容易”。这个框架包含了一组用于管理图像数据输入和对象检测模型接口的工具。一般来说,目标检测模型的输入是一个图像,然后输出一组方框,表示在图像中检测到的物体位置。OD API 还提供了预训练“模型动物园”,这对于开发自定义对象检测应用程序非常有用。“模型动物园”包含了几种流行的深度学习计算机视觉架构,如 MobileNetResNet,它们是基于 Common Objects in Context(COCO) 2017 数据集进行训练的。


TensorFlow 2 于 2019 年 9 月发布,采用 Keras 作为定义模型的官方高级 API。Keras 最初被设想为定义神经网络的接口,支持后端,包括 TensorFlow 和 Theano。TF2 还将 eager 执行设置为默认模式,让开发和调试变得更加容易。新的 OD API 利用了这些特性。预训练的模型使用 Keras 层重新实现,权重以 TF2 检查点格式进行保存。OD 框架中的辅助代码已经经过编译,开发人员可以通过交互式的方式来调试模型。新的 OD API 还支持同步分布式训练,可以加快大型模型的训练,同时不会降低准确性(相比异步分布式训练)。


除了移植现有模型,新版本还包含了两个新的模型架构: CenterNetEfficientDet。CenterNet 使用单点来表示对象位置,而不是方框,并具备“最佳的速度和精度权衡”(基于 COCO 数据集)。EfficientDet 是一个新的对象检测模型,比之前的 SOTA 模型体积小了 4 倍到 9 倍,使用更少的 FLOP(13 倍到 42 倍)。


一名 Reddit 用户评论道:


EfficientDet 看起来真的很有前途,它们致力于通过 TF2 让训练 OD 模型变得更容易。不过我觉得 TF 团队绝对可以投入一些资源来构建一个更简单的 Object Detection API,可以从 Torch Hub、Huggingface 甚至 Tensorflow Hub 获得灵感。


Object Detection API源代码和预训练模型可以在 GitHub 上找到。


原文链接


Google Announces TensorFlow 2 Support in Object Detection API


2020 年 7 月 29 日 11:341203

评论

发布
暂无评论
发现更多内容

2.1 类加载器、 双亲委派模型 -《SSM深入解析与项目实战》

谙忆

learn go with tests 学习笔记(三) 指针和错误

半亩房顶

Go

操作系统和并发的爱恨纠葛

cxuan

Java 并发

Jessie’s产品经理系列1-基础能力篇

架构5班杨娟Jessie

产品经理 能力模型

InnoDB存储引擎简介

Simon

MySQL innodb

字符串匹配 - Sunday算法

半亩房顶

数据结构与算法 字符串匹配算法

learn go with tests 学习笔记(一) hello world

半亩房顶

Go

1.1 了解Spring框架 -《SSM深入解析与项目实战》

谙忆

JVM系列之:再谈java中的safepoint

程序那些事

Java JVM JIT safepoint

C/C++陷阱与套路,当年就是折在这些地儿…

华为云开发者社区

c++ 设计 编辑 程序 陷阱

SQL的三十而已—SQL30问

大唐小生

sql 技术人生

人生修炼秘籍

xiaoboey

时间管理 人生修炼 知行合一 熵增 时间复利

LeetCode题解:24. 两两交换链表中的节点,迭代,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

微服务架构下你的数据一致了吗?

码猿外

架构 微服务 数据一致性

CDN百科10:快速上手阿里云DCDN全站加速,最新配置与购买优惠教程

阿里云Edge Plus

CDN 直播 网页加速

Java项目如何分层

老胡爱分享

分层架构 项目

Web 开发必须掌握的三个技术:Token、Cookie、Session

华为云开发者社区

HTTP Token web开发 session Cookie

视频会议专线部署不会?别急,我教你

华为云开发者社区

网络 网关 华为云 高清视频 welink

计算机网络基础(十五)---传输层-TCP协议详解

书旅

计算机网络 网络 协议栈 协议族

菊长说丨一文读懂MySQL4种事务隔离级别

华为云开发者社区

MySQL 数据库 事务隔离级别 事务 华为云

learn go with tests 学习笔记(二) 数组与切片

半亩房顶

Go

ChaosBlade:从零开始的混沌工程(五)

郭旭东

Kubernetes 云原生 混沌工程

Google Protocol Buffer 学习笔记

半亩房顶

protobuf

Netty之旅:你想要的NIO知识点,这里都有!

一枝花算不算浪漫

Netty nio

learn go with tests 学习笔记(六)进程同步

半亩房顶

Go

1.2 了解MyBatis -《SSM深入解析与项目实战》

谙忆

learn go with tests 学习笔记(五)并发

半亩房顶

Go

七的婚姻生活

徐说科技

秒懂云通信:如何使用阿里云号码认证服务(小白指南)

阿里云Edge Plus

云通信 通信云 号码认证

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

learn go with tests 学习笔记(四)依赖注入

半亩房顶

Go

聊聊IO夯的那些事

聊聊IO夯的那些事

谷歌宣布TensorFlow Object Detection API支持TensorFlow 2-InfoQ