stable diffusion模型评价框架

news/2024/4/23 11:59:39/文章来源:https://blog.csdn.net/u012193416/article/details/133243419

GhostReview:全球第一套AI绘画ckpt评测框架代码 - 知乎大家好,我是_GhostInShell_,是全球AI绘画模型网站Civitai的All Time Highest Rated (全球历史最高评价) 第二名的GhostMix的作者。在上一篇文章,我主要探讨自己关于ckpt的发展方向的观点,简单来说,即checkpoin…icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/647150677

港中大和商汤提出HPS v2:为文本生成图像模型提供更可靠的评价指标_Amusi(CVer)的博客-CSDN博客点击下方卡片,关注“CVer”公众号AI/CV重磅干货,第一时间送达点击进入—>【扩散模型和Transformer】交流群TL;DR 本文提出了一个目前数据量最大的、涵盖面最广、反应人类对生成图像喜爱程度的数据集:HPD v2, 并基于该数据集,提出了目前泛化性最强的“人类喜好评估模型”:HPS v2。HPS v2可以类比为ChatGPT中的reward model,可以用于图像生成模型的对...https://blog.csdn.net/amusi1994/article/details/131566719作者的思路我认为也是没问题,和我看法基本一致,生成式的sd不需要那么多定向的模型,提供强泛化能力的基础模型只需要几个就可以,而外挂的能力多可以通过lora、controlnet这样的工具去完成,因此评估主sd模型确实需要有一套体系,常规的一些指标确实很难衡量模型的生成能力,目前最主要的图像生成的指标还是FID/IS/Clip score,但是这些评价指标很多时候也无法充分反应图像的生成质量。

GhostReview评价指标:将模型出图归为2个部分,一个是系统性影响,即模型影响,另一个是个体影响,即随机种子带来的影响,评价模型的系统性风险。1.模型的兼容性(画风,Lora,prompts等),2.生成图片的画面质量,3.模型的良图率。

1.模型出图质量和泛化性分析

1.1 美学评估

GitHub - christophschuhmann/improved-aesthetic-predictor: CLIP+MLP Aesthetic Score PredictorCLIP+MLP Aesthetic Score Predictor. Contribute to christophschuhmann/improved-aesthetic-predictor development by creating an account on GitHub.icon-default.png?t=N7T8https://github.com/christophschuhmann/improved-aesthetic-predictor

laion-5B基于laion-aesthetics v1使用了17.6W条图片评分对,1.5W条laion-logos图片评分对和25w条AVA数据,作为美学评分,通过美学得分的标准差来数值化衡量模型的良图率。

1.2 prompt兼容性

https://github.com/openai/CLIPicon-default.png?t=N7T8https://github.com/openai/CLIP

主要衡量模型生成的图片能否正确反应prompt的输入,采用clip中的clipscore。

所采用的Prompt方面,GhostReview中采用了Civitai上面Image Reaction最多的25条非政治性,非梗,非色情或软色情的Prompts。为保证Prompts涵盖真实,动漫和艺术的画风,所以加了5条风格化的Prompts,一共30条Prompts(全部不含LoRA)。每个ckpt在每一条Prompts生成32张图(batch4,iter8)。所以对于单个ckpt一共在第一个项目生成960张highres fix的图片。

2.风格兼容性分析

测试的方式是输入风格化相关的prompt让模型生成大量风格化的图片,然后与现有的大量style图片进行对比,得出画风兼容性数值结果,通过vgg19提取生成图片和目标图片的feature map,然后计算每一层的feature map的gram matrix,计算具体的styleloss。

风格化的Prompts方面,参考SDXL的风格,去除现有ckpt无法直接实现的,比如PaperCut,最后选择9中不同的风格:Anime,Manga,Photographic,Isometric,Low_Poly, Line_Art,3D_Model,Pixel_Art,Watercolor。

3.对lora的兼容性分析

通过生成图片与目标图片进行styleloss的计算。

