확률적 ML의 중요성: 불확실성을 모델링하며 더 나은 결정을 돕는다.
확장된 곡선 적합을 넘어서: 머신러닝의 확률적 기반 탐구 처음 보는 수학 공식에 당황하셨나요? 읽기를 포기하고 싶은 마음이 들 수도 있습니다. 하지만 바로 그 순간에 멈추지 않는 것이 중요합니다. 저도Kevin P. Murphy의 '확률적 머신러닝 - 입문'을 읽기 시작할 때 그렇게 했습니다. 결과적으로 그것은 제가 머신러닝을 이해하는 방식을 완전히 바꾸었습니다. 머신러닝 모델이 예측(예를 들어, 분류)을 할 때, 실제로 무엇을 하고 있을까요? 다양한 가능한 결과/클래스에 대한 확률을 배분합니다. 이 확률들은 항상 100% 또는 1로 합쳐져야 합니다. 예를 들어, 동물 사진을 보여주면 모델이 "고양이일 확률이 80%, 개 15%, 여우 5%"라고 답할 수 있습니다. 이렇게 합산하면 정확히 100%입니다. 이는 모델이 고양이라고 생각하면서도 개나 여우일 가능성을 조금씩 남겨두는 것을 의미합니다. 이 간단한 공식은 머신러닝 모델이 단순히 답만 주는 것이 아니라, 예측에 대한 자신감을 함께 제공할 수 있다는 점을 상기시킵니다. 이 불확실성을 활용하면 더 나은 결정을 내릴 수 있습니다. 확률적 관점에서의 머신러닝은 어떻게 이해할까요? Tom Mitchell은 다음과 같이 정의합니다: "컴퓨터 프로그램이 경험 E를 통해 어떤 작업 T의 성능 측정 P에 따라 성능이 향상되면, 해당 프로그램은 경험 E로부터 학습한다고 말한다." 확률적 관점에서는 불확실성, 출력, 매개변수, 예측 등 모든 것이 확률 변수로 취급됩니다. 예를 들어, 전력 공급업체가 오늘 얼마나 많은 전력을 구매해야 하는지를 결정해야 하는 상황을 생각해봅시다. 에너지 수요는 온도, 날씨, 경제 상황, 산업 생산, 태양광 발전 등의 불확실한 요인에 의해 좌우됩니다. 단일 최적 추정치에만 의존하면, 수요가 예상보다 높아서 비용이 증가하거나, 수요가 예상보다 낮아서 전력이 남을 위험이 있습니다. 그러나 확률 계산을 사용하면, 수요가 850MWh를 초과하지 않을 확률이 95%라는 것을 알 수 있습니다. 이는 안전 마진을 올바르게 계산할 수 있게 해줍니다. 확률적 관점을 이해하는 것이 중요한 이유는 무엇일까요? 현실 세계는 불확실성, 부족한 정보, 무작위성이 특징입니다. 확률적 머신러닝은 이러한 불확실성을 다루는 데 도움을 줍니다. 단순히 "더 정확하게" 되려고 하는 것보다, 확률적 접근은 오류와 불확실성에 대비하여 더 견고해지는 데 도움이 됩니다. 예를 들어, 의료 진단 시스템에서는 모델이 "암일 확률이 60%"라고 표시하는 것이 고정된 진단을 내리는 것보다 더 나은 경우가 많습니다. 이렇게 하면 불확실성이 높을 때 추가 검사를 실시할 수 있습니다. 지도 학습(Supervised Learning)은 입력-출력 쌍을 사용하여 학습하는 방식입니다. 예를 들어, "이 사진이 (입력 x) 세토사 종의 꽃 (출력 y)입니다"와 같은 규칙을 찾는 것이 목표입니다. 일반적으로 분류와 회귀 작업에 적용됩니다. 확률적 관점은 모델이 단순히 "세토사"라고 예측하는 것이 아니라, "세토사일 확률이 95%"라는 형태로 예측하도록 합니다. 이는 모델이 예측의 신뢰도를 표현할 수 있음을 의미합니다. 비지도 학습(Unsupervised Learning)은 데이터에 라벨이 없이 학습하는 방식입니다. 예를 들어, 동물 사진을 보여주지만, 어떤 동물인지 알려주지 않습니다. 모델은 데이터에서 유사한 그룹, 패턴, 구조를 스스로 찾아내는 것이 목표입니다. 일반적으로 클러스터링 작업에 사용됩니다. 확률적 관점은 "이 사진은 반드시 세토사다"라고 단정하는 것이 아니라, "데이터에 숨겨진 가능성이 높은 구조나 패턴은 무엇일까?"라는 질문을 던집니다. 이는 다양성을 포착하고, 단순한 분류를 강요하지 않으며, 가능성들을 모델링하는 데 도움을 줍니다. 강화 학습(Reinforcement Learning)은 체험을 통해 행동하고 피드백을 받아 학습하는 방식입니다. 예를 들어, 로봇이 걸어가는 방법을 학습하려고 할 때, 여러 동작을 시도하고, 넘어지면 나쁜 행동으로, 몇 걸음 걷는다면 좋은 행동으로 인식합니다. 로봇은 상황 x에서 행동 a를 선택하는 정책 π(x)를 찾아냅니다. 처음에는 이 정책이 무작위적이거나 매우 좋지 않지만, 경험을 통해 점차 개선됩니다. 각 경험이 로봇에게 피드백(보상)을 제공하며, 로봇은 보상을 최대화하기 위해 정책 π(x)를 조정합니다. 확률적 관점은 시스템이 보상에 이르는 여러 행동 중 어떤 것이 좋은지 불확실한 상태에서 학습하는 데 도움을 줍니다. 강화 학습은 인간과 동물이 학습하는 방식을 반영하며, 명확한 예제가 없지만 경험을 통해 개선되는 작업에 이상적입니다. '알파고' 영화의 돌파구 역시 강화 학습에 기반합니다. 확률적 관점에서 보면, 머신러닝 모델은 단순한 함수 이상입니다. 모델은 세계에 대한 분포 가정을 설명합니다. 고전적인 관점에서는 모델이 입력을 출력으로 변환하는 함수 f(x)=y로 이해되지만, 확률적 관점에서는 불확실성을 명시적으로 설명하는 f(x)=p(y|x)로 이해됩니다. 이는 단일 "최적 답변"을 제공하는 것이 아니라, 다양한 답변이 얼마나 가능성이 있는지를 모델링하는 것입니다. 결론적으로, 확률적 머신러닝의 장점은 다음과 같습니다: 오류와 불확실성에 대해 더 견고해집니다. 의료 진단 시스템에서 불확실성을 표시하는 것이 고정된 진단보다 더 나은 경우가 많습니다. 새로운 상황에 더 유연하고 적응력이 있습니다. 예를 들어, 확률적으로 날씨 데이터를 모델링하면 기후 변화에 더 쉽게 대처할 수 있습니다. 더 명확하고 해석 가능합니다. 모델이 단순히 답변만 제공하는 것이 아니라, 그 답변에 대한 확신도 함께 제공합니다. 이는 투명한 결정과 리스크 평가에 도움을 줍니다. 이러한 장점들 때문에 확률적 모델은 투명하고 신뢰할 수 있으며 해석 가능한 시스템(블랙박스 알고리즘 대신)을 만드는데 유용합니다. 이 내용을 더 깊게 파고들고 싶다면, 다양한 기술, Python, 데이터 과학, 머신러닝, AI 관련 글을 요약해 올리는 제 Substack를 확인하거나 구독해보세요. 확률적 관점을 이해하는 것이 어떤 의미가 있을까요? 현실 세계에서는 거의 모든 것이 완벽하게 확실하지 않습니다. 불확실성, 부족한 정보, 무작위성이 모든 결정을 지배합니다. 확률적 머신러닝은 이를 다루는 데 효과적입니다. 단순히 "더 정확하게" 되려고 하는 것보다, 확률적 접근은 오류와 불확실성에 대해 더 견고해지고, 새로운 상황에 더 유연하게 적응하며, 더 명확하고 해석 가능한 시스템을 만드는 데 도움을 줍니다. 이러한 장점들이 확률적 모델을 투명하고 신뢰할 수 있으며 해석 가능한 시스템으로 만들 수 있게 합니다. 확률적 관점을 이해하는 것은 머신러닝의 핵심 개념을 깊이 이해하고, 실제 문제 해결에 더 효과적으로 접근할 수 있도록 돕습니다. 이는 머신러닝이 단순한 데이터 처리 도구를 넘어, 복잡한 현실 세계의 불확실성을 효과적으로 관리하는 지능적인 시스템으로 발전하는 데 중요한 역할을 합니다. 머신러닝 분야에서 확률적 관점을 연구하는 많은 연구자들과 업계 전문가들은 이 접근법이 미래 머신러닝 발전의 핵심 요소가 될 것이라고 평가하고 있습니다.