728x90
반응형

 

Paper : https://arxiv.org/pdf/2404.05719.pdf

 

요즘 애플이 기존 인력을 AI 인력으로 재배치 하는 등 작정하고 4억 원 이상의 연봉을 제시하며 AI 인력 확보에 사활을 걸고 있다고 한다.

게다가 논문을 안내기로 유명했던 애플인데, Apple Research 결과를 보면 심심치 않게 논문이 쏟아져나오고 있는 상황이다. 그래서 나는 애플이 앞으로 어떤걸 보여줄지 개인적으로 많은 기대를 걸고 있다. (빨리 아이폰에 기깔난 AI 심어줘...) 

 

애플이 앞으로 어떤걸 내놓을지 조금은 유추가능할만한 논문이 나왔다. 바로 Ferret-UI 라는 것이다. 요즘 나오는 multimodal large language models (MLLMs) 중에 사용자 인터페이스 화면을 이해하고 효과적으로 상호작용하는 능력은 부족하다는 점을 언급하면서 논문이 시작된다. 애플에서는 모바일 UI화면에 대한 이해도를 높이고, referring, grounding, reasoning 기능이 탑재된 맞춤화된 새로운 MLLM인 Ferret-UI를 소개한다. 

 

과거에 이런 연구가 하나도 없었던 것은 아니다. Screen2word, Widget Capture, Taperception 등 유사한 연구가 있었다. 근데 아마 이번에는 GPT-4를 이용하여 학습 데이터를 만들고 학습을 하니 성능은 더 좋겠지. 

 

 

 

 

Ferret-UI는 UI 화면이 일반적으로 자연 이미지보다 더 긴 종횡비로 나타내지고, 관심 객체가 더 작다는 점 (아이콘, 텍스트 등)을 고려해 "
any resolution"을 통합해 세부정보를 확대하고 향상된 visual feature를 보여준다. 각 화면은 원래 화면 비율을 기준으로 2개의 하위 이미지로 분할된다고 한다. (세로 화면의 경우는 가로 분할, 가로 화면에 경우는 세로 분할 등)

 

위 그림 1과 같이 Ferret-UI는 유연한 입력 형식(point, box, scribble)을 사용하여 referring task를 수행하고, grounding task(위젯 찾기, 아이콘 찾기, 텍스트, 위젯 목록 찾기 등)을 수행할 수 있다. 이러한 기본 knowledge는 모델에 풍부한 시각적, 공간적 지식을 제공해서 다양한 아이콘이나 텍스트 요소와 같이 대략적 수준과 세부 수준 모두에서 UI 유형을 구별할 수 있도록 해준다. 

 

 

 

 

위 그림은 Ferret-UI-anyres architecture를 나타낸다. 참고로 “any resolution”은 anyres라고 표현된다. 기존 화면은 sub image 0, sub image 1 그리고 low resolution full image로 나누어진다. 이는  동일한 이미지 인코더를 사용하여 개별적으로 인코딩 되며, LLM은 전체 이미지 컨텍스트와 향상된 세부 정보를 포함하여 다양한 세부 수준의 모든 시각적 기능을 사용하게 된다. 이렇게 하위 이미지로 나뉘게 되면 세부사항을 포착할 수 있게 되고, 향상된 시각적 특징을 제공할 수 있다고 한다. 

 

아래 그림 3은 기본 작업 데이터 생성 개요(task data generation)를 나타낸다. UI detector는 감지된 모든 요소를 각 요소의 유형, 텍스트 및 bounding box와 함께 출력한다. 이러한 detection은 elementary task에 대한 train sample을 생성하는데 사용된다. grounding task의 경우 모든 요소들을 감지하여 위젯 목록을 위한 하나의 샘플을 생성하는 반면 나머지 작업은 한번에 하나의 요소에 중점을 둔다. 또한 element들을 icon, text, non-icon/text widget으로 분리한다. 

 

 

 

 

이렇게 이제 element들을 인식하고나서 각 task에 대해 GPT-3.5 Turbo를 사용하여 task question의 변형을 도입하여 프롬프트를 확장한다. 추론 능력을 모델에 통합하기 위해 LLaVA 를 따르고 GPT-4를 사용하여 4가지 형식의 데이터를 추가로 수집한다. 여기서 4가지는 detailed description, conversation perception, conversation interaction, and function inference 이다. 그럼 이제 Advanced task data generation이 가능해진다. 아래 그림 4와 같다. detection output에서 bbox 좌표를 정규화 한 다음 프롬프트와 detection 결과 그리고 one-shot 예제를 GPT4 로 보낸다. 생성된 응답은 Ferret-UI를 학습하기 위해 pre-selection of prompt와 결합된다. conversation의 경우 GPT-4의 output을 multi-turn conversation으로 직접 변환한다. 

 

 

 

기존 연구 결과와 비교한 지표는 다음과 같다. 참고로 8대의 A100 GPU로 학습하게 될 경우, Ferret-UI-base는 학습하는데 1일이 걸리고, Ferret-UI-anyres는 3일이 걸린다고 한다. 여기서 base 모델은 애플의 이전 연구를 뜻한다.

Ferret: Refer and ground anything anywhere at any granularity (2023)

 

 

 

그러면 이 쯤 가장 궁금해지는 것, 그래서 앞으로 뭐가 더 가능해지는데? 라는 의문점이 들 수 있다. 천천히 살펴보자. 우선, 아래 왼쪽 그림과 같이 UI에 떠있는 화면에 나타난 텍스트를 OCR로 분석 할 수 있게 된다. 또한 오른쪽 그림과 같이 위젯의 구성요소들을 인지할 수 있게 된다. (실패 케이스도 포함 되어있긴 하다. 느낌만 아시길)

 

 

 

 

같은 화면을 가지고 각자 다른 모델(Fuyu vs. CogAgent vs. GPT-4V vs. Ferret-UI)에 따라 성능이 어떤지 보면 다음 그림과 같다. 

개인적인 생각으로는 Ferret-UI 모델의 대답이 사용자가 알아먹기 좋게끔 얘기해주는 것 같다. 

 

아래 케이스만 해도 에어팟 프로를 어떻게 구매하냐는 질문이 있을 때, BUY 버튼이 떡 하니 있는데도 불구하고,  Fuyu 모델은 애플 스토어를 방문하라하고, CogAgent는 BUY 버튼을 탭 하라고 잘 알려준다. GPT-4V 모델의 설명은 너무 많은 정보를 알려준다 ^^;;;;; 

 

 

 

참고로 GPT-4V 모델에 들어가는 input은 아래와 같이 설정된다고 한다. 

 

 

 


 

 

조만간 아이폰에 UI referring, grounding, reasoning 기능이 탑재되서 더 편리하게 나만의 작업들을 수월하게 할 수 있게 되지 않을까? 예를 들면 블록 코딩으로 단축어를 만들 수 있는데, 이 작업을 자동으로 생성해줄 것 같고, 우리가 ChatGPT를 사용해서 필요한 정보를 얻었던 작업들을 모바일 환경에서 할 수 있을 것 같다. 아니면, 현재 보고 있는 웹페이지에서 궁금한 것을 클릭했을 때 그에 대한 정보가 다 나온다던지.. 나올 수 있는 것들은 무궁무진 한 것 같다. 여태 애플이 아이폰 시스템 업데이트를 할 때 UI가 엄청나게 바뀌진 않았던 것 같은데, 이 기술이 더 연구되고나면 UI가 완전 아예 싹 바뀔 것 같다는 생각이 든다. 

 

 

728x90
반응형