CS231n Lecture 18 - Human-Centered AI

LECTURE 글 목록
목차

핵심 한 줄 정리

Human-centered AI는 단순히 인간과 같은 시각 능력을 만드는 데서 끝나지 않고, 인간이 놓치는 정보를 보완하면서도 bias와 privacy를 다루고, 최종적으로는 인간이 실제로 원하고 가치 있다고 판단한 일을 안전하게 돕도록 AI의 목표와 평가 기준을 설계하는 관점이다.

반드시 기억할 개념

Human-centered AI를 보는 세 가지 관점

Computer vision은 오랫동안 인간의 시각 능력을 재현하는 문제로 발전해 왔다. 그러나 model의 성능이 높아질수록 단순히 무엇을 인식할 수 있는지만으로는 충분하지 않다. 무엇을 보게 할 것인지, 무엇을 보지 않아야 하는지, 그 결과가 누구에게 어떤 영향을 주는지까지 함께 고려해야 한다.

강의에서는 이 흐름을 세 가지 질문으로 나누었다.

  1. AI가 인간이 보는 것을 어떻게 볼 수 있는가?
  2. AI가 인간이 보지 못하거나 놓치는 것을 어떻게 보완할 수 있는가?
  3. AI가 인간이 실제로 보고 싶고 도움받고 싶은 것을 어떻게 지원할 수 있는가?

세 관점은 각각 성능 향상의 단계를 뜻하는 것이 아니다. 인간의 능력을 모방하는 문제, 인간의 한계를 보완하는 문제, 인간의 가치와 선호에 맞추는 문제를 함께 놓고 보는 틀이다.

관점핵심 질문대표 사례
인간이 보는 것을 보는 AI시각적 의미를 어떻게 인식하는가?object recognition, scene graph, image captioning
인간이 못 보는 것을 보는 AI인간의 능력과 주의 한계를 어떻게 보완하는가?fine-grained recognition, 수술 도구 추적, ambient sensing
인간이 원하는 것을 보는 AI어떤 문제를 누구를 위해 풀 것인가?assistive healthcare, human-preference benchmark, robotics

Visual intelligence는 perception에서 action으로 이어진다

Vision은 외부 세계의 상태를 파악하는 감각이다. 생물의 관점에서는 단순히 scene을 묘사하기 위한 기능이 아니라, 생존을 위해 다음 행동을 결정하는 수단이다. 따라서 visual intelligence의 최종 목적도 image label 하나를 출력하는 데 머물지 않는다.

perceptionunderstandingdecisionaction\text{perception} \rightarrow \text{understanding} \rightarrow \text{decision} \rightarrow \text{action}

이 흐름은 computer vision이 object recognition에서 scene understanding으로, 다시 embodied AI와 robotics로 확장되는 이유를 보여준다. 앞 단계에서 잘못 해석한 정보는 뒤의 decision과 action에 그대로 전달되므로, model의 정확도뿐 아니라 실제 사용 환경에서의 위험도 함께 평가해야 한다.

인간의 빠른 시각 인식 능력

인간은 처음 보는 복잡한 scene에서도 매우 짧은 시간 안에 object를 찾고 category를 판단한다. 강의에서 소개한 실험에서는 video를 10 Hz10\text{ Hz}로 제시해 frame 하나가 약 100 ms100\text{ ms}만 보이더라도 사람을 찾아낼 수 있었다.

10 Hz110 s=100 ms/frame10\text{ Hz} \Rightarrow \frac{1}{10}\text{ s} = 100\text{ ms/frame}

EEG를 이용한 연구에서도 complex image가 제시된 뒤 약 150 ms150\text{ ms} 만에 animal과 non-animal category를 구분하는 brain signal이 관찰되었다. 이 속도는 인간 시각계가 object-level information을 매우 빠르게 추출한다는 뜻이다.

또한 human visual cortex에는 face, place, body와 같은 특정 category에 선택적으로 반응하는 영역이 알려져 있다. Object recognition이 computer vision의 초기 핵심 문제로 자리 잡은 것도 이러한 cognitive science와 neuroscience의 관찰에서 큰 영향을 받았기 때문이다.

Object recognition이 어려운 이유

인간에게는 object의 이름을 말하는 일이 자연스럽지만, pixel에서 category로 가는 mapping은 매우 복잡하다. 같은 object라도 다음 요소가 바뀌면 pixel representation은 크게 달라진다.

  • lighting
  • texture
  • background
  • occlusion
  • viewpoint
  • scale
  • deformation

즉, 입력 image xx와 category yy 사이의 관계는 간단한 규칙으로 표현하기 어렵다.

fθ(x)=y^f_\theta(x) = \hat{y}

