여기서 답사의 영토가 바뀐다. 2·3권이 사전학습의 곳간을 넓히는 공사였다면, 이제부터는 그 배운 것을 새 땅에 옮겨 심는 일이다. 옮겨 심기의 통상 공법은 사전학습–미세조정의 그것 — 기본 정책 πb를 한두 과업에서 기른 뒤 배운 가중치를 그대로 물려주는 식으로, 자연어처리 [Devlin 2019]와 비전 [Radford 2021]에서 큰 성공을 거두었다. 그러나 이 공법에는 답답한 데가 있다 — 물려준 지식이 끝내 암묵적이라는 것이다. 신경망 매개변수 속에 스며 있으니 무엇을 배웠는지 들여다볼 수도, 편향이 끼었는지 짚어낼 수도 없다 [Feng 2023; Gallegos 2024].
그래서 이 권은 다른 물건을 꺼낸다. 사실을 삼중항으로 또박또박 적어 둔 지식그래프 [Singhal 2012]다. 연속적인 신경 표현과 이산적인 관계 구조 사이에 다리가 놓인 것은 2017년 무렵 그래프 신경망이 되살아나면서였다 [Kipf & Welling 2017; Velickovic 2018]. 지식을 옮긴다 하면 물음이 절로 둘이다 — 표본 효율이 좋아지는가, 그리고 그 지식이 환경을 건너 통하는가. 이것이 1장에서 받아 든 셋째 물음(RQ3)이다.
답사의 연장은 뜻밖에도 족보(族譜)다. 사람은 낱낱의 물건을 일일이 외우지 않는다. 부류(class)로 한 켜 올려 뭉뚱그린 뒤 그 켜에서 행동을 배우고, 처음 보는 물건에도 그 배움을 편다 [Yee 2019]. 염소를 몰던 솜씨로 양을 몰 수 있는 것은, 둘이 유제류라는 한 항렬(行列)에 놓이기 때문이다. 상식 게임의 물건들이 실세계의 것들이니, 공개 지식그래프에 적힌 상위부류(subclass) 관계를 족보로 삼아 상태를 추상화하는 길이 열린다.
WordNet에서 뽑은 클래스 트리의 한 조각. 밑바닥 s₀가 낱낱의 물건을 담은 기저 상태요, 위로 오를수록 물건을 제 조상 부류로 갈아 넣은 추상 상태다. 같은 항렬에 놓인 것들 — 염소와 양 — 은 유제류라는 한 이름으로 뭉쳐지고, 그 켜에서 배운 행동은 처음 보는 유제류에게도 통한다. 다만 족보가 늘 옳지는 않다는 것, 그것이 이 권 내내 씨름할 화두다.
심층 강화학습은 고차원의 상태·행동 공간을 가진 MDP에서도 제어 정책을 벼려 냈다 — 바둑과 게임 [Silver 2016], 로보틱스 [Lillicrap 2016]가 그 증좌다. 실세계로 나오는 길목을 막는 두 걸림돌은 여전히 표본 비효율과 부실한 일반화다 [Kirk 2023]. 여러 방책 가운데, 학습 과정에 사전 지식을 들여 강화학습을 백지(tabula rasa)의 방법에서 사람에 가까운 배움으로 옮기려는 시도가 있다. 사전 지식의 꼴은 분야에 따라 갈리는데, 사전학습된 임베딩이나 가중치 [Devlin 2019]가 있고, 논리 [Vaezipoor 2021]나 지식그래프 [Zhang 2020b] 같은 심볼릭 표현이 있다. 앞의 것은 신경망에 얹기 쉬우나 구체성·추상성·강건성·해석 가능성이 부족하다 [van Harmelen & ten Teije 2019].
데이터만으로는 좀처럼 얻어지지 않는 사전 지식이 하나 있다. 상식(commonsense)이다. 에이전트에게 상식과 세계 지식을 갖춰 주는 일은 인간–기계 상호작용의 진전에 요긴하다 [Akata 2020] — 쓸모 있는 대화란 경험만으로는 배울 수 없는 사전 지식을 요구하는 법이다. 그리하여 상식 게임 [Jiang 2020; Murugesan 2021]이 시험장으로 등장했다. 선행 연구는 ConceptNet의 조각을 뽑아 상태에 덧붙이는 데 힘을 쏟았는데 [Murugesan 2021], 그 지식을 환경에 맞춰 재단했을 때에만 성적이 올랐다. 이 장이 노리는 것은 다르다 — 자동으로 뽑히고, 여러 상식 게임에 두루 통할 지식이다.
족보를 얻었다 하여 일이 끝나는 것은 아니다. 부류로 뭉뚱그린 상태는 그 자리에서 최적으로 처신하는 데 필요한 정보를 다 지니지 못할 수 있다. 하여 점점 더 촘촘해지는 상태 표현들의 사슬을 넘나들며 쓸모 있는 지식만 골라 통합하는 공법이 있어야 한다. 이 장은 순진한 앙상블 공법이 어설피 추상된 상태를 잘못 통합함을 보이고, 이웃한 항렬 사이의 차이(差)만을 배우도록 강제하는 잔차 학습을 설계한다. 먼저 추상화의 효험을 손으로 조절할 수 있는 장난감 환경에서 두 공법의 됨됨이를 살피고, 이어 부류 구조가 실제로 지배하는 상식 게임에서 표본 효율과 일반화가 좋아짐을 보인다 — 임베딩 공법과 ConceptNet 조각을 덧붙이는 공법을 모두 앞선다. 다만 족보가 물건을 잘못 묶으면 배움이 외려 막힌다는 것도 함께 드러난다. 세 가지 공적을 현판에 새기면 이렇다.
공개 지식그래프의 상위부류 관계를 써서 상식 게임의 상태 추상화를 정식화한다.
불완전한 상태 추상화를 살려 쓸 수 있도록, 정책 경사 알고리즘에 접붙일 잔차 학습 공법을 제안한다.
부류 구조를 가진 환경에서 이 공법이 표본 효율을 높이고 처음 보는 물건으로의 일반화를 개선함을 보인다.
지식그래프는 사실을 개체–관계–개체의 삼중항으로 갈무리한다. 상식 [Ilievski 2021]처럼 너른 영역을 담기도 하고 의학 [Huang 2017]처럼 한 고을을 파기도 한다. ConceptNet [Speer 2017]은 상식 전부를 담으려 하고, 어떤 것은 인과 관계 [Sap 2019]만 벼른다. 손으로 지은 것 [Miller 1995]은 오류가 적으나 품이 많이 들고 덮는 범위가 좁아, 혼합 공법이 흔하다.
이 장은 WordNet · ConceptNet · DBpedia [Lehmann 2015] 셋을 놓고 그 족보의 품질이 공법에 어떻게 되비치는지 살핀다. 지식그래프를 벡터로 옮기는 임베딩 기법도 있는데 [Nickel & Kiela 2017], 특히 쌍곡 임베딩은 WordNet의 상위어 관계가 만드는 계층 구조를 담아내니 부류 지식을 넣는 대안으로 견주어 볼 만하다.
상식을 에이전트에 들이는 문제를 겨루려 근래 등장한 시험장이다 [Jiang 2020; Murugesan 2021]. 선행 공법은 지식그래프 임베딩을 부리거나 [Jiang 2020], ConceptNet 조각을 뽑아 상태 표현에 덧붙였다 [Murugesan 2021]. 임베딩은 GloVe [Pennington 2014]보다 낫지만, 그 바탕 그래프가 게임의 내부 정보를 특혜로 얻은 것이라는 흠이 있다.
ConceptNet에서 과업에 맞는 지식을 자동으로 뽑는 일은 여전히 난제다 — 손으로 짚어 주면 표본 효율은 오르나 어림짐작의 추출 규칙은 배움을 막는다. 쓸모 있는 지식을 스스로 뽑아내는 공법은 아직 없다. 이 장이 쓰는 부류 지식은 환경에 맞춰 재단한 것이 아니니, 여러 환경에 두루 통해야 마땅하다.
이 문제는 주로 자연어 동네가 파 왔다 [Xie & Pu 2021] — 열린 대화 [Moon 2019], 과업형 대화 [Gou 2021], 이야기 완성 [Zhang 2020b] 따위가 그 무대다. 공법은 대개 지식 베이스 일부에 어텐션을 두는 식이다.
두 가지가 결정적으로 다르다. 그쪽 그래프는 과업에 맞춰 벼려 놓아 잡음이 적고, 과업 대부분이 올바른 추론 무늬까지 주석된 지도학습이다. 이 장은 공개 그래프에서 지식을 캐 오니 개체 정합(entity reconciliation)의 실패와 지식의 결손이 만든 족보의 오류를 감당해야 한다.
상태 추상화란 기저 MDP의 상태 공간을 갈라 묶어, 정책이 배울 공간의 복잡도를 줄이는 일이다 [Li 2006]. 묶는 기준이 여럿 제안되었고 [Givan 2003], 그 기준을 지키면 추상 MDP에서 배운 최적 정책이 기저 MDP에서도 최적임이 보장된다.
추상화를 부리려면 집계 함수를 배워야 하는데 [Zhang 2020a], 이는 표본을 더 요구하거나 온-폴리시로 하다가 함수가 주저앉을 위험을 진다 [Kemertas 2021]. 근사적 추상화가 사전 지식으로 주어진 경우는 아직 아무도 보지 않았다. 이 장의 추상화는 어떤 일관성 기준도 지키지 않아도 되며 여러 켜로 이뤄질 수 있으니, 켜마다의 쓸모를 골라 통합할 공법이 필요하다.
기저 MDP M = (S, A, R, T, γ)에서 배움의 목표는 할인 반환값 G의 기대치를 최대화하는 정책 π다.
상태 추상화 함수 φ : S → S′는 상태들을 묶어 공간의 복잡도를 줄인다.
가중치 함수 w를 두면 추상 공간 위에 추상 보상 R′와 추상 전이 T′를 정의해 추상 MDP
M′ = (S′, A, R′, T′, γ)를 얻을 수 있다.
공법은 두 마디다 — ① 공개 지식그래프의 상위부류 관계로 추상화 함수 φ₁, …, φn을 짓기, ② 그 항렬의 사슬 위에서 정책을 배우기.
족보를 짓는다. 상식 게임의 상태는 실세계 개체와 그 관계를 집합·수열·그래프로 담는다. 요령은 개체를 제 상위부류로 갈아 넣어, 같은 조상을 가진 물건이 든 상태들을 한 추상 상태로 묶는 것이다. 추상 상태에 나올 수 있는 기호의 어휘를 E, 그중 실세계 물건을 O ⊆ E라 하고, 그들의 클래스 트리 Ctree를 세운다 — 잎이 물건이요, 각 마디의 부모가 그 상위부류며, 뿌리는 모든 것이 그 아래인 개체 일반의 부류다.
실제로는 게임 상태에서 물건을 골라내고 공개 그래프에서 트리를 캐 와야 한다. 상태가 개체 집합이 아니라 글이라면 spaCy로 명사를 죄다 뽑아 물건으로 삼는다. 트리는 DBpedia·ConceptNet·WordNet에서 캔다. 캐다 보면 성가신 일이 생긴다.
잎의 깊이가 저마다 달라 트리가 불균형해진다(Figure 4.2). 어느 켜는 물건을 700개나 담고 어느 켜는 몇 개뿐이다.
부류가 몇 개뿐인 켜는 계산 품만 늘리고 추상화에는 보탬이 없으니, 추상화에 기여하는 정도를 보아 켜를 접는다(Figure 4.2 오른쪽 — 4·5번 켜를 접는 식이다).
DBpedia와 WordNet은 조상이 하나로 정해지지만 ConceptNet은 여럿이다. 하여 개체마다 i단계 상위부류의 집합에 사상하고, 그 집합 원소들의 임베딩을 평균해 표현으로 쓴다.
이제 층층이 배우는 법이다. 상식 게임의 선행 공법이 정책 경사 계열이니 이쪽에 집중한다 (가치 기반의 유사한 분석은 부록에 있다). 가장 손쉬운 길은 앙상블이다 — 항렬마다 따로 매개변수를 둔 신경망이 로짓을 내놓고, 그것들을 합(sum)한 뒤 소프트맥스로 정책을 만든다. 계산이 켜마다 병렬로 되니 값도 싸다(켜를 순차로 처리하면 품이 감당 못 할 만큼 커진다).
π(a_t|s_t) = Softmax( Σ_{i=1..n} NN_{θi}(s_{i,t}) )
흠은 가장 추상적인 켜에서 배우도록 강제하는 장치가 없다는 것이다. 훈련 때는 맨 아래 켜만 보고 죄다 판단하는 것도 반환값을 최대화하는 한 해법이지만, 그 정책이 처음 보는 물건에 통할 리 없다. 말하자면 족보를 손에 들고도 낱낱의 얼굴만 외워 시험을 치는 격이다.
일반화 — 낮은 켜에 과적합 위험π_i(a|sⁿ_{i,t}) = Softmax( Σ_{k=i..n} NN_{θk}(s_{k,t}) ), π = π₁
전체 정책 π를 항렬별 정책의 곱으로 풀어 쓴 뒤(식 4.8), 정책 경사식에 꽂아 넣는다(식 4.9). 요체는 켜 i의 경사를 θ 전체가 아니라 θ_i에 대해서만 취하는 것 — 그러면 θ_i는 전체 정책에 미치는 영향이 아니라 제 켜의 추상 정책에 미치는 영향으로 벼려진다. 위 항렬이 이미 설명한 것을 빼고 남은 차이만 배우는 셈이다.
일반화 — 가장 추상적인 켜에서 배우도록 강제이 공법은 공개 그래프의 부류 지식이 상식 게임에서 쓸모 있다는 가정에 서 있다. 그런데 그것이 반드시 참일 리 없다. 그러니 먼저 추상화의 효험을 손으로 조절할 수 있는 이상향에서 됨됨이를 살피고, 이어 두 고을 — Textworld Commonsense와 Wordcraft — 로 나간다.
뿌리 있는 트리를 세워 마디마다 무작위 임베딩을 준다. 잎이 기저 상태요 깊이마다 한 켜의 추상이며, 내부 마디는 자식들을 묶은 추상 상태다. 켜 l을 하나 정해 그 켜의 추상 상태마다 다섯 행동 중 하나를 뽑아 두면, 잎의 최적 행동은 제 조상이 뽑은 그 행동이 된다. 지평은 한 걸음 — 맞히면 보상 1이다. 시험은 임베딩이 처음인 새 잎으로 치되 족보와 최적 행동의 무늬는 그대로 둔다.
글로 된 상태·행동 공간의 게임. 에이전트는 살림집에 놓여, 물건을 상식이 이르는 제자리에 넣어야 한다 — 제자리마다 보상 1이다. 추상화가 꼭 필요하도록 부류마다 물건 수를 늘리고, 훈련 중 보는 게임을 5판에서 90판으로 늘려 물건 노출을 키웠다. 검증 집합은 본 물건, 시험 집합은 못 본 물건으로 가른다.
목표 개체와 재료 개체가 주어지면, 재료를 엮어 목표를 얻어야 한다. 무엇을 엮으면 무엇이 되는지는 조합표(recipe)가 정한다. 미끼 개체 수와 훈련 시 주어지는 조합표를 달리해 여러 형편을 만들며, 못 본 조합표와 못 본 목표로의 일반화를 시험한다.
TWC에서 견줄 상대는 셋이다 — Base(추상화 없음),
Base-H(WordNet으로 기른 쌍곡 임베딩을 numberbatch에 잇댄 것 [Nickel & Kiela 2017]),
Base-L(ConceptNet에서 게임 물건의 LocatedAt 관계를 뽑아 그래프 어텐션으로 새겨
글 임베딩과 합친 것 [Murugesan 2021]).
그리고 캐 온 족보의 오류가 얼마나 해로운지 보려고, 보상과 전이 거동을 보아 손으로 묶은 족보(manual)를
기준으로 함께 둔다.
이상향의 세 형편(§4.6.1). 장난감 환경에서 추상화의 됨됨이를 셋으로 갈라 보았다.
추상 상태가 기저 상태의 행동을 온전히 정하는 형편이다. 합·잔차 두 공법 모두 추상화 없는 기준선보다 표본 효율이 좋고, 오라클(최적 추상 상태만 본 정책)과 어깨를 나란히 한다. 일반화도 그렇다 — 기저 공법은 시험 때 처음 보는 무작위 임베딩을 만나니 일반화의 여지 자체가 없다.
합 ≈ 잔차 ≈ 오라클40%의 경우 최적 행동을 미리 무작위로 정해 버려 추상–행동의 연을 흐트러 놓았다. 추상 상태만 본 정책은 그 비율에 묶여 천장을 치고, 기저·합·잔차는 훈련에서 최적에 이른다. 일반화 성적은 둘 다 내려앉되, 합 공법이 훈련 잡음에 더 심하게 과적합한다.
잔차 > 합추상화가 상태 하나만 묶는(곧 뭉뚱그리는 바 없는) 켜가 섞인 형편이다. 여기서 잔차가 합을 뚜렷이 앞선다. 잔차 갱신은 되도록 위 항렬에서 배우도록 강제하는데, 합은 최종 정책의 몫을 켜들에 흩어 놓기 때문이다. 시험 때 합 공법은 쓸모없는 기저 상태에 지나치게 무게를 실어 엉뚱한 행동을 고른다.
잔차 > 합
TWC의 표본 효율(§4.6.2). 잔차와 합 공법 모두 기저 공법보다 적은 표본으로 배운다 —
총 100 훈련 에피소드에서 평균 차이가 최대 20 에피소드에 달했다(Figure 4.4).
다만 합 공법은 초반의 기세가 좋다가 어떤 씨앗(seed)에서는 훈련 말미에 주저앉아
정규화 보상의 변덕이 커진다 — 이상향의 잡음 형편에서 본 바로 그 증상이다.
씨앗에 따라 무너진다는 것은, 더 추상적인 켜에서 배운 거동이 가중치의 무작위 초기화에 좌우됨을 뜻한다.
잔차 공법에는 이런 불안이 없다. 한편 쌍곡 임베딩은 표본 효율에 보탬이 없고 훈련 말미에는
성적을 깎기까지 하며, LocatedAt 관계를 덧붙이면 부류 추상화와 비슷한 정도로 효율이 오른다(Figure 4.5).
⟨Table 4.1⟩ TWC 일반화 성적 — 검증(본 물건)과 시험(못 본 물건)에서의 정규화 보상과 소요 스텝. M=손으로 묶은 족보, W=WordNet, R=잔차, S=합. Base-H는 쌍곡 임베딩, Base-L은 LocatedAt 추가. 10 seeds, ( )는 표준편차. 자색 행은 손 족보 없이 얻은 최고, 황토 행은 손 족보가 앞선 조건이다.
| 공법 | 보상 · 검증 | 보상 · 시험 | 스텝 · 검증 | 스텝 · 시험 |
|---|---|---|---|---|
| Base | 0.91 (0.04) | 0.85 (0.05) | 25.98 (3.14) | 29.36 (3.42) |
| Base-H · 쌍곡 임베딩 | 0.83 (0.06) | 0.75 (0.14) | 30.59 (5.39) | 33.92 (6.08) |
| Base-L · LocatedAt | 0.90 (0.04) | 0.86 (0.06) | 24.83 (2.31) | 28.71 (3.46) |
| M-R · 손 족보 + 잔차 | 0.96 (0.03) | 0.96 (0.02) | 21.26 (2.65) | 20.00 (1.57) |
| M-S · 손 족보 + 합 | 0.97 (0.02) | 0.96 (0.02) | 20.95 (1.38) | 19.55 (1.69) |
| W-R · WordNet + 잔차 | 0.93 (0.02) | 0.94 (0.02) | 23.25 (1.46) | 24.04 (1.75) |
| W-S · WordNet + 합 | 0.88 (0.10) | 0.87 (0.17) | 25.69 (4.78) | 26.21 (6.81) |
읽을거리가 셋이다. 첫째, 아무 지식 없는 기준선은 못 본 물건 앞에서 성적이 떨어진다(보상 0.91→0.85, 스텝 25.98→29.36). 둘째, 쌍곡 임베딩은 이 낙차를 달래지 못하고 외려 일반화를 해치며, LocatedAt은 낙차를 조금 줄일 뿐이다. 셋째, 손으로 묶은 족보를 주면 못 본 물건 앞에서도 성적이 떨어지지 않는다 — 잔차든 합이든. 그리고 그 손 족보를 WordNet 족보로 바꿔도 잔차 공법은 그 미덕을 지킨다(0.94, 24.04). 합 공법은 훈련 중의 붕괴 탓에 검증·시험 모두에서 처진다.
Wordcraft의 형편(§4.6.3). 못 본 목표 개체로의 일반화를 보면(Figure 4.6), 무작위 임베딩을 쓸 때는 추상화가 일반화에 보탬이 된다. 그런데 무작위 임베딩을 GloVe로 갈아 끼우면 부류 추상화를 넘어서는 일반화가 나오고, 부류 추상화와 GloVe를 함께 써도 덤이 없다. 조합표의 결을 들여다보면 까닭이 보인다 — 이 고을에서 물건은 의미적 유사성에 따라 엮이는데, 그것은 부류보다 단어 임베딩이 더 잘 담아내는 정보다. 일반화의 이득은 없었으되, GloVe가 있는 자리에 추상화를 더하면 표본 효율은 좋아진다.
이 장은 공개 지식그래프에서 캐 온 부류 지식으로, 상식 게임에서 낱낱의 물건이 아니라 부류의 거동을 배울 수 있음을 보였다. 잡음이 섞인 형편에서도 에이전트가 그 부류 지식을 쓰도록 강제하려, 앙상블 학습에 기댄 잔차 정책 경사 갱신을 새로 제안했다. 캐 온 부류 구조가 환경의 요긴한 부류들을 어림잡아 맞히면 표본 효율과 못 본 물건으로의 일반화가 좋아진다. 불완전한 사전 지식이 주어진 다른 형편들, 그리고 부류를 넘어 지식그래프에 담긴 더 많은 의미 — 특히 환경과 부대껴서는 배우기 어려운 인과 관계 [Heindorf 2020] — 를 살려 쓰는 일이 장래의 몫이다.
끝으로 오늘의 물음을 피하지 않는다. 요즘 대형 언어모델 [Achiam 2023; Touvron 2023]은 상식 추론 벤치마크 다수에서 이미 인간 수준에 이르렀으니 [Talmor 2019], 상식을 지식그래프로 명시하여 들이는 것이 여전히 옳은 방향이냐는 의문이 인다. 그럼에도 지식그래프의 미덕은 남는다 — 신경 매개변수의 불투명함에 견주어, 해석 가능하고 구조화된 지식 표현이라는 점이다. 게다가 상식은 본디 말로 표현되니 사전학습 언어모델에 곧바로 증류될 수 있다. 그러나 과학 지식 [Fabregat 2018] 같은 다른 고을에서는 사정이 다르다 — 개념들을 명시적으로 잇는 이산적·관계적 구조가 그 정보를 더 자연스럽게 담아내니, 그런 고을에서는 지식그래프가 더 알맞은 그릇이다.