Meta开源数字水印Stable Signature,极大增强生成式AI安全
全球社交、科技巨头Meta(Facebook、Instagram等母公司)在官网宣布,开源数字水印产品Stable Signature,并公开论文。
据悉,Stable Signature是由Meta和INRIA(法国国家信息与自动化研究所)联合开发而成,可将数字水印直接嵌入到AI自动生成的图片中,防止其非法用途。
而数字水印也是目前增强生成式AI安全的重要手段之一,微软、谷歌等科技巨头已经在产品中使用。
Stable Signature生成的数字水印不受裁剪、压缩、改变颜色等破坏性操作影响,能追溯到图片的初始来源,可应用于扩散、生成对抗网络等模型,例如,著名文生图开源项目Stable Diffusion。
开源地址:https://github.com/facebookresearch/stable_signature
论文地址:https://arxiv.org/abs/2303.15435
Stable Signature技术原理
Stable Signature的技术原理并不复杂,开发人员用Alice训练了一个主生成模型并进行了微调,以确定Bob给定的水印,用于识别AI图片的版本、公司、用户、特征等属性。
Bob用于接收不同的扩散模型版本并生成图片,并携带水印。而这些水印可以由Alice或第三方AI进行分析,以查看图像是否由AI生成。
为了实现上述目标,开发人员使用了两大步骤来完成。
1)训练两个卷积神经网络。一种将图像和随机消息编码为水印图像,另一种则从水印图像的增强版本中提取消息,目的是使编码和提取的消息匹配。训练完成后,只保留水印提取器。
2)对生成模型的潜在解码器进行微调以生成包含固定签名的图像。在此微调过程中,会对批量图像进行编码、解码和优化,以最大限度地减少提取的消息与目标消息之间的差异,并保持感知图像质量。
这种优化过程快速有效,只需要小批量和很短的时间即可获得高质量的结果。
Stable Signature性能评估
在性能评估过程中,开发人员发现Stable Signature不受裁剪、压缩、改变颜色等破坏性操作影响,同时在被动检测方面有两大技术优势。
1)可以控制并减少误报的情况:误报是指我们将人类制作的图片,误认为是AI生成的图片。鉴于在线共享的非AI生成图片的普遍性,这一点至关重要。
例如,最有效的现有检测方法可以发现大约50%的编辑过的生成图片,但仍然产生大约1/100的误报率。
换句话说,在一个每天收到10亿张图片的用户生成内容平台上,为了仅检测到一半的生成图片,大约有1000万张图片会被错误地标记。
而Stable Signature 可以实现10-10 的误报率(可以设置为特定的期望值),提供高精准图片检测。
2)Stable Signature的水印方法,允许用户追踪同一模型的不同版本的图片,这种能力对于识别AI图片非常重要。
Meta表示,Midjourney、Stable Difusion等文本生成图片生成式AI产品非常火爆,已经被大量用户应用在各种业务场景。但也有很多人将其使用在非法用途,例如,通过Midjourney生成一张名人的合成照片,然后用于新闻造谣。
通过Stable Signature将数字水印嵌入到AI图片中,可极大避免此类事件的发生。
本文素材来源Meta官网,如有侵权请联系删除
相关文章:

Meta开源数字水印Stable Signature,极大增强生成式AI安全
全球社交、科技巨头Meta(Facebook、Instagram等母公司)在官网宣布,开源数字水印产品Stable Signature,并公开论文。 据悉,Stable Signature是由Meta和INRIA(法国国家信息与自动化研究所)联合开…...

python实现分词器
在Python中实现分词有很多方法,具体取决于你的应用场景和数据。下面我会介绍一种常用的分词库——jieba。如果你的数据是英文,你也可以使用nltk库。 中文分词 使用jieba进行中文分词: 首先,你需要安装jieba库。如果还未安装&am…...

第五十二章 学习常用技能 - Global 映射
文章目录 第五十二章 学习常用技能定义数据库定义命名空间Global映射 第五十二章 学习常用技能 定义数据库 创建本地数据库: 登录管理门户。选择系统管理 > 配置 > 系统配置 > 本地数据库。选择创建新数据库以打开数据库向导。输入新数据库的以下信息&a…...

vue实现瀑布流
1、在 src 目录下创建 component文件夹,在文件夹中创建 vue文件。 2、在 Vue文件中写入以下内容 <div class"pubu"><div class"left"><div class"pubu-item" v-for"item in left" :key"item.id"…...