Model은 다양한 nuisance variation이 존재해도 같은 semantic category를 유지하는 representation을 학습해야 한다.

Parts-based model에서 statistical learning으로

초기의 object recognition은 object를 predefined geometric part의 조합으로 표현하려 했다. 예를 들어 cylinder, edge, contour와 같은 part를 검출하고 그 배치를 조합해 object를 인식하는 방식이다.

이 접근은 해석하기 쉽고 구조적으로 아름답지만, 실제 image의 variation을 사람이 작성한 규칙만으로 감당하기 어려웠다. 이후 statistical machine learning은 model parameter를 data에서 학습하는 방향으로 전환했다.

θ=argminθi=1NL(fθ(xi),yi)\theta^* = \arg\min_\theta \sum_{i=1}^{N} \mathcal{L}\left(f_\theta(x_i),y_i\right)

이 시기에는 support vector machine, Bayesian network, random field와 같은 model이 사용되었다. 중요한 변화는 어떤 feature와 rule이 맞는지 전부 사람이 지정하는 대신, labeled data로부터 decision boundary의 parameter를 학습하기 시작했다는 점이다.

Data, compute, neural network의 결합

인간이 인식할 수 있는 visual category 수는 매우 크다. 강의에서는 Irving Biederman의 추정을 바탕으로, 어린이도 약 30,00030{,}000에서 100,000100{,}000개의 visual category를 구분할 수 있다는 관점을 소개했다. 당시 benchmark의 작은 class 수와 dataset 규모만으로는 이 다양성을 다루기 어려웠다.

ImageNet은 약 22,00022{,}000개 class와 1,5001{,}500만 장 이상의 image를 모아 이 scale의 간극을 줄이려 했다. 이후 large-scale data, GPU compute, convolutional neural network가 결합하면서 object recognition 성능이 크게 향상되었다.

large-scale data+compute+neural networkmodern deep learning\text{large-scale data} + \text{compute} + \text{neural network} \Rightarrow \text{modern deep learning}

핵심은 architecture 하나만의 승리가 아니다. 충분한 data, 이를 처리할 compute, data에서 representation을 학습할 model이 같은 시점에 결합했기 때문에 가능했다.

Object label만으로는 scene을 이해할 수 없다

같은 personllama가 등장하는 두 image라도 둘의 관계가 다르면 scene의 의미는 완전히 달라진다. 따라서 object set만으로는 scene semantics를 충분히 표현하지 못한다.

scene understanding{object labels}\text{scene understanding} \neq \{\text{object labels}\}

Scene understanding에는 다음 정보가 필요하다.

  • 어떤 entity가 존재하는가?
  • 각 entity는 어떤 attribute를 갖는가?
  • entity 사이에 어떤 relation이 있는가?
  • 어떤 action과 event가 진행 중인가?
  • 다음에는 무엇이 일어날 가능성이 높은가?

Scene graph

Scene graph는 object를 node로, object 사이의 relation을 edge로 표현한다.

G=(V,E)G = (V,E)

VVperson, horse, hat과 같은 entity이고, EEriding, wearing, on과 같은 relation이다. Attribute도 object와 연결된 relation으로 표현할 수 있다.

예를 들어 다음과 같은 triplet을 만들 수 있다.

(person, riding, horse)(\text{person},\ \text{riding},\ \text{horse}) (person, wearing, hat)(\text{person},\ \text{wearing},\ \text{hat})

Scene graph의 장점은 relation을 compositional하게 재사용할 수 있다는 점이다. person riding horseperson wearing hat을 충분히 학습했다면, training data에서 드물었던 horse wearing hat도 entity와 relation의 새로운 조합으로 표현할 수 있다.

비슷하게 person sitting on chairfire hydrant on field가 흔하더라도 person sitting on fire hydrant는 드물다. Scene graph는 흔한 component를 조합해 이런 unusual relation을 zero-shot으로 다룰 가능성을 만든다.

Captioning은 graph를 natural language로 확장한다

Scene graph는 구조화된 relation을 잘 표현하지만, image 전체의 맥락과 story를 자연스럽게 전달하기에는 제한이 있다. Image captioning은 visual representation에서 word sequence를 생성해 scene을 language로 설명한다.

p(y1:Tx)=t=1Tp(yty<t,x)p(y_{1:T}\mid x) = \prod_{t=1}^{T} p(y_t\mid y_{<t},x)

xx는 image이고 y1:Ty_{1:T}는 caption token sequence이다. 초기에는 CNN image encoder와 LSTM language decoder의 조합이 사용되었고, 이후 multimodal transformer와 multimodal language model로 확장되었다.

