全方位支持图文和音视频、100+增强功能,Facebook开源数据增强库AugLy

Facebook 近日开源了数据增强库 AugLy,包含四个子库,每个子库对应不同的模态,每个库遵循相同的接口。支持四种模态:文本、图像、音频和视频。

最近,Facebook 开源了一个新的 Python 库——AugLy,该库旨在帮助 AI 研究人员使用数据增强来评估和改进机器学习模型的可用性。AugLy 提供了复杂的数据增强工具,可以创建样本来训练和测试不同的系统。

项目地址:GitHub - facebookresearch/AugLy: A data augmentations library for audio, image, text, and video.

该库基于 Facebook 和 Instagram 等平台上的真实图片和视频提供了 100 多种数据增强功能,因此对于处理与社交媒体应用程序相关的模型或数据的研究工作特别有用。

目前 AugLy 支持四个模态:文本、图像、音频和视频。使用真实世界的数据进行数据增强能够帮助机器更好地理解复杂的任务。以文本短语「love the way you smell today」为例,该文本想要表达的意思是喜欢,但是将此短语应用到臭鼬的图片上时,想要表达的意思全部变了。AugLy 更类似于人们为了了解周围的世界而从多种感官获取信息的方式。随着数据集和模型变得越来越具有多模态,在一个统一的库和 API 下转换项目的所有数据是非常有必要的。

对于该数据增强库,机器学习界的大佬 Yann LeCun 也转推推荐。

AugLy 如何工作

AugLy 包含四个子库,每个子库对应不同的模态,每个库遵循相同的接口:AugLy 提供了基于函数和类格式的转换,并提供强度函数,帮助了解转换的强度(基于给定参数)。AugLy 还可以生成有用的元数据,以帮助了解数据转换过程。

此外,该库已经聚合了许多扩展,以及以前从未存在过的扩展。例如,增强功能将图像或视频叠加到社交媒体界面上,使其看起来像是用户在 Facebook 等社交网络上截屏的图像或视频,然后重新共享。这对于许多用例来说是一个有用的补充,因为 Facebook 上的用户通常会以这种方式重新共享内容。

AugLy 为何如此重要

数据增强对于确保 AI 模型的鲁棒性至关重要。如果可以教会模型对数据中不重要的属性扰动具有鲁棒性,那么模型将学会关注特定用例中数据的重要属性。

在 Facebook 中,一个重要的应用程序是检测特定内容的「相似副本」。例如,同一条信息可能以不同的形式重复出现。又例如图像经过修改后被裁剪了几个像素,或者用过滤器或新的文本覆盖进行了增强。通过使用 AugLy 数据增强 AI 模型,它们可以在上传已知侵权内容 (如歌曲或视频) 时识别出来。

使用 AugLy 训练模型来检测相似内容意味着我们可以主动阻止用户上传已知侵权的内容。例如 SimSearchNet,一个基于卷积神经网络的模型,可以专门用来检测精确复制内容,该模型是用 AugLy 增强训练的。

除了使用 AugLy 训练模型外,该库还可用于确定模型相对于一组增强的鲁棒性。事实上,AugLy 已经被用来评估 deepfake 检测模型在「Deepfake 检测挑战赛」(Deepfake Detection Challenge)中的鲁棒性,最终影响了前五名获胜者。

AugLy 支持图像增强,如裁剪、填充图像、截屏和重新共享照片。数据增强的用途是广泛的,AugLy 可以帮助研究人员从事各种工作,从物体检测模型到识别仇恨言论再到语音识别。

参考链接:

https://ai.facebook.com/blog/augly-a-new-data-augmentation-library-to-help-build-more-robust-ai-models/

Facebook AI Open Sources AugLy: A New Python Library For Data Augmentation To Develop Robust Machine Learning Models - MarkTechPost

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/11686.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言每日一题:4.消失的数字+数字在升序数组中出现的次数+整数转换

消失的数字: 思路1:排序遍历 1.使用qsort排序数组判断当前数值1是否是数组下一个元素的数值。 2.如果是一直循环注意数组越界,如果不是那么当前的数组的数值1就是消失的数。 3.存在0——n的数字是第n个数没有了。循环过程中从头到尾也找不到这…

Zabbix监控之分布式部署

文章目录 Zabbix监控之分布式部署zabbix proxy概述部署zabbix-proxy节点规划基础环境准备安装proxy以及数据库配置数据库添加服务端host解析修改zabbix-proxy配置文件启动代理服务器 zabbix页面(1)在zabbix页面添加代理(2)zabbix-agent连接proxy Zabbix监控之分布式部署 zabbi…

【LeetCode】101.对称二叉树

题目 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root [1,2,2,3,4,4,3] 输出:true示例 2: 输入:root [1,2,2,null,3,null,3] 输出:false提示: 树中节点数…

几个影响 cpu cache 性能因素及 cache 测试工具介绍

》内核新视界文章汇总《 文章目录 1 cache 性能及影响因素1.1 内存访问和性能比较1.2 cache line 对性能的影响1.3 L1 和 L2 缓存大小1.4 指令集并行性对 cache 性能的影响1.5 缓存关联性对 cache 的影响1.6 错误的 cacheline 共享 (缓存一致性)1.7 硬件设计 2 cpu cache benc…

