NasNet实践:图像识别领域最佳模型

2024-01-25 07:18

本文主要是介绍NasNet实践:图像识别领域最佳模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  谷歌最近推出的NasNet,是当前图像识别领域的最佳模型,近日对此模型进行复现了下,也大致了解了其原理。这个模型并非是人为设计出来的,而是通过谷歌很早之前推出的AutoML自动训练出来的。该项目目的是实现“自动化的机器学习”,即训练机器学习的软件来打造机器学习的软件,自行开发新系统的代码层,它也是一种神经架构搜索技术(Neural Architecture Search technology)。然而尽管AutoML 能够设计出性能可与人类专家设计的神经网络相媲美的小型神经网络,但仍被限制在 CIFAR-10 等小型学术数据集方面。

  1、论文原理

  而本文的模型,就是基于AutoML首先在CIFAR-10这种数据集上进行神经网络架构搜索,以便 AutoML 找到最佳层并灵活进行多次堆叠来创建最终网络,并将学到的最好架构转移到 ImageNet 图像分类和 COCO 对象检测中。这也就是NasNet的由来。

其中NasNet的组成由两种网络单元组合而成


这两种单元的堆叠方案如下:


2、论文实践

  在tensorflow slim模块中已经添加了该模型,它包含了mobile版本和large版本,本篇主要针对large进行了测试。




实践分析:NasNet的效果对比还没做实验,在tensorflow slim中介绍可知其精度为目前最高。

NASNet-A_Mobile_224#Codenasnet-a_mobile_04_10_2017.tar.gz74.091.6
NASNet-A_Large_331#Codenasnet-a_large_04_10_2017.tar.gz82.796.2
PNASNet-5_Large_331Codepnasnet-5_large_2017_12_13.tar.gz82.996.2

不过从实践的角度来看,NasNet的识别速度就远没有别的模型来得快。


这篇关于NasNet实践:图像识别领域最佳模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/642488

相关文章

SpringBoot简单整合ElasticSearch实践

《SpringBoot简单整合ElasticSearch实践》Elasticsearch支持结构化和非结构化数据检索,通过索引创建和倒排索引文档,提高搜索效率,它基于Lucene封装,分为索引库、类型... 目录一:ElasticSearch支持对结构化和非结构化的数据进行检索二:ES的核心概念Index:

Python数据验证神器Pydantic库的使用和实践中的避坑指南

《Python数据验证神器Pydantic库的使用和实践中的避坑指南》Pydantic是一个用于数据验证和设置的库,可以显著简化API接口开发,文章通过一个实际案例,展示了Pydantic如何在生产环... 目录1️⃣ 崩溃时刻:当你的API接口又双叒崩了!2️⃣ 神兵天降:3行代码解决验证难题3️⃣ 深度

C++ move 的作用详解及陷阱最佳实践

《C++move的作用详解及陷阱最佳实践》文章详细介绍了C++中的`std::move`函数的作用,包括为什么需要它、它的本质、典型使用场景、以及一些常见陷阱和最佳实践,感兴趣的朋友跟随小编一起看... 目录C++ move 的作用详解一、一句话总结二、为什么需要 move?C++98/03 的痛点⚡C++

Java领域模型示例详解

《Java领域模型示例详解》本文介绍了Java领域模型(POJO/Entity/VO/DTO/BO)的定义、用途和区别,强调了它们在不同场景下的角色和使用场景,文章还通过一个流程示例展示了各模型如何协... 目录Java领域模型(POJO / Entity / VO/ DTO / BO)一、为什么需要领域模

深入理解Redis线程模型的原理及使用

《深入理解Redis线程模型的原理及使用》Redis的线程模型整体还是多线程的,只是后台执行指令的核心线程是单线程的,整个线程模型可以理解为还是以单线程为主,基于这种单线程为主的线程模型,不同客户端的... 目录1 Redis是单线程www.chinasem.cn还是多线程2 Redis如何保证指令原子性2.

MySQL存储过程实践(in、out、inout)

《MySQL存储过程实践(in、out、inout)》文章介绍了数据库中的存储过程,包括其定义、优缺点、性能调校与撰写,以及创建和调用方法,还详细说明了存储过程的参数类型,包括IN、OUT和INOUT... 目录简述存储过程存储过程的优缺点优点缺点存储过程的创建和调用mysql 存储过程中的关键语法案例存储

Java 的ArrayList集合底层实现与最佳实践

《Java的ArrayList集合底层实现与最佳实践》本文主要介绍了Java的ArrayList集合类的核心概念、底层实现、关键成员变量、初始化机制、容量演变、扩容机制、性能分析、核心方法源码解析、... 目录1. 核心概念与底层实现1.1 ArrayList 的本质1.1.1 底层数据结构JDK 1.7

JDK21对虚拟线程的几种用法实践指南

《JDK21对虚拟线程的几种用法实践指南》虚拟线程是Java中的一种轻量级线程,由JVM管理,特别适合于I/O密集型任务,:本文主要介绍JDK21对虚拟线程的几种用法,文中通过代码介绍的非常详细,... 目录一、参考官方文档二、什么是虚拟线程三、几种用法1、Thread.ofVirtual().start(

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

springboot依靠security实现digest认证的实践

《springboot依靠security实现digest认证的实践》HTTP摘要认证通过加密参数(如nonce、response)验证身份,避免明文传输,但存在密码存储风险,相比基本认证更安全,却因... 目录概述参数Demopom.XML依赖Digest1Application.JavaMyPasswo