Dense captioning은 image 전체에 caption 하나를 붙이는 대신, 여러 region을 찾아 각 region의 description을 생성한다. Object, relation, language가 하나의 visual understanding pipeline으로 연결되는 형태이다.

Dynamic scene understanding

Video에서는 static image보다 관계가 복잡하다. 여러 actor와 object가 움직이고, camera 자체도 움직이며, action이 시간에 따라 이어진다.

x1:T{entities,relations,activities}1:Tx_{1:T} \rightarrow \{\text{entities},\text{relations},\text{activities}\}_{1:T}

이때 필요한 것은 frame별 object detection만이 아니다.

  • 동일한 entity를 시간에 따라 tracking해야 한다.
  • 여러 actor의 interaction을 해석해야 한다.
  • action의 시작과 끝을 구분해야 한다.
  • 현재 context에서 다음 event를 예측해야 한다.

일상 환경에서 작동하는 robot은 바로 이 문제를 풀어야 한다. 주변 사람이 무엇을 하고 있고, object가 어떻게 이동하며, robot의 action이 누구에게 영향을 주는지를 지속적으로 이해해야 하기 때문이다.

인간보다 더 세밀하게 보는 AI

AI가 인간의 시각 능력을 복제하는 데서 끝날 필요는 없다. 사람 한 명이 구분하기 어려운 매우 많은 category를 일관되게 비교하는 fine-grained recognition은 AI가 인간의 능력을 확장할 수 있는 대표적인 영역이다.

Fine-grained classification은 상위 category가 같은 대상 안에서 작은 차이를 구분한다.

birdspecies\text{bird} \rightarrow \text{species} car(make,model,year)\text{car} \rightarrow (\text{make},\text{model},\text{year})

Class 사이의 visual difference는 작고, 같은 class 안의 pose와 background variation은 클 수 있어 일반적인 classification보다 어렵다. 강의의 bird recognition 실험에서도 coarse category에서는 error가 낮아지지만 species-level로 내려갈수록 error가 커졌다.

Visual recognition을 사회의 lens로 사용할 때의 주의점

강의에서는 Google Street View image의 car를 make, model, year 수준으로 분류하고, 도시별 car distribution을 education, income, voting, environmental pattern과 비교한 사례를 소개했다. 사람이 수작업으로 처리하기 어려운 scale의 visual data에서 사회적 pattern을 찾은 예이다.

그러나 correlation은 causation이 아니다.

p(a,b)p(ado(b))p(a,b) \neq p(a\mid \operatorname{do}(b))

Car distribution이 어떤 사회 지표와 함께 변한다고 해서 car가 그 지표의 원인이라는 뜻은 아니다. Image source의 geographic coverage, 촬영 시점, detection error, neighborhood representation도 결과에 영향을 준다. Human-centered analysis에서는 model accuracy뿐 아니라 data가 누구와 어떤 지역을 대표하는지도 확인해야 한다.

Human attention의 한계

인간의 vision은 강력하지만 모든 정보를 동일하게 처리하지 않는다. Attention은 제한된 resource이고, task와 prior에 따라 일부 정보가 선택된다.

Stroop test에서는 color word의 의미와 글자 색이 충돌할 때 색을 말하는 속도가 느려진다. 자동화된 word reading이 color naming task를 방해하기 때문이다.

Change blindness에서는 두 image 사이에 비교적 큰 변화가 있어도 중간 interruption이나 attention 분산이 있으면 변화를 쉽게 놓친다. 강의의 예에서는 aircraft engine의 변화가 반복해서 image를 보고도 바로 눈에 띄지 않았다.

이 사례들이 보여주는 핵심은 인간이 부주의하다는 것이 아니다. 인간의 attention은 선택적이며, 반복적 감시나 많은 object를 지속적으로 세는 task에서는 구조적인 한계가 있다는 점이다.

AI는 human attention을 보완할 수 있다

수술실에서는 gauze, suture needle과 같은 작은 물품이 모두 회수되었는지 확인해야 한다. 사람이 checklist로 추적하다가 수량이 맞지 않으면 수술을 멈추고 물품을 찾아야 하며, 강의 사례에서는 이 과정이 평균적으로 한 시간 가까이 걸릴 수 있다고 설명했다.

Computer vision은 scene을 지속적으로 관찰하면서 item의 등장, 사용, 회수를 기록할 수 있다.

ct(k)=ct1(k)+int(k)outt(k)c_t(k) = c_{t-1}(k) + \operatorname{in}_t(k) - \operatorname{out}_t(k)

