ScreenAI: یک مدل زبان بصری برای UI و درک زبان بصری

رابط‌های کاربر صفحه (UI) و اینفوگرافیک‌ها، مانند نمودارها، نمودارها و جداول، نقش مهمی در ارتباطات انسانی و تعامل انسان و ماشین بازی می‌کنند، زیرا تجربه‌های غنی و تعاملی کاربر را تسهیل می‌کنند. رابط‌های کاربری و اینفوگرافیک‌ها اصول طراحی و زبان بصری مشابهی را به اشتراک می‌گذارند (به عنوان مثال، نمادها و طرح‌بندی‌ها)، که فرصتی برای ساخت یک مدل واحد است که بتواند این رابط‌ها را درک کند، استدلال کند و با آن تعامل داشته باشد. با این حال، به دلیل پیچیدگی و فرمت های ارائه متنوع، اینفوگرافیک ها و UI ها یک چالش مدل سازی منحصر به فرد را ارائه می دهند.

برای این منظور، ما “ScreenAI: یک مدل زبان بینایی برای درک UI و Infographics” را معرفی می کنیم. ScreenAI معماری PaLI را با استراتژی وصله انعطاف پذیر pix2struct بهبود می بخشد. ما ScreenAI را بر روی ترکیبی منحصر به فرد از مجموعه داده ها و وظایف، از جمله یک کار جدید حاشیه نویسی صفحه که به مدل نیاز دارد تا اطلاعات عنصر UI (یعنی نوع، مکان و توضیحات) را روی صفحه شناسایی کند، آموزش می دهیم. این حاشیه‌نویسی‌های متنی، مدل‌های زبان بزرگ (LLM) را با توضیحات صفحه ارائه می‌دهند، و آنها را قادر می‌سازد تا به‌طور خودکار مجموعه‌های آموزش پاسخگویی به سؤال (QA)، ناوبری UI و خلاصه‌سازی مجموعه‌های آموزشی را در مقیاس تولید کنند. ScreenAI تنها با 5B پارامتر، به نتایج پیشرفته‌ای در کارهای مبتنی بر UI و اینفوگرافیک (WebSRC و MoTIF) و بهترین عملکرد در رده خود در نمودار QA، DocVQA و InfographicVQA در مقایسه با مدل‌های با اندازه مشابه دست می‌یابد. . ما همچنین سه مجموعه داده جدید را منتشر می‌کنیم: حاشیه‌نویسی صفحه برای ارزیابی قابلیت درک طرح‌بندی مدل، و همچنین ScreenQA Short و Complex ScreenQA برای ارزیابی جامع‌تر از قابلیت QA آن.

ScreenAI

معماری ScreenAI مبتنی بر PaLI است که از یک بلوک رمزگذار چندوجهی و یک رمزگشای خودبازگشت تشکیل شده است. رمزگذار PaLI از یک ترانسفورماتور بینایی (ViT) استفاده می‌کند که جاسازی‌های تصویر را ایجاد می‌کند و یک رمزگذار چندوجهی که الحاق جاسازی‌های تصویر و متن را به عنوان ورودی می‌گیرد. این معماری انعطاف‌پذیر به ScreenAI اجازه می‌دهد تا وظایف بینایی را که می‌توانند به‌عنوان مشکلات متن+تصویر به متن تغییر شکل دهند، حل کند.

در بالای معماری PaLI، ما از یک استراتژی وصله انعطاف پذیر معرفی شده در pix2struct استفاده می کنیم. به جای استفاده از الگوی شبکه ثابت، ابعاد شبکه به گونه ای انتخاب می شوند که نسبت ابعاد اصلی تصویر ورودی را حفظ کنند. این ScreenAI را قادر می سازد تا در تصاویر با نسبت های مختلف به خوبی کار کند.

مدل ScreenAI در دو مرحله آموزش داده می شود: مرحله قبل از آموزش و سپس مرحله تنظیم دقیق. ابتدا، یادگیری خود نظارتی برای تولید خودکار برچسب های داده اعمال می شود، که سپس برای آموزش ViT و مدل زبان استفاده می شود. ViT در مرحله تنظیم دقیق منجمد می شود، جایی که بیشتر داده های مورد استفاده توسط ارزیاب های انسانی به صورت دستی برچسب گذاری می شوند.

معماری مدل ScreenAI

تولید داده

