zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Caffe2go:Facebook最新的深度学习框架

学习框架 深度 最新 Facebook
2023-09-11 14:21:17 时间

视频在人们的沟通交流中扮演着日益重要的角色。为此,Facebook一直希望提供一种先进的创意工具丰富人们的自我表达手段。近日,Facebook宣布,他们正在测试(目前只在部分国家的移动设备上)Facebook应用新增的一个创意效果相机。借助一项名为“风格转换”的技术,该功能可以帮助人们快速地将视频变成艺术品,比如,将梵高的油画风格运用到其他的图像或视频上。在此之前,这很难完成,因为需要将视频或图像的内容发送到数据中心的大型计算服务器上进行处理。而现在,Facebook开发了一个可以在移动平台上实时获取、分析、处理像素的深度学习框架Caffe2Go。

据介绍,为了可以在iOS和Android设备上高效地运行各种深度神经网络,Facebook将用于图像和视频处理的AI模型压缩了100倍。最终,他们可以在某些手机上用不到二十分之一秒的时间完成AI推断,而人一眨眼的时间是三分之一秒。

Facebook的风格转换工具融合了两种技术:Caffe2go运行时和风格转换模型。Caffe2go是一个以开源项目Caffe2为基础、使用Unix理念构建的轻量级、模块化框架。其核心架构非常轻量化,而且可以附加多个模块。考虑到速度是计算密集型移动应用的核心,该框架的轻量化设计让他们可以针对特定平台上定义的操作符进行优化。例如,Caffe2将一个名为NNPack的程序库集成进了移动运行时。借助一项名为NEON的移动CPU特性,他们提升了移动计算速度。在iOS设备上,他们也着手集成加速特性,如Metal语言。Caffe2go提升了AI处理速度,让它可以在移动终端上运行。但要实现实时性,并提供高质量、高分辨率的图像,风格转换模型也需要进行优化。 他们采用了多种方法来减少模型大小,包括优化卷积层数量和每一层的宽度,调整处理过程中的空间分辨率等。另外,他们还构建了包括A/B测试在内的可视化工具,并训练了不同的模型。

Facebook承诺,他们会和社区分享这款软件及其设计,并在接下来的几个月里开源这个AI框架的某些部分。

另据VB报道,谷歌去年也在谷歌翻译中做了一些类似的事情,他们还于近日展示了自己的神经网络风格转换技术。Facebook和谷歌在这个领域的工作要晚于移动应用Prisma,后者允许用户为照片和视频添加样式。

此外,Caffe2go是Facebook的第二个AI平台,第一个是已有的开源深度学习框架Torch。但是现在,Facebook将Caffe2go推上了战略地位,因为“它的大小、速度和灵活性”。

本文转自d1net(转载)


彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-JWT和中间件(Middleware)的使用EP07 前文再续,上一回我们完成了用户的登录逻辑,将之前用户管理模块中添加的用户账号进行账号和密码的校验,过程中使用图形验证码强制进行人机交互,防止账号的密码被暴力破解。本回我们需要为登录成功的用户生成Token,并且通过Iris的中间件(Middleware)进行鉴权操作。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-登录与图形验证码(captcha)EP06 书接上回,上一回我们按照“低耦合高内聚”的组织架构方针对项目的整体结构进行了优化,本回将会继续编写业务,那就是用户的登录逻辑,将之前用户管理模块中添加的用户账号进行账号和密码的校验,校验通过后留存当前登录用户的信息,过程中使用图形验证码强制进行人机交互,防止账号的密码被暴力破解。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-项目结构优化EP05 前文再续,上一回我们完成了用户管理模块的CURD(增删改查)功能,功能层面,无甚大观,但有一个结构性的缺陷显而易见,那就是项目结构过度耦合,项目的耦合性(Coupling),也叫耦合度,进而言之,模块之间的关系,是对项目结构中各模块间相互联系紧密程度的一种量化。耦合的强弱取决于模块间调用的复杂性、调用模块之间的方式以及通过函数或者方法传送数据对象的多少。模块间的耦合度是指模块之间的依赖关系,包括包含关系、控制关系、调用关系、数据传递关系以及依赖关系。项目模块的相互依赖越多,其耦合性越强,同时表明其独立性越差,愈加难以维护。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-完善用户管理EP04 书接上回,上一回我们完成了用户管理页面的构建,并且通过前端的Vue.js框架动态地获取表单数据,同时异步请求后端Iris接口进行入库操作,过程中使用函数封装可复用的逻辑。 本回我们将继续完善用户管理功能。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-用户系统EP03 前文再续,之前一篇我们已经配置好了数据库以及模板引擎,现在可以在逻辑层编写具体业务代码了,博客平台和大多数在线平台一样,都是基于用户账号体系来进行操作,所以我们需要针对用户表完成用户账号的CURD操作。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-模板与数据库EP02 书接上回,上次我们搭建好了项目入口文件,同时配置了路由体系,接着就可以配置项目的模板了,这里我们采用Iris内置的模板引擎,事实上,采用模板引擎并不意味着前后端耦合,模板中的数据保持其独立性即可,也就是说模板的数据操作交互方式采用http接口请求的形式,Iris并不参与模板逻辑,只返回Json格式的数据即可。前端集成数据双向绑定机制的框架Vue.js。
彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-项目入口与路由EP01 书接上回,我们已经安装好Iris框架,并且构建好了Iris项目,同时配置了fresh自动监控项目的实时编译,万事俱备,只欠东风,彩虹女神蓄势待发。现在我们来看看Iris的基础功能,如何编写项目入口文件以及配置路由系统。
急如闪电快如风,彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-初始化项目EP00 在Golang Web编程的世界里,君不言高性能则已,言高性能必称Iris。彩虹女神的名号响彻寰宇、名动江湖,单论一个快字,无人能出其右,就连以简洁轻量著称于世的Gin也难以望其项背,只见彩虹女神Iris回眸一笑撩人心扉:“虽然你们也不是那么慢,但我还是快那么一点点......”,本次就让我们来一睹彩虹女神Iris的芳颜,感受宇宙最快Web框架的神乎其神。