ct(k)c_t(k)는 시각 tt까지 추적한 item kk의 수량이다. 실제 시스템에서는 occlusion, duplicate detection, tracking identity switch를 처리해야 하므로 단순 counting보다 어렵다. 또한 강의의 demonstration은 가능성을 보여준 것이며, 바로 임상 배포 가능한 완성형 system을 뜻하지 않는다.

Human bias와 AI bias

인간 시각계에는 world의 일반적인 lighting과 shadow를 가정하는 perceptual prior가 있다. Checker-shadow illusion에서 실제 luminance가 같은 두 영역을 다르게 보는 것도 context와 prior가 perception을 바꾸기 때문이다.

AI 역시 data와 design을 통해 bias를 갖는다.

  • training data의 representation imbalance
  • label과 annotation의 편향
  • sensor와 image quality의 차이
  • objective function이 놓친 비용
  • deployment environment와 training distribution의 차이
  • 기존 사회 구조를 반영한 proxy feature

과거 face recognition system이 skin tone이나 gender group에 따라 다른 error rate를 보인 사례처럼, 전체 accuracy가 높아도 특정 group에 error가 집중될 수 있다.

Aggregate accuracy만 보면 subgroup failure를 놓친다

Group gg의 error rate를 다음과 같이 계산할 수 있다.

Errg=1Ngi:gi=g1[fθ(xi)yi]\operatorname{Err}_g = \frac{1}{N_g} \sum_{i:g_i=g} \mathbb{1} \left[ f_\theta(x_i) \neq y_i \right]

Group 사이의 단순 error gap은 다음과 같다.

Δgroup=maxgErrgmingErrg\Delta_{\text{group}} = \max_g \operatorname{Err}_g - \min_g \operatorname{Err}_g

다만 이 값 하나만으로 fairness를 완전히 정의할 수는 없다. 의료 diagnosis에서는 false negative의 비용이 매우 클 수 있고, access control에서는 false positive의 의미가 다를 수 있다. 따라서 task에 따라 sensitivity, specificity, false positive rate, false negative rate를 group별로 나누어 봐야 한다.

Human-centered evaluation은 평균 성능 뒤에 숨은 failure distribution을 확인하는 과정이다.

AI가 보지 않아야 하는 정보

AI가 더 많이 볼 수 있다고 해서 모든 정보를 수집해야 하는 것은 아니다. Healthcare나 home monitoring에서는 patient safety를 위해 activity를 이해해야 하지만, face와 private living space를 그대로 저장하는 것은 불필요한 privacy risk가 될 수 있다.

이 문제는 단순히 accuracy와 privacy 중 하나를 고르는 문제가 아니다. Task에 필요한 information만 남기는 representation을 설계해야 한다.

z=g(x)z = g(x)

xx는 원본 sensor data이고 zz는 model이 실제 task에 사용하는 representation이다. 좋은 zz는 target activity yy를 예측하는 정보는 유지하면서 identity나 face 같은 sensitive attribute ss에 관한 정보는 줄여야 한다.

이를 개념적으로 다음과 같이 볼 수 있다.

maxg[U(y,g(x))λI(g(x);s)]\max_g \left[ U\bigl(y,g(x)\bigr) - \lambda I\bigl(g(x);s\bigr) \right]

UU는 task utility이고 I(g(x);s)I(g(x);s)는 representation에 남은 sensitive information을 나타낸다. λ\lambda는 privacy를 얼마나 강하게 우선할지 조정한다.

Privacy-preserving vision의 여러 층

강의에서는 다음과 같은 방법을 소개했다.

  • face와 body를 blur하거나 mask하는 visual redaction
  • 원본 image 대신 lower-dimensional representation 사용
  • RGB 대신 depth나 thermal sensor 사용
  • raw data를 중앙 server로 보내지 않는 federated learning
  • 저장과 전송 단계의 encryption
  • 필요한 signal만 통과시키는 optical hardware 설계

각 방법은 보호하는 정보와 남기는 utility가 다르다. 예를 들어 blur가 강하면 identity는 가릴 수 있지만 body motion도 사라져 action recognition이 어려워질 수 있다.

Hardware와 software를 함께 설계하는 privacy

강의에서 소개한 action recognition 연구는 사람의 얼굴과 신체 detail을 감추면서 움직임 정보는 남기기 위해 특수 lens와 recognition software를 함께 설계했다. 일반 camera로 선명한 image를 먼저 수집한 뒤 blur하는 방식과 달리, sensor 단계부터 privacy-sensitive detail이 기록되지 않게 한다.

xworldprivacy-aware opticszsensorrecognition modely^activityx_{\text{world}} \xrightarrow{\text{privacy-aware optics}} z_{\text{sensor}} \xrightarrow{\text{recognition model}} \hat{y}_{\text{activity}}

