全方位支持图文和音视频、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.mfbz.cn/a/49018.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

git的clone,上传,mirror与upstream同步

文章目录 clone日志信息的同步子树合并同步 clone clone他人项目,git到自己的项目 rm -rf .git .git存放原始项目的日志信息,这里需要添加自己的日志信息,需要删除重写。也可手动删除 git init 初始化文件,依据本地日志信息生产.…

【RabbitMQ】之高可用集群搭建

目录 一、RabbitMQ 集群原理 1、默认集群原理2、镜像集群原理3、负载均衡方案 二、RabbitMQ 高可用集群搭建 1、RabbitMQ 集群搭建2、配置镜像队列3、HAProxy 环境搭建4、Keepalived 环境搭建 一、RabbitMQ 集群简介 1、默认集群原理 3-1、RabbitMQ 集群简介 单台 RabbitM…

vue3+ts+elementui-plus二次封装树形表格实现不同层级展开收起的功能

一、TableTreeLevel组件 <template><div classmain><div class"btns"><el-button type"primary" click"expandLevel(1)">展开一级</el-button><el-button type"primary" click"expandLevel(2…

JVM-提问纯享版

一、内存区域 介绍下 Java 内存区域&#xff08;运行时数据区&#xff09;内存分配方式内存分配并发问题对象的访问定位的两种方式&#xff08;句柄和直接指针两种方式&#xff09; 二、垃圾回收 如何判断对象是否死亡&#xff08;两种方法&#xff09;。简单的介绍一下强引…

Moshi Vs Gson Vs Kotlin Serialisation性能PK

Moshi Vs Gson Vs Kotlin Serialisation 定义 Gson Gson 是一个Java序列化/反序列化库&#xff0c;用于将Java对象转换为JSON格式&#xff0c;以及将JSON格式转换回Java对象。 Moshi Moshi 是一个现代化的JSON库&#xff0c;适用于Android和Java。它使得将JSON解析为Java对…

国内好用的企业级在线文档有哪些?

在当今数字化时代&#xff0c;企业级在线文档已经成为了现代办公环境中不可或缺的一部分。它不仅能够提高工作效率&#xff0c;还能够实现多人协同编辑&#xff0c;满足团队协作的需求。那么&#xff0c;在国内市场上&#xff0c;哪些企业级在线文档产品备受企业青睐呢&#xf…

25.1 Knife4j-Swagger的增强插件

1.Knife4j概述 Knife4j是一款基于Swagger UI的增强插件&#xff0c;它可以为Spring Boot项目生成美观且易于使用的API文档界面。它是Swagger UI的增强版&#xff0c;提供了更多的功能和定制选项&#xff0c;使API文档更加易读和易于理解。 2.Knife4j使用 Knife4j 集Swagger2…

嵌入式系统中的GPIO控制:从理论到实践与高级应用

本文将探讨嵌入式系统中的GPIO(通用输入输出)控制,着重介绍GPIO的原理和基本用法。我们将使用一个实际的示例项目来演示如何通过编程配置和控制GPIO引脚。将基于ARM Cortex-M微控制器,并使用C语言进行编写。 GPIO是嵌入式系统中最常见且功能最强大的接口之一。它允许硬件工…

LLM-Blender:大语言模型也可以进行集成学习

最近在看arxiv的时候发现了一个有意思的框架&#xff1a;LLM-Blender&#xff0c;它可以使用Ensemble 的方法来对大语言模型进行集成。 官方介绍如下&#xff1a;LLM-Blender是一个集成框架&#xff0c;可以通过利用多个开源大型语言模型(llm)的不同优势来获得始终如一的卓越性…

golang利用go mod巧妙替换使用本地项目的包

问题 拉了两个项目下来&#xff0c;其中一个项目依赖另一个项目&#xff0c;因为改动了被依赖的项目&#xff0c;想重新导入测试一下。 解决办法 go.mod文件的require中想要被代替的包名在replace中进行一个替换&#xff0c;注意&#xff1a;用来替换的需要用绝对路径&#xf…