【虹科干货】Redis Enterprise 自动分层技术:大数据集高性能解决方案
越来越多的应用程序依赖于庞大的数据集合,而这些应用程序必须快速响应。借助自动分层,Redis Enterprise 7.2 帮助开发人员轻松创建超快的应用程序。何乐而不为? Redis将数据存储在内存中,因此应用程序能以最快的速度检索和处理数…...

代码随想录训练营二刷第五十四天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组
代码随想录训练营二刷第五十四天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组 一、300.最长递增子序列 题目链接:https://leetcode.cn/problems/longest-increasing-subsequence/ 思路:定义dp[i]表示从0到i的闭区间的最长子序列长…...

LeetCode 2562. 找出数组的串联值【数组,相向双指针】1259
本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…...

SpringBoot使用的时间与空间计量单位
SpringBoot支持JDK8提供的时间与空间计量单位 //时间单位DurationUnit(ChronoUnit.MINUTES)private Duration serverTimeOut;//存储空间单位DataSizeUnit(DataUnit.MEGABYTES)private DataSize dataSize; 在springboot中的具体使用: Component Data ConfigurationPr…...

【使用 TensorFlow 2】02/3 使用 Lambda 层创建自定义激活函数
一、说明 TensorFlow 2发布已经接近2年时间,不仅继承了Keras快速上手和易于使用的特性,同时还扩展了原有Keras所不支持的分布式训练的特性。3大设计原则:简化概念,海纳百川,构建生态.这是本系列的第三部分,…...

docker--使用docker login 报错解决方案
我们在本地使用 docker login 命令登录时报错,可以尝试一下先 docker logout 命令退出登录后,在使用 docker login命令进行登录操作; docker logout...

leetcode oj
150. 逆波兰表达式求值 - 力扣(LeetCode) 思路:定义一个名为 Solution 的类,并在其中定义了一个名为 evalRPN 的公共函数。这个函数接受一个由字符串组成的向量 tokens 作为输入,并返回一个整数。 在代码中࿰…...

黑马点评-05缓存穿透问题及其解决方案,缓存空字符串或使用布隆过滤器
缓存穿透问题(缓存空) 缓存穿透的解决方案 缓存穿透(数据穿透缓存直击数据库): 缓存穿透是指客户端请求访问缓存中和数据库中都不存在的数据,此时缓存永远不会生效并且用户的请求都会打到数据库 数据库能够承载的并发不如Redis这么高,如果大量的请求同时访问这种…...

Flink之窗口聚合算子
1.窗口聚合算子 在Flink中窗口聚合算子主要分类两类 滚动聚合算子(增量聚合)全窗口聚合算子(全量聚合) 1.1 滚动聚合算子 滚动聚合算子一次只处理一条数据,通过算子中的累加器对聚合结果进行更新,当窗口触发时再从累加器中取结果数据,一般使用算子如下: aggregatemaxmaxBy…...

K8S:Rancher管理 Kubernetes 集群
文章目录 一.Rancher 简介1.Rancher概念2.Rancher 和 k8s 的区别 二.Rancher 安装及配置1.安装 rancher2.登录 Rancher 平台3.Rancher 管理已存在的 k8s 集群4.Rancher 部署监控系统5.使用 Rancher 仪表盘管理 k8s 集群 三.拓展1.Rancher和kubesphere相比较2.K3S和K8S相比较 一…...

后台运行python程序并查看运行的python 进程
nohup python -u Job.py > log.log 2>&1 &说明: 末尾的“&”:表示后台运行程序 “nohup” :保证程序不被挂起 “python”:是执行python代码的命令 “-u”:表示不启用缓存,实时输出打印…...

树莓派部署.net core网站程序
1、发布你的项目 使用mobaxterm上传程序 回到mobaxterm,f进入目录输入: cd webpublish 运行程序:dotnet WebApplication1.dll 访问地址为:http://localhost:5000,尝访问如下: 已经出现 返回的json,证明是可以访问的…...

淘宝商品评论数据接口,淘宝商品评论API接口
淘宝商品评论数据接口可以通过淘宝开放平台API获取。 通过构建合理的请求URL,可以向淘宝服务器发起HTTP请求,获取商品评论数据。接口返回的数据一般为JSON格式,包含了商品的各种评价信息。获取到商品评论数据后,可以对其进行处理…...