이 방식은 privacy를 post-processing option이 아니라 sensing pipeline 자체의 constraint로 취급한다. 원본을 애초에 만들지 않으면 유출될 raw information도 줄어든다.

Human-centered AI의 목표는 replacement보다 augmentation이다

AI가 노동에 미치는 영향은 단순하지 않다. 일부 업무는 자동화되거나 바뀌지만, healthcare와 elderly care처럼 수요에 비해 사람이 부족한 분야도 있다. 이런 환경에서는 AI를 사람의 역할 전체를 대체하는 system보다 부족한 눈, 귀, 손을 보완하는 tool로 설계할 수 있다.

human capability+AI capability>either alone\text{human capability} + \text{AI capability} > \text{either alone}

Augmentation 관점에서는 다음 질문이 중요하다.

  • 사람이 반복적으로 놓치는 정보는 무엇인가?
  • AI의 alert를 누가 언제 확인하는가?
  • 잘못된 alert와 놓친 event의 비용은 각각 얼마인가?
  • AI가 실패할 때 사람이 개입할 수 있는가?
  • workload가 실제로 줄어드는가, 아니면 새로운 확인 업무가 생기는가?

Ambient intelligence for healthcare

Ambient intelligence는 환경에 설치된 sensor와 machine learning을 결합해 사람이 별도로 device를 조작하지 않아도 health-relevant event를 관찰하는 방식이다.

ambient sensorsevent recognitionclinical signalhuman intervention\text{ambient sensors} \rightarrow \text{event recognition} \rightarrow \text{clinical signal} \rightarrow \text{human intervention}

목적은 환자를 감시하는 것 자체가 아니라, 필요한 순간에 patient, caregiver, nurse, doctor가 행동할 수 있는 signal을 제공하는 것이다.

Hand hygiene monitoring

Hospital-acquired infection을 줄이려면 patient room에 들어가고 나올 때 hand hygiene가 지켜지는지 확인해야 한다. Human auditor는 모든 room과 시간을 지속적으로 관찰할 수 없고, RFID badge는 사람이 sink나 sanitizer 근처에 있었다는 것만 알려줄 뿐 실제로 손을 씻었는지는 보장하지 않는다.

강의 사례에서는 RGB image 대신 depth information을 수집하는 sensor와 action classifier를 사용했다.

depth sequencefθ{washing,not washing}\text{depth sequence} \rightarrow f_\theta \rightarrow \{\text{washing},\text{not washing}\}

Algorithm은 동일한 video를 본 개별 human observer보다 더 일관된 detection을 보였고, 여러 사람의 판단을 모아야 비슷한 coverage를 얻을 수 있었다. 이 사례는 AI가 임상 판단을 대신했다기보다, 사람이 지속적으로 수행하기 어려운 관찰 task를 보완한 예이다.

ICU mobilization monitoring

ICU patient의 적절한 movement는 recovery에 중요하지만, movement의 시점과 방식은 안전하게 관리되어야 한다. 강의에서는 다음 네 event를 sensor로 구분하는 사례를 소개했다.

  • getting out of bed
  • getting into bed
  • getting out of chair
  • getting into chair

이 정보는 mobilization이 처방대로 이루어졌는지 확인하고 clinical team이 환자의 activity pattern을 이해하는 데 도움을 줄 수 있다. 다만 event detection output은 clinical context와 결합되어야 하며, movement만 보고 환자의 회복 상태를 단정할 수는 없다.

Aging in place

많은 고령자는 가능한 오래 자신의 집에서 독립적으로 생활하기를 원한다. Ambient sensor는 다음과 같은 변화를 장기간 관찰할 수 있다.

  • thermal signal을 이용한 infection 징후
  • mobility 변화
  • sleep pattern
  • dietary pattern
  • fall이나 unusual inactivity

여기에서도 핵심은 data를 최대한 많이 모으는 것이 아니다. 필요한 health signal을 얻으면서 resident의 autonomy와 privacy를 지키는 것이 system design의 일부이다.

Sensing만으로 해결되지 않는 문제

Ambient system은 정보를 수집하고 alert를 줄 수 있지만 물을 가져오거나, 약을 전달하거나, 환자의 자세를 바꾸지는 못한다. Physical assistance가 필요한 순간에는 perception과 action을 연결해야 한다.

otperceptionplanningatot+1o_t \rightarrow \text{perception} \rightarrow \text{planning} \rightarrow a_t \rightarrow o_{t+1}

이 closed loop가 embodied AI와 robotics의 핵심이다. Robot은 한 번의 image를 분류하는 대신 자신의 action으로 environment를 바꾸고 그 결과를 다시 관찰한다.