让企业出海支付流程更加安全,亚马逊云科技推出支付加密服务

在咖啡店买一杯咖啡,在电商平台下单一件商品,其消费流程背后,都要涉及到金融支付的多个环节,而其中对金融数据存储和流通的加密则是保障金融安全的重要环节。 加密是保障消费者支付流程安全的最大挑战。亚马逊云科技首席安全布道…

数仓学习---15、数据仓库工作流调度

1、数据仓库工作流调度 1.1 调度工具部署 工具部署链接 1.2 新数据生成 1.2.1 用户行为日志 1、启动日志采集通道,包括Kafka、Flume等 (1)启动Zookeeper zk.sh start(2)启动Kafka kf.sh start(3&…

【ROS第一讲】一、创建工作空间

【ROS第一讲】一、创建工作空间 一、工作空间1.src:2.build:3.devel:4.install: 二、创建工作空间1.工作空间的编译2.配置环境变量: 三、创建功能包 一、工作空间 1.src: 放置所有功能包源码的空间 2.build&#xf…

【语音识别】- 声学,词汇和语言模型

一、说明 语音识别是指计算机通过处理人类语言的音频信号,将其转换为可理解的文本形式的技术。也就是说,它可以将人类的口语语音转换为文本,以便计算机能够进一步处理和理解。它是自然语言处理技术的一部分,被广泛应用于语音识别助…

项目播报 | 新基德携手璞华易研PLM,打造企业新一代研发管理平台

近日,“新基德PLM(Product Lifecycle Management,产品生命周期管理)项目”在新基德(深圳)电子有限公司(以下简称:新基德)正式启动。新基德是一家集手机研发、生产、销售、…

基于深度学习的高精度六类海船检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要:基于深度学习的高精度六类海船检测识别系统可用于日常生活中检测与定位海船目标(散装货船(bulk cargo carrier)、集装箱船(container ship)、渔船(fishing boat)、普通货船&…

【Docker】Docker Compose的配置与部署

文章目录 一、Docker Compose1. Docker Compose 的概述2. Docker Compose 三大的概念3. Docker Compose 环境安装二、YAML 文件格式及编写注意事项1. YAML 文件格式2. YAML 格式的注意事项3. YAML 数据结构3.1 基本类型3.2 实例3.3 YAML 特殊类型文本块锚点与引用三、Docker Co…

JAVA面试总结-Redis篇章(四)——双写一致性

JAVA面试总结-Redis篇章(四)——双写一致性 问:redis 做为缓存,mysql的数据如何与redis进行同步呢?第一种情况,如果你的项目一致性要求高的话 采用以下逻辑我们应该先删除缓存,再修改数据库&…

栈粉碎原理分析

栈粉碎原理分析 源代码如下 #include <stdio.h>void function(int a, int b) {char buffer[12];gets(buffer);//long* ret (long *) ((long)buffer28);//*ret *ret 7;return; }void main() {int x;x 0;function(1,2);x 1;printf("%d\n",x); } 由解注释前…

qt服务器 网络聊天室

widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//给服务器指针实例化空间server new QTcpServer(this); }Widget::~Widget() {delete ui; }//启动…

暴力猴插件简明开发教程->百度首页默认设置为我的关注

文章目录 暴力猴插件开发简明教程->百度首页默认设置为我的关注缘起缘灭思路实现尾声 暴力猴插件开发简明教程->百度首页默认设置为我的关注 缘起 在我的百度首页有很多自己设置的导航链接(接近100个),里面放了我常用的网站, 如下图 但是最近一段时间, 我发现百度做了一…

智能合约安全审计

智能合约安全审计的意义 智能合约审计用于整个 DeFi 生态系统&#xff0c;通过对协议代码的深入审查&#xff0c;可以帮助解决识别错误、低效代码以及这些问题。智能合约具有不可篡改的特点&#xff0c;这使得审计成为任何区块链项目安全流程的关键部分。 代码审计对任何应用…

【牛客面试必刷TOP101】Day1.反转链表和合并两个排序的链表

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;牛客面试必刷TOP101 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;&…

详细分析Python中运算符“==“和“is“的区别

目录 Python中运算符"" Python中运算符"is" ""和"is"的区别 总结 Python中运算符"" 在Python中&#xff0c;双等号运算符"" 用于比较两个值是否相等。它返回一个布尔值&#xff0c;即True或False&#xff0c;…

C# 使用opencv从图片识别人脸示例

1.用chatgpt帮我写了一个示例 using System; using Emgu.CV; using Emgu.CV.CvEnum; using Emgu.CV.Structure;class Program {static void Main(string[] args){// 加载人脸分类器CascadeClassifier faceCascade new CascadeClassifier("haarcascade_frontalface_defau…

JenKins工作流程

程序员提交代码到Git/SVN仓库&#xff0c;触发钩子程序向 JenKins 进行通知&#xff0c;Jenkins 调用Git/SVN插件获取源码&#xff0c;调用Maven打包为war包&#xff0c;调用Deploy to web container插件部署到Tomcat服务器。