455. 分发饼干
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] …...

GEE:数据预处理的细节(处理顺序。比如, select() 和 filter() 要优先于 map())
作者:CSDN @ _养乐多_ 大家在数据预处理的时候,是不是随意进行处理,并没有考虑 Google Earth Engine(GEE)性能的问题?比如选择数据集的时候,先执行map函数,再按时间选择数据?不同的处理顺序会导致不同的计算成本。 因此,本文将探讨如何在 GEE 中筛选和选择数据集合…...

【AHK】任务栏调节音量/边缘滚动调节/边缘触发
通过ahk实现类似mouseinc的边缘滚动调节音量的功能,有两个思路。 任务栏调节音量 #If MouseIsOver("ahk_class Shell_TrayWnd") WheelUp::Send {Volume_Up} WheelDown::Send {Volume_Down} return #IfMouseIsOver(WinTitle) {MouseGetPos,,, Winreturn …...

Chrome插件 — ReRes
ReRes插件是一款可以帮助Web开发人员进行开发和测试的Chrome浏览器扩展。它可以模拟网页请求,并返回指定的响应。 该插件可以用于多种情况,例如: 测试网站功能,调试程序等;本地开发Web应用时,模拟远程API…...

前端面试基础面试题——9
1.js 延迟加载的方式有哪些? 2.js同步和异步的区别? 3.什么是浏览器的同源政策? 4.介绍一下 js 的节流与防抖? 5.js 中的深浅拷贝实现? 6.Js 动画与 CSS 动画区别及相应实现 7.观察者模式和发布订阅模式有什么不同…...

tomcat 问题
一、start up.bat 闪退 在命令窗口run 看看是缺少了哪个环境变量 二、控制台输出乱码 logging.properties 底部添加 java.util.logging.ConsoleHandler.encoding GBK 三、缓存不足 context.xml配置 <Resources cachingAllowed"false" cacheMaxSize"100…...

小程序首页如何进行装修设置
小程序首页是展示给用户的第一屏,它的装修直接影响到用户对小程序的第一印象。小程序首页的设置在小程序管理员后台->页面设置->首页,下图是小程序首页默认的设置。 下图,是小程序首页的具体表现形式。下面具体解释小程序首页各个设置项…...
npm安装依赖报错npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND、npm run dev报错记录
npm安装依赖报错npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND_得我所得,爱我所爱的博客-CSDN博客npm安装依赖报错今天在学习webpack的时候,在使用npm install来安装一个局部的webpack时候,报出一下错误:npm ERR! code ENOTFOUNDnpm ERR…...

堆叠注入([强网杯 2019]随便注1)
详解: 堆叠注入(Stack Injection)是一种计算机安全概念,涉及攻击者向程序的堆栈内存中插入恶意代码,以便在程序执行期间执行非预期的操作。 堆栈注入攻击通常利用程序在处理函数调用时使用的堆栈机制。当一个函数被调…...

零基础Linux_15(基础IO_文件)软硬链接+动静态库详解
目录 1. 软硬链接 1.1 创建软链接 1.2 创建硬链接 1.3 硬链接数和unlink 2. 动静态库 2.1 制作静态库 2.2 查看和打包静态库 2.3 使用静态库 2.3.1 安装在默认搜索路径 2.3.2 告知路径库路径库名 2.4 制作动态库 2.5 使用动态库 2.5.1 安装在默认搜索路径 2.5.2 …...

计算机毕业设计选什么题目好?springboot 健身房管理系统
✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…...

两台linux 之间传输文件 (详细+bash脚本)
两台linux设备文件直接传输,有很多应用场景 一、可能的方案 (一)先下载再上传 从linux通过ssh下载到windows下,然后再通过ssh上传到另一台linux。 1.优点:简单 2.缺点:效率低,需要额外的设备…...

嵌入式系统开发【深入浅出】 EXTI 与 NVIC
目录 CPU 感知外部事件变化的三种方式 中断分三个级别 中断控制器 STM32 的中断和异常 NVIC 中断控制器 NVIC 结构体成员 抢占优先级和响应优先级 简单配置NVIC中断控制器 EXTI 外部中断【中断源级】 STM32系列微控制器实际上最多有23根外部中断线(EXT…...