Open-world robot instruction

Traditional robot system은 predefined object와 task가 있는 closed world에서는 잘 작동할 수 있지만, 실제 집과 병원에서는 처음 보는 object와 표현이 계속 등장한다. 강의의 연구 사례는 LLM과 vision-language model을 이용해 open instruction을 motion planning으로 연결했다.

전체 pipeline은 다음과 같다.

language instructionLLMsubgoal or codeVLMvisual groundingspatial motion maprobot action\text{language instruction} \xrightarrow{\text{LLM}} \text{subgoal or code} \xrightarrow{\text{VLM}} \text{visual grounding} \xrightarrow{} \text{spatial motion map} \xrightarrow{} \text{robot action}

예를 들어 instruction이 open the top drawer, but avoid the vase라면 다음 두 constraint가 필요하다.

  1. top drawerhandle을 찾아 접근해야 한다.
  2. vase가 있는 영역은 collision cost가 높은 공간으로 표시해야 한다.

이를 positive affordance map M+M^+와 negative constraint map MM^-로 표현할 수 있다.

M=M+αMM = M^+ - \alpha M^-

M+M^+는 gripper가 향해야 할 위치이고 MM^-는 피해야 할 위치이다. Motion planner는 이 map을 사용해 position, gripper rotation, velocity를 포함한 trajectory를 만든다.

LLM과 VLM은 open-vocabulary generalization을 제공하지만, 실제 safety는 motion planner와 sensor feedback을 포함한 전체 system에서 보장해야 한다. Language model의 instruction 해석이 틀리면 잘못된 object를 grounding하거나 위험한 path를 만들 수 있기 때문이다.

기술적으로 가능한 task가 바람직한 task는 아니다

Robot이 어떤 task를 수행할 수 있다는 사실과 사람이 그 task를 맡기고 싶다는 사실은 다르다. Floor cleaning이나 snow shoveling은 많은 사람이 robot의 도움을 원할 수 있지만, gift opening이나 wedding ring 구매처럼 정서적 의미가 큰 task는 자동화를 원하지 않을 수 있다. Baby cereal을 섞는 일처럼 safety와 trust가 중요한 task도 선호가 다를 수 있다.

technical feasibilityhuman desirability\text{technical feasibility} \neq \text{human desirability}

따라서 robot benchmark의 task list를 researcher가 임의로 정하는 것만으로는 부족하다. 실제 user가 무엇을 부담스럽게 느끼고 어디에 도움을 원하는지 조사해야 한다.

Human preference로 benchmark task를 선택하기

BEHAVIOR project는 미국과 유럽의 labor survey에서 everyday activity 후보를 모으고, 약 1,4001{,}400명의 응답자에게 robot이 어떤 일을 도와주기를 원하는지 물었다. 이를 바탕으로 everyday household activity 약 1,0001{,}000개를 정리했다.

응답에서는 toilet과 floor를 포함한 cleaning task에 대한 선호가 높았고, squash 대신 하기, wedding ring 구매, gift opening과 같은 task에 대한 선호는 낮았다. 이 차이는 benchmark가 physical difficulty만 측정해서는 안 된다는 점을 보여준다.

Task selection은 최소한 다음 요소를 함께 봐야 한다.

  • user demand
  • physical and cognitive burden
  • safety risk
  • emotional and social meaning
  • feasibility
  • affected stakeholder

Ecological robot benchmark

실제 household environment는 object가 다양하고, task가 길며, 여러 물리 현상이 함께 나타난다. BEHAVIOR benchmark는 이런 복잡성을 simulation에 포함하려 했다.

강의에서 소개한 구성은 다음과 같다.

  • restaurant, apartment, grocery store, office 등을 포함한 5050개의 real-world environment
  • articulation과 deformability 속성을 가진 10,00010{,}000개 이상의 3D object asset
  • 1,0001{,}000개의 human-preferred everyday task
  • cloth, liquid, transparency, thermal property 등을 고려한 physics
  • perception과 interaction을 함께 평가하는 ecological setting

좋은 robot benchmark는 visual realism만 높으면 되는 것이 아니다.

benchmark realism=perceptual+physical+interactive+ecological\text{benchmark realism} = \text{perceptual} + \text{physical} + \text{interactive} + \text{ecological}

Object가 그럴듯하게 보이는지뿐 아니라 잡히고, 접히고, 쏟아지고, 다른 object와 충돌하는 방식도 실제와 가까워야 한다.

Privileged information이 benchmark 결과를 바꾼다

Robot algorithm을 비교할 때 무엇을 input으로 제공했는지 반드시 확인해야 한다. Perfect object pose, perfect memory, collision-free magic motion과 같은 privileged information을 주면 task가 크게 쉬워진다.

