본문으로 건너뛰기

공정 개발: 베이즈 최적화가 요인 격자를 이긴다

📍 현재 위치: 2부 · 발견과 개발, 학습됨(Discovery & Development, Learned) — 7장. 지난 장은 클론들의 순위를 매겨 우리에게 승자를 — mAb-A(이 시리즈의 진행 중인 단클론 항체)를 만드는 CHO 세포주(중국 햄스터 난소 세포, 표준 항체-생산 숙주)를 — 넘겨주었습니다. 이제 그 세포주에는 공정이 필요합니다. 배지, 공급, 온도, pH. 고전적 개발은 좋은 설정을 찾기 위해 요인 격자(factorial grid)의 실험들을 걸어갑니다. 이 장은 그것들 중 훨씬 적은 수를 — 그것도 의도를 가지고 — 걷는 학습 방법에 관한 것입니다.

클론은 공정이 아닙니다. WCB-CHO-001의 세포주는 원리상 많은 양의 항체를 만들 수 있지만, 오직 그것이 한 번도 들어 본 적 없는 좁은 조건의 외피(envelope) 안에서만 그렇습니다. 어떤 공급 일정? 어떤 글루코스 설정값? 어떤 온도이며, 운전 도중에 그것을 이동시켜야 하는가? 공정 개발(process development, PD)은 그 외피를 찾는 탐색이며, 역사적으로 그 탐색은 실험 설계(design of experiments, DoE) — 흔히 완전 또는 부분 요인 설계나 중심합성 반응표면 설계로, 한 줌의 인자에 걸쳐 반응 표면을 지도화하는 구조화된 바이오리액터 운전 격자 — 였습니다. 격자는 원칙적이고 감사 가능하지만, 비싸기도 합니다. 단일 Ambr 또는 벤치 운전 하나가 과학자의 시간 몇 주와 병렬 반응기 슬롯 하나를 잡아먹고, 인자를 하나 더할 때마다 격자의 크기가 조합적으로 폭발합니다.

이 장은 PD에서 단연 가장 강력하고 가장 방어 가능한 기계학습 응용이 역가의 블랙박스 예측기가 아니라 탐색 전략가우스 과정(Gaussian process, GP) 위에 세워진 베이즈 최적화(Bayesian optimization, BO) — 라고 논합니다. BO는 반응 표면 전체를 지도화하려 하지 않습니다. 그것은 최적값이 어디에 있는지에 대한 확률적 믿음을 세우고, 매 단계에서 다음의 귀한 운전을 그 믿음이 가장 많이 배울 것이라 말하는 곳에 씁니다. 같은 목표를 두고, BO는 요인 격자가 필요로 하는 운전 수의 일부만으로 통상 더 나은 최적값에 도달하며 — 격자와 달리, 진행할수록 더 영리해집니다. 이 장의 실행 가능한 산출물이 그것을 정량적으로 만듭니다. 공유 시뮬레이터 위에서 BO는 25회 요인 격자의 최적값을 15회 운전으로 따라잡습니다.

쉽게 말하면

몇 번의 소나(sonar) 핑(ping)밖에 쓸 수 없는 상태로, 어둡고 굴곡진 호수에서 가장 깊은 지점을 찾는다고 상상해 보세요. 요인 DoE는 핑을 고정된 격자 위에 떨어뜨립니다 — 균등 간격으로, 미리 정해진 채, 무엇을 찾든 눈먼 채로. 베이즈 최적화는 핑 하나를 떨어뜨려 깊이를 보고, 호수 바닥이 아마 어디서 꺼질지 추측을 세운 다음, 다음 핑을 가장 유망한 지점으로 겨냥합니다 — "이미 깊어 보이는 곳으로 가라"와 "우리가 전혀 모르는 곳으로 가라" 사이에서 균형을 잡으며. 열두어 번의 핑 뒤에는 보통 격자가 쉰 번으로 찾은 것보다 더 깊은 구멍을 찾아냈는데, 첫 번째 이후의 모든 핑이 의도를 가지고 선택되었기 때문입니다. 가우스 과정은 호수 바닥에 대한 진행 중인 추측이고, 획득 함수(acquisition function)는 다음에 어디로 핑을 보낼지에 대한 규칙입니다.

이 장에서 다루는 내용

우리는 PD를 빠듯한 실험 예산 아래의 순차적 블랙박스 최적화로 틀 짓고, 그것을 조각조각 쌓아 올립니다. 공급과 공정 매개변수의 탐색 공간; 어디서나 평균 그리고 불확실성을 돌려주는 대리 모델(surrogate model)로서의 가우스 과정, 사후분포 방정식으로 써내며; 그 불확실성을 다음 실험으로 바꾸는 획득 함수(폐형의 기대 개선, 더하기 UCB와 PI); 역가가 제품 품질과 싸우고 그 답이 점이 아니라 파레토 전선인 다목적 경우; ML 보조 설계 공간과 BO가 어떻게 품질 설계 기반(Quality by Design, QbD)ICH Q8과 연결되는지; 루프를 물리적으로 실행 가능하게 만드는 고처리량 Ambr 자동화; 그리고 자율 자율주행 실험실(autonomous self-driving labs) 이 실제로 어디에 서 있는지에 대한 정직한 회계. 실행 가능한 산출물 examples/platform/ml/bayesopt_doe.py유가식 시뮬레이터(fed-batch simulator)를 상대로 글루코스/글루타민 공급 정책을 최적화하고, BO가 열두어 번의 시뮬레이션 운전 안에서 요인 격자를 추월하는 것을 지켜봅니다.

과제: 가혹한 예산 아래의 순차적 최적화

이 책의 학습 과제 대부분은 예측 — 특징이 주어지면 숫자를 추정하는 것 — 입니다. PD의 중심 과제는 다릅니다. 그것은 최적화입니다. 목적 f(x)(가령 14일째 역가)를 최대화하는 입력 설정 x*를 찾는 것인데, 여기서 f실험을 운전함으로써만 배울 수 있는 비싸고, 잡음이 섞이고, 블랙박스인 함수입니다. f를 미분할 수 없고, 백만 번 평가할 수 없으며, 각 평가는 시약과 반응기 슬롯과 분석가의 시간을 잡아먹는 두 주짜리 바이오리액터 운전입니다. 이것이 바로 BO가 발명된 체제이며, 그것은 바이오공정 PD에 거의 왜곡 없이 매핑됩니다. Biotechnology and Bioengineering의 2025/2026 튜토리얼 리뷰는 BO를 바이오공정의 순차적이고 비싸며 잡음 섞인 블랙박스 최적화를 위한 방법으로 확립하며, 고전적 DoE보다 훨씬 적은 운전으로 경쟁력 있는 최적값에 도달하고 기대 개선을 기본 획득으로 지명합니다 [1].

우리의 진행 중인 예제를 상대로 구체적으로 틀 지어 봅시다. 클론은 고정되어 있습니다(WCB-CHO-001 → mAb-A). 결정 변수는 작은 공정 설정 벡터입니다 — 우리 시뮬레이터에는 공급 정책(feed policy), 즉 공급일에 얼마만큼의 글루코스(일시 공급당 g/L — 한 번에 더해지는 하나의 이산 공급 용량)와 글루타민(밀리몰 농도인 mM — 일시 공급당)을 더할지입니다. 목적은 운전의 14일째 역가입니다(품질 제약은 곧 추가할 것입니다). 예산은 공정을 잠그기 전에 우리가 기꺼이 쓰려는 반응기 운전의 수입니다 — 실제 PD에서는 흔히 열에서 마흔, 우리의 시뮬레이션 시연에서는 스물 몇. BO가 답하는 질문은 "반응 표면 전체가 무엇인가"가 아니라 "예산이 다 떨어진 뒤 내가 본 최선의 운전이 가능한 한 좋아지도록, 다음에 어디서 운전하는가"입니다.

요인 DoE는 왜 여기서 고전할까요? 세 가지 이유가 있는데, 각각 우연이 아니라 구조적입니다. 첫째, 차원의 저주(curse of dimensionality). 다섯 인자에 걸친 3수준 완전 요인 설계는 3^5 = 243회 운전인데, 어떤 PD 팀도 감당할 수 없으므로 효과를 교락(confound, 별칭)시키는 부분 설계로 후퇴합니다. 격자를 줄이면 둘이 수학의 같은 열에 떨어지기 때문에, 주효과(main effect)(한 인자 자신의 단독 역가 영향)가 상호작용(interaction)(두 인자가 함께 작용하는 결합 영향)과 수학적으로 분간 불가능해집니다 — 그래서 측정된 단일 변화가 둘 중 어느 것 때문일 수도 있고, 글자 그대로 어느 것인지 분간할 수 없습니다. 둘째, 격자는 비적응적(non-adaptive) 입니다 — 첫 결과가 도착하기 전에 모든 점이 선택되므로, 명백히 가망 없는 구석에 떨어진 운전은 낭비되고, 3번째 운전에서 유망해 보인 영역으로 남은 예산을 돌릴 기제가 없습니다. 셋째, DoE는 통상 실제 바이오공정 최적값이 앉아 있는 날카로운 능선, 고원, 절벽을 표현할 수 없는 저차 다항식 반응 표면(선형 더하기 2원 상호작용 더하기 2차 곡률)을 적합합니다. 생물학이 매끄럽지 않은 곳에서 다항식은 매끄럽습니다. BO는 다항식을 데이터에 휘어지는 가우스 과정으로 대체하고, 고정 격자를 피드백 루프로 대체합니다.

