昨天午饭时分,营长注意到Kaparthy小哥(特斯拉AI主管、马斯克红人、李飞飞高徒)的Twitter活跃了起来:

大意是说,Google一周前给TensorFlow增加的新模型NASNet让人很是兴奋。

NASNet的GitHub地址

https://github.com/tensorflow/models/tree/master/research/slim/nets/nasnet

这个代码分析起来比较难,但实现出来的模型是相当好用的,它在速度和准确度之间的取舍之道令人印象深刻。

看到此处,营长顿感此模型定是高手所为。

果不其然,在TensorFlow的GitHub页面,Google是这么说的:

该目录所包含的是NASNet模型的代码,这个模型出自Zoph等人的论文:Learning Transferable Architectures for Scalable Image Recognition(通过学习可迁移结构实现具有可扩展性的图像识别任务)。

该目录的nasnet.py文件,包含有三种不同配置的NASNet模型实现。其中NASNet-A是基于CIFAR-10数据集的模型,而另外两个模型则是NASNet-A基于ImageNet数据集的变体。

看来要查查"Learning Transferable Architectures for Scalable Image Recognition"这篇论文,一查才知道论文作者是Google Brain的四位大牛Barret Zoph, Vijay Vasudevan, Jonathon Shlens, Quoc V. Le。其中Quoc V. Le还是吴恩达的得意门生。

该论文于7月21日提交的初版,10月25日刚刚更新第二版,目测是为该TensorFlow模型的上线做准备。

该模型的使用介绍详述如下:

预训练模型


在ILSVRC-2012-CLS图像分类数据库上训练出来的两个NASNet-A模型,其节点参数是可用的,模型的分类精度是通过评估单幅图像计算出来的,数值如下表:

关于如何下载NASNet-A_Mobile_224模型节点参数,命令行代码如下所示,NASNet-A_Large_331模型的下载方式与之类似。

CHECKPOINT_DIR=/tmp/checkpoints

mkdir ${CHECKPOINT_DIR}

cd ${CHECKPOINT_DIR}

wget https://storage.googleapis.com/download.tensorflow.org/models/nasnet-a_mobile_04_10_2017.tar.gz tar -xvf nasnet-a_mobile_04_10_2017.tar.gz

rm nasnet-a_mobile_04_10_2017.tar.gz

在TF-Slim图像分类库中得到更多关于如何将NASNet模型与自己项目相结合的信息:

https://github.com/tensorflow/models/blob/master/research/slim/README.md

要在设备上运行这些模型,需要在移动端上安装Tensorflow

https://www.tensorflow.org/mobile/

使用该模型进行推断的代码样例

测试NASNet模型—一个移动端的ImageNet模型

DATASET_DIR=/tmp/imagenet

EVAL_DIR=/tmp/tfmodel/eval

CHECKPOINT_DIR=/tmp/checkpoints/model.ckpt

python tensorflow_models/research/slim/eval_image_classifier \

--checkpoint_path=${CHECKPOINT_DIR} \

--eval_dir=${EVAL_DIR} \

--dataset_dir=${DATASET_DIR} \

--dataset_name=imagenet \

--dataset_split_name=validation \

--model_name=nasnet_mobile \

--eval_image_size=224 \

--moving_average_decay=0.9999

测试NASNet模型—一个大型的ImageNet模型

DATASET_DIR=/tmp/imagenet

EVAL_DIR=/tmp/tfmodel/eval

CHECKPOINT_DIR=/tmp/checkpoints/model.ckpt

python tensorflow_models/research/slim/eval_image_classifier \

--checkpoint_path=${CHECKPOINT_DIR} \

--eval_dir=${EVAL_DIR} \

--dataset_dir=${DATASET_DIR} \

--dataset_name=imagenet \

--dataset_split_name=validation \

--model_name=nasnet_large \

--eval_image_size=331 \

--moving_average_decay=0.9999

很快,就有人觉得TensorFlow的官方部署方法太笨了,Teahoon Lee立刻贴上了自己前一天刚刚优化出来的方法:

https://github.com/taehoonlee/tensornets/blob/master/tensornets/nasnets.p

y

Kaparthy小哥立刻表示,”干得漂亮!“

不过,TensorFlow有了新模型,PyTorch自然也不甘落后,几小时后,Remi Cadene就给出了该模型的Pytorch实现:

https://github.com/Cadene/pretrained-models.pytorch/blob/master/pretrainedmodels/nasnet.py

对于TensorFlow的原始代码,这两位小哥均表示太难读了,他们都是使用tensorboard工具才写好的新代码。

而计算机视觉全栈工程师、TenDozen创始人Jared则就此专门 @ Kaparthy小哥:我发现,绝大部分出自于论文的新模型,需要相当多的调教才能适用于工业级生产环境。但聊胜于无,至少我们现在是有了一个全新的模型。

从论文概念到实际部署,耗时不到4个月的NASNet,用时应当算是很短了。但是,鉴于Kaparthy小哥都说这代码很难,想必该模型距离部署到Tesla的自动驾驶平台,还是有一段路要走的。

另外,成功引起Kaparthy注意的那两位小哥,你们要不要来Tesla参观一圈?

精彩推荐

“GANs 之父”Goodfellow亲身传授:深度学习未来的8大方向和入门AI必备的三大技能

四个月速成全栈机器学习?这位黑人小哥三个半月就开始找工作了

什么!你竟然还不懂变分自编码机?这个16岁的OpenAI天才实习生讲得可透彻了

牛!他本科没毕业就进入Google Brain,还发表了最火的深度学习顶级论文...