π(atot,zprivileged)\pi \left( a_t \mid o_{\le t}, z_{\text{privileged}} \right)

실제 deployment에서는 zprivilegedz_{\text{privileged}}를 얻을 수 없는 경우가 많다. 강의에서 소개한 세 BEHAVIOR task 실험에서는 privileged information 없이 현재 robot algorithm을 평가했을 때 성공률이 00이었고, 완벽한 memory나 simplified motion 같은 assumption을 추가할수록 성능이 올라갔다.

이 결과는 benchmark가 어려워서 무의미하다는 뜻이 아니다. 실제 문제와 algorithm의 capability 사이에 남은 간극을 드러낸다는 점이 중요하다.

Simulation, digital twin, real-to-sim gap

Simulation은 반복 가능하고 안전한 evaluation을 제공하지만, 실제 world의 모든 property를 복제할 수는 없다. Digital twin은 동일하거나 유사한 task를 virtual environment와 real environment에 구성해 둘 사이의 차이를 측정하려는 방법이다.

Δsim-real=Jreal(π)Jsim(π)\Delta_{\text{sim-real}} = \left| J_{\text{real}}(\pi) - J_{\text{sim}}(\pi) \right|

J(π)J(\pi)는 policy π\pi의 task performance이다. Δsim-real\Delta_{\text{sim-real}}이 작을수록 simulation evaluation이 real-world behavior를 잘 예측한다.

그러나 visual appearance뿐 아니라 friction, deformability, sensor noise, object placement, human interaction까지 차이가 생길 수 있다. Simulation score만으로 real-world readiness를 단정해서는 안 된다.

Failure를 숨기지 않는 evaluation

Household robot은 느리게 움직이거나 bottle을 집지 못하고, object를 잘못된 위치에 놓을 수 있다. 성공 video 몇 개만 보여주면 이런 failure frequency를 알 수 없다.

Robot evaluation에는 다음 정보가 함께 필요하다.

  • 전체 trial 수와 success rate
  • partial completion
  • failure category
  • task completion time
  • collision과 unsafe action
  • human intervention 횟수
  • unseen environment에서의 generalization

Human-centered benchmark는 최고 성능만 보여주는 것이 아니라, 실제 user가 경험하게 될 failure mode를 드러내야 한다.

Non-invasive brain-computer interface와 assistive robotics

강의의 마지막 사례에서는 EEG cap으로 측정한 electrical brain signal을 robot command에 연결했다. 사용자가 생각만으로 임의의 자연어 instruction을 바로 전달한 것은 아니다. lift, place, drop과 같이 미리 정의하고 학습한 mental command를 분류한 뒤 robot action에 mapping한 방식이다.

EEG signalfθpretrained commandrobot controlleraction\text{EEG signal} \xrightarrow{f_\theta} \text{pretrained command} \xrightarrow{\text{robot controller}} \text{action}

이 구분은 중요하다. Demo의 가능성을 과장해 unrestricted mind reading으로 해석해서는 안 된다. 현재의 제한된 command vocabulary와 calibration requirement를 인정하면서도, severe paralysis가 있는 사람에게 새로운 control channel을 제공할 가능성이 있다는 점에서 의미가 있다.

Human-centered system objective

일반적인 machine learning은 prediction loss를 최소화한다.

θ=argminθLtask(θ)\theta^* = \arg\min_\theta \mathcal{L}_{\text{task}}(\theta)

Human-centered AI에서는 task performance 외에도 risk, fairness, privacy, workload와 같은 요소가 실제 objective에 포함된다.

θ=argminθ[Ltask+λrRrisk+λfRfairness+λpRprivacy+λwRworkload]\theta^* = \arg\min_\theta \left[ \mathcal{L}_{\text{task}} + \lambda_r \mathcal{R}_{\text{risk}} + \lambda_f \mathcal{R}_{\text{fairness}} + \lambda_p \mathcal{R}_{\text{privacy}} + \lambda_w \mathcal{R}_{\text{workload}} \right]

실제 system이 이 항들을 모두 하나의 differentiable loss로 학습한다는 뜻은 아니다. 일부는 dataset 구성, hardware 선택, access policy, human workflow, deployment rule, 사후 audit로 구현된다. 중요한 것은 이러한 constraint를 model 학습이 끝난 뒤 덧붙이는 부가 기능으로 보지 않는 것이다.

Human-centered AI의 평가 단위는 model이 아니라 system이다

같은 classifier도 어디에 배치되고 누가 output을 사용하는지에 따라 영향이 달라진다.