근거

BO가 고전적 DoE보다 실질적으로 적은 실험으로 경쟁력 있는 최적값에 도달한다는 주장은 최근 동료심사 바이오공정 연구 전반에 걸쳐 뒷받침됩니다 — CHO 배지 설계를 위해 Ambr15 마이크로-바이오리액터에서 검증되고 공간 충전(space-filling) 설계와 정면으로 비교된 열역학 인식(thermodynamics-aware) BO [2]; 표준 DoE에 대해 추정된 것보다 3–30배 적은 실험으로 개선된 조성에 도달한 세포 배양 배지 개발용 반복적 BO 프레임워크 [3]; 그리고 2025/2026 바이오공정 공학에서의 BO 튜토리얼 리뷰 [1](모두 연구, 독립 동료심사). 벤더의 "더 적은 실험" 헤드라인(가령 40–80%)은 벤더 자체보고이며 이 장 뒤에서 그렇게 표시됩니다. 두 등급을 혼동하지 마세요.

가우스 과정: 표면에 대한 믿음, 정직한 오차 막대와 함께

BO의 심장은 대리 모델(surrogate model) — 비싼 함수를 대신하는 값싼 대역 — 입니다. 표준 선택은 가우스 과정이며, 그 이유는 그것의 단연 가장 유용한 성질입니다. GP는 탐색 공간의 모든 점에서 예측 평균뿐 아니라 보정된 불확실성을 돌려줍니다. 실험을 운전한 곳에서는 불확실성이 측정 잡음을 향해 무너지고, 어떤 데이터에서도 멀리 떨어진 곳에서는 사전분포를 향해 부풀어 오릅니다. 그 불확실성 장(field)이 BO로 하여금 어디서 탐색이 가치 있는지를 결정하게 하는 것입니다 — 다항식 적합은 잔차 분산을 주긴 하지만 정직한 "나는 이 구석을 한 번도 본 적이 없다" 신호는 주지 않습니다.

