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.pswp.cn/diannao/38849.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38849.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38849.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

系統中非功能性需求的思考

概要 設計系統時不僅要考慮功能性需求,還要考慮一些非功能性需求,比如: 擴展性可靠性和冗余安全和隱私服務依賴SLA要求 下面對這5項需要考慮的事項做個簡單的說明 1. 可擴展性 數據量增長如何擴展? 流量增長如何擴展&#xf…

【LLM教程-llama】如何Fine Tuning大語言模型?

今天給大家帶來了一篇超級詳細的教程,手把手教你如何對大語言模型進行微調(Fine Tuning)!(代碼和詳細解釋放在后文) 目錄 大語言模型進行微調(Fine Tuning)需要哪些步驟? 大語言模型進行微調(Fine Tuning)訓練過程及代碼 大語言…

VuePress介紹

從本文開始,動手搭建自己的博客!希望讀者能跟著一起動手,這樣才能真正掌握。 ? VuePress 是什么 VuePress 是由 Vue 作者帶領團隊開發的,非常火,使用的人很多;Vue 框架官網也是用了 VuePress 搭建的。即…

000.二分查找算法題解目錄

000.二分查找算法題解目錄 69. x 的平方根(簡單)

4PCS點云配準算法實現

4PCS點云配準算法的C實現如下&#xff1a; #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #include <pcl/common/common.h> #include <pcl/common/distances.h> #include <pcl/common/transforms.h> #in…

唯一ID:UUID 介紹與 google/uuid 庫生成 UUID

UUID 即通用唯一識別碼&#xff0c;是一種用于計算機系統中以確保全局唯一性的標識符。其標準定義于 RFC 4122 文檔中。標準形式包含 32 個 16 進制數字&#xff0c;以連字符切割為五組&#xff0c;格式為 8-4-4-4-12&#xff0c;總共 36 個字符。&#xff08;形如, d169aa7f-4…

php 通過vendor文件 生成還原最新的composer.json

起因&#xff1a;因為歷史原因&#xff0c;在本項目中composer.json基本算廢了&#xff0c;沒法直接使用composer管理擴展&#xff0c;今天嘗試修復一下composer.json。 歷史文件&#xff0c;可以看出來已經很久沒有維護了&#xff0c;我們主要是恢復require的信息 {"na…

K8s節點維護流程

用途 用于下線異常節點、集群縮容等 操作步驟 1. 查看節點名稱 先確認節點的名稱 kubectl get node -o wide2. 設置節點不可調度 設置節點不可調度狀態&#xff0c;禁止新的pod調度到該節點上 kubectl cordon ${node_name}3. 剔除節點上運行的pod&#xff08;生產環境慎…

Spring Boot中集成Redis實現緩存功能

Spring Boot中集成Redis實現緩存功能 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01;今天我們將深入探討如何在Spring Boot應用程序中集成Redis&#xff0c;實現…

AP無法上線原因分析及排障

一、AP未分配到IP地址 如果遇到AP無法上線問題&#xff0c;可以檢查下AP是否分配到IP地址。AP獲取IP地址有兩種方式&#xff1a;靜態方式&#xff1a;登錄到AP設備&#xff0c;手工配置IP地址&#xff0c;該方式操作起來比較麻煩&#xff0c;不推薦使用&#xff1b;DHCP方式&am…

基于CNN的股票預測方法【卷積神經網絡】

基于機器學習方法的股票預測系列文章目錄 一、基于強化學習DQN的股票預測【股票交易】 二、基于CNN的股票預測方法【卷積神經網絡】 文章目錄 基于機器學習方法的股票預測系列文章目錄一、CNN建模原理二、模型搭建三、模型參數的選擇&#xff08;1&#xff09;探究window_size…

下代iPhone或回歸可拆卸電池,蘋果這操作把我看傻了

剛度過一個愉快的周末&#xff0c;蘋果又雙叒叕攤上事兒了。 iPhone13 系列被曝扎堆電池鼓包了。 早在去年&#xff0c;就有 iPhone13 和 iPhone14 用戶反饋過類似的問題&#xff0c;表示在手機僅僅使用了一年多的時間就出現了電池鼓包的情況&#xff0c;而且還把屏幕給撐起來了…

舞會無領導:一種樹形動態規劃的視角

沒有上司的舞會 Ural 大學有 &#x1d441; 名職員&#xff0c;編號為1~&#x1d441;。 他們的關系就像一棵以校長為根的樹&#xff0c;父節點就是子節點的直接上司。 每個職員有一個快樂指數&#xff0c;用整數 &#x1d43b;&#x1d456; 給出&#xff0c;其中1≤&…

校園卡手機卡怎么注銷?

校園手機卡的注銷流程可以根據不同的運營商和具體情況有所不同&#xff0c;但一般來說&#xff0c;以下是注銷校園手機卡的幾種常見方式&#xff0c;我將以分點的方式詳細解釋&#xff1a; 一、線上注銷&#xff08;通過手機APP或官方網站&#xff09; 下載并打開對應運營商的…

C++ 指針介紹

指針是C編程語言中的一個強大且重要的特性。它允許程序員直接操作內存地址&#xff0c;從而提供了對低級別內存的訪問和控制。雖然指針在使用時可能比較復雜且容易出錯&#xff0c;但它們在提高程序效率和靈活性方面有著不可替代的作用。本文將介紹C指針的基本概念、用法及其應…

Docker 中 MySQL 遷移策略(單節點)

目錄 一、 簡介二、操作流程2.1 進入mysql容器2.2 導出 MySQL 數據2.3. 將導出的文件復制到宿主機2.4 創建 Docker Compose 配置2.5 啟動新的 Docker 容器2.6 導入數據到新的容器2.7 驗證數據2.8 刪除舊的容器&#xff08;刪除操作需慎重&#xff09; 三、推薦配置四、寫在后面…

當年很多跑到美加澳寫代碼的人現在又移回香港?什么原因?

當年很多跑到美加澳寫代碼的人現在又移回香港&#xff1f;什么原因&#xff1f; 近年來&#xff0c;確實有部分曾經移民到美國、加拿大、澳大利亞等地的香港居民選擇移回香港。這一現象與多種因素相關&#xff0c;主要可以歸結為以下幾點&#xff1a; 疫情后的環境變化&#…

【STM32】溫濕度采集與OLED顯示

一、任務要求 1. 學習I2C總線通信協議&#xff0c;使用STM32F103完成基于I2C協議的AHT20溫濕度傳感器的數據采集&#xff0c;并將采集的溫度-濕度值通過串口輸出。 任務要求&#xff1a; 1&#xff09;解釋什么是“軟件I2C”和“硬件I2C”&#xff1f;&#xff08;閱讀野火配…

2025第13屆常州國際工業裝備博覽會招商全面啟動

常州智造 裝備中國|2025第13屆常州國際工業裝備博覽會招商全面啟動 2025第13屆常州國際工業裝備博覽會將于2025年4月11-13日在常州西太湖國際博覽中心盛大舉行&#xff01;目前&#xff0c;各項籌備工作正穩步推進。 60000平米的超大規模、800多家國內外工業裝備制造名企將云集…

C++中的RAII(資源獲取即初始化)原則

C中的RAII&#xff08;Resource Acquisition Is Initialization&#xff0c;資源獲取即初始化&#xff09;原則是一種管理資源、避免資源泄漏的慣用法。RAII是C之父Bjarne Stroustrup提出的設計理念&#xff0c;其核心思想是將資源的獲取&#xff08;如動態內存分配、文件句柄、…