برای ایجاد یک مجموعه داده پیش‌آموزشی برای ScreenAI، ابتدا مجموعه گسترده‌ای از اسکرین‌شات‌ها را از دستگاه‌های مختلف، از جمله رایانه‌های رومیزی، موبایل، و تبلت‌ها گردآوری می‌کنیم. این امر با استفاده از صفحات وب در دسترس عموم و پیروی از رویکرد کاوش برنامه‌ای مورد استفاده برای مجموعه داده RICO برای برنامه‌های تلفن همراه به دست می‌آید. سپس یک حاشیه‌نویس طرح‌بندی، بر اساس مدل DETR، اعمال می‌کنیم که طیف وسیعی از عناصر رابط کاربری (مانند تصویر، تصویر، دکمه، متن) و روابط فضایی آنها را شناسایی و برچسب‌گذاری می‌کند. پیکتوگرام ها با استفاده از یک طبقه بندی نماد که قادر به تشخیص 77 نوع نماد مختلف است، مورد تجزیه و تحلیل بیشتری قرار می گیرند. این طبقه بندی دقیق برای تفسیر اطلاعات ظریف منتقل شده از طریق نمادها ضروری است. برای آیکون‌هایی که توسط طبقه‌بندی‌کننده پوشش داده نمی‌شوند، و برای اینفوگرافیک‌ها و تصاویر، از مدل زیرنویس تصویر PaLI برای تولید زیرنویس‌های توصیفی استفاده می‌کنیم که اطلاعات متنی را ارائه می‌دهند. ما همچنین از یک موتور تشخیص کاراکتر نوری (OCR) برای استخراج و حاشیه نویسی محتوای متنی روی صفحه استفاده می کنیم. ما متن OCR را با حاشیه نویسی های قبلی ترکیب می کنیم تا شرح مفصلی از هر صفحه ایجاد کنیم.

یک اسکرین شات از برنامه تلفن همراه با حاشیه نویسی ایجاد شده که شامل عناصر رابط کاربری و توضیحات آنها است، به عنوان مثال، TEXT عناصر همچنین حاوی محتوای متنی از OCR هستند، IMAGE عناصر حاوی شرح تصاویر، LIST_ITEMs شامل تمام عناصر فرزند خود است.

تولید داده مبتنی بر LLM

ما تنوع داده‌های قبل از آموزش را با استفاده از PalM 2 برای تولید جفت‌های ورودی-خروجی در یک فرآیند دو مرحله‌ای افزایش می‌دهیم. ابتدا، حاشیه‌نویسی‌های صفحه با استفاده از تکنیک ذکر شده در بالا ایجاد می‌شوند، سپس ما دستوری را در اطراف این طرح برای LLM ایجاد می‌کنیم تا داده‌های مصنوعی ایجاد کند. این فرآیند نیاز به مهندسی سریع و اصلاح مکرر برای یافتن یک اعلان موثر دارد. ما کیفیت داده های تولید شده را از طریق اعتبارسنجی انسانی در برابر آستانه کیفیت ارزیابی می کنیم.

You only speak JSON. Do not write text that isn’t JSON.
You are given the following mobile screenshot, described in words. Can you generate 5 questions regarding the content of the screenshot as well as the corresponding short answers to them? 

The answer should be as short as possible, containing only the necessary information. Your answer should be structured as follows:
questions: [
{{question: the question,
    answer: the answer
}},
 ...
]

{THE SCREEN SCHEMA}

یک نمونه درخواست برای تولید داده های QA.

با ترکیب قابلیت‌های زبان طبیعی LLM با یک طرح واره ساختاریافته، ما طیف گسترده‌ای از تعاملات و سناریوهای کاربر را برای ایجاد وظایف مصنوعی و واقعی شبیه‌سازی می‌کنیم. به طور خاص، ما سه دسته از وظایف را ایجاد می کنیم:

  • جواب سوال: از مدل خواسته می شود به سؤالاتی در مورد محتوای اسکرین شات ها پاسخ دهد، به عنوان مثال، “رستوران چه زمانی باز می شود؟”
  • ناوبری صفحه نمایش: از مدل خواسته می شود تا یک گفته زبان طبیعی را به یک عمل اجرایی روی صفحه تبدیل کند، به عنوان مثال، «دکمه جستجو را کلیک کنید».
  • خلاصه سازی صفحه نمایش: از مدل خواسته می شود که محتوای صفحه را در یک یا دو جمله خلاصه کند.
بلوک نمودار گردش کار ما برای تولید داده برای وظایف QA، خلاصه سازی و ناوبری با استفاده از مدل های ScreenAI و LLM های موجود. هر کار از یک اعلان سفارشی برای تأکید بر جنبه های مورد نظر استفاده می کند، مانند سؤالات مربوط به شمارش، شامل استدلال و غیره.

داده های تولید شده توسط LLM. نمونه هایی برای کیفیت صفحه نمایش، پیمایش و خلاصه سازی. برای پیمایش، کادر محدود کردن عمل به رنگ قرمز در تصویر نمایش داده می شود.

آزمایش ها و نتایج

همانطور که قبلا ذکر شد، ScreenAI در دو مرحله آموزش داده می شود: قبل از آموزش و تنظیم دقیق. برچسب‌های داده‌های پیش‌آموزشی با استفاده از یادگیری خود نظارتی به‌دست می‌آیند و برچسب‌های داده‌های تنظیم دقیق از ارزیابی‌کنندگان انسانی به دست می‌آیند.

