Web2Code :网页理解和代码生成能力的评估框架

      多模态大型语言模型(MLLMs)在过去几年中取得了爆炸性的增长。利用大型语言模型(LLMs)中丰富的常识知识,MLLMs在处理和推理各种模态(如图像、视频和音频)方面表现出色,涵盖了识别、推理和问答等一系列任务,所有这些任务都使用语言作为中间表示。然而,现有的MLLMs在理解网页截图和生成表达其潜在状态的HTML代码方面出奇地差。

      为了解决现有 MLLM 在网页理解和代码生成方面的局限性,本文提出了 Web2Code 基准。Web2Code 包含一个大规模的网页到代码数据集,用于指令微调和一个评估框架,用于测试 MLLM 的网页理解和 HTML 代码翻译能力。

源代码下载:https://github.com/MBZUAI-LLM/web2code

1 数据集的构建

数据集构建是Web2Code项目的核心部分,它涉及创建和优化网页图像与HTML代码配对的数据,以及生成与网页理解相关的问答对。

1.1 创建新的网页图像-代码对数据 (DWCG)

  • 使用 GPT-3.5 生成 60K 个 HTML 页面,遵循 CodeAlpaca 提示。
  • 使用 Selenium WebDriver 从生成的 HTML 代码中创建网页图像截图。
  • 将网页图像-代码对转换为指令跟随数据格式,类似于 LLaVA 数据格式,以便用于训练 MLLM。

1.2 精炼现有的网页代码生成数据 (DWCGR)

  • 利用 Pix2code 和 WebSight 数据集来增强模型在 HTML 代码生成任务上的能力。
  • 使用 GPT-4 将 Pix2code 数据集中的随机字母替换为有意义文本,并将网页精炼为包含产品着陆页、个人作品集、博客等类别的多样化网页。
  • 将所有数据转换为 LLaVA 指令跟随数据格式。

1.3 创建新的文本问答对数据 (DWU)

  • 使用 GPT-4 生成基于网页代码的问答对数据,用于网页理解任务。
  • 为 24.35K 个网页数据生成 10 个问答对,共计 243.5K 个数据点。
  • 问答对涵盖了网页的结构、设计、内容等方面,以确保模型能够全面理解网页信息。

1.4 精炼现有的网页理解数据 (DWUR)

  • 将 WebSRC 数据集集成到训练中,以提高模型在网页理解任务上的能力。
  • 对 WebSRC 数据集中的问答对进行筛选,确保其相关性和质量。
  • 使用 GPT-4 评估和提升答案的质量,将数据集精炼为 51.5K 个高质量的指令数据。

1.5 数据集统计和分析

  • 图表展示了问答数据集中答案集的词云,突出了数据中结构性和设计元素的重要性。
  • 图表展示了 GPT-3.5 生成 HTML 数据中最常见的 HTML 标签分布,表明生成的页面包含丰富的元素,结构完整。
  • 表格将 Web2Code 数据集与其他现有数据集进行了比较,例如 WebSight、Design2Code 和 Pix2Code,结果表明 Web2Code 数据集更大、更复杂、更具挑战性。

1.6 数据集分布

  • Web2Code 数据集包含 1179.7K 个指令数据点,包括 884.7K 个网站图像-代码对和 295K 个问答对。
  • 问答对由 243.5K 个 GPT-4 基于问答对和 51.5K 个 WebSRC 图像基于问答对组成。
  • 评估数据集包含 1198 个网页截图图像,来自 WebSight、Pix2Code、GPT-3.5 基于数据和人工作业。
  • 此外,还使用了 5,990 个“是/否”问答对,使用 GPT-4 Vision API 生成,用于 WUB 基准测试。

2 评估框架

Web2Code 提出了一个包含两个方案的评估框架,用于评估 MLLM 的网页理解和代码生成能力

2.1 网页理解基准 (WUB)

这是一个离线评估,使用“是/否”问题进行评估。

  • 该基准包含 5,990 个高质量问答对,由 GPT-4 Vision API 生成,基于 1,198 个网页截图图像。
  • 每个问题的答案都是“是”或“否”。
  • 将模型对问题的预测答案与真实答案进行比较,最终准确率作为评估指标。

2.2 网页代码生成基准 (WCGB)

这是一个在线评估,基于图像相似度进行评估。

  • 该基准评估 MLLM 从网页图像生成 HTML 代码的能力。
  • 将预测的 HTML 代码转换为图像,并与真实图像进行比较。
  • 评估考虑了 10 个不同的方面,进一步分为四个评估矩阵,使用 GPT-4 Vision API 进行评分。