Prompts和LoRA的选择。由于每个ckpt用人物LoRA生成出来的人物都会与样图不太一致,所以LoRA兼容性测试选取的是风格化的LoRA。选择标准是Civitai All Time Highest Rated的Top 16个风格化LoRA。采用的目标图片和Prompts皆为LoRA头图的图片和Prompts。这里多说点处理的细节,1对于一张图里面有多个LoRA的,会补全对应LoRA(比如:墨心的头图) 2对于没有LoRA字段的Prompts,默认添加0.8的LoRA权重进行生成(比如:3D rendering style的头图) 3.对于头图使用错误版本的LoRA字段的,更换成新版本的LoRA字段(比如:Gacha splash的头图)4. 因为有些LoRA头图本身使用的大模型也是被测模型,比如REV和majic realistic,所以做了GhostLoRALoss_NoTM版本的分数,计算这些模型时,不考虑这些LoRA的分数。

也就说三部分,第一部分用美学评估模型评估图片分数,用clipscore评估prompt和输出图片之间的相关性,第二部分,用输入prompt生成的图片和已有的风格图片之间计算styleloss,第三部分,结合lora,使用lora自带的图片和prompt,输入prompt得到图片和lora图片之间计算styleloss,这三个维度来评价模型。

4.代码

# 图片的美学分数
model = CLIPModel.from_pretrained("laion/CLIP-VIT-L-14-laion2B-s32B-b82K")
clip_processor = CLIPProcessor.from_pretrained("laion/CLIP-VIT-L-14-laion2B-s32B-b82k")rating_model = load_model()
artifacts_model = load_model()def predict(img):inputs = clip_processor(img,)with torch.no_grad():vision_output = vision_model()embedding = preprocess(pooled_output)with torch.no_grad():rating = rating_model(embedding)artifact = artifacts_model(embedding)

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

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

相关文章

测试用例的编写(面试常问)

作者:爱塔居 专栏:软件测试 作者简介:不断总结,才能变得更好~踩过的坑,不能再踩~ 文章简介:常见的几个测试用例。 一、淘宝购物车 二、登录页面 三、三角形测试用例 abc结果346普通三角形333等边三角形334…

Scala第一章节

Scala第一章节 scala总目录 章节目标 理解Scala的相关概述掌握Scala的环境搭建掌握Scala小案例: 做最好的自己 1. Scala简介 1.1 概述 ​ Scala(斯嘎拉)这个名字来源于"Scalable Language(可伸缩的语言)", 它是一门基于JVM的多范式编程语言, 通俗的说: Scala是一…

【从入门到起飞】JavaSE—Stream流

🎊专栏【JavaSE】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🥰欢迎并且感谢大家指出我的问题 文章目录 🍔Stream流的作用🍔Stream流的使用步骤🎄获取Strea…

Android Shape设置背景

设置背景时&#xff0c;经常这样 android:background“drawable/xxx” 。如果是纯色图片&#xff0c;可以考虑用 shape 替代。 shape 相比图片&#xff0c;减少资源占用&#xff0c;缩减APK体积。 开始使用。 <?xml version"1.0" encoding"utf-8"?…

100行 python实现Android与windows局域网文件夹同步

编程解决一切烦恼 Obsidian搭建个人笔记 最近在使用Obsidian搭建个人云笔记 尽管我使用腾讯云COS图床gitee实现了云备份&#xff0c;但是在Android上使的Obsidian备份有点麻烦。还好我主要是在电脑端做笔记&#xff0c;手机只是作为阅读工具。 所以&#xff0c;我写一个局域…

Spring Boot 技术架构图(InsCode AI 创作助手辅助)

Spring Boot 技术架构是一种用于构建现代应用程序的框架&#xff0c;它可以与各种前端、代理、网关、业务服务、中间件、存储、持续集成和容器服务集成在一起&#xff0c;以创建功能强大的应用程序。 源文件下载链接&#xff01;&#xff01;&#xff01;&#xff01;&#xff…

02-Zookeeper实战

上一篇&#xff1a;01-Zookeeper特性与节点数据类型详解 1. zookeeper安装 Step1&#xff1a; 配置JAVA环境&#xff0c;检验环境&#xff1a; java -versionStep2: 下载解压 zookeeper wget https://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.8/apache-zookeepe…

Android Studio 的aapt2.exe在哪个目录下

一般在&#xff1a;C:\Users\admin\AppData\Local\Android\Sdk\build-tools\30.0.2&#xff08;不一定是30.0.2&#xff0c;这个得看你的版本&#xff09; 怎么找&#xff1a; 1.打开Android studio