ما ScreenAI را با استفاده از مجموعه داده‌های QA عمومی، خلاصه‌سازی و پیمایش و انواع وظایف مربوط به رابط‌های کاربری به‌خوبی تنظیم می‌کنیم. برای QA، ما از معیارهای به خوبی تثبیت شده در زمینه درک چندوجهی و سند استفاده می کنیم، مانند ChartQA، DocVQA، DocVQA چند صفحه، InfographicVQA، OCR VQA، Web SRC و ScreenQA. برای پیمایش، مجموعه داده‌های مورد استفاده عبارتند از Referring Expressions، MoTIF، Mug و Android in the Wild. در نهایت، ما از Screen2Words برای خلاصه‌سازی صفحه و عنوان ویجت برای توصیف عناصر UI خاص استفاده می‌کنیم. همراه با مجموعه داده های تنظیم دقیق، مدل ScreenAI تنظیم شده را با استفاده از سه معیار جدید ارزیابی می کنیم:

  1. حاشیه نویسی صفحه: حاشیه نویسی طرح مدل ارزیابی و قابلیت های درک فضایی را فعال می کند.
  2. ScreenQA Short: گونه‌ای از ScreenQA، که در آن پاسخ‌های حقیقت پایه آن کوتاه شده است تا فقط حاوی اطلاعات مربوطه باشد که بهتر با سایر وظایف QA همسو می‌شود.
  3. Complex ScreenQA: ScreenQA Short را با سؤالات دشوارتر (شمارش، حساب، مقایسه و سؤالات غیرقابل پاسخ) تکمیل می کند و حاوی صفحه نمایش هایی با نسبت های مختلف است.

مدل ScreenAI با تنظیم دقیق، نتایج پیشرفته‌ای را در کارهای مختلف مبتنی بر UI و اینفوگرافیک (WebSRC و MoTIF) و بهترین عملکرد را در نمودار QA، DocVQA و InfographicVQA در مقایسه با مدل‌های با اندازه مشابه به دست می‌آورد. ScreenAI به عملکرد رقابتی در Screen2Words و OCR-VQA دست می یابد. علاوه بر این، ما نتایج مربوط به مجموعه داده‌های معیار جدیدی را گزارش می‌کنیم که به عنوان پایه‌ای برای تحقیقات بیشتر معرفی شده‌اند.

مقایسه عملکرد مدل ScreenAI با مدل‌های پیشرفته (SOTA) با اندازه مشابه.

در مرحله بعد، قابلیت‌های مقیاس‌بندی ScreenAI را بررسی می‌کنیم و مشاهده می‌کنیم که در تمام وظایف، افزایش اندازه مدل عملکردها را بهبود می‌بخشد و پیشرفت‌ها در بزرگترین اندازه اشباع نشده‌اند.

عملکرد مدل با اندازه افزایش می یابد و عملکرد حتی در بزرگترین اندازه پارامترهای 5B اشباع نشده است.

نتیجه

ما مدل ScreenAI را همراه با یک نمایش یکپارچه معرفی می‌کنیم که به ما امکان می‌دهد وظایف یادگیری خود نظارتی را با استفاده از داده‌ها از همه این حوزه‌ها توسعه دهیم. ما همچنین تأثیر تولید داده با استفاده از LLM را نشان می‌دهیم و بهبود عملکرد مدل را در جنبه‌های خاص با اصلاح مخلوط آموزشی بررسی می‌کنیم. ما همه این تکنیک‌ها را برای ساخت مدل‌های آموزش‌دیده چند وظیفه‌ای به کار می‌بریم که به صورت رقابتی با رویکردهای پیشرفته در تعدادی از معیارهای عمومی عمل می‌کنند. با این حال، ما همچنین متذکر می شویم که رویکرد ما هنوز از مدل های بزرگ عقب است و تحقیقات بیشتری برای پر کردن این شکاف مورد نیاز است.

سپاسگزاریها

این پروژه حاصل همکاری مشترک با ماریا وانگ، فدیر زوباخ، حسن منصور، وینسنت اتر، ویکتور کاربون، جیسون لین، جیندونگ چن و آبهانشو شارما است. ما از فانگیو لیو، شی چن، افی کوکیوپولو، جسی برنت، گابریل بارسیک، لوکاس زیلکا، اوریانا ریوا، گانگ لی، یانگ لی، رادو سوریکوت و تانیا بدراکس-وایس به خاطر بازخوردها و بحث های روشنگرانه شان به همراه راهول آرالیکاته، هائو تشکر می کنیم. چنگ و دانیل کیم برای حمایت آنها در تهیه داده ها. ما همچنین از Jay Yagnik، Blaise Aguera y Arcas، Ewa Dominowska، David Petrou و Matt Sharifi برای رهبری، دیدگاه و حمایتشان تشکر می کنیم. ما از تام اسمال بسیار سپاسگزاریم که به ما در ایجاد انیمیشن در این پست کمک کرد.