机器视觉初步14:相机标定原理及应用

相机标定是指通过已知的相机参数&#xff0c;解算相机内部参数矩阵和外部参数矩阵。 文章目录 1.为什么要标定&#xff1f;2.工业场景中常见的标定方法2.1. 使用棋盘格标定板&#xff08;Checkerboard Markers&#xff09;2.2 使用相机自标定2.3. 使用三维物体标定2.4.九孔标…

【人工智能】神经网络、前向传播、反向传播、梯度下降、局部最小值、多层前馈网络、缓解过拟合的策略

神经网络、前向传播、反向传播 文章目录 神经网络、前向传播、反向传播前向传播反向传播梯度下降局部最小值多层前馈网络表示能力多层前馈网络局限缓解过拟合的策略前向传播是指将输入数据从输入层开始经过一系列的权重矩阵和激活函数的计算后,最终得到输出结果的过程。在前向…

【分布式】分布式唯一 ID 的 几种生成方案以及优缺点snowflake优化方案

在互联网的业务系统中&#xff0c;涉及到各种各样的ID&#xff0c;如在支付系统中就会有支付ID、退款ID等。那一般生成ID都有哪些解决方案呢&#xff1f;特别是在复杂的分布式系统业务场景中&#xff0c;我们应该采用哪种适合自己的解决方案是十分重要的。下面我们一一来列举一…

@monaco-editor/react组件CDN加载失败解决办法

monaco-editor/react引入这个cdn资源会load失败 网上很多例子都是这样写的&#xff0c;我这样写monaco会报错 import * as monaco from monaco-editor; import { loader } from monaco-editor/react;loader.config({ monaco });改成这样 import * as monaco from monaco-edi…

基于Centos 7虚拟机的磁盘操作(添加磁盘、分区、格式分区、挂载)

目录 一、添加硬盘 二、查看新磁盘 三、磁盘分区 3.1新建分区 3.2 格式分区 3.3 挂载分区 3.4 永久挂载新分区 3.5 取消挂载分区 一、添加硬盘 1.在虚拟机处选择编辑虚拟机设置&#xff0c;然后选择添加 2.选择硬盘&#xff0c;然后选择下一步 3.默认即可&#xff0c;下一步…

TCP连接管理与UDP协议

“三次握手”与“四次挥手” TCP建立连接的过程叫做握手 采用三报文握手&#xff1a;在客户和服务器之间交换三个TCP报文段&#xff0c;以防止已失效的连接请求报文段突然又传送到了&#xff0c;因而产生TCP连接建立错误。 第一次握手 连续释放——“四次挥手” TCP连续释放…

Zabbix监控之分布式部署

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

使用Nacos将单体服务注册成微服务的步骤以及相关问题解决

目录 1.改造单体服务的配置文件。 2.添加Nacosw相关的pom依赖 3.在nacos的配置列表中创建配置列表 4.相关问题的解决 1.改造单体服务的配置文件。 &#x1f516;创建一个bootstrap.yml的配置文件该文件通常放置在src/main/resources目录中&#xff0c;并且优先于applicati…

ping命令

上图为IA ping B的过程&#xff0c;在此过程中&#xff1a; 包传送在x位置时&#xff0c;DestMacB左&#xff0c;SourceMacMac_A&#xff0c;Dest ipIp_B,Src_ipIp_A包传送在y位置时&#xff0c;DestMacB右&#xff0c;SourceMacB左 &#xff0c; Dest ipIp_B,Src_ipIp_A MAC…

多线程(Java系列6)

目录 前言&#xff1a; 1.什么是线程池 2.标准库中的线程池 3.实现线程池 结束语&#xff1a; 前言&#xff1a; 在上一节中小编带着大家了解了一下Java标准库中的定时器的使用方式并给大家实现了一下&#xff0c;那么这节中小编将分享一下多线程中的线程池。给大家讲解一…