2.2.1 WCGB 评估的四个方面

  • 视觉结构和对齐: 评估网页元素的结构和布局、元素对齐、比例精度和视觉和谐。
  • 颜色和美学设计: 评估颜色方案、美学相似性、整体美学吸引力。
  • 文本和内容一致性: 评估字体特征、文本内容匹配、数字和特殊字符精度。
  • 用户界面和交互性: 评估用户界面一致性、设计语言和 UI 元素的外观。

2.3 评估指标

  • WUB:准确率 (%)
  • WCGB:视觉结构和对齐、颜色和美学设计、文本和内容一致性、用户界面和交互性的分数 (0-10)

2.4 定量评估

表格展示了不同 LLM 核心和不同数据配置在 WCGB 和 WUB 基准测试上的性能。

结果表明,Web2Code 数据集可以显著提高 MLLM 的网页理解和代码生成能力,而现有数据集则导致性能下降。

2.5 定性评估

图表展示了使用不同 LLM 核心生成的网页图像与真实图像之间的比较。

结果表明,Web2Code 数据集可以提高模型生成网页图像的质量。

通过提出的评估框架,我们证明了Web2Code数据集在增强MLLMs的网页理解和网页到HTML翻译能力方面是有效的,同时现有的数据集可能导致性能下降。

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

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

相关文章

数据结构:队列详解 c++信息学奥赛基础知识讲解

目录 一、队列概念 二、队列容器 三、队列操作 四、代码实操 五、队列遍历 六、案例实操 题目描述: 输入格式: 输出格式: 输入样例: 输出样例: 详细代码: 一、队列概念 队列是一种特殊的线性…

量化交易 - 策略回测

策略回测 1、什么是策略回测?2、策略回测的作用3、策略回测系统概述3.1策略回测中相关的指标介绍3.2量化交易策略的资金容量3.3 完整的策略回测系统包含哪些内容 1、什么是策略回测? 策略回测,也称之为策略回溯测试,是指利用交易…

Sectigo或RapidSSL DV通配符SSL证书哪个性价比更高?

在当前的网络安全领域,选择一款合适的SSL证书对于保护网站和用户数据至关重要。Sectigo和RapidSSL作为市场上知名的SSL证书提供商,以其高性价比和快速的服务响应而受到市场的青睐。本文将对Sectigo和RapidSSL DV通配符证书进行深入对比,帮助用…

Cosine 余弦相似度并行计算的数学原理与Python实现

背景 Cosine 我在LLM与RAG系列课程已经讲了很多次了,这里不在熬述,它在LLM分析中,尤其是在语义相似度的计算中至关重要,在dot attention机制中,也会看到他的身影。这里讲的是纯数学上的运算与python是如何运用相关库进…

昇思25天学习打卡营第6天|网络构建

网络构建 概念模型模型参数 概念 神经网络模型是由神经网络层和Tensor操作构成的,mindspore.nn提供了常见神经网络层的实现,在MindSpore中,Cell类是构建所有网络的基类,也是网络的基本单元。一个神经网络模型表示为一个Cell&…

事务的特性-原子性(Atomicity)、一致性(Consistency)、隔离性(Asolation)、持久性(Durability)

一、引言 1、数据库管理系统DBMS为保证定义的事务是一个逻辑工作单元,达到引入事务的目的,实现的事务机制要保证事务具有原子性、一致性、隔离性和持久性,事务的这四个特性也统称为事务的ACID特性 2、当事务保持了ACID特性,才能…

Jasper studio报表工具中,如何判断subDataSource()子报表数据源是否为空

目录 1.1、错误描述 1.2、解决方案 1.1、错误描述 今天在处理一个有关Jasper Studio报表模板制作的线上问题,需要根据某个报表子数据源是否为空,来决定对应的组件是否显示,找了好久的资料都没有实现,最后找到一种解决办法。就是…

【Mybatis 与 Spring】事务相关汇总

之前分享的几篇文章可以一起看,形成一个体系 【Mybatis】一级缓存与二级缓存源码分析与自定义二级缓存 【Spring】Spring事务相关源码分析 【Mybatis】Mybatis数据源与事务源码分析 Spring与Mybaitis融合 SpringManagedTransaction: org.mybatis.spri…

09 - matlab m_map地学绘图工具基础函数 - 绘制区域填充、伪彩色、加载图像和绘制浮雕效果的有关函数