13岁自学编程,16岁发布游戏被小扎看中,19岁成脸书最年轻工程师,如今跳槽谷歌只为了...

他在Google Brain实习了一年,总结出这么些心得

关于程序员转型AI这件事,三位老炮从产业、人才和实操跟你聊了这么些干货

如何跨领域成为一位人工智能工程师?

一个TensorFlow的新模型,Kaparthy小哥用了都说好相关推荐

  1. 新来的小哥这样写代码!同事直呼“中毒了”~

    程序员的成长之路 互联网/程序员/技术/资料共享 关注 阅读本文大概需要 5.5 分钟. tips:文末有好书推荐~ 沉淀.分享.成长,让自己和他人都能有所收获!???? 目录 一.前言 二.代码有毒 ...

  2. 一张照片生成3D头像!苹果新模型击败StyleGAN2,表情光线都能调,网友:要用于MR?...

    克雷西 发自 凹非寺 量子位 | 公众号 QbitAI 随便一张照片,就可生成3D头像.而且光线真实,任意角度可调. 这是苹果的最新黑科技生成框架FaceLit. 正如其名,FaceLit的特色就是可 ...

  3. 非科班AI小哥火了:他没有ML学位,却拿到DeepMind的offer

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 衡宇 发自 凹非寺 量子位 | 公众号 QbitAI 这两天,Dee ...

  4. 谷歌全新轻量级新模型ALBERT刷新三大NLP基准

    谷歌全新轻量级新模型ALBERT刷新三大NLP基准 ICLR 2020提交论文数量达到2594篇,比去年增加了近1000篇.其中,来自谷歌的一篇论文引起格外瞩目,该论文提出ALBERT模型,比BERT ...

  5. 屏幕尺寸计算器_计算器能联网?还能聊天?南都科创对话这位印度小哥

    一台带有OLED显示屏.能连WiFi和用来聊天的"升级版"卡西欧计算器在国外火了.南都科创记者近日对话了这位改装计算器的印度技术达人Srinivasan. 事情是这样的: 最近,一 ...

  6. 如何打败理发店装逼洗剪吹小哥

    文 / ncieBIU (一) 话说周三晚上路过中关村,在商场转了一圈儿后打算回家.刚到地铁口,一个戴着黑框眼镜的小哥就把我拽住,问我对形象设计有没有什么想法.我表示没想法.他又说你知道xxx吗?这位 ...

  7. MMEditing如何添加自己的新模型

    如何使用商汤的框架MMEditing添加一个自己的新模型嘞?因为自己平时做超分辨率,所以这里用BasicVSR的改动作为例子,一般需要在MMEditing中添加三个文件:配置,backbones以及r ...

  8. 日本小哥如何使用深度学习和TensorFlow种黄瓜?

    ◆ ◆ ◆ 导读 现在说机器学习和深度学习的应用只受限于人们的想象力并不夸张.不仅全世界的数据科学家们为之着迷,甚至在日本的农场,一位小哥为了减轻妈妈的工作负担,也开始尝试采用深度学习和Tensor ...

  9. 卧槽!女友可以生成?美国小哥生成了一个AI女友躲避催婚

    新智元报道 编辑:拉燕 桃子 [导读]国外小伙意外发现DALL-E新妙用,AI生成女友竟成逃避长辈催婚利器!? 自从AI图片生成技术爆火以后,各路玩家纷纷亲自尝试. 要不就是用AI做个头像,要不就是生 ...

最新文章

  1. python无法打开文档_win32com Excel。应用程序无法打开任何文档
  2. 【机器视觉】 dev_set_preferences算子
  3. 服务降级的概念及应用手段
  4. mongodb数据库常用指令
  5. couldn't find libweibosdkcore.so
  6. 前端-requests-flask对应关系 HTTPBasicAuth
  7. 远程服务器连接工具:Tmux
  8. python3之udp
  9. oracle帮助系统,Oracle1 0g扩展的帮助文件的安装
  10. Intersecting Lines - POJ 1269(判断平面上两条直线的关系)
  11. 大学计算机基础题库百度云资源,《大学计算机基础试题题库及答案》.pdf
  12. ppt转图片php,如何将ppt转换成图片格式
  13. 新计算机c盘太小,电脑C盘太小,F盘太大,怎么重新调整分区容量?
  14. 贺世界智能网联汽车大会-速锐得V8翻开智能驾驶汽车新篇章
  15. 用python 获取当前时间(年-月-日 时:分:秒),并且返回当前时间的下一秒
  16. android 显示表情符号,吓一跳 同一表情符号iPhone和Android机显示效果差别这么大...
  17. Python爬取百度翻译及有道翻译
  18. 倾听:不只是听见(倾听有哪些挑战?如何利用倾听技巧更好的理解他人)
  19. 操作系统习题自用(三)
  20. ssm大学生兼职论坛

热门文章

  1. 【跟着我们学Golang】之异常处理
  2. 用户体验设计常犯10个逻辑谬误
  3. 2018-4-15摘录笔记,《网络表征学习前沿与实践》 崔鹏以及《网络表征学习中的基本问题初探》 王啸 崔鹏 朱文武
  4. 希望和等待:目标,欲望和意志
  5. C# 栈 、队列的概念
  6. Linux Shell高级技巧(目录)
  7. POJ 1144 Network (求割点)
  8. Mybatis 中$与#的区别
  9. 深入biztalk消息以及消息订阅发布路由机制(二)-消息订阅【转】
  10. 【优秀作业】粒子群算法(Python)