앞으로 우리는 AI로 대체되는 것이 아닌, AI를 만들고 활용하는 사람이 되어야 합니다. 저 또한 지금까지 커머스 플랫폼을 만드는 프로덕트 매니저로 일해왔지만, 머지 않은 미래에는 AI를 개발하게 될지도 모릅니다. 커머스, 금융, 소셜 등 도메인을 가리지 않고 더 많은 곳에서 AI 모델이 적용될 테니까요.
이런 변화의 흐름에 올라타고 싶은 분들에게 책 <당신은 AI를 개발하게 된다, 개발자가 아니더라도>를 추천합니다. 이번 글은 이 책의 일부 내용을 정리하기 위해 작성되었습니다.
여기에서 정리한 내용은 비교적 이해하기 쉬운 내용이지만, 본문에서는 데이터 거버넌스 등 좀더 깊이 있는 내용도 어렵지 않게 다루고 있어서 한번쯤 읽어봄직한 책이었습니다. 단, 번역투로 쓰여진 책이라 조금 독해가 어려울수도 있으니 참고해주세요.
오늘 알아볼 주제, AI의 다른 이름은 인공지능입니다. 머신러닝, 딥러닝 등의 기술을 활용하여 데이터를 분석하고 패턴을 파악하여 학습하는 과정을 거쳐 인간의 판단 역할을 수행하는 컴퓨터 시스템이죠.
머신러닝은 뭐고 딥러닝은 또 뭐냐고요? 잠깐 용어 정리를 해볼까요.
용어 정리
- AI(인공지능) : 일반적으로 인간의 지능이 필요한 작업을 수행할 수 있는 컴퓨터 시스템의 이론 및 개발
- 머신러닝 : 컴퓨터에 학습 능력을 부여하기 위해 통계 기법을 사용하는 인공지능의 하위 분야
- 딥러닝 : 인간의 뇌 구조를 모델로 한 인공 신경망을 이용해 데이터로 학습하는 머신러닝의 하위 분야
그래도 헷갈린다면 아래 다이어그램을 참고해주세요. 각각의 개념이 서로 어떤 관계인지 한 눈에 볼 수 있습니다.
AI 개발에 대해 이야기하기에 앞서 AI 모델이 무엇인지 알아야 합니다. AI 모델은 쉽게 말해 인공지능 시스템의 뇌입니다. 인공지능 시스템이 데이터를 분석하고 학습하는 데 사용되는 프로그램이지요. 머신러닝이나 딥러닝 알고리즘을 기반으로 만들어집니다. AI 모델이 있어야 컴퓨터는 데이터를 처리하고 패턴을 인식하며, 이를 기반으로 예측이나 분류 등의 작업을 수행할 수 있습니다.
용어 정리
- AI 모델 : AI 시스템의 데이터 분석 및 학습에 사용되는 머신러닝이나 딥러닝 알고리즘 기반의 프로그램
- 알고리즘 : 문제를 해결하기 위한 일련의 단계적인 절차나 규칙들의 집합
이제 AI 개발 프로세스를 살펴보겠습니다. AI는 크게 6단계를 거쳐 개발됩니다. 기존의 소프트웨어 개발 프로세스와 비슷한 듯 조금 다른 부분이 있어요. 원래 잘 알고 있는 프로세스와 비교해보면서 이해하면 좀 더 수월합니다.
먼저, 어떤 문제를 해결하고자 하는지 명확히 정의해야 합니다. 예를 들어, 이미지 분류, 음성 인식, 추천 시스템 등과 같은 문제들을 해결하기 위한 AI 모델을 개발하고자 한다면, 어떤 문제를 해결하고자 하는지를 명확히 해야 합니다.
AI 모델을 개발하기 위해서는 대량의 데이터가 필요합니다. 이를 위해 데이터를 수집하고 전처리하는 과정이 필요합니다. AI 모델의 출력은 잘 정제된 데이터로 학습했는지 여부가 결정하기 때문에, 이 과정은 무척 중요합니다.
수집한 데이터를 기반으로 AI 모델을 설계합니다. 모델 설계는 특징 추출, 모델 선택, 하이퍼파라미터 조정 등 다양한 과정을 거치며, 이를 통해 최적의 AI 모델을 찾습니다.
모델 학습은 모델의 성능을 최적화하는 과정입니다. 주어진 데이터를 이용하여 모델의 가중치를 조정하고, 학습 오차를 최소화하는 것이지요.
학습된 모델을 평가하여 모델의 성능을 평가하고, 개선하는 과정입니다. 이를 위해 테스트 데이터를 이용하여 모델의 정확도를 측정하고, 이를 토대로 모델을 개선할 수 있습니다.
모델의 성능이 검증되었다면, 이를 운영 환경에 배포하여 실제 서비스에서 사용할 수 있도록 합니다. 이를 위해 모델의 코드를 최적화하고, API 형태로 구성하여 실제 사용자들이 쉽게 이용할 수 있도록 합니다.
우리가 잊지 말아야 할 사실은 AI는 비즈니스 성공을 돕는 수많은 도구 중 하나에 불과하다는 겁니다.
벽에 나사를 박아야 한다고 해볼까요? 나사가 어떻게 생겼는지, 벽은 얼마나 단단한지, 어디에 몇개나 박을지, 이러한 문제 정의가 먼저 이루어지면 벽에 나사를 어떻게 박아야 효율적일지 결론 짓는 것도 쉬워집니다. 보통은 벽에 나사 하나 박기 위해 대단한 도구가 필요하지 않지요. 그저 나사와 크기가 맞는 드라이버 하나만으로 충분히 해결할 수 있으니 말이에요.
만약 AI를 직접 개발하지 않고도 해결할 수 있는 문제라면 그 방법으로 문제를 해결하면 됩니다. 시중에 존재하는 기성 AI 모델로 해결할 수 있고 그게 더 효율적이라면 굳이 자체 AI를 개발하지 않고, 있는 제품을 사용해서 문제를 해결하면 됩니다. AI는 멋진 도구이긴 하지만 만능은 아닙니다. 문제를 해결하기 위한 도구 중 하나예요.
잘 알지 못하는 AI 방식을 밀어붙이려는 리더는 아마추어처럼 보일 뿐 아니라 결국 유지 비용도 많이 드는 솔루션을 내놓을 수밖에 없다. 해결할 수 있는 좋은 문제를 찾아 최선의 해결책을 찾아라. AI 없이 할 수 있으면 더 좋다. 머신러닝이나 인공지능은 다른 접근 방식으로 필요한 성과를 얻지 못할 때 사용하는 것이다.
- 캐시 코지르코프 (구글 최고의사결정과학자)
'우리도 이제 멋진 기술 도입한다!'하는 만족감에 취하지 않도록 주의해야 합니다. 성공을 명확하게 정의하지 않으면 프로젝트는 실패하기 쉽습니다. 골디락스의 문제 해결을 목표로 삼고 이때 어떤 지표가 개선될 건지 정의해둬야 성공 확률이 높아집니다.
골디락스 문제는 빨리 해결할 수 있는 작은 문제이면서 동시에 AI팀의 영향력을 발휘할 수 있는 큰 문제이기도 해야 합니다. 그리고 AI가 최적화할 지표가 무엇인지 생각해보세요. 매출이나 고객추천지수(NPS), 시간 가치처럼 명확한 지표가 좋습니다. 어떤 성공을 목표로 할 것인지 분명히 하고, 협업하는 모든 사람이 인식하도록 얼라인시켜야 목표에 부합하는 결과물을 낼 수 있겠죠.
일단 문제를 파악하면, SMART 원칙을 활용해 구체적인 목표를 정의할 수 있습니다. 구체적(Specific)이고 측정 가능(Measurable)하고 달성 가능(Achievable)하며 현실적(Realistic)이고 시기적절(Timely)한 목표를 세워보세요.
전사적 AI 교육도 도움이 됩니다. 각 사업부나 부서는 담당하는 운영 업무에 익숙하기 때문에 어떤 문제를 AI로 해결할 수 있을지 쉽게 파악할 수 있거든요.
골디락스 문제가 명확히 정의되었다면 이제 데이터에 집중해야 합니다. AI 모델은 데이터로 만들어지는 제품입니다. 따라서 제대로 된 데이터가 없으면 AI 개발은 반드시 실패할 수 밖에 없습니다.
사람들은 모델을 구축하는 과정이 가장 어려울 것이라 생각하지만 실제로는 그렇지 않아요. AI 모델 구축보다는 모델에 쓸 데이터를 준비하고 데이터 파이프라인을 구축하는 과정에 훨씬 더 많은 시간과 자원, 에너지와 기술이 투입돼요. 반복 가능하고 확장할 수 있는 데이터 파이프라인이 없으면 완벽하게 설계된 모델이라도 실전에 사용될 수 없습니다.
만약 필요한 데이터가 사내에 존재하지 않는다면 외부에서 데이터를 수급해야 합니다. 이때 비용은 어느정도인지, 오래 쓸 수 있는 제대로 된 데이터인지를 확인할 필요가 있습니다.
뿐만 아니라 학습 데이터가 현실 상황에서 발생할 수 있는 모든 사용 사례를 포함하는지도 파악해야 합니다. 이 부분은 실제로 해당 분야에서 일하고 있는 사람들에게 학습 데이터의 고유한 특성을 질문하면 참고할만한 정보를 얻을 수 있습니다.
마지막으로, 주석 처리 작업의 품질 관리 프로세스가 필요합니다. 데이터의 품질은 AI 모델의 정확성과 밀접한 관련있기 때문이에요.
<체크리스트>
1. 필요한 데이터가 무엇인지
2. 데이터를 어떻게 확보할 수 있을지
3. 확보한 데이터는 정확한지
4. 데이터에 정리된 주석의 품질은 어떤지
우선, 문제해결에 필요한 데이터가 존재하는지 확인해서 그 데이터를 얻을 방법을 찾아내는 사람이 필요합니다. 데이터 과학자와 머신러닝 엔지니어겠죠.
추구하는 목표를 정확히 이해하고 개발 중인 AI 솔루션이 비즈니스 목표를 달성할 수 있는지 파악할 프로덕트 매니저도 반드시 있어야 합니다.
그 밖에도 도메인 전문가나 윤리 전문가, 법률 전문가와의 협업도 필요합니다. AI를 개발할 때에는 해당 분야의 도메인 지식을 가지고 있어야 하고, 윤리/법률적 문제가 발생할 수 있기 때문입니다.
이처럼 AI를 개발할 때는 다양한 분야의 전문가들이 협력해야 합니다. 이를 위해 개발 팀을 구성하고, 효율적인 협업을 위한 의사소통 방법과 프로세스를 마련하는 것이 중요합니다.
편향이란 어떤 주체나 그룹이 특정한 것에 대해 선입견을 가지거나, 편견을 갖는 것을 의미하는데, 주로 개인적인 경험, 사회적인 인식, 문화, 지식 등이 영향을 주는 결과로 생기는 경우가 많습니다.
알고리즘을 만드는 개개인이 어떤 편향을 갖고 있는지에 따라 AI 모델의 알고리즘에도 편향이 생길 수 있습니다. 인간의 판단에 의존하는 민감한 영역에 대한 맥락을 충분히 고려해야 하는 이유입니다. 프로덕트 매니저는 이런 상황에서 의사결정을 내리는 핵심적인 역할을 해야 합니다. 우리가 설정한 가중치와 판단 방법이 비즈니스와 고객에게 어떤 영향을 미칠 것인가를 미리 논의해야 하죠.
AI 모델의 정확도 또한 '이 모델이 무엇을 다루느냐'에 따라 요구되는 수준이 다릅니다. 90% 정확도를 가진 모델이라도 결국 10%만큼 잘못된 판단을 내리게 되거든요. 만약 성폭력 신고를 식별하는 모델의 정확도가 90%라면, 나머지 10%가 치명적인 법적 책임 문제와 윤리적 문제를 야기할 게 분명합니다. 따라서 AI를 개발할 때에는 AI 모델에 요구되는 정확도를 파악한 뒤 개발해야 합니다. 그렇지 않으면 AI는 제 역할을 다 하지 못하고 사용되지 못할 겁니다.
AI 제품을 개발하는 과정에서 PM(프로덕트 매니저)는 제품 개발에 대한 비즈니스적인 책임을 지니며, 제품을 개발하고 유지보수하기 위해 다양한 팀과 협력합니다. 이때 PM의 주요 역할 중 일부는 다음과 같습니다.
1. 비즈니스 비전 개발 : 제품의 목표와 비즈니스적인 이점을 정의하고 명확하게 이해하는 것이 중요합니다. 이를 통해 AI 모델 개발 팀에게 필요한 지표와 성능 목표를 설정할 수 있습니다.
2. 요구사항 관리 : 고객과 이해관계자 요구사항을 수집하고, 이를 바탕으로 AI 모델 개발에 필요한 요구사항을 정의합니다. 또한, 팀 간의 커뮤니케이션을 원활히 진행하여 제품 개발의 전체적인 진행 상황을 파악합니다.
3. 제품 로드맵 관리 : 제품의 전략적인 방향성을 결정하고, 개발 로드맵을 설계합니다. AI 모델 개발의 우선순위를 결정하고, 팀의 일정을 조정하여 제품 개발의 전반적인 방향을 제시합니다.
4. 비즈니스 성과 측정 : 제품의 성과를 측정하고, 향후 발전 방향을 결정합니다. 이를 위해 AI 모델의 성능과 비즈니스적인 효과를 모니터링하고, 이를 바탕으로 제품을 개선하는 방향을 제시합니다.
일반적인 소프트웨어 프로덕트 매니저의 역할과 동일하네요. 기본적인 방법론은 동일하되 제품의 특성, 즉 어떤 문제를 해결하기 위한 AI 제품인지에 따라 세부적인 내용은 달라질 것 같습니다.
그렇다면 AI 제품을 개발하는 PM은 어떤 스킬을 갖고 있어야 할까요? PM의 핵심 역량도 아래에 정리해봤습니다. 마찬가지로 일반적인 프로덕트 매니저의 역량과 동일합니다. 단, AI 도메인에 대한 이해도가 추가로 필요하네요.
1. AI 기술에 대한 이해 : 기술적인 문제를 이해하고 솔루션을 찾을 수 있는 기술적 이해가 필요합니다. 이를 위해서는 AI 기술의 기본 원리와 알고리즘, 데이터 분석 기술 등을 이해할 수 있어야 합니다.
2. 비즈니스 지식 : 비즈니스를 이해하고 상품의 가치를 파악할 수 있어야 합니다. 제품이 시장에서 어떻게 경쟁할 수 있는지, 소비자의 요구에 맞는지, 제품이 어떻게 수익을 창출하는지 등을 이해해야 합니다.
3. 디자인적 사고 : 제품의 인터페이스 및 사용자 경험을 고려해야 합니다. 사용자의 요구를 파악하고 이를 기반으로 AI 모델을 설계하며, AI 모델의 결과를 비즈니스와 사용자 목표에 맞게 해석할 수 있어야 합니다.
4. 프로젝트 관리 능력 : 프로젝트를 관리하고, 전반적인 개발 프로세스를 지원할 수 있어야 합니다. 프로젝트를 추진하기 위한 목표를 설정하고, 우선순위를 결정하며, 개발자들 간의 협업과 커뮤니케이션을 조정합니다.
5. 소통 및 협력 능력 : 다양한 팀과의 소통과 협력 능력이 중요합니다. 엔지니어, 디자이너, 마케팅팀, 고객 지원팀과 같은 다른 팀들과 협력하고, 소통하기 위해서는 이들의 작업 방식, 언어 및 문화를 이해할 필요가 있습니다.
6. 문제 해결 능력 : 예측 불가능한 문제를 해결하기 위한 능력이 필요합니다. AI 모델에 대한 이해를 바탕으로 문제 상황을 파악하고, 필요한 데이터를 수집하며, 다양한 해결 방안을 고려하여 문제를 해결해야 합니다.
AI의 시대, PM으로 살아남으려면 어떻게 해야 할까? 고민하고 있는 분들이 이 글을 읽고 계시리라 생각합니다. 저 또한 같은 입장으로, 챗 GPT 관련 서비스가 쏟아져나오는 현 상황에 적응하지 못하고 뒤쳐지진 않을까 조바심이 들었습니다. 하지만 그렇게까지 긴장할 이유는 없는 것 같아요. 결국 본질은 똑같거든요. 문제는 무엇인가? 어떻게 해결할 것인가?
AI의 시대가 도래한 데에는 틀림이 없습니다. 분명 우리는 새로운 시대를 맞이하게 됩니다. 다만, 앞으로 어떻게 살아남을 것인가, 상실에 대한 공포 보다는 앞으로는 어떤 방식으로 기여할 것인가 하는 적극성을 잃지 않는 것이 중요할 거라 생각합니다.
저는 이번 글을 쓰면서, '나는 앞으로 어떤 문제를 해결하고 싶은가' 하는 질문을 다시 생각하기 시작했습니다. 그 질문에 대한 답을 정했을 때에 '그 문제를 해결하기 위해 무엇이 필요한가'를 고민할테고, 그때 비로소 AI라는 선택지를 고려해보게 될 것 같아요. 앞서 말했듯이, AI는 그저 문제 해결을 위한 도구 중 하나에 불과하니까요.
PM들은 겁을 낼 이유가 없습니다. 우리가 기존에 알고 있던 것과 크게 다르지 않아요. AI 모델도 결국 우리가 의도한 대로 만들 수 있는 프로덕트입니다. 이런 게 있으니까 필요할 때 잘 활용해보자 마음 먹는 것, 거기에서부터 시작하면 됩니다.