神经网络突变自动选择AI优化算法,速度提升50000倍!

2024-04-12 19:48

本文主要是介绍神经网络突变自动选择AI优化算法,速度提升50000倍!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

640?wx_fmt=gif

640?wx_fmt=png




  新智元报道  

来源:venturebeat、IBM

编辑:大明

【导读】为特定任务寻找最合适的优化机器学习算法是一件耗时费力的工作,因为没有一种算法能适用于所有任务。IBM的研究人员提出“神经突变”进化算法,可以为机器学习任务自动选择最合适的算法,选择速度提升了50000倍,错误率仅上升0.6%.

机器学习系统并非是“生而平等”的。没有一种算法能应对所有的机器学习任务,这就让寻找最优的机器学习算法成为一项艰巨又耗时的工作。不过这个问题现在有希望解决了,最近IBM的研究人员开发了一套能够自动选择AI优化算法的系统。


IBM爱尔兰研究院的数据科学家Martin Wistuba,在其近日发表的博客文章中介绍了自己开发的这套系统。他声称,该系统将自动选择优化AI算法的速度提升了5万倍,错误率仅上升了0.6%。


Wistuba表示,这套进化算法系统能将选择适当的机器学习架构的时间缩减至几个小时,让每个人都能有条件对深度学习网络架构进行优化。


面向机器学习的神经网络突变算法


该方法将卷积神经网络架构视为神经细胞序列,然后应用一系列突变,以找到一种结构,可以提升给定数据集和机器学习任务的神经网络的性能。


这种方法大大缩短了网络训练时间。这些突变会改变网络结构,但不会改变网络的预测,网络的结构变化可能包括添加新的层、添加新连接或扩展内核或现有层。

 

640?wx_fmt=png

保留原函数的神经网络突变示例。右侧的体系结构是突变后的网络,但与左侧的体系结构具有相同的预测结果(由相同颜色表示)

 

实验评估:速度提升5万倍,错误率仅上升0.6%


实验中,研究人员将新神经进化方法与CIFAR-10和CIFAR-100数据集上的图像分类任务的其他几种方法进行了比较。这些数据集通常用于训练机器学习和计算机视觉算法的图像集。

 

与最先进的人工设计架构、基于强化学习的架构搜索方法、以及基于进化算法的其他自动化方法的结果相比,结构突变算法在分类错误上稍高出前几种方法,但耗时要少得多,比其他方法快了50000倍,错误率最多仅比基准数据集CIFAR-10上的最有力竞争对手高出0.6%。

 

下图所示为算法的优化过程。在图2中,每个点代表不同的结构,连接线代表突变。不同颜色所示为每个结构的精度,x轴表示时间。可以看到,准确率在前10个小时内迅速上升,之后缓慢上升、最后趋于稳定。

 

深度学习网络设计的进化算法优化


640?wx_fmt=png

图示为随时间推移,进化算法的优化过程


下图所示为随着时间的推移,深度学习网络结构的演变情况。


640?wx_fmt=png

网络结构随时间的演变,图中某些中间状态未显示

 

实际上,自动算法选择并不新鲜。谷歌在智能手机面部识别和目标检测上也在使用这类方法,如果IBM这一的系统性能确实如其所言,它可能代表着该领域内的一次重大进步。

 

将来,研究人员希望将这种优化集成到IBM的云服务中,并将其提供给客户。此外还计划将其扩展到更大的数据集上,如ImageNet和其他类型的数据,如时间序列和文本、自然语言处理任务等。

 

Wistuba将于9月在爱尔兰都柏林举行的欧洲机器学习和数据库知识发现会议(ECML-PKDD)会议上介绍这种方法。


参考链接:

https://venturebeat.com/2018/09/04/ibms-new-system-automatically-selects-the-optimal-ai-algorithm/

https://www.ibm.com/blogs/research/2018/09/ai-design-deep-learning/

640?wx_fmt=gif

640?wx_fmt=jpeg


点击下方“阅读原文”了解【人工智能服务器】 ↓↓↓

这篇关于神经网络突变自动选择AI优化算法,速度提升50000倍!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

Java实现复杂查询优化的7个技巧小结

《Java实现复杂查询优化的7个技巧小结》在Java项目中,复杂查询是开发者面临的“硬骨头”,本文将通过7个实战技巧,结合代码示例和性能对比,手把手教你如何让复杂查询变得优雅,大家可以根据需求进行选择... 目录一、复杂查询的痛点:为何你的代码“又臭又长”1.1冗余变量与中间状态1.2重复查询与性能陷阱1.

Python内存优化的实战技巧分享

《Python内存优化的实战技巧分享》Python作为一门解释型语言,虽然在开发效率上有着显著优势,但在执行效率方面往往被诟病,然而,通过合理的内存优化策略,我们可以让Python程序的运行速度提升3... 目录前言python内存管理机制引用计数机制垃圾回收机制内存泄漏的常见原因1. 循环引用2. 全局变

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

基于Redis自动过期的流处理暂停机制

《基于Redis自动过期的流处理暂停机制》基于Redis自动过期的流处理暂停机制是一种高效、可靠且易于实现的解决方案,防止延时过大的数据影响实时处理自动恢复处理,以避免积压的数据影响实时性,下面就来详... 目录核心思路代码实现1. 初始化Redis连接和键前缀2. 接收数据时检查暂停状态3. 检测到延时过

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说