09 - matlab m_map地学绘图工具基础函数 - 绘制区域填充、伪彩色、加载图像和绘制浮雕效果的有关函数 0. 引言1. 关于m_pcolor2. 关于m_image3. 关于m_shadedrelief4. 关于m_hatch5. 结语 0. 引言 本篇介绍下m_map中区域填充函数(m_hatch)、绘制伪彩色图…

Coze搭建《测测你的本命宠物》

前言 本文讲解如何从零开始,使用扣子平台去搭建《测测你的本命宠物》 《测测你的本命宠物》:测测你的本命宠物 - 扣子 AI Bot (coze.cn) 欢迎大家去体验一下!!! 正文 接下来我们开始讲解制作这个bot的流程吧&#…

公网环境使用Potplayer远程访问家中群晖NAS搭建的WebDAV听歌看电影

文章目录 前言1 使用环境要求:2 配置webdav3 测试局域网使用potplayer访问webdav4 内网穿透,映射至公网5 使用固定地址在potplayer访问webdav 前言 本文主要介绍如何在Windows设备使用potplayer播放器远程访问本地局域网的群晖NAS中的影视资源&#xff…

解析 Ferret-UI:多模态大模型在移动用户界面理解中的应用

移动应用的爆炸性增长,用户界面(UI)的设计越来越复杂,功能也越来越丰富。但现有的多模态大模型(MLLMs)在理解用户界面时存在局限,尤其是在处理具有特定分辨率和包含众多小型对象(如图…

debian打包小结

背景 业务需要,打一个openstack组件的deb包 openstack组件有setup.py可直接支持打rpm包,但不支持deb包,所以手动打deb包 用了dh_make准备打包文件,然后用debuild或dpkg-buildpackages打deb包 步骤 方法有很多,我用…

【uniapp】HBuilderx中uniapp项目运行到微信小程序报错Error: Fail to open IDE

HBuilderx中uniapp项目运行到微信小程序报错Error: Fail to open IDE 问题描述 uniapp开发微信小程序,在HBuilderx中运行到微信开发者工具时报错Error: Fail to open IDE 解决方案 1. 查看微信开发者工具端服务端口是否开放 打开微信开发者工具选择&#xff1…

31、matlab卷积运算:卷积运算、二维卷积、N维卷积

1、matlab卷积运算简介 在Matlab中,卷积运算是一种常见的信号处理和图像处理操作,用于将两个函数或信号进行混合以创建一个新的函数或信号。在Matlab中,卷积运算可以通过使用函数conv来实现。 一维卷积:在一维情况下,…

切片的基础知识

文章目录 ● Slice 的底层实现原理?● array 和 Slice 的区别?● 拷贝大切片一定比小切片代价大吗?● Slice 深拷贝和浅拷贝?● 零切片、空切片、nil切片?● Slice 的扩容机制?● Slice 为什么不是线程安全…

Hive SQL:实现炸列(列转行)以及逆操作(行转列)

目录 列转行行转列 列转行 函数: EXPLODE(ARRAY):将ARRAY中的每一元素转换为每一行 EXPLODE(MAP):将MAP中的每个键值对转换为两行,其中一行数据包含键,另一行数据包含值 数据样例: 1、将每天的课程&#…

新款奔驰GLE350升级原厂空气悬挂系统有哪些功能

奔驰 GLE350 升级原厂空气悬挂带来了一系列显著的优势和功能: 1. 舒适性提升 • 能够根据不同的路况和驾驶模式自动调节悬挂硬度和高度,有效过滤路面颠簸,为驾乘者提供更加平稳、舒适的行驶体验。 2. 行驶高度调节 • 驾驶者可以手动或自…

Web服务器与Apache(虚拟主机基于ip、域名和端口号)

一、Web基础 1.HTML概述 HTML&#xff08;Hypertext Markup Language&#xff09;是一种标记语音,用于创建和组织Web页面的结构和内容&#xff0c;HTML是构建Web页面的基础&#xff0c;定义了页面的结构和内容&#xff0c;通过标记和元素来实现 2.HTML文件结构 <html>…

商汤上海AI实验室联合发布:自动驾驶全栈式高精度标定工具箱(含车、IMU、相机、激光雷达等的标定)

前言 在自动驾驶技术飞速发展的今天&#xff0c;传感器的精确标定对于确保系统性能至关重要。SensorsCalibration&#xff0c;一个专为自动驾驶车辆设计的标定工具箱&#xff0c;提供了一套全面的解决方案&#xff0c;用于校准包括IMU、激光雷达、摄像头和雷达在内的多种传感器…