unity lua开发体系搭建

在前面的文章里面我们已经介绍了怎么样在unity里面配置lua的开发环境&#xff0c;我们可以通过C#代码装载lua的脚本并执行相应的处理&#xff0c;这次我们一步步搭建下lua的开发体系。 1.基于c#体系所有的类都继承MonoBehaviour在这里lua环境下我们也需要创建一个类似于这个类的…

9月的一些琐碎,但值得记录的事情!

明显感觉时间过得好快&#xff0c;上个月还在写8月的小结&#xff0c;马上就是9月的了。 9月份比较忙&#xff0c;但是很充实&#xff0c;可能自己创业做事情&#xff0c;多少更有动力一些。 1. 要说&#xff19;月份最大的事情&#xff0c;就是女儿开始上幼儿园了&#xff0c;…

功率放大器有哪些要求和标准参数

功率放大器是一种常见的电子设备&#xff0c;用于将输入信号增强到更高的功率级别。为了满足不同应用需求&#xff0c;功率放大器需要符合一些特定的要求和标准参数。 在现代电子设备中&#xff0c;功率放大器广泛应用于各种领域&#xff0c;如通信、音频放大、射频放大等。它们…

APP自动化之weditor工具

由于最近事情颇多&#xff0c;许久未更新文章。大家在做APP自动化测试过程中&#xff0c;可能使用的是Appium官方提供的inspect进行元素定位&#xff0c;但此工具调试不方便&#xff0c;于是今天给大家分享一款更好用的APP定位元素工具&#xff1a;weditor weditor基于web网页…

复杂度分析

文章目录 如何分析、统计算法的执行效率和资源消耗&#xff1f;为什么需要复杂度分析&#xff1f;测试结果非常依赖测试环境测试结果受数据规模的影响很大 大O复杂度表示法时间复杂度分析只关注循环次数最多的一段代码加法法则&#xff1a;总复杂度等于量级最大的那段代码的复杂…

分布式网络在移动医疗场景中的应用

随着医疗信息化建设实践的深入&#xff0c;越来越多的医疗机构开始借助网络信息技术改善其运营及管理模式&#xff0c;为患者提供更高质量、更高效率、更加安全体贴的医疗服务。移动医疗便是在此背景下产生的新业务需求。 常见的移动医疗场景 住院部&#xff1a;移动查房、智…

力扣 -- 44. 通配符匹配

解题步骤&#xff1a; 参考代码&#xff1a; class Solution { public:bool isMatch(string s, string p) {int ms.size();int np.size();//为了调整映射关系s s;p p;//多开一行多开一列vector<vector<bool>> dp(m1,vector<bool>(n1,false));//初始化//dp[0]…

【GDB】使用 GDB 自动画红黑树

阅读本文前需要的基础知识 用 python 扩展 gdb python 绘制 graphviz 使用 GDB 画红黑树 前面几节中介绍了 gdb 的 python 扩展&#xff0c;参考 用 python 扩展 gdb 并且 python 有 graphviz 模块&#xff0c;那么可以用 gdb 调用 python&#xff0c;在 python 中使用 grap…

数据结构--双链表

今天我们来用数组来模拟双链表 为什么要数组模拟呢&#xff1f; 因为用数组模拟的双链表&#xff0c;运行速度更快&#xff0c;做算法题更加舒服 用数组模拟双链表的内容 1、同样也有首尾结点 2、相邻的两个节点是相互指向的 3、可以看成两个方向相反的单链表相互连接在一起 …

【项目】Http服务器

【项目】Http服务器 项目简介 背景&#xff1a; http协议被广泛使用&#xff0c;从移动端&#xff0c;pc端浏览器&#xff0c;http协议无疑是打开互联网应用窗口的重要协议&#xff0c;http在网络应用层中的地位不可撼动&#xff0c;是能准确区分前后台的重要协议。 描述&a…

Android Studio插件版本与Gradle 版本对应关系

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、Gradle各版本对应关系3.1 Gradle 版…

26663-2011 大型液压安全联轴器 课堂随笔

声明 本文是学习GB-T 26663-2011 大型液压安全联轴器. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了大型液压安全联轴器的分类、技术要求、试验方法及检验规则等。 本标准适用于联接两同轴线的传动轴系&#xff0c;可起到限制…