找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 30|回复: 0

使用 Learn2Compress 自定义设备上的 ML 模型

[复制链接]

545

主题

0

回帖

1677

积分

金牌会员

积分
1677
发表于 2024-12-12 13:09:40 | 显示全部楼层 |阅读模式
成功的深度学习模型通常需要大量的计算资源、内存和能力来训练和运行,如果你想让它们在移动和物联网设备上表现良好,这就成了一个障碍。设备上的机器学习允许你直接在设备上运行推理,无论连接如何,都可以享受数据隐私和随处访问的好处。设备上的 ML 系统(例如MobileNets和ProjectionNets)通过优化模型效率来解决移动设备上的资源瓶颈问题。但是,如果你想为你的个人移动应用程序训练你自己的定制设备上的模型,该怎么办?
昨天在 Google I/O 上,我们宣布了ML Kit,让所有移动开发者都可以使用机器学习。即将推出的核心 ML Kit 功能之一是自动模型压缩服务,该服务由我们的研究团队开发的“Learn2Compress”技术支持。Learn2Compress 在TensorFlow Lite中支持自定义设备上的深度学习模型,这些模型可以在移动设备上高效运行,而开发者无需担心优化内存和速度。我们很高兴很快通过 ML Kit 提供用于图像分类的 Learn2Compress。 Learn2Compress 最初将面向少数开发人员开放,并将在未来几个月内向更广泛的用户开放。如果您有兴趣使用此功能构建自己的模型,可以在此处注册。
工作原理Learn2Compress 概括了ProjectionNet
等先前作品中引入的学习框架,并结合了几种用于压缩神经网络模型的先进技术。它以用户提供的大型预训练 TensorFlow 模型作为输入,进行训练和优化,并自动生成随时可用的设备模型,这些模型体积更小、内存效率更高、功耗更低、推理速度更快,同时准确度损失最小。
Learn2Compress 用于自动生成设备上的 ML 模型。
为此,Learn2Compress 使用多种神经网络优化和压缩技术,包括:
修剪通过删除对预测最没用的权重或操作(例如,光晕评分权重)来减小模型大小。这对于涉及稀疏输入或输出的设备模型尤其有效,这些模型的大小最多可以缩小 2 倍,同时保留 97% 的原始预测质量。
量化技术在训练过程中应用时特别有效,可以通过减少用于模型权重和激活的位数来提高推理速度。例如,使用 8 位定点表示代替浮点数可以加快模型推理速度、降低功耗并将尺寸进一步缩小 4 倍。
联合训练和提炼方法遵循师生学习策略——我们使用更大的教师网络(在本例中为用户提供的 TensorFlow 模型)来训练紧凑的学生网络(设备上模型),同时将准确性损失降至最低。
联合训练和提炼的方法来学习紧凑的学生模型。
教师网络可以固定不变(如蒸馏)或联合优化,甚至可以同时训练多个不同大小的学生模型。因此,Learn2Compress 不会只生成一个模型,而是一次性生成多个大小和推理速度各异的设备模型,并让开发人员挑选一个最适合其应用需求的模型。
这些技术以及其他技术(如迁移学习)也使压缩过程更加高效,并可扩展到大规模数据集。
它的效果如何?
为了证明 Learn2Compress 的有效性,我们使用它构建了几种用于图像和自然语言任务的先进深度网络的紧凑型设备模型,例如MobileNets、NASNet、Inception、ProjectionNet等。对于给定的任务和数据集,我们可以以不同的推理速度和模型大小生成多个设备模型。
对于图像分类,Learn2Compress 可以生成适合移动应用的小型快速模型,具有良好的预测准确率。例如,在ImageNet任务中,Learn2Compress 实现的模型比 Inception v3 基线小 22 倍,比 MobileNet v1 基线小 4 倍,准确率仅下降 4.6-7%。在CIFAR-10上,联合训练具有共享参数的多个 Learn2Compress 模型,仅比训练单个 Learn2Compress 大型模型多花费 10% 的时间,但产生的 3 个压缩模型尺寸最多缩小 94 倍,速度最多提高 27 倍,成本最多降低 36 倍,预测质量良好(90-95% 的 top-1 准确率)。
在CIFAR-10图像分类任务中,基线模型和 Learn2Compress 模型的计算成本和平均预测延迟(在 Pixel 手机上)。Learn2Compress 优化模型使用NASNet风格的网络架构。
我们也很高兴看到它在开发者用例中的表现。例如,面向钓鱼爱好者的社交平台Fishbrain使用 Learn2Compress 将他们现有的图像分类云模型(大小超过 80MB,前 3 名准确率 91.8%)压缩为更小的设备端模型,大小不到 5MB,准确率相似。在某些情况下,我们观察到,由于正则化效果更好,压缩后的模型甚至可能略微超过原始大型模型的准确率。
随着 ML 和深度学习的未来发展,我们将继续改进 Learn2Compress,并将其扩展到图像分类之外的更多用例。我们很高兴并期待很快通过 ML Kit 的云端压缩服务提供此功能。我们希望这将使开发人员能够轻松地自动构建和优化自己的设备端 ML 模型,以便他们能够专注于构建涉及计算机视觉、自然语言和其他机器学习应用的出色应用和酷炫的用户体验。
致谢
我要感谢我们的核心贡献者 Gaurav Menghani、Prabhu Kaliamoorthi 和 Yicheng Fan,以及 Wei Chai、Kang Lee、Sheng Xu 和 Pannag Sanketi。特别感谢 Android 团队的 Dave Burke、Brahim Elbouchikhi、Hrishikesh Aradhye、Hugues Vincent 和 Arun Venkatesan;Firebase 团队的 Sachin Kotwani、Wesley Tarle、Pavel Jbanov;Google Expander 团队和 TensorFlow 团队的 Andrei Broder、Andrew Tomkins、Robin Dua、Patrick McGregor、Gaurav Nemade。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|绿色天空实验室

GMT+8, 2024-12-28 02:19 , Processed in 0.075913 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表