AI바라기의 인공지능
agent : 논문리뷰 : B-MOCA: BENCHMARKING MOBILE DEVICE CONTROL AGENTS ACROSS DIVERSE CONFIGURATIONS 본문
agent : 논문리뷰 : B-MOCA: BENCHMARKING MOBILE DEVICE CONTROL AGENTS ACROSS DIVERSE CONFIGURATIONS
AI바라기 2025. 1. 6. 19:50B-MoCA: Benchmarking Mobile Device Control Agents Across Diverse Configurations 정리 노트
Purpose of the Paper
기존 mobile device control agents 연구는 agent의 generalization 능력을 간과하거나, 실제 사용에 필수적인 task(알람 설정, 응급 전화 걸기 등)를 평가 대상에서 제외하는 경향이 있었습니다. 또한, 이러한 한계를 포괄하는 통일된 benchmark의 부재는 해당 분야의 발전이 더뎌지는 원인이 되었습니다.
이 논문에서는 diverse configurations 상황에서도 mobile device를 제어할 수 있는 agent를 평가하기 위한 새로운 benchmark인 B-MoCA를 제시합니다. B-MoCA는 실제 사용 환경을 반영한 Android operating system 기반의 interactive environments를 제공하고, 131개의 일상적인 task를 정의하여 agent의 실용성을 측정합니다. 특히, user interface(UI) 레이아웃 및 언어 설정을 포함한 mobile device의 구성을 무작위로 변경하는 randomization feature를 도입하여, agent의 generalization 성능을 평가하는 데 중점을 둡니다.
Key Contributions
- B-MoCA Benchmark 제시: diverse configurations에서도 mobile device를 제어하는 agent의 generalization 성능을 평가하기 위한 새로운 benchmark를 제안합니다.
- 다양한 agent 평가: Large language models (LLMs) 및 multi-modal LLMs 기반 agent와 imitation learning으로 trained된 agent를 포함한 다양한 유형의 agent를 B-MoCA를 사용하여 benchmark합니다.
- Environment Randomization: UI 요소의 배치, 크기, 배경화면, 언어, device type 등을 무작위로 변경하여 실제 사용 환경의 다양성을 반영합니다. 이를 통해 agent의 generalization 성능을 정밀하게 측정합니다.
- 실용적인 Task 정의: 131개의 일상적인 task를 정의하고, 각 task의 완료 여부를 자동으로 감지하는 rule-based success detectors를 제공하여 agent의 실용성을 평가합니다.
- Baseline Agent의 한계 규명: Foundation models 기반 agent는 간단한 task는 잘 수행하지만, 복잡한 task에서는 낮은 성능을 보입니다. Behavior cloning (BC)으로 trained된 custom agent는 expert의 행동을 잘 모방하지만, unseen device configurations에서는 일반화 능력이 떨어집니다.
- Source Code 공개: B-MoCA의 source code를 공개하여, 누구나 쉽게 agent를 개발하고 평가할 수 있도록 지원합니다.
Novelty
- Generalization 성능 평가에 초점: 기존 연구들이 간과했던 agent의 generalization 성능을 평가하는 데 중점을 둔 최초의 benchmark입니다.
- 실제 사용 환경 반영: Environment randomization feature를 통해 실제 사용 환경의 다양성을 반영한 평가 환경을 제공합니다.
- 실용적인 Task 및 자동화된 평가: 실생활과 밀접한 131개의 task를 정의하고, rule-based success detectors를 통해 평가를 자동화하여 agent의 실용성을 정밀하게 측정합니다.
Experimental Highlights
- 다양한 Foundation Models 기반 agent 평가: GPT-4o, Gemini-1.5-pro와 같은 closed-source LLMs과 Llama-3와 같은 open-source LLMs, 그리고 MLLMs를 활용한 agent의 성능을 평가했습니다.
- Zero-shot Generalization 성능 측정: 3개의 서로 다른 test environments(Test Env 100, 101, 105)에서 agent의 zero-shot 성능을 측정하여 generalization 능력을 평가했습니다.
- Foundation Models 기반 agent의 한계: Foundation models 기반 agent는 간단한 task(예: Alarm(simple))에서는 80% 이상의 높은 success rate를 보였지만, 복잡한 task(예: Alarm(complex))에서는 성능이 크게 저하되었습니다.
- Custom Agent의 가능성과 한계: BC로 trained된 custom agent는 expert demonstrations를 잘 모방하여 일부 복잡한 task에서 foundation models 기반 agent보다 우수한 성능을 보였지만, unseen device configurations에 대한 generalization 능력은 여전히 제한적이었습니다.
- 환경 변화의 영향 분석: Icon location, DPI, language 등 각 환경 요소의 변화가 LLM agent의 성능에 미치는 영향을 분석했습니다. 특히, icon location의 변화가 agent의 성능에 가장 큰 영향을 미치는 것으로 나타났습니다.
- Data Diversity의 중요성: Training data의 diversity가 custom agent의 generalization 성능에 미치는 영향을 분석했습니다. 더 다양한 training environments를 사용할수록 agent의 generalization 성능이 향상되는 것을 확인했습니다.
Limitations
- Text Typing Task의 부재: 현재 B-MoCA는 text typing이 필요한 task(예: 웹 검색, 이메일 전송)를 포함하지 않습니다.
- Open-ended Task 평가의 어려움: Rule-based success detector는 agent 행동의 의미를 파악하지 못하기 때문에, 성공 기준이 모호한 open-ended task를 평가하기 어렵습니다.
- Foundation Models 활용의 한계: LLMs를 agent 개발에 활용하는 다양한 방법(예: high-level planner, low-level actor)에 대한 심층적인 분석이 부족합니다.
Future Work
- Text Typing Task 추가: Advanced interfaces를 도입하여 text typing이 필요한 task를 B-MoCA에 추가할 계획입니다.
- Reward Modeling 도입: Open-ended task를 평가하기 위해 demonstrations에서 learned된 reward model을 도입할 수 있습니다.
- Foundation Models 활용 방안 연구: LLMs를 high-level planner 또는 low-level actor로 활용하는 등 foundation models을 agent 개발에 효과적으로 활용하는 다양한 방안을 연구할 계획입니다.
- Fine-tuning LLMs 연구: Demonstrations를 활용한 LLMs의 fine-tuning을 통해 agent의 성능을 개선하는 방안을 연구할 계획입니다.
- Generalization 성능 개선 알고리즘 개발: Unseen device configurations에서도 높은 성능을 보이는 agent를 개발하기 위한 새로운 알고리즘을 개발할 계획입니다.
ABSTRACT
모바일 기기 제어 agent는 일상적인 작업을 자동화하여 사용자 상호 작용과 생산성을 크게 향상시킬 수 있습니다. 그러나 실용적인 agent 개발에 대한 관심이 높아지고 있음에도 불구하고, 이 분야에서 일반적으로 채택되는 benchmark의 부재로 인해 과학적 진보를 정량화하기 어렵습니다. 이 연구에서 우리는 모바일 기기 제어 agent를 평가하고 개발하기 위한 대화형 환경을 갖춘 새로운 benchmark인 B-MoCA를 소개합니다. 현실적인 benchmark를 만들기 위해 Android 운영 체제를 기반으로 B-MoCA를 개발하고 131개의 일반적인 일상 작업을 정의합니다. 중요한 점은 사용자 인터페이스 레이아웃과 언어 설정을 포함한 모바일 기기의 구성을 변경하는 무작위화 기능을 통합하여 일반화 성능을 평가한다는 것입니다. 우리는 large language models (LLMs) 또는 multi-modal LLMs를 사용하는 agent와 인간 전문가 시연을 사용한 imitation learning으로 trained된 agent를 포함한 다양한 agent를 benchmark합니다. 이러한 agent는 간단한 작업을 실행하는 데 능숙함을 보이지만, 복잡한 작업에 대한 성능 저하는 효율성을 개선하기 위한 향후 연구의 중요한 기회를 강조합니다.
1 INTRODUCTION
모바일 기기를 제어하는 autonomous agent는 큰 잠재적 이점을 가지고 있습니다. 예를 들어, 이러한 agent는 특히 신체 장애가 있는 사용자나 기기 조작에 어려움을 겪는 사용자의 사용자 상호 작용 접근성을 향상시킬 수 있습니다. 또한 일상적인 작업을 자동화하여 생산성을 높일 수 있습니다. 이러한 장점으로 인해 모바일 기기 제어를 위한 실용적인 agent 개발에 대한 관심이 높아졌습니다. large language models (LLMs) 기반 agent와 human demonstrations으로 trained된 agent를 포함한 다양한 접근 방식이 소개되었습니다. 이러한 혁신은 기기 화면 레이아웃을 이해하고 사용자 인터페이스(UI)를 조작하여 사람의 명령을 실행할 수 있는 보조 agent를 만드는 것을 목표로 합니다.
Android 에뮬레이터와 같은 실제 시스템을 기반으로 한 모바일 기기 제어 agent 개발의 최근 진전에도 불구하고, 이전 연구들은 종종 몇 가지 중요한 속성을 간과합니다. 주요 측면 중 하나는 실제 기기에 agent를 배포하는 데 중요한 다양한 기기 구성 전반에 걸쳐 일반화 능력을 테스트하는 것입니다. 더욱이, 다양한 기기 설정에서 광범위한 작업들을 정의하고 신뢰할 수 있는 성공 기준을 설정하는 데 어려움이 있기 때문에, 알람 설정이나 긴급 전화 걸기와 같이 실생활에 필수적인 작업들이 종종 무시됩니다. 이러한 중요한 속성을 포괄하는 통일된 benchmark의 부재는 이 분야의 과학적 진보를 방해해 왔습니다.
본 연구에서는 다양한 구성 전반에 걸쳐 Mobile device Control Agent를 평가하기 위해 설계된 Benchmark인 B-MoCA를 소개합니다(그림 1 참조).
그림 1: B-MoCA의 일러스트레이션. 우리는 일상적인 작업을 실행하는 모바일 기기 제어 agent의 성능을 평가하기 위한 현실적인 benchmark를 제시합니다. B-MoCA의 주요 기능은 일반화 능력을 분석하기 위해 다양한 기기 속성을 변경하는 무작위화를 지원한다는 것입니다. 우리는 LLMs 또는 MLLMs를 활용하는 agent뿐만 아니라 human demonstrations를 사용하여 trained된 맞춤형 agent를 benchmark합니다.
실제 시스템 대화형 평가를 위해 B-MoCA는 Android 운영 체제를 기반으로 개발되었습니다. B-MoCA의 주요 기능은 아이콘 배치, 크기, 배경화면, 언어 및 기기 유형의 변형을 포함하여 실제 사용 사례의 다양한 기기 구성을 반영하도록 설계된 수많은 사용자 정의를 지원한다는 것입니다. 이 기능을 활용하면 다양한 구성을 가진 다양한 환경을 쉽게 생성하여 agent의 일반화 능력을 평가할 수 있습니다. 또한 특정 애플리케이션 열기, 웹 검색 시작, 기기 설정 조정과 같은 현실적인 시나리오에 기반한 131개의 실용적인 작업을 정의합니다. 다양한 구성 전반에 걸쳐 신뢰할 수 있는 평가를 보장하기 위해 B-MoCA는 agent가 환경과 상호 작용하는 동안 작업 완료를 자동으로 신호하는 규칙 기반 성공 탐지기를 제공합니다.
우리는 B-MoCA에서 모바일 기기 제어 agent를 구축하기 위한 다양한 방법을 benchmark합니다. baseline에는 pre-training을 통해 얻은 광범위한 지식으로부터 이익을 얻는 large language models (LLMs) 또는 multi-modal LLMs (MLLMs)와 같은 foundation models을 사용하는 agent가 포함됩니다. 우리는 GPT-4o, Gemini-1.5-pro와 같은 closed-source models과 Llama-3와 같은 open-source models을 모두 고려합니다. 또한 behavior cloning (BC)을 사용하여 policy를 training하여 agent를 구축하는 것을 고려합니다.
실험에서 우리는 테스트된 agent가 간단한 작업을 해결하는 능력을 보여준다는 것을 발견했습니다. 그러나 foundation models (예: LLMs)을 사용하는 agent는 여러 번의 상호 작용이 필요한 더 어려운 시나리오에서 한계를 보입니다. BC로 trained된 맞춤형 agent는 전문가의 행동을 성공적으로 모방하지만, 보이지 않는 기기 구성으로 일반화하는 능력은 부족합니다. 우리의 광범위한 실험은 기존 방법의 한계를 밝혀내며, 향후 연구를 필요로 합니다.
우리의 기여는 다음과 같습니다.
- 우리는 환경 무작위화와 같은 다양한 기능을 포함하여 device control agents 개발의 진행 상황을 측정하도록 설계된 새로운 benchmark인 B-MoCA를 제안합니다.
- 우리는 모바일 기기 제어를 위한 여러 baseline agent를 평가하여 UI 요소 이해 및 조작에서 제한된 일반화 능력과 같은 단점을 식별합니다.
- 우리는 foundation models을 활용하기 위한 다양한 설계 선택을 탐구하고, human expert demonstrations를 사용하여 trained된 agent의 효율성에 대한 데이터 다양성의 영향을 분석합니다.
- 우리는 우리 환경과 실험을 쉽게 재현할 수 있도록 모든 소스 코드와 관련 자료를 open-source합니다.
우리는 B-MoCA가 미래 연구자들이 보조 agent를 구축하는 데 있어 어려움을 식별하고 이전 작업에 비해 그들의 방법의 효능을 쉽게 비교하는 데 도움이 되기를 바랍니다.
1. B-MoCA: 기존 연구의 한계를 넘어서
- 일반화 능력 검증에 초점: 기존 연구들이 간과했던 다양한 기기 구성(configuration) 에 대한 일반화 능력 검증에 중점을 둡니다. 아이콘 배치, 크기, 배경화면, 언어, 기기 유형 등의 변형을 지원하여 실제 사용 환경과 유사한 테스트 환경을 제공합니다.
- 실용적(practical) 작업 평가: 알람 설정, 긴급 전화 등 실생활에 필수적이지만 기존에 잘 다루어지지 않았던 131개의 실용적 작업 을 포함하여 실질적인 agent 능력을 평가합니다.
- 자동화된 성공 판별: 다양한 구성에서도 정확한 평가를 위해 규칙 기반 성공 탐지기(rule-based success detectors) 를 제공하여, agent의 작업 완료 여부를 자동으로 판별합니다.
2. Benchmarking 대상 및 방법론
- 다양한 agent들을 벤치마킹 : LLMs, MLLMs와 같은 foundation models을 활용한 agent와 human demonstrations을 이용한 imitation learning (behavior cloning) 으로 trained된 agent를 모두 포함합니다.
- Foundation models 활용: closed-source (GPT-4o, Gemini-1.5-pro) 및 open-source (Llama-3) models을 모두 고려하여, 다양한 모델의 성능을 비교 분석합니다.
3. 실험 결과 및 시사점
- 기존 agent들의 한계: 간단한 작업은 수행 가능하지만, 복잡한 시나리오나 새로운 기기 구성에 대한 일반화 능력은 부족 함을 보여줍니다.
- 향후 연구 방향 제시: B-MoCA를 통해 UI 요소 이해 및 조작 능력, 일반화 성능 향상 등 모바일 기기 제어 agent 연구의 핵심 과제를 명확히 제시 합니다.
4. 핵심 기여
- 실용적이고 확장성 있는 benchmark (B-MoCA) 제안
- 다양한 agent에 대한 포괄적인 평가
- Foundation models 활용 전략 및 human demonstrations 데이터 다양성의 영향 분석
- 재현성을 위한 소스 코드 및 자료 공개
결론적으로, B-MoCA는 모바일 기기 제어 agent 연구의 실질적인 발전을 위한 중요한 도구가 될 것이며, AI 연구자들이 주목해야 할 새로운 benchmark입니다.
2 B-MoCA
이 섹션에서는 다양한 구성의 모바일 기기에서 일상적인 작업을 수행할 수 있는 agent 개발을 위해 설계된 benchmark인 B-MoCA를 소개합니다.
2.1 DESIGN FACTORS
의미 있는 benchmark를 설계하는 것은 특히 실용적인 작업을 통합하는 현실적인 플랫폼을 개발하는 데 있어 중대한 과제를 안고 있습니다. 우리의 benchmark는 널리 사용되는 open-source 운영 체제인 Android를 기반으로 구축되어 진정한 환경을 보장합니다. 실제 상호 작용의 다단계 특성을 반영하기 위해 기기 제어 작업을 sequential decision-making 문제로 모델링합니다(섹션 2.2). 이 benchmark에는 Chrome 및 Calendar와 같은 기본 애플리케이션과 Instagram 및 Wikipedia와 같은 타사 애플리케이션을 포함하는 131개의 작업이 포함되어 있으며, 이는 일상 생활에서의 보급률과 유용성을 고려하여 선택되었습니다. 각 작업에는 agent가 작업을 정확하게 완료하는 데 있어 성능을 평가하기 위한 성공 탐지기가 장착되어 있습니다(섹션 2.3).
아이콘 배치, 배경 화면 선택, 언어 및 기기 유형의 변형과 같은 사용자 모바일 기기 설정의 다양한 특성을 고려할 때, 다양한 설정에서 device control agents의 일반화 능력을 테스트하는 것이 중요합니다. 일반화 성능을 평가하기 위해 benchmark에 무작위화 기능을 통합합니다. 이 기능은 모바일 기기의 설정을 변경하여 다양한 실제 시나리오를 시뮬레이션하도록 설계되었습니다(섹션 2.4).
2.2 PROBLEM FORMULATION
우리는 device control task를 agent가 환경(예: Android 에뮬레이터)과 상호 작용하는 sequential decision-making 문제로 공식화합니다. 공식적으로, task instruction c가 주어지면 agent는 observation o<sub>t</sub>를 수신하고 각 timestep t에서 policy에 따라 action a<sub>t</sub>를 취합니다. 환경은 성공 신호 r<sub>t</sub>를 반환한 다음 다음 observation o<sub>t+1</sub>로 전환됩니다.
UI 요소를 캡처하는 observation은 화면 픽셀, Android view hierarchy에서 파생된 텍스트의 화면 설명 또는 이 둘의 조합으로 표현될 수 있습니다. action space에는 화면 터치 action 집합이 포함됩니다. B-MoCA에서는 continuous 및 discrete action을 모두 지원합니다. continuous actions은 Rawles et al. (2023)과 유사하게 dual-gesture actions으로 정의됩니다. 각 dual-gesture action은 한 쌍의 (x, y) 화면 위치로 구성됩니다. dual-gesture action은 두 위치가 지정된 임계값 내에서 동일할 때 탭으로 식별되고, 두 위치 사이의 거리가 이 임계값을 초과할 때 swipe로 식별됩니다. 또한 agent는 화면에서 해당 위치를 터치하여 탐색 버튼(뒤로, 홈, 개요)을 누를 수 있습니다. discrete actions은 특정 화면 위치(예: UI 요소의 경계 상자 중앙 또는 사전 정의된 위치)와의 직접적인 상호 작용, 지정된 방향으로의 스와이프 또는 개별 버튼 누르기로 정의됩니다. 우리의 benchmark는 텍스트 기반 action을 지원하여 LLMs 및 MLLMs를 모두 활용할 수 있습니다(자세한 내용은 섹션 3.1 참조).
환경 구현에 대한 자세한 내용은 부록 A.1을 참조하십시오.
2.3 DAILY TASKS
B-MoCA에는 모바일 기기 관리에 필수적인 기술을 평가하는 데 사용할 수 있는 131개의 작업이 포함되어 있습니다. 각 작업은 알람 설정 및 비행기 모드 활성화와 같이 일상 생활에 유용한 기능을 제공하기 위해 현실적인 상황에 기반을 두도록 설계되었습니다. 이러한 작업을 수행하려면 agent가 다양한 화면 사이에서 기기를 탐색하고 다양한 UI 요소를 조작해야 합니다. 그림 3은 작업의 통계를 보여줍니다. 전체 작업 목록은 부록 B.1을 참조하십시오.
작업 완료는 시스템 정보, 앱 데이터 및 Android view hierarchy의 UI 요소 속성의 세 가지 소스에 의존하는 규칙 기반 성공 탐지기에 의해 결정됩니다. 이러한 소스를 모니터링하기 위해 Android Debug Bridge(ADB) 및 Appium과 같은 도구를 사용하여 일련의 인터페이스를 개발했습니다. 성공 탐지기는 이러한 정보 소스 내에서 사전 정의된 기준에 따라 성공적인 완료를 식별합니다. 예를 들어, 시스템 로그에서 일치하는 정규 표현식을 자동으로 감지하거나 특정 UI 요소의 속성(예: 확인란의 'checked' 속성)이 올바르게 정렬되었는지 확인합니다. 성공 신호는 작업이 완료되면 +1 값을 갖고 그렇지 않으면 0 값을 갖습니다. 에피소드는 성공 탐지기가 완료를 알리면 성공으로 종료되고, agent가 기준을 충족하지 않고 최대 단계 수를 초과하면 실패로 종료됩니다.
2.4 ENVIRONMENT RANDOMIZATION
모바일 기기 제어에서는 다양한 기기 설정 전반에 걸쳐 일반화할 수 있는 agent를 개발하는 것이 중요합니다. 일반화 능력을 평가하기 위해 B-MoCA는 아이콘 배치 및 크기, 배경 화면, 언어 및 기기 유형을 변경하는 무작위화 기능을 통합합니다. 사용자는 Pixel 3, Pixel 4, Pixel 6 및 WGXA Tablet과 같은 인기 있는 모델이 포함된 기기 목록에서 기기 유형을 선택할 수 있습니다. 또한 언어 및 지역을 설정할 로케일을 지정하고, 사용자 정의 이미지 모음에서 배경 화면을 선택하고, 추가 환경 변형을 위해 다크 모드를 활성화할 수 있습니다. 또한 실제 사용 패턴을 시뮬레이션하기 위해 애플리케이션 아이콘의 크기와 위치를 사용자 정의할 수 있습니다.
무작위화 기능을 사용하여 그림 2에 표시된 예와 같이 B-MoCA에 45개의 고유한 환경을 생성합니다. 일반화 능력을 평가하기 위해 이러한 환경을 두 세트로 나눕니다. 35개는 training에 사용하고 10개는 testing에 사용합니다. 우리는 domain randomization (Tobin et al., 2017)을 사용하여 agent를 training하여 다양한 기기 구성에서 작업을 강력하게 수행할 수 있도록 합니다. 그런 다음 보이지 않는 기기 설정이 포함된 테스트 환경에서 성능을 평가합니다. 우리가 준비한 환경 기기 구성의 자세한 목록은 부록 A.2에서 확인할 수 있습니다.
1. 설계 원칙: 실용성과 일반화 능력 평가에 초점
- 현실적인 플랫폼: 널리 사용되는 Android를 기반으로 실제와 유사한 환경을 제공합니다.
- Sequential Decision-Making: 모바일 기기 제어 작업을 sequential decision-making 문제 로 모델링하여, 실제 사용 환경의 multi-step 상호 작용을 반영했습니다.
- 실용적 Task: Chrome, Calendar, Instagram, Wikipedia 등 일상에서 자주 사용되는 앱들을 활용한 131개의 실용적 task를 포함합니다.
- 자동 성공 판별: Rule-based success detector를 통해 agent의 작업 완료 여부를 자동으로 정확하게 판별합니다.
2. 문제 정의 (Problem Formulation): 유연한 Observation 및 Action Space
- Observation: Screen pixels, text-based screen descriptions, 또는 이 둘의 조합 등 다양한 형태로 UI 요소를 캡처합니다.
- Action Space:
- Continuous Actions: Dual-gesture actions (tap, swipe) 을 정의하여, (x, y) 좌표 기반의 세밀한 조작을 지원합니다.
- Discrete Actions: UI 요소의 경계 상자 중앙, 특정 방향으로의 스와이프 등 직접적인 상호 작용을 포함합니다.
- Text-based Actions: LLMs 및 MLLMs 활용을 위해 텍스트 기반 action도 지원합니다.
3. 핵심 차별점: 환경 무작위화 (Environment Randomization)
- 일반화 능력 평가: 아이콘 배치 및 크기, 배경화면, 언어, 기기 유형(45개의 고유한 환경) 등을 무작위로 변경하여, 다양한 기기 구성에 대한 agent의 일반화 능력을 평가합니다.
- Training/Testing 분리: 35개의 training 환경, 10개의 testing 환경 으로 분리하여, 보이지 않는(unseen) 설정에 대한 성능을 검증합니다.
- Domain Randomization: Domain randomization 기법을 활용하여, 다양한 기기 구성에서도 강건한(robust) 성능을 발휘하도록 agent를 training합니다.
4. B-MoCA의 의의
- 실세계 시나리오 반영: 실제 사용 환경과 유사한 테스트 환경을 제공하여, 실질적인 agent 성능 평가를 가능하게 합니다.
- 일반화 능력 검증 강화: 환경 무작위화를 통해, 다양한 기기 구성에 대한 agent의 일반화 능력을 엄격하게 검증할 수 있습니다.
- 연구 방향 제시: B-MoCA를 통해 agent의 한계를 명확히 파악하고, 일반화 성능 향상 등 핵심 연구 과제를 제시합니다.
결론적으로, B-MoCA는 실용성과 일반화 능력 평가에 중점을 둔 차별화된 benchmark로서, 모바일 기기 제어 agent 연구의 발전을 가속화할 것입니다.
3 BASELINE AGENTS
본 연구에서는 모바일 기기 제어 agent 구축을 위한 다양한 접근 방식을 benchmark합니다. 섹션 3.1에서는 closed-source LLMs 및 MLLMs로 개발된 agent인 LLM agents와 MLLM agents를 설명합니다. 섹션 3.2에서는 human expert demonstrations를 사용하여 trained된 vision-language models (VLM encoder)을 사용하는 fine-tuned open-source LLMs 또는 인코더가 장착된 custom agents를 소개합니다.
3.1 CLOSED-SOURCE MODELS
광범위한 지식을 포함하고 새로운 기능을 갖춘 LLMs 및 MLLMs와 같은 foundation models을 활용하는 것이 모바일 기기 제어 agent 개발의 주요 접근 방식이 되었습니다. 우리는 서로 다른 foundation models을 사용하는 두 가지 유형의 agent를 benchmark합니다. LLMs (예: Llama-3) 및 MLLMs (예: GPT-4o). LLM agents는 텍스트 action을 생성하기 위해 화면 레이아웃에 대한 텍스트 설명만 활용하는 반면, MLLM agents는 텍스트와 visual 입력을 모두 활용합니다.
LLM 및 MLLM agents와 Android 에뮬레이터의 상호 작용을 용이하게 하기 위해 Android view hierarchy에서 observation을 구문 분석하는 screen translator를 정의합니다. 이 translator는 화면 레이아웃 정보(즉, XML 형식으로 제공된 Android view hierarchy)를 UI 요소에 대한 텍스트 설명으로 변환합니다. 각 설명에는 숫자 태그와 UI 유형을 지정하는 클래스 정보와 같은 각 UI 요소에 대한 세부 정보가 포함됩니다. 또한 표 1에 자세히 설명된 대로 텍스트 형식으로 agent가 선택할 수 있는 가능한 action 옵션 세트를 정의합니다.
프롬프트에는 agent의 역할, action space 정의, 목표, (선택 사항) few-shot 예제, agent가 취한 이전 action 및 현재 observation이 포함됩니다. 그림 4에 설명된 우리의 프롬프트는 또한 특정 출력 형식을 적용하여 reasoning 능력을 향상시키기 위해 Chain-of-Thought 기술을 통합합니다. LLM agents의 개요는 부록 C.1에 설명되어 있습니다.
3.2 OPEN-SOURCE MODELS
closed-sourced foundation models의 유망한 결과에도 불구하고, 이를 활용하는 것은 fine-tuning의 어려움과 같은 몇 가지 문제를 야기합니다. 우리의 benchmark 분석에서는 custom agents라는 맞춤형 model을 사용하는 agent도 탐색합니다. 우리는 fine-tuned foundation models (예: Llama-3)을 사용하는 custom agents와 VLM encoders를 갖춘 custom agents의 두 가지 유형의 custom agents를 고려합니다. closed-source LLMs 또는 MLLMs를 사용하는 agent와 유사하게, fine-tuned open-source LLMs를 사용하는 custom agents는 텍스트 형식의 작업 지침과 화면 레이아웃 설명을 처리하여 텍스트 기반 action을 생성합니다. 우리는 human experts로부터 수집한 action을 활용하여 open-source LLMs를 fine-tuning합니다. 평가하는 동안 일반적인 역할과 관련 작업별 정보를 지정하는 프롬프트를 사용합니다.
policy가 π<sub>θ</sub>로 표시되는 VLM encoder가 있는 custom agents는 task instructions c와 screen images o<sub>t</sub>를 입력으로 받아 discrete actions a<sub>t</sub>를 출력합니다. pre-trained VLM encoder를 사용하여 추출된 입력 임베딩은 transformer 모듈을 통해 처리되어 action을 생성합니다. 각 action은 크기가 385인 벡터이며, 여기서 처음 378개 값은 화면의 사전 정의된 위치(14x27 bins)를 tapping하는 것에 해당하고, 4개 값은 swipe 방향(위, 아래, 오른쪽, 왼쪽)에 해당하며, 마지막 3개 값은 버튼(뒤로, 홈, 개요)을 누르는 것에 해당합니다.
네트워크 architecture에 대한 자세한 내용은 부록 C.3을 참조하십시오. 우리는 BC를 사용하여 VLM encoder가 있는 custom agents의 policy를 training합니다. agent는 cross entropy loss L<sub>BC</sub>를 최소화하여 human expert demonstrations D = {(o<sub>t</sub>, a<sub>t</sub><sup>*</sup>, c)}를 모방하도록 최적화됩니다.
L<sub>BC</sub>(π<sub>θ</sub>(a<sub>t</sub>|o<sub>t</sub>, c), a<sub>t</sub><sup>*</sup>) 의 합 (o<sub>t</sub>, a<sub>t</sub><sup>*</sup>, c)는 D에 속함
1. 평가 대상 Agent 유형: Foundation Models 활용 전략 비교
- Closed-source LLMs & MLLMs Agents:
- LLM Agents (e.g., Llama-3): 텍스트 기반 화면 정보만 활용합니다.
- MLLM Agents (e.g., GPT-4o): 텍스트와 visual 정보를 모두 활용합니다.
- 공통:
- Screen Translator: Android view hierarchy를 텍스트로 변환하여 입력을 제공합니다.
- Action 정의: Table 1과 같이 텍스트 기반 action을 정의하여 agent와 에뮬레이터 간 상호 작용을 지원합니다.
- Chain-of-Thought: Reasoning 능력 향상을 위해 Chain-of-Thought를 프롬프트에 적용합니다(그림 4 참조).
- Open-source Models을 활용한 Custom Agents:
- Fine-tuned LLMs (e.g., Llama-3): Human demonstrations로 fine-tuning된 LLMs를 사용합니다. 텍스트 기반 action을 생성합니다.
- VLM Encoders: Pre-trained VLM encoder로 추출한 visual feature와 task instruction을 입력으로 받아 discrete actions을 출력합니다.
- Action Space: 385차원 벡터 (378: tapping 위치, 4: 스와이프 방향, 3: 버튼 누르기)
- Training: Behavior Cloning (BC) 을 사용하여 human demonstrations를 모방하도록 학습합니다.
- 손실 함수: Cross Entropy Loss
2. 핵심 비교 포인트: 입력 정보, Action Space, 학습 방법
LLM Agents | 텍스트 (Screen Description) | 텍스트 기반 | (Pre-trained) |
MLLM Agents | 텍스트 + Visual | 텍스트 기반 | (Pre-trained) |
Custom (Fine-tuned) | 텍스트 (Screen Description) | 텍스트 기반 | Fine-tuning (with human data) |
Custom (VLM) | Visual + Task Instruction (Text) | Discrete (385차원) | Behavior Cloning (BC) |
3. 본 논문에서 주목해야 할 부분
- 다양한 Foundation Models 활용 전략 비교: LLMs, MLLMs, fine-tuned models, VLM encoder 등 다양한 접근 방식을 비교 평가하여, 각 방법의 장단점을 분석합니다.
- Closed-source vs. Open-source: Closed-source 모델의 한계(fine-tuning 어려움)를 지적하고, open-source 모델 기반 custom agent의 가능성을 탐색합니다.
- Custom Agents의 설계: VLM encoder를 활용한 custom agent의 architecture와 학습 방법(BC)을 구체적으로 제시합니다.
- Human Demonstrations 활용: Fine-tuning 및 BC 학습에 human demonstrations 데이터를 활용하여, 실제 사용 환경에 적합한 agent를 개발하고자 합니다.
- 성능 평가: 이어지는 섹션들에서 B-MoCA benchmark를 통해 위 agent들의 성능을 비교하고, 각 방법의 한계와 개선 방향을 제시할 것입니다.
결론적으로, 이 섹션은 B-MoCA benchmark에서 평가하는 다양한 baseline agent들에 대한 개요를 제공하며, 특히 foundation models 활용 전략과 custom agent 설계에 대한 심층적인 분석을 예고합니다.