형식적으로, GP는 함수들 위에 분포를 놓습니다. 점들의 어떤 유한한 모음도, 평균 함수(mean function) m(x)(보통 중심화 후 0 또는 상수로 잡음)와 두 설정의 결과가 얼마나 비슷해야 하는지를 부호화하는 공분산(covariance) 또는 커널 함수(kernel function) k(x, x')가 다스리는 결합 가우스 분포를 가집니다. n개의 관측된 설정을 행렬 X에 모으고, 그들의 (잡음 섞인) 역가를 벡터 y에 모으며, Kk(x_i, x_j) 항을 가진 n×n 행렬로 두고, k_*를 새 후보 x와 관측점들 사이의 커널 값 벡터로 두며, σ_n²를 관측-잡음 분산으로 둡시다. 지금까지 관측된 운전들에 결합 가우스 분포를 조건화하면 폐형 사후분포 방정식이 나옵니다:

mean mu(x) = k_*^T (K + sigma_n^2 I)^-1 y
variance sigma2(x) = k(x, x) - k_*^T (K + sigma_n^2 I)^-1 k_*
  • 사후 평균(posterior mean) mu(x)x에서 역가에 대한 GP의 최선의 추측입니다 — 커널 유사도로 가중된 관측 역가들의 가중 평균;
  • 사후 분산(posterior variance) sigma2(x)는 그곳에서 얼마나 불확실한지입니다 — 관측점 근처에서는(k_*가 클 때) 줄어들고 모든 관측점에서 멀리 떨어진 곳에서는 커집니다.

역마 커널은 마테른(Matérn) 커널입니다(제곱지수/RBF 커널은 그 극한의 매끄러운 경우). 매끄러움 매개변수 ν = 2.5(즉 5/2, 코드가 쓰는 형태)인 마테른이 바이오공정의 기본값입니다. 그것은 가까운 설정이 비슷한 역가를 준다고 말하고, 최적화될 만큼은 미분 가능하지만 표면이 무한히 부드러운 척할 만큼 매끄럽지는 않으며, 각 축을 따라 유사도가 얼마나 빨리 감쇠하는지를 제어하는 차원별 길이 척도(length scale) ℓ_d를 지닙니다. 글루코스-공급 축의 짧은 길이 척도는 역가가 글루코스에 민감하다는 뜻이고, 긴 것은 그 손잡이가 거의 중요하지 않다는 뜻입니다. 길이 척도, 커널 진폭, 그리고 잡음 항 σ_n²은 추측되지 않습니다. 그것들은 관측된 운전들의 주변 가능도(marginal likelihood)("증거")를 최대화함으로써 적합됩니다 — 한 줌의 초매개변수를 가진 저차원 최적화로, 이것이 열두어 개의 데이터점만 가진 GP도 여전히 잘 보정될 수 있는 이유입니다. 배울 매개변수가 매우 적은데, 이는 정확히 학습 문제 장(learning-problem chapter)이 논한 소량-데이터 규율입니다. GP는 사실상 2권(Book 2)의 하이브리드 모델링 본능을 예측이 아니라 탐색에 적용한 것입니다. 커널이 매끄러움 사전분포이므로, 데이터가 할 일이 더 적습니다.

획득 함수: 불확실성을 다음 운전으로 바꾸기

대리 모델만으로는 실험을 고르지 못합니다. 획득 함수(acquisition function) 가 고릅니다. 그것은 모든 후보 설정을, 그것을 운전하는 것이 얼마나 유용한지로 채점한 다음, BO가 그 점수의 최대화자를 운전합니다. 모든 획득 함수는 두 충동의 어떤 균형입니다. 활용(exploitation)(사후 평균이 이미 높은 곳에서 운전)과 탐색(exploration)(사후 분산이 높은 곳에서 운전, 더 나은 영역을 놓치고 있을지 모르므로). 활용 쪽으로 끝까지 기울이면 BO는 가장 가까운 언덕을 올라 국소 최적값에서 멈추고, 탐색 쪽으로 끝까지 기울이면 공간 충전 격자처럼 흩뿌려져 결코 수렴하지 않습니다. 묘는 균형에 있으며, 좋은 획득 함수는 손으로 조율한 손잡이 없이 그것을 얻어냅니다.

가장 흔한 획득 함수는 기대 개선(Expected Improvement, EI) 입니다. f_best를 지금까지 관측된 최선의 역가(현직자(incumbent))라고 합시다. EI는 후보를, GP 사후분포 아래에서 그것이 f_best를 얼마나 개선할지의 기댓값으로 채점합니다:

EI(x) = E[ max(f(x) - f_best, 0) ]

x에서의 사후분포가 평균 mu(x)와 표준편차 sigma(x)를 가진 가우스이므로, 이 기댓값은 표준 정규 PDF phi와 CDF Phi로 구성된 폐형(closed form) 을 가집니다. z = (mu(x) - f_best - xi) / sigma(x)와 작은 탐색 여백 xi로:

EI(x) = (mu(x) - f_best - xi) * Phi(z) + sigma(x) * phi(z) if sigma(x) > 0
EI(x) = 0 if sigma(x) = 0

(실행 가능한 산출물은 표준 기본 탐색 여백 xi = 0을 쓰므로, 그 EI는 (mu - f_best)*Phi(z) + sigma*phi(z)로 줄어듭니다 — 아래 코드 블록의 형태입니다.) 두 항이 이야기 전부입니다. 첫째, (mu - f_best) * Phi(z)활용 항입니다 — 평균이 현직자보다 충분히 높을 때 큽니다. 둘째, sigma * phi(z)탐색 항입니다 — 불확실성이 높을 때, 평균이 그저 그렇더라도 큰데, 넓은 가우스의 상방 꼬리가 f_best 위로 비죽 나오기 때문입니다. 확신을 가지고 그저 그런 점(muf_best 아래, sigma가 작음)은 두 항 모두에서 거의 0으로 채점되고, BO는 그곳에 결코 운전을 낭비하지 않습니다. 다른 두 흔한 선택은 상부 신뢰 한계(Upper Confidence Bound, UCB) mu(x) + kappa * sigma(x)(탐색 가중을 캠페인에 걸쳐 어닐링(anneal)할 수 있는 명시적 손잡이 kappa로 만듦)와 개선 확률(Probability of Improvement, PI) Phi((mu(x) - f_best) / sigma(x))(더 탐욕적임 — 얼마나가 아니라 현직자를 이긴다는 것만 신경 쓰므로 덜 쓰임)입니다. EI는 조율 손잡이가 필요 없고 기본 상태로 잘 작동하기에 기본값입니다 [1].

그러면 루프는 다섯 줄의 논리입니다. (1) 지금까지의 모든 운전에 GP를 적합하고 주변 가능도로 그 초매개변수를 재적합한다; (2) 탐색 공간에 걸쳐 EI를 최대화한다 — GP와 EI가 해석적이므로 그 자체가 값싼 내부 최적화 — 하여 다음 설정을 고른다; (3) 그 실험을 운전한다 — 우리 데모에서는 유가식을 시뮬레이션한다; (4) (설정, 역가) 쌍을 이력에 덧붙인다; (5) 예산이 다 떨어질 때까지 반복한다. 비싼 단계는 (3)이고, 나머지 전부는 밀리초입니다. 그 비대칭 — 결정은 값싸고 평가는 비싸다 — 이 BO가 존재하는 이유 전부이며, 단일 반응기 운전 하나를 아끼려고 계산에 헤프게 구는(반복마다 수천 번의 EI 평가) 이유입니다.

공정 개발을 위한 베이즈 최적화 루프의 히어로 도해: 왼쪽에 과거 유가식 운전 몇 개를 공급-공격성 축에 대한 역가로 그린 작은 모음; 그것들을 관통해 그려진 청록색 가우스 과정 대리 곡선과 관측점에서는 좁고 그 사이에서는 넓은 음영 불확실성 띠; 그 아래에 상방 꼬리가 큰 미탐색 영역에서 정점을 이루는 초록색 기대 개선 곡선; 그 EI 정점에서 다음 설정을 선택하는 화살표; 그 설정이 새 역가 점을 돌려주는 남색 유가식 반응기 운전 상자(시뮬레이터)에 입력되고; 새 점을 대리 모델로 되접는 복귀 화살표로, 적합·선택·운전·갱신으로 라벨이 붙은 루프; 옆 패널은 균등 간격 점의 고정된 요인 격자를 최적값 근처에 모이는 적응적 BO 점들과 대비한다. 피드백 루프로서의 베이즈 최적화: 가우스 과정이 비싼 운전 몇 개를 정직한 오차 막대를 가진 믿음 표면으로 바꾸고, 기대 개선이 그 믿음이 보상이 가장 크다고 말하는 곳에 다음 운전을 쓰며, 새 결과가 표면을 날카롭게 한다 — 그래서 점들이 격자를 타일링하는 대신 최적값 근처에 모인다. 저자가 AI의 도움을 받아 직접 제작한 그림입니다.

시뮬레이터 위에 세우기: BO 대 요인 DoE

실행 가능한 산출물은 전체 시리즈가 공유하는 14일 유가식 CHO 시뮬레이터(14-day fed-batch CHO simulator)를 상대로 공급 정책을 최적화함으로써 논증을 구체적으로 만듭니다. 시뮬레이터는 락트산이 성장률을 억제하는 Monod-제한 성장, 나이와 암모니아로 구동되는 사멸 단계, 그리고 운전에 걸친 일시 공급을 적분합니다. 그 14일째 역가가 목적입니다. 우리는 두 매개변수 공급 탐색 공간 — 글루코스-공급량(일시 공급당 g/L)과 글루타민-공급량(일시 공급당 mM) — 을 노출하고, BO에게 최종 역가를 최대화하라고 요청합니다. 목적은 매개변수화된 기계론적 모델 model_fedbatch.py의 완전한 유가식 운전 하나입니다. objective(x)의 각 호출이 하나의 "실험"입니다.

실험은 정면 대결입니다. 공급 조건의 5×5 요인 격자(25회 운전) 대 기대 개선을 동반한 GP-BO, 5회 무작위 운전으로 씨를 뿌린 다음 10회 획득-선택 운전(총 15회). 우리는 둘 다 동일한 결정론적 목적을 동일한 공급 경계에 걸쳐 운전하므로 비교가 공정합니다. 고정 시드(0)는 BO의 다섯 번의 무작위 씨앗 운전만 고정하여 캠페인 전체를 정확히 재현 가능하게 만듭니다. 하니스는 BO가 엄격히 더 적은 운전을 쓰면서 격자 최적값에 0.1 g/L 이내로 도달함을 단언(assert)합니다 — 그래서 BO가 격자를 이기기를 멈추면 시연이 시끄럽게 실패합니다.

# examples/platform/ml/bayesopt_doe.py — GP-BO over the fed-batch feed policy.
import numpy as np
from scipy.stats import norm
from sklearn.gaussian_process import GaussianProcessRegressor
from sklearn.gaussian_process.kernels import ConstantKernel, Matern, WhiteKernel
import model_fedbatch as mfb

# search space: glucose-feed (g/L per bolus), glutamine-feed (mM per bolus)
BOUNDS = np.array([[0.8, 3.6], [0.5, 2.8]])

def objective(x) -> float:
"""One fed-batch run -> final titer (the expensive evaluation)."""
p = mfb.Params(feed_glc=float(x[0]), feed_gln=float(x[1]))
return mfb.simulate(p, seed=0).summary["final_titer_g_L"]

def _ei(mu, sigma, best): # Expected Improvement, closed form
sigma = np.maximum(sigma, 1e-9)
z = (mu - best) / sigma
return (mu - best) * norm.cdf(z) + sigma * norm.pdf(z)

def bayes_opt(n_init=5, n_iter=10, seed=0):
rng = np.random.default_rng(seed)
X = rng.uniform(BOUNDS[:, 0], BOUNDS[:, 1], size=(n_init, 2)) # 1. seed runs
y = np.array([objective(x) for x in X])
gx, gy = np.meshgrid(np.linspace(*BOUNDS[0], 40), np.linspace(*BOUNDS[1], 40))
cand = np.column_stack([gx.ravel(), gy.ravel()]) # dense EI mesh
kernel = ConstantKernel(1.0) * Matern(length_scale=[1.0, 1.0], nu=2.5) + WhiteKernel(1e-3)
for _ in range(n_iter):
gp = GaussianProcessRegressor(kernel=kernel, normalize_y=True,
n_restarts_optimizer=2, random_state=seed)
gp.fit(X, y) # 2. fit surrogate
mu, sigma = gp.predict(cand, return_std=True)
x_next = cand[_ei(mu, sigma, y.max()).argmax()] # 3. maximize EI
X = np.vstack([X, x_next]); y = np.append(y, objective(x_next)) # 4. run + append
return X, y

def grid_doe(n=5): # 5x5 factorial baseline = 25 runs
gx, gy = np.meshgrid(np.linspace(*BOUNDS[0], n), np.linspace(*BOUNDS[1], n))
pts = np.column_stack([gx.ravel(), gy.ravel()])
return pts, np.array([objective(x) for x in pts])

실행하면 이 장이 다루는 패턴을 출력합니다(RUN_OUTPUTS.txt에서 그대로; 숫자는 실제 공장이 아니라 시뮬레이터의 것입니다):

Single-objective BO of feed policy (objective = final titer g/L)
factorial DoE : best 6.246 g/L in 25 runs
Bayesian opt : best 6.269 g/L in 15 runs at feed_glc=3.17 g/L, feed_gln=2.80 mM
BO matched/beat the grid optimum with 10 fewer runs.

헤드라인은 절대 역가가 아니라 모양입니다. BO는 15회 운전 — 10회 적게 — 을 써서 25회 요인 격자의 최선(6.269 대 6.246 g/L)을 따라잡고 약간 이겼으며, 두 경계 모두의 높은 끝 근처인 공급-공격적 구석(feed_glc=3.17 g/L, feed_gln=2.80 mM)에서 최적값을 찾아냈는데, 이는 기계론적 모델의 민감도 분석이 가리킬 바로 그곳입니다. 5회 무작위 씨앗 뒤로 모든 BO 운전이 의도를 가지고 배치되었고, 대리 모델이 능선이 어디인지 배워 가면서 그 배치들이 그 구석을 향해 이동했습니다. main()의 두 단언 — BO가 격자의 0.1 g/L 이내로 들어오고 엄격히 더 적은 운전을 쓴다는 것 — 은 이 장의 경제적 주장을 회귀 시험으로 바꿉니다. 라이브러리 업그레이드가 최적화기를 열화시키면, 데모는 조용히 오도하는 대신 실패합니다. 그것이 PD에서 BO를 위한 논증 전부이며, 당신이 실행할 수 있는 코드로 재현됩니다.

최적값이 구석에 앉아 있다는 것은 우리가 공급 경계를 어디에 그었는지의 산물입니다. 실제 CHO 유가식은 공급에 대해 비단조적입니다 — 글루코스나 글루타민을 너무 멀리 밀어붙이면 축적되는 락트산, 암모니아, 삼투압(농축 공급이 끌어올리는 용해된 염-및-용질 부하)이 성장을 억제하고 품질을 침식하므로, 참 최적값은 보통 가장자리가 아니라 내부 능선입니다(정확히 저차 DoE 다항식이 매끄럽게 뭉개고 적응적 GP가 휘어서 찾아내는 곡선 모양). 정직한 주의 하나 더: 시뮬레이터의 목적은 결정론적이고 잡음이 없으므로, GP의 WhiteKernel 잡음 항이 여기서 0을 향해 무너집니다 — 그것은 탐색-효율 논증을 깔끔하게 격리하지만, GP가 능선으로 오인해서는 안 되는 분석 잡음과 운전-간 떨림을 흡수하느라 잡음 항이 진짜로 일을 하는 실제 PD보다 너그럽습니다.

다목적 BO: 역가가 품질과 싸울 때

실제 PD는 결코 역가만 최적화하지 않습니다. 공격적인 역가 추구는 두 가지 별개의 손상을 줄 수 있습니다. (a) 핵심 품질 특성(critical quality attributes, CQA)출하 패널(release panel)이 판단할 측정된 제품-품질 속성 — 인 글리코실화(glycosylation), 응집체(고분자량 화학종), 전하 변이체 같은 것을 직접 침식할 수 있습니다. 그리고 (b) 배양물을 용해(lysis, 세포가 터져 열림)로 몰아붙여 숙주세포 단백질(host-cell protein, HCP) 같은 공정 불순물을 높일 수 있는데, 이는 공급-대-응집체 경로가 아니라 사세포 분율과 암모니아로 구동되는 정제 부담입니다. 골든 배치(공정이 그 품질을 재현하려는 기준 운전) BATCH-2026-001은 기준선을 98.611% 단량체(monomer)(제품 중 온전하고 응집되지 않은 항체의 비율)로 설정합니다. 단량체나 HCP가 규격을 벗어나는 구석으로 역가를 쫓는 공정은 더 나은 공정이 아니라 일어나기를 기다리는 회수(recall)입니다 — 그리고 BATCH-2026-004를 침몰시킨 것은 두 번째 경로였으니, 그것은 규격 최댓값 100에 대해 숙주세포 단백질 128 ng/mg 으로 규격 이탈(out of specification, OOS) 이 났습니다. 공격적인 역가-전용 최적화기가 구조적으로 빠지기 쉬운 종류의 품질 실패입니다. 따라서 정직한 목적은 벡터입니다. 역가를 최대화하고 그리고 단량체 순도를 높게 유지하고 그리고 글리코폼(glycoform)을 규격 내로 유지하기. 이 목적들은 충돌하므로 단일 최선의 점이 없습니다 — 파레토 전선(Pareto front), 즉 다른 목적을 희생하지 않고는 한 목적을 개선할 수 없는 설정들의 집합이 있습니다.

다목적 베이즈 최적화(Multi-objective Bayesian optimization, MOBO) 는 그 전선을 직접 탐색합니다. 깔끔한 구성은 목적당 별도의 GP를 적합하고(하나는 역가에, 하나는 단량체 %에, 하나는 글리코폼마다) 단일 목적 EI를 다목적 획득 함수로 대체합니다 — 가장 흔하게는 기대 초부피 개선(Expected Hypervolume Improvement, EHVI) 으로, 후보를 그것이 현재 파레토 전선에 의해 지배되는 목적-공간의 초부피(hypervolume)(전선과 기준점 사이의 부피)를 얼마나 키울지로 채점합니다. 대안은 목적별 GP를 운전하고 그들의 예측 평균을 NSGA-II 같은 진화적 전선 탐색기로 탐색하는 것입니다. 출력은 권고가 아니라 메뉴입니다. 공정 설정의 파레토 집합으로, 각각이 수율과 품질 사이의 서로 다른 방어 가능한 절충이며, 거기서 팀이 목표 제품 프로파일(target product profile)에 따라 고릅니다.

근거

2025년 ETH Zurich + Novo Nordisk 연구는 다목적 BO(목적별 GP 더하기 NSGA-II 전선 탐색, 오픈소스 ProcessOptimizer 위에 세움)를 사용해 단클론 항체 제형(formulation) 을 개발하여, 33회 실험으로 고도로 최적화된 조건을 식별하고 확산-상호작용 매개변수 kD9.1에서 48.6 mL/g 으로 개선했습니다 — 연구, 독립 동료심사 [4]. 배양 측면에서는, 2025년 연구가 향상된 역가 그리고 글리코실화를 위한 ML 안내 CHO 바이오공정 및 배지 최적화를 명시적으로 표적했고(역가 예측 R^2 ~0.93, 글리칸 지표 R^2 ~0.79–0.95), 능동 학습 단계가 역가를 높이는 한편 만노실화(mannosylation)를 10% 깎는 조성을 제안했습니다 — 이 절이 기술하는 역가-대-품질 절충입니다 — 연구, 독립 동료심사 [5]. 역가-대-글리코실화를 위한 MOBO는 시연되었지만 아직 일상적 GMP 관행은 아닙니다.

여기가 또한 BO가 "그저 최적화기"이기를 멈추고 설계 공간(design-space) 도구가 되기 시작하는 곳입니다 — 이것이 그것을 품질 조직에 받아들일 만하게 만드는 것입니다.

한 번에 두 목적: 파레토 전선을 실행 가능하게

위의 충돌은 수사가 아니라 시뮬레이터에 박힌 기하입니다. 역가를 밀어붙인다는 것은 글루코스-풍부 공급을 뜻하고, 이는 더 많은 락트산과 암모니아를 몰아가며, 기계론적 모델은 이를 더 낮은 단량체(더 많은 응집체)로 바꿉니다. 역가에서 이기는 공급 정책은 품질에서 집니다. EHVI를 동반한 MOBO는 그 절충을 직접 지도화합니다. 모음은 목적당 GP 하나(역가, 단량체 %)를 적합하고, 조밀한 후보 격자(여기서는 20×20으로, 각 EHVI 평가가 결합 사후분포를 몬테카를로 표집하므로 단일 목적의 40×40보다 거칩니다)에 걸쳐 몬테카를로 EHVI를 최대화하며, 그 결과를 같은 초부피로 채점된 5×5 요인 격자와 겨룹니다:

Multi-objective BO (maximize titer AND monomer %) via EHVI
factorial DoE : hypervolume 2.338 in 25 runs
EHVI Bayesian : hypervolume 2.338 in 16 runs (13 Pareto-optimal feed policies)
Pareto front (titer g/L, monomer %):
titer=6.25 monomer=98.09
titer=6.03 monomer=98.23
titer=5.99 monomer=98.26
titer=5.92 monomer=98.27
titer=5.68 monomer=98.36
titer=5.48 monomer=98.40
titer=5.42 monomer=98.41
titer=5.26 monomer=98.49
titer=5.15 monomer=98.51
titer=5.00 monomer=98.59
titer=4.69 monomer=98.64
titer=4.68 monomer=98.64
titer=4.65 monomer=98.64
EHVI covered >= the grid's trade-off surface with 9 fewer runs.

정직하게 읽으세요. EHVI는 요인 격자의 절충 표면을 따라잡았으며 — 어느 쪽이든 초부피 2.3389회 적은 운전(16 대 25)으로 그렇게 했고, 긴장 전체에 걸치는 13개의 파레토-최적 공급 정책을 되찾았습니다. 한쪽 끝의 고-역가, 저-단량체 정책(역가 6.25, 단량체 98.09)에서 다른 쪽 끝의 고-단량체, 저-역가 정책(역가 4.65, 단량체 98.64)까지, 그 사이에 열한 개의 방어 가능한 절충과 함께. 사실 전선 대부분은 골든 배치의 98.611% 단량체 기준선 아래에 앉아 있고 — 고-단량체 끝만이 그것을 통과합니다 — 그래서 그 사이의 열한 개 절충은 연구할 절충점으로 방어 가능하지, 출하 준비된 공정으로 방어 가능한 것은 아닙니다. 모델이 하지 않는 것에 주목하세요. 그것은 결코 최선의 정책을 명명하지 않습니다. 열셋 중의 선택은 공정 과학자의 것인데, 오직 그들만이 품질 목표를 쥐고 있기 때문입니다 — 골든 배치의 98.611% 단량체를 통과해야 하는 프로그램은 전선의 고-단량체 끝으로 떠밀리고 그 대가를 역가로 치르며, 품질 여유가 있는 프로그램은 반대 방향으로 움직일 수 있습니다. 모델은 절충을 지도화하고, 절충점을 고르지는 않습니다.

점에서 설계 공간으로: BO가 QbD 및 ICH Q8을 만나다

규제 기관은 당신의 단일 최선의 설정을 원하지 않습니다. ICH Q8(R2) 에 성문화된 품질 설계 기반(Quality by Design, QbD) 아래에서, 그들은 설계 공간(design space) — "품질 보증을 제공한다고 시연된 입력 변수와 공정 매개변수의 다차원 조합 및 상호작용"으로 그대로 정의되며, 그 안에서는 변경 신고 없이 움직일 수 있는 영역 — 을 원합니다 [6]. 고전적으로 설계 공간은 예측 반응이 규격을 통과하는 등고선을 그려 DoE의 반응 표면에서 깎아 냅니다. 학습 버전은 그 결정론적 표면을 확률적 모델로 대체하고, 설계 공간을 모든 CQA를 동시에 충족할 사후 예측 확률(posterior predictive probability) 이 선택된 임계값을 넘는 영역으로 보고합니다 — 베이즈 확률적 설계 공간(Bayesian probabilistic design space), Peterson이 2008년에 도입하고 [7] Bano와 동료들이 2018년에 PLS 잠재변수 모델과 사후-예측 기준으로 확장한 구성입니다 [8].

BO가 세우는 GP가 바로 그런 모델입니다. 그것의 사후분포는 모든 설정에서 각 CQA에 대한 예측 평균과 보정된 불확실성을 줍니다 — 정확히 "이 설정이 통과할 확률"을 계산할 재료입니다. 구체적으로, CQA별 GP로 각 가우스 사후분포를 그 수용 구간에 걸쳐 적분하고 (독립 아래, 또는 상관 아래의 결합 모델로) 곱함으로써 P(all CQAs in spec | x)를 평가할 수 있습니다 — 그런 다음 가령 0.95에서 임계화하여, 불확실성을 다항식의 잔차 안에 숨기는 대신 명시적으로 만든 채 설계 공간 경계를 그립니다. 그래서 최적값을 찾은 바로 그 기계가 그 주변의 안전 영역을 기술하는 데 재사용될 수 있습니다. 그 이중 사용이 BO가 QbD와 그토록 잘 맞는 이유입니다. 그것은 하나의 적합된 모델로부터, 개발 과학자에게는 최적화기이고 규제 신고에는 설계 공간 생성기입니다. 그 연결은 4권의 온톨로지(Book 4's ontology)로 곧장 이어지는데, 거기서 bp:FeedRate bp:affectsQuality bp:MonomerPct-CQA는 확률적 설계 공간이 정량화하는 바로 그 유형-수준 간선(edge)입니다 — BO가 그 간선이 필요로 하는 근거와 수치 범위를 공급합니다.

여기에 주의가 하나 속합니다. GP의 불확실성은 그 커널과 그 데이터만큼만 정직합니다. 몇 차원에 걸쳐 열두어 개의 운전으로는, 데이터에서 먼 사후분포는 측정의 의상을 입은 사전 가정이며, 거기서 그린 확률적 설계 공간은 실제보다 더 권위 있어 보일 수 있습니다. 검증 장(validation chapter)과 FDA의 모델-신뢰성 프레임워크는 둘 다, 설계 공간의 주장이 무언가를 다스리기 전에 보류된 확인 운전(confirmation runs) 에 대해 점검되어야 한다고 고집합니다 — 모델이 영역을 제안하고, 확인 운전이 그것을 비준합니다. 그리고 마이크로-바이오리액터 규모에서 시연된 설계 공간이 자동으로 제조-규모 설계 공간이 되는 것은 아닙니다. 규모 의존적 구배(혼합, kLa, CO2 스트리핑, 전단)가 실패의 가장자리를 옮길 수 있으므로, 확인 운전은 개발 규모에서 보류된 점들만이 아니라 의도된 규모를 포함해야 합니다(ICH Q8/Q11은 설계 공간이 규모와 장비를 설명할 것을 기대합니다).

루프를 떠받치는 것: GP 학습 데이터 아래의 온톨로지

bp:FeedRate bp:affectsQuality bp:MonomerPct-CQA 간선은 더 깊은 의존성의 보이는 끝일 뿐입니다. BO 루프는 대리 모델로 되접는 행만큼만 신뢰할 수 있고, 온톨로지(ontology)(도메인의 유형과 관계를 형식적이고 기계 판독 가능하게 적은 어휘)와 그 위에 세운 지식 그래프(knowledge graph) 가 그 행을 신뢰할 수 있고 FAIR(Findable, Accessible, Interoperable, Reusable)하게 만드는 것입니다. 그 의존성은 네 갈래로 흐르며, 각각 4권에 접지됩니다.

첫째, 의미적으로 접지된 특징(semantically-grounded feature). GP의 objective(x)는 역가를 돌려주고, 더 풍부한 루프의 제약 점검은 CQA를 읽습니다 — 그러나 실제 공장에서 그 숫자들은 깨지기 쉽고 공장-국소적인 열 이름 아래 LIMS와 히스토리언에서 도착합니다. 특징을 그 온톨로지 IRI(Internationalized Resource Identifier — 그래프에서 사물의 전역적이고 모호하지 않은 이름)로, 즉 temp_reactor 같은 문자열이 아니라 로트에 매달린 bp:monomerPct로 끌어오는 것이, 조용한 열-이름 불일치가 대리 모델을 오염시키지 않은 채 같은 BO 코드가 두 사이트의 데이터를 상대로 돌게 하는 것입니다. 식별자-와-단위 장(identifiers-and-units chapter)이 일시 공급당 g/L로 읽힌 공급이 mM 단위의 것과 결코 실수로 평균 내어지지 않는 이유입니다.

둘째, SHACL이 출하 로트만이 아니라 학습 집합을 게이트합니다. 로트가 출하될 수 있는지 — 모든 필수 CQA가 존재하고, 단일하며, 범위 안인지 — 를 결정하는 바로 그 닫힌 세계 SHACL(Shapes Constraint Language) 셰이프를, GP가 막 섭취하려는 후보 운전에 겨누면, 빠진 결과나 누락된 단위를 가진 데이터셋을 단 한 행이 gp.fit에 닿기 전에 거절합니다. 쓰레기 행은 다항식보다 GP를 더 빨리 오염시키므로(대리 모델은 그것을 단단한 관측으로 신뢰합니다), 출하-게이트 셰이프가 학습-데이터 게이트로 이중 임무를 하는 것이 바로 이 루프가 필요로 하는 가드입니다.

셋째, 계보가 그룹화 키입니다. BO가 관련 분자나 관련 규모의 캠페인으로부터 웜스타트할 때(아래의 전이-학습 수), 그것이 모으는 운전은 독립적이지 않습니다. BATCH-2026-001 조상을 공유하는 두 결과는 거의 중복인 형제이고, 행-무작위 분할로 검증된 대리 모델은 화려해 보이지만 아무것에도 일반화하지 못합니다. bp:derivedFrom 척추 — 그래프 안의 PROV-O(prov:wasDerivedFrom) 계보 간선 — 가 한 번에 캠페인 하나를 통째로 떼어 두는 leave-one-batch-out 검증의 그룹화 키이며, 이것이 "이 사전분포가 진정으로 새 배치에서 도움이 되었을까"를 묻는 유일하게 정직한 방법입니다.

넷째, BFO가 측정을 운전과 구별되게 유지합니다. 역가 측정값(지속체(continuant) — 지속하며 질을 지니는 것)은 그것을 만든 유가식 운전(발생체(occurrent) — 일어났다가 끝나는 공정)과, 그리고 용기 BR-101과 다른 노드입니다. "결과"를 "운전"으로 뭉뚱그리면 재사용된 반응기에 걸쳐 학습된 대리 모델이 한 운전의 사실을 다른 운전으로 물려받게 됩니다 — 정확히 상위-척추 지속체/발생체 분리(upper-spine continuant/occurrent split)가 막으려 존재하는 그 모델링 오류입니다. 이 가운데 어느 것도 장식이 아닙니다. 추론되고 셰이프로 검증된 그래프가 모델이 대조되는 그라운드 트루스이지 그 반대가 아니며 — 확률적 설계 공간은 GP가 보도록 허락된 타입 부여되고 단위 점검되며 계보로 그룹화된 데이터만큼만 방어 가능합니다.

베이즈 최적화 한 반복의 해부

시리즈의 서명은 기록 하나를 분해하는 것입니다. BO에서 기록은 배치도 예측도 아닙니다 — 그것은 루프의 한 반복, 전체 운전 이력을 단일하게 선택된 실험으로 바꾸는 단위입니다. 그것을 펼치면 이 장의 논리가 필드(field)로 나열됩니다.

베이즈 최적화 한 반복을 펼치는 해부 신분증 카드: mAb-A를 위한 공급-정책 캠페인의 반복 8을 명명하는 남색 헤더; 지금까지의 운전 이력을 짝지어진 설정과 역가로 나열하는 입력 블록; 적합된 가우스 과정을 그 마테른 커널, 차원별 적합된 길이 척도, 잡음 항과 함께 보여 주는 청록색 대리 블록; 기대 개선 함수, 현직 최선 역가 f-별표, 그리고 그 예측 평균과 불확실성을 동반한 EI-최대화 후보 설정을 담은 초록색 획득 블록; 운전할 다음 실험(공급-정책 값 feed_glc, feed_gln)과 락트산이 띠 안에 머무른다는 제약 점검을 명명하는 황색 결정 블록; 무작위 시드, 획득 유형 EI, 소비된 예산, 그리고 새 역가를 돌려줄 시뮬레이터 운전으로의 링크를 기록하는 보라색 출처(provenance) 블록; 그 반복이 이력에 한 행을 덧붙이고 루프가 반복됨을 짚는 푸터. 완전히 펼친 BO 한 반복: 들어오는 운전 이력, 그 커널과 길이 척도를 가진 적합된 가우스 과정, 후보들에 걸친 기대 개선 점수, 그 예측 평균과 불확실성 및 제약 점검을 동반한 선택된 다음 실험, 그리고 결정을 감사 가능하고 재현 가능하게 만드는 출처 — 시드, 획득 유형, 예산.

카드를 위에서 아래로 읽으세요. 각 필드는 검사 가능하게 만들어진 알고리즘의 한 줄입니다.

  • 헤더 — 이것이 어느 반복인지. mAb-A를 위한 공급-정책 캠페인의 반복 8. 인덱스가 중요한데 BO의 행동이 비정상(non-stationary)이기 때문입니다 — 초기 반복은 탐색하고, 후기 반복은 활용하며, 반복 2에서 제안된 같은 설정과 반복 12에서 제안된 것은 다른 것을 뜻합니다.
  • 입력 — 전체 이력. 가장 최근뿐 아니라 지금까지 운전된 모든 (설정, 역가) 쌍. BO는 일회성 예측기가 아닌 방식으로 상태 보유적(stateful) 입니다. 다음 결정은 GP 사후분포를 통해 모든 선행 결과에 조건화됩니다. 한 행을 빼면 대리 모델, EI 표면, 선택된 실험이 모두 바뀝니다.
  • 대리 — 적합된 GP. 커널 족(마테른 ν = 2.5), 차원별 적합된 길이 척도(글루코스-공급 축의 짧은 길이 척도는 역가가 거기에 민감하다는 뜻 — 모델이 어느 손잡이가 중요한지 배웠고, 이는 민감도 보고서로 직접 읽힘), 커널 진폭, 그리고 GP가 센서 떨림과 분석 잡음을 신호인 양 보간하지 않게 하는 잡음 항(WhiteKernel). 이 초매개변수들은 반복마다 주변 가능도로 재적합되므로, 그 필드는 상수가 아니라 스냅숏입니다.
  • 획득 — EI 계산. 현직 최선 f_best, 조밀한 후보 격자에 걸쳐 평가된 EI 표면(데모에서 40×40 = 1,600점; 실제로는 수천), 그리고 argmax — EI가 운전할 가치가 가장 크다고 말하는 단일 설정으로, 과학자가 그것이 선택되었는지 볼 수 있도록 그 예측 평균과 불확실성과 함께 보고됩니다. 높은 평균(활용), 높은 분산(탐색), 또는 둘 다. 높은-분산, 보통-평균 선택을 보는 검토자는 BO가 탐색 중임을 알고, 높은-평균, 낮은-분산 선택은 BO가 좁혀 들어가는 것입니다.
  • 결정 — 운전할 실험. 구체적 공급-정책 값(feed_glc, feed_gln, 그리고 더 풍부한 탐색에서는 온도-이동 플래그), 더하기 — 제약 변형에서는 — 후보가 락트산을 띠 안에 유지한다는 제약 점검으로, 그래서 상용 BO는 실제 공정이 거부할 설정을 권고할 수 없습니다. 데모의 최적화기는 제약 없음(품질 울타리 없는 EI argmax)이지만, 바로 여기가 그 울타리가 속하는 곳입니다 — 그래서 최적화기는 배양물을 굶겨 "이기는" 데 자유롭지 않습니다.
  • 출처 — 그것을 감사 가능하게 만드는 것. 무작위 시드, 획득 유형(EI), 소비된 예산(runs used / budget), 그리고 새 역가를 돌려줄 시뮬레이터(또는 LIMS/히스토리언) 운전으로의 링크. 이것이 MLOps 장(MLOps chapter)이 개발 결정을 건드리는 어떤 모델에든 요구하는 규율입니다. 그 반복은 정확히 재현 가능하며(같은 시드, 같은 이력, 같은 선택) 모든 필드가 감사에서 재생될 수 있습니다.
  • 푸터 — 되접기. 돌려받은 역가가 이력에 한 행을 덧붙이고 루프가 대리 단계에서 반복됩니다.

기록은 검사 가능하게 만들어진 루프입니다. 다음 실험에 관한 어떤 것도 임의적이지 않고, 모든 필드가 추적될 수 있습니다.

고처리량 자동화: Ambr가 루프를 물리적으로 실행 가능하게 만든다

BO의 루프는 가장 느린 단계 — 실험 운전 — 만큼만 빠릅니다. 단일 벤치 운전마다 한 번에 하나씩 두 주를 기다리는 루프는 수학적으로 우아하고 운영상 가망 없습니다. 두 주씩의 순차 운전 15회는 반년이 넘습니다. PD에서 BO를 실용적으로 만드는 것은 고처리량 마이크로-바이오리액터 자동화, 무엇보다 자동 액체 취급, 샘플링, 공급을 동반한 Ambr(automated micro-bioreactor) 시스템 — Ambr 15(대략 10–15 mL의 24–48개 용기)과 Ambr 250(대략 100–250 mL의 24–48개 용기) — 입니다. 이제 BO "반복"은 설정의 배치(batch) — 한 번에 24개 — 를 제안하고, 그것들을 병렬로 운전하며, 24개 결과 전부를 대리 모델로 되접어, 1년의 순차 운전을 몇 차례의 병렬 라운드로 무너뜨릴 수 있습니다. 배치(병렬) BO 획득 함수, 즉 q-확장인 q-EI와 q-EHVI가 바로 이를 위해 설계되었습니다. 단일 EI 최대화자의 q개 복제가 아니라 q개의 다양하고, 결합적으로 정보적인 설정을 골라, 병렬 슬롯이 거의 중복인 운전에 낭비되지 않게 합니다 — 결합 획득이 배치 안의 중복을 명시적으로 벌합니다.

이것이 가장 강력한 실제 시연들이 쓰는 구성입니다. 배지 설계용 열역학 인식 BO는 Ambr15 마이크로-바이오리액터에서 공간 충전 베이스라인을 상대로 검증되었습니다 [2]. 최근 자율주행(self-driving) 관류(perfusion)-개발 연구(DataHow, Sartorius, Merck KGaA / Ares Trading)는 인지 디지털 트윈(cognitive digital twin)(단계적 가우스-과정 대리를 가진 하이브리드 기계론-플러스-데이터 모델)을 동반한 베이즈 최적 실험 설계를 24개 병렬 Ambr250 미니-바이오리액터에 걸쳐 27일 관류 배양 동안 운전하며, 세포주 간에 학습을 전이했습니다 [9]. 그 짝짓기가 요점입니다. BO가 두뇌(다음에 어디서 운전할지)를 공급하고, Ambr가 (한 번에 24개 운전)을 공급하며, 2권과 3권의 히스토리언과 맥락화(contextualization)기억을 공급합니다 — 그래서 각 운전의 결과가 대리 모델이 신뢰할 수 있는 깨끗하고 귀속 가능한 행으로 떨어집니다(쓰레기 행은 다항식보다 GP를 더 빨리 오염시킵니다). 그 기억은 표준화되어야만 신뢰할 수 있습니다. 각 Ambr 운전의 설정값과 결과가 ISA-95(IEC 62264) 장비-및-물질 모델에 맞춰 떨어져 대리 모델이 어느 용기, 어떤 종류의 측정이 한 숫자를 만들었는지 알게 되고, OPC UA(기기와 히스토리언 사이에서 태그된 측정값을 나르는 벤더-중립 프로토콜)를 거쳐 도착하며, B2MML(Business-to-Manufacturing Markup Language, ISA-95의 XML 형태) 배치 기록으로 교환됩니다 — 각 결과를 그것을 만든 운전과 분석가로 되묶는 PROV-O 출처 간선(prov:wasGeneratedBy)과 함께, 그래서 BO 이력이 단지 (설정, 역가) 쌍의 더미가 아니라 감사 가능해집니다(2권의 데이터 그림자(data-shadow)의미적 상호운용성(semantic-interoperability) 장들이 이 배관이 세워지는 곳입니다). 정직한 주의는 2권이 짚는 그것입니다. 포유류 세포 바이오리액터의 정보 모델을 표준화하는 OPC UA 컴패니언 사양(Companion Specification) 이 아직 존재하지 않으므로 의미론은 여전히 공장마다 다릅니다 — 바로 그래서 위의 온톨로지 계층이 화해를 합니다. 인라인 라만을 Ambr에 개조 장착하는 것 — Sartorius의 BioPAT Spectro, BIOSTAT STR로의 모델 전이를 위한 표준화된 광학 인터페이스를 동반함 — 은 측정 간극의 일부를 닫아, 오프라인 분석을 기다리는 대신 목적을 더 일찍 읽습니다 [10](통합 및 효율 주장에 대해 벤더 자체보고).

미해결 과제: 콜드스타트, 전이성, 그리고 폐루프 신뢰

BO의 약점은 이 책 전체를 괴롭히는 바로 그 소량-데이터 천장이며, 루프의 시작에서 날카로워집니다. 콜드스타트(cold start) 가 급성입니다. 선행 운전이 0개일 때 GP는 순수 사전분포이고, 그 첫 한 줌의 제안은 공간 충전 추측보다 거의 나을 게 없습니다 — 우리 자신의 데모에서 BO는 획득 함수가 작용할 무언가를 갖기 전에 5회 씨앗 운전을 씁니다. BO는 대리 모델이 휘어질 데이터를 가진 뒤에야 그 이점을 얻으므로, 서너 번의 운전 예산에서는 영리한 고정 설계에 질 수 있습니다. 빈약한 커널 선택(잘못된 매끄러움, 잘못된 길이-척도 사전분포)이나 잘못 스케일링된 탐색 공간(0–1 플래그를 정규화 없이 0–100 설정값과 섞기)은 첫 여러 반복 동안 그것을 격자보다 못하게 남겨 둘 수 있고, 그 실패는 조용합니다 — GP는 기꺼이 확신에 찬 헛소리를 보고할 것입니다. 표준 완화책은 정보적 사전분포(GP에 기계론적 모델의 예측으로 씨를 뿌려 — 하이브리드(hybrid) 수 — 사전 평균이 평평하지 않게 함)와 전이 학습(transfer learning)(관련 분자나 관련 규모의 캠페인으로부터 웜스타트(warm-start))입니다. 그러나 여기에 이 분야의 문서화된 어려운 문제가 도사립니다. 살아 있는 시스템에서 운전-간 변동성이 전이성을 심하게 손상시키므로, 한 세포주나 한 규모에서 배운 대리 모델이 다음에서 능동적으로 오도할 수 있고, 확신에 찬 웜스타트 사전분포가 사전분포 없는 것보다 나쁠 수 있습니다 [1].

더 깊은 미해결 부분은 규제된 환경에서 폐루프를 신뢰하는 것입니다. 그저 과학자가 승인할 실험을 제안하기만 하는 BO 캠페인은 편안하게 인간-개입(human-in-the-loop) 입니다. 사람이 획득 함수와 반응기 사이에 앉아 선택을 거부할 수 있습니다. 최전선 — 반복 사이에 사람 없이 실험을 선택하고, 운전하고, 행동하는 자율주행 실험실(self-driving lab) — 은 정확히 규제선이 맞서 그어진 자율성입니다. 동료심사된 자율주행 시연들은 자신이 PD 규모(3–15 L)의 파일럿/연구 — 상업 공정이 운전되는 2,000 L 이상의 생산 반응기가 아니라 개발 벤치 규모이며, 위에서 짚은 규모 의존적 구배(혼합, kLa, CO2 스트리핑, 전단)가 결과를 옮길 수 있는 곳 — 임을 명시하며, 그들 자신의 저자들이 로봇의 능력과 장치의 자율성 사이의 간극을 강조합니다 [9][11]. WuXi Biologics ISLFCC 자율-실험실 결과 — 세 CHO 클론에 걸쳐 전통적 3단계 경험적 개발 대비, 후기 단계 락트산을 낮게 유지한 채 자체보고 +26.8% 평균 역가(예시적; 단일 회사, 자체보고, 미복제) — 는 동료심사되었지만 PD 규모(3 L 및 15 L)이고 GMP가 아닙니다 [11]. 26.8% 수치는 산업 벤치마크가 아니라 예시적인 단일 회사 헤드라인으로 읽으세요. 초안 EU/PIC/S GMP Annex 22 — EU 우수 제조 관리 기준(Good Manufacturing Practice, GMP) 지침(상업 의약품 생산의 법적 구속력 있는 규칙)의 초안 AI 부속서로, 국제 PIC/S 감독관 제도와 공동 개발됨 — 가 선을 날카롭게 합니다. 그것은 핵심 GMP 응용에서 정적이고 결정론적인 AI 모델만을 다루며, 사용 중에 성능을 적응시키는 모델(지속 학습/적응형 모델)은 다루지 않고 핵심 GMP 역할에 쓰여서는 안 된다고 명시합니다 [12]. BO 루프는 구성상 지속 학습입니다 — 이는 그것이 개발에서는 괜찮지만, 먼저 모델을 잠그고(locking) 사전 정의된 변경-관리 계획 아래에서 운영하지 않고서는 상업적 공정을 구동할 수 없다는 뜻입니다. 정직한 상태: BO는 상용급 개발 가속기이자 강력한 설계 공간 도구입니다. 사람 없이 PD를 처음부터 끝까지 운전하는 자율 실험실은 생생하고 실재하지만 여전히 파일럿 능력입니다.

이 장이 모델 모음에 더하는 것

이 장은 5권 예제 모음의 최적화 역마를 기여합니다:

  • examples/platform/ml/bayesopt_doe.py — 유가식 시뮬레이터의 글루코스/글루타민 공급 정책에 대한 가우스-과정 베이즈 최적화기로, 조밀한 후보 격자에 걸쳐 최대화된 폐형 기대 개선 획득, 반복마다 재적합되는 마테른(ν=2.5)-플러스-WhiteKernel 대리, 그리고 정면 5×5 요인-격자 베이스라인을 동반합니다. 공유 시뮬레이터 위에서 BO가 15회 운전 — 10회 적게 — 으로 25회 요인 격자의 최선(6.269 대 6.246 g/L)을 따라잡고 이기는 것을 시연하고, BO가 이기기를 멈추면 데모가 시끄럽게 실패하도록 그 결과를 단언합니다. 모듈은 단일 목적 EI를 다목적 EHVI 획득(역가 대 품질 대리)으로 교체할 수 있고 GP 사후분포를 재사용해 확률적 설계 공간을 스케치할 수 있도록 구조화되어, QC/출하하이브리드 모델 장들로 앞을 향해 배선됩니다.

그것은 모음의 예측 모델들(심층 소프트 센서, 클론-순위 모델) 곁에, 무엇이 일어날지가 아니라 무엇을 운전할지를 결정하는 것으로서 앉습니다 — 모음의 유일한 탐색 알고리즘입니다.

여기서의 재현성은 단지 시드가 아니라 완전한 사슬입니다. 고정 시드(0)는 BO의 무작위 씨앗 운전을 고정하지만, 전체 결과가 재생 가능한 것은 오직 모음의 run_all.py가 모든 모듈을 핀 고정된 환경(정확한 scikit-learn / SciPy / NumPy 버전의 versions.lock) 아래에서 돌리기 때문입니다 — 단일 라이브러리 업그레이드가 GP의 초매개변수 적합을 옮겨 EI가 어느 구석을 고르는지 조용히 바꿀 수 있으므로, 그 라이브러리를 핀 고정하지 않는 재현 가능한 BO 주장은 재현 가능하지 않습니다. 잠금이 제자리에 있으면, 위의 RUN_OUTPUTS.txt 수치(6.269 g/L in 15 runs, 초부피 2.338)가 바이트 단위로 재현 가능하고, BO가 격자를 이긴다는 assert는 잠긴 환경이 의미 있게 만드는 회귀 시험입니다.

왜 중요한가

공정 개발은 바이오의약품 제조 공정의 비용이 대체로 고정되는 곳이며, 실험이 그 정보 함량에 비해 가장 비싼 곳입니다. 25회 대신 15회 운전으로 — 또는 수백 대신 수십으로 — 더 나은 공정을 찾는 방법은 한계적 편의가 아닙니다. 그것은 일정을 단축하고, 병렬-반응기 용량을 자유롭게 하며 — 그것이 남기는 대리 모델이 단일 점이 아니라 전체 영역의 확률적 모델이므로 — 규제 신고에 정량화되고 불확실성을 인식한 설계 공간을 공짜로 건넵니다. BO는 또한 그 가치가 데이터 홍수에 의존하지 않는 이 책의 드문 ML 응용입니다. 그것은 블랙박스 예측을 패배시키는 소량-데이터, 비싼-실험 체제를 위해 설계되었으며, 바로 그것이 그것이 PD에서 가장 강력하고 가장 방어 가능한 학습 방법이자 연구에서 일상적 개발 사용으로 깨끗하게 건너가는 몇 안 되는 것 중 하나인 이유입니다.

실제 현장에서는

상용급 현실은 하이브리드 모델링 더하기 실험 설계이며, 명명된 선수들은 일관됩니다. DataHow — Sartorius 자회사가 아니라 독립 ETH Zurich 스핀오프 — 는 전이 학습을 동반한 DataHowLab 하이브리드 모델을 팔고 30–60%(최대 80%) 적은 실험을 보고합니다. 그 기함 Bristol Myers Squibb PD 사례(5 L에서 48회 운전, 12 CPP — 핵심 공정 매개변수, 공급과 온도 같은 제어 가능한 입력 — 와 18 CQA)는 대략 절반의 데이터로 약 33% 더 나은 제품-품질 예측을 헤드라인으로 내건 동료심사 동반 논문을 가집니다 — 그리고 인용할 것은 벤더 페이지의 22%/3배가 아니라 동료심사 수치(33%, ~절반)입니다 [13](파일럿/연구; 벤더 효율 헤드라인은 벤더 자체보고). Sartorius 는 Umetrics MODDE(DoE) / SIMCA(다변량 모델링) 스택과 루프가 돌아가는 Ambr / BioPAT Spectro 하드웨어를 출하합니다. 그 자율 자기-최적화 계층은 여전히 포부 단계입니다 [10]. 학술 최전선에서는, ETH Zurich + Novo Nordisk 다목적 제형 연구와 DataHow / Sartorius / Merck 자율주행 관류 연구가 가장 명료한 동료심사 BO 시연이고 [4][9], WuXi Biologics의 ISLFCC 는 가장 야심 찬 자율-실험실 주장(동료심사, 단일 회사, 자체보고, PD 규모)입니다 [11]. 산업 횡단 성숙도 신호는 냉정하게 만듭니다. 제7차 ISPE Pharma 4.0 설문은 AI/ML이 가장 많은 파일럿과 가장 적은 규모화된 구현을 가졌고, 파일럿 단계에 갇힌 프로젝트의 비율이 정체되어 있음을 발견했습니다 [14] — BO-구동 PD는 파일럿이 진정으로 일상적 관행으로 전환되고 있는 몇 안 되는 구석 중 하나입니다.

핵심 용어

  • 베이즈 최적화(Bayesian optimization, BO) — 확률적 대리를 적합하고 각 다음 실험을 획득 점수를 최대화하도록 선택함으로써, 비싸고 잡음 섞인 블랙박스 함수를 적은 평가로 최대화하는 순차적 전략.
  • 가우스 과정(Gaussian process, GP) — 흔한 대리 모델; 커널이 다스리고 주변 가능도로 적합되며, 모든 점에서 사후 평균 mu(x)와 보정된 분산 sigma2(x)를 폐형으로 돌려주는 함수들 위의 분포.
  • 커널(공분산 함수)(Kernel (covariance function)) — GP의 유사도 사전분포(가령 마테른 ν=2.5); 그 적합된 차원별 길이 척도가 어느 공정 매개변수가 중요한지 드러내고, 백색-잡음 항이 측정 떨림을 보간하지 않게 한다.
  • 획득 함수(Acquisition function) — 후보 실험을 유용성으로 채점하여, 활용(높은 평균)과 탐색(높은 불확실성)을 균형 잡는 규칙; 기대 개선(EI), UCB(mu + kappa*sigma), 그리고 개선 확률(Probability of Improvement) 이 흔한 선택.
  • 기대 개선(Expected Improvement, EI) — 기본 획득; 후보가 지금까지 본 최선의 결과를 얼마나 이길지의 기대량으로, GP 사후분포로부터 폐형 (mu - f_best)*Phi(z) + sigma*phi(z).
  • 실험 설계(Design of experiments, DoE) — BO가 겨루고 보통 예산에서 이기는, 고전적이고 비적응적인 실험 격자(요인, 부분-요인, 중심합성, 라틴-초입방체(Latin-hypercube)).
  • 다목적 BO(Multi-objective BO, MOBO) — 여러 충돌하는 목적(역가 대 품질)에 대한 BO로, 단일 점이 아니라 절충의 파레토 전선을 돌려준다; 통상 기대 초부피 개선(EHVI) 또는 NSGA-II 전선 탐색을 동반한 목적별 GP를 쓴다.
  • 기대 초부피 개선(Expected Hypervolume Improvement, EHVI) — 다목적 획득; 후보를 그것이 현재 파레토 전선이 지배하는 초부피를(기준점에 대해) 얼마나 키울 것으로 기대되는지로 채점한다 — 단일 목적 기대 개선의 절충-표면-면적 유비.
  • 파레토 전선(Pareto front) — 다른 목적을 악화시키지 않고는 어떤 목적도 개선될 수 없는 설정들의 집합; 목표가 충돌할 때의 정직한 출력.
  • 설계 공간 / QbD / ICH Q8(Design space / QbD / ICH Q8) — 수용 가능한 품질을 준다고 시연된 조건의 영역; 확률적 설계 공간은 그것을 모든 CQA를 충족할 모델 사후 확률이 임계값을 넘는 영역으로 보고한다.
  • Ambr(automated micro-bioreactor) — BO의 실험 루프를 물리적으로 충분히 빠르게 만드는 자동화된 24/48-병렬 마이크로-바이오리액터 시스템(Ambr 15는 대략 10–15 mL, Ambr 250은 대략 100–250 mL); 배치 BO(q-EI / q-EHVI를 통해 한 번에 q개의 다양한 설정을 제안)를 가능하게 한다.
  • 콜드스타트(Cold start) — 대리 모델이 공간 충전보다 나을 데이터를 너무 적게 가진, BO의 약한 초기 단계; 기계론적 또는 전이-학습 사전분포로 완화되지만 운전-간 변동성이 전이를 제한한다.
  • 자율주행 실험실(Self-driving lab) — 반복 사이에 사람 없이 실험을 선택하고, 운전하고, 행동하는 자율 루프; PD 규모(파일럿/연구)에서 시연되었으나, 지속 학습 모델에 대한 초안 Annex 22의 잣대로 핵심 GMP에서 배제된다.
  • 의미적으로 접지된 특징(Semantically-grounded feature) — 깨지기 쉬운 공장-국소적 열 이름이 아니라 온톨로지 IRI(가령 bp:monomerPct)로 끌어온 모델 입력으로, 그래서 같은 BO 코드가 조용한 불일치가 대리 모델을 오염시키지 않은 채 두 사이트의 데이터를 상대로 돈다.
  • SHACL로 게이트된 학습 집합(SHACL-gated training set) — 로트가 출하될 수 있는지 결정하는 바로 그 닫힌 세계 출하-게이트 셰이프를 사용해, 빠진 결과·단위·계보 부모를 가진 BO 학습 부분 그래프를 단 한 행이 gp.fit에 닿기 전에 거절하는 것.
  • 계보 그룹화 키(bp:derivedFrom / PROV-O) — 웜스타트되거나 모인 BO 대리 모델을 정직하게 검증 가능하게 만드는 계보 척추로, 거의 중복인 형제 운전을 무작위로 분할하는 대신 derivedFrom으로 연결된 캠페인을 통째로 떼어 둔다(leave-one-batch-out).
  • ISA-95 / OPC UA / B2MML — 각 Ambr 운전의 결과를 대리 모델이 신뢰할 수 있는 표준화되고 맥락화된 행으로 떨어뜨리는 장비-및-물질 모델(IEC 62264), 벤더-중립 전송 프로토콜, XML 배치-기록 형태; OPC UA 포유류-바이오리액터 컴패니언 사양은 아직 존재하지 않으므로, 온톨로지 계층이 여전히 공장-간 의미론을 화해시킨다.
  • 핀 고정된 환경(versions.lock) — 고정 시드의 재현성 보완물; 라이브러리 업그레이드가 GP 적합을 조용히 옮겨 EI가 고르는 설정을 바꾸지 못하도록 정확한 scikit-learn / SciPy / NumPy 버전을 잠그는 것.

다음 이야기

우리는 공정 — 공급, 온도, 설계 공간 — 을 격자가 필요로 할 운전의 일부만으로 찾았습니다. 그러나 모든 BO 반복은 목적 — 역가, 글리코실화, 순도 — 을 측정할 수 있음에 기댔습니다. 그 측정값은 분석 실험실에서 오고, 다음 장은 학습이 기기 자체를 어떻게 변환하는지를 묻습니다. 분석 방법: 화학계량학, 심층 분광학, 자동화된 크로마토그램은 이 장이 최적화 상대로 삼은 바로 그 목적들을 읽는 소프트 센서와 스펙트럼 모델로 — PLS 화학계량학에서 심층 분광학과 자동화된 크로마토그램 해석으로 — 향합니다. 전체 학습 사업이 그 위에 세워진 측정 계층입니다.