AI system=model+data+sensor+interface+human workflow+institution\text{AI system} = \text{model} + \text{data} + \text{sensor} + \text{interface} + \text{human workflow} + \text{institution}

예를 들어 hand hygiene classifier의 validation accuracy가 높더라도 alert가 너무 잦아 nurse가 무시한다면 system은 실패한 것이다. 반대로 prediction이 완벽하지 않아도 불확실한 경우 human review로 넘기고 workload를 줄일 수 있다면 실질적인 도움이 될 수 있다.

Human-in-the-loop의 역할

Human-in-the-loop는 단순히 AI가 못 하는 일을 사람이 대신하는 구조가 아니다. AI와 사람이 서로 다른 강점을 맡도록 workflow를 설계하는 것이다.

  • AI는 반복적 monitoring과 large-scale pattern detection을 맡는다.
  • 사람은 ambiguous context, value judgment, exception handling을 맡는다.
  • AI는 confidence와 근거를 제공한다.
  • 사람은 correction을 남겨 system 개선에 사용한다.
  • 위험도가 높은 action에는 승인과 override path를 둔다.

Uncertainty가 높은 sample을 사람이 검토하는 구조는 다음과 같이 표현할 수 있다.

decision(x)={fθ(x),conf(x)τhuman review,conf(x)<τ\text{decision}(x) = \begin{cases} f_\theta(x), & \operatorname{conf}(x) \ge \tau \\ \text{human review}, & \operatorname{conf}(x) < \tau \end{cases}

τ\tau는 automation과 review workload 사이의 trade-off를 조정하는 threshold이다.

전체 흐름 정리

Human-centered computer vision의 흐름은 다음과 같이 정리할 수 있다.

  1. Human vision에서 영감을 받아 object recognition 문제를 정의했다.
  2. Parts-based rule에서 statistical learning으로, 다시 large-scale deep learning으로 발전했다.
  3. Object label을 넘어 relation, caption, dynamic activity를 이해하는 방향으로 확장했다.
  4. Fine-grained recognition과 continuous monitoring으로 인간의 능력과 attention을 보완할 수 있게 되었다.
  5. 동시에 subgroup bias와 privacy leakage가 새로운 system risk로 드러났다.
  6. Healthcare에서는 ambient intelligence가 부족한 관찰 인력을 보완할 수 있다.
  7. Physical assistance까지 가려면 perception과 action을 연결한 embodied AI가 필요하다.
  8. Robot task는 기술자만 정하는 것이 아니라 human preference에서 출발해야 한다.
  9. Ecological benchmark는 realistic perception, physics, interaction과 failure를 함께 평가해야 한다.
  10. 최종 목표는 AI가 인간을 대체한다는 추상적인 구호가 아니라, 인간이 가치 있다고 판단한 능력을 안전하게 확장하는 것이다.

과제에서 확인할 것

Scene graph의 구성

Object를 node로, relation을 edge로 표현하고 unusual relation이 compositional zero-shot generalization으로 이어지는 과정을 확인한다.

Caption probability

Image-conditioned autoregressive captioning의 p(y1:Tx)p(y_{1:T}\mid x)가 token별 conditional probability의 곱으로 분해되는지 확인한다.

Group-wise evaluation

전체 accuracy가 같아도 group별 false positive rate와 false negative rate가 다를 수 있음을 작은 confusion matrix로 계산해 본다.

Privacy와 utility의 trade-off

RGB, blurred RGB, depth, pose keypoint를 input으로 쓸 때 action recognition utility와 identity leakage가 어떻게 달라지는지 비교한다.

Ambient sensing pipeline

Sensor output이 곧바로 clinical decision이 되는 것이 아니라 event detection, alert, human review를 거쳐 intervention으로 이어지는지 구분한다.

Open-world robot pipeline

LLM의 instruction decomposition, VLM의 visual grounding, positive and negative motion map, low-level planner의 역할을 각각 구분한다.

Human preference와 technical feasibility

Robot이 수행 가능한 task와 사람이 robot에게 맡기고 싶은 task가 왜 다를 수 있는지 cleaning, gift opening, wedding ring 사례로 확인한다.

Privileged information

Perfect pose, perfect memory, magic motion을 제공한 benchmark score와 raw sensor만 제공한 score를 직접 비교할 때 무엇이 공정한 조건인지 확인한다.

Sim-to-real evaluation

Simulation의 visual realism뿐 아니라 physics, sensor noise, task completion time, intervention과 safety failure도 real-world 결과와 비교한다.

Human-centered objective

Prediction accuracy가 높아져도 privacy, fairness, workload, safety가 악화될 수 있음을 확인하고 model metric과 system-level outcome을 구분한다.