2021.09.28

칼럼ㅣ머신러닝의 첫 번째 규칙은 ML 없이 시작하는 것이다

Matt Asay | InfoWorld
‘머신러닝(ML)’을 하는 가장 좋은 방법은 때때로 머신러닝을 전혀 하지 않는 것이다. 실제로 아마존의 응용 과학자 유진 얀에 따르면 머신러닝의 첫 번째 규칙은 머신러닝 없이 시작하는 것이다. 

이게 무슨 소리인가? 

수개월에 걸친 고된 노력으로 공들여 만든 ML 모델을 소개하는 건 멋진 일이다. 그러나 이는 가장 효과적인 접근 방식이 아니다. 더 간단하고 접근하기 쉬운 방법이 있다. 
 
ⓒGetty Images

지난 2016년 데이터 과학자 노아 로랑이 “데이터 과학자는 대부분 산수를 할 뿐이다”라고 언급한 건 지나친 단순화일 수 있다. 하지만 그의 말은 크게 틀리지 않으며, 아무리 데이터를 작동시키는 프로세스를 복잡하게 만들고 싶더라도 작게 시작하는 것이 좋다는 로랑과 얀의 주장은 확실히 옳다. 

과도한 복잡성 
데이터 과학자는 많은 급여를 받는다. 따라서 예측 애널리틱스와 같은 것을 복잡한 전문용어와 방대한 모델로 포장해 급여를 정당화하고 싶을 수 있다. 그래선 안 된다. 

로랑의 주장은 오늘날에도 유효하다. 그는 “비즈니스 문제의 아주 작은 부분 집합만이 머신러닝으로 가장 잘 해결된다. 대부분은 단지 좋은 데이터와 그것이 무엇을 의미하는지 이해만 하면 된다”라고 밝혔다. 

그러면서 로랑은 데이터를 가져오기 위한 SQL 쿼리, 해당 데이터에 관한 기본 연산(차이 및 백분위수 계산 등), 결과 그래프 작성, 설명 또는 권장사항 작성 등의 더 간단한 방법을 추천했다. 

이것이 쉽다고 말하는 게 아니다. 데이터에서 인사이트를 얻으려고 할 때 머신러닝에서 시작할 필요가 없다는 말이다. 또 많은 양의 데이터가 반드시 필요한 것도 아니다. 엘리제블(Eligible)의 CEO 케이틀린 글리슨은 “작은 데이터부터 시작하는 게 중요하다. 나를 최고의 발견으로 이끈 것은 눈 깜짝할 사이에 생긴 이상 현상이었다”라면서, 때로는 분포를 그리는 것만으로도 충분히 명확한 패턴을 확인할 수 있다고 말했다. 

그렇다. 데이터가 작더라도 인간은 충분히 패턴을 감지하고 인사이트를 발견할 수 있다.  

그렇다면 아이로봇(iRobot)의 데이터 과학자 브랜든 로러가 다음과 같이 말하는 게 놀랄 일은 아니다. “문제가 발생하면 멀티클라우드 쿠버네티스에서 실행되는 심층 베이지안(Bayesian) 변환기 그리고 지나치게 단순화한 가정 스택 위에 구축된 SQL 쿼리라는 2가지 솔루션을 구축하라. 하나는 이력서에, 다른 하나는 실제 운영에 써라. 모두가 행복할 것이다.” 

이는 ML을 절대 사용하지 말라는 것이 아니다. ML이 실질적인 가치를 제공하지 않는다는 것도 아니다. 오히려 거리가 멀다. ML로 시작하는 것에 반대하는 의견일 뿐이다. 그 이유를 자세히 알아보려면 얀의 주장을 검토해야 봐야 한다. 

데이터를 알아가는 인간 
먼저 얀은 아래의 구성 요소를 고려할 때 데이터에서 의미를 추출하는 것이 얼마나 어려운지 인지해야 한다고 밝혔다. “데이터가 필요하다. 데이터 흐름을 지원하려면 강력한 파이프라인이 필요하다. 그리고 무엇보다 고품질 라벨이 필요하다.”

다시 말해, 입력이 충분히 까다롭기 때문에 문제에 ML 모델을 던지는 것으로 시작하는 게 특별히 도움을 주지 않을 수 있다. 그는 수동 또는 휴리스틱(현실적인 방법 또는 바로가기)을 사용하여 문제를 해결하라면서, 깃허브의 머신러닝 엔지니어 하멜 후세인의 주장(“이는 가장 중요한 첫 번째 단계인 문제와 데이터에 친숙해지도록 할 것”)을 들어서 이를 강조했다. 

표 형식의 데이터를 다루고 있다면 얀은 통계를 실행할 데이터 샘플과 간단한 상관관계로 시작해 (아마도) 산점도를 사용하여 데이터를 시각화하는 게 좋다고 조언했다. 

예를 들면 추천을 위한 복잡한 머신러닝 모델을 구축하는 대신 ‘이전 기간에서의 최고 성과 항목을 추천’한 다음, 결과에서 패턴을 찾을 수 있다고 그는 설명했다. 이를 통해 ML 실무진은 데이터에 더 익숙해질 수 있으며, 필요한 경우 이는 더 나은 모델을 구축하는 데 도움이 된다. 

그렇다면 머신러닝은 언제 필요한가? 

얀에 의하면 머신러닝은 (ML이 아닌) 휴리스틱 시스템 유지관리가 지나치게 복잡해질 때 적합하다. 그는 “상당히 잘 작동하는 비ML(non-ML) 기준이 있다면 이러한 기준을 유지하고 개선하는 것은 ML 기반 시스템을 구축하고 배포하는 것보다 더 중요하다”라고 전했다. 

물론 언제 이런 일이 발생하는지 과학적인 사실은 없다. 하지만 만약 휴리스틱이 더 이상 현실적인 지름길이 아니라 계속 중단된다면 머신러닝을 고려해야 할 때다. 특히 좋은 데이터를 나타내는 견고한 데이터 파이프라인과 고품질 데이터 라벨을 가지고 있다면 그렇다. 

복잡한 ML 모델로 시작하고 싶은 유혹이 있겠지만 데이터 과학자의 가장 중요한 스킬은 바로 ML보다 회귀 분석이나 몇 가지 if/then문을 활용해야 할 때를 아는 상식이다. 

* Matt Asay는 아마존 웹 서비스(AWS)의 Principal이다. 어도비의 개발자 에코시스템 총괄, 몽고DB의 비즈니스 개발, 마케팅, 커뮤니티 부문 부사장을 역임한 바 있다. ciokr@idg.co.kr



 



2021.09.28

칼럼ㅣ머신러닝의 첫 번째 규칙은 ML 없이 시작하는 것이다

Matt Asay | InfoWorld
‘머신러닝(ML)’을 하는 가장 좋은 방법은 때때로 머신러닝을 전혀 하지 않는 것이다. 실제로 아마존의 응용 과학자 유진 얀에 따르면 머신러닝의 첫 번째 규칙은 머신러닝 없이 시작하는 것이다. 

이게 무슨 소리인가? 

수개월에 걸친 고된 노력으로 공들여 만든 ML 모델을 소개하는 건 멋진 일이다. 그러나 이는 가장 효과적인 접근 방식이 아니다. 더 간단하고 접근하기 쉬운 방법이 있다. 
 
ⓒGetty Images

지난 2016년 데이터 과학자 노아 로랑이 “데이터 과학자는 대부분 산수를 할 뿐이다”라고 언급한 건 지나친 단순화일 수 있다. 하지만 그의 말은 크게 틀리지 않으며, 아무리 데이터를 작동시키는 프로세스를 복잡하게 만들고 싶더라도 작게 시작하는 것이 좋다는 로랑과 얀의 주장은 확실히 옳다. 

과도한 복잡성 
데이터 과학자는 많은 급여를 받는다. 따라서 예측 애널리틱스와 같은 것을 복잡한 전문용어와 방대한 모델로 포장해 급여를 정당화하고 싶을 수 있다. 그래선 안 된다. 

로랑의 주장은 오늘날에도 유효하다. 그는 “비즈니스 문제의 아주 작은 부분 집합만이 머신러닝으로 가장 잘 해결된다. 대부분은 단지 좋은 데이터와 그것이 무엇을 의미하는지 이해만 하면 된다”라고 밝혔다. 

그러면서 로랑은 데이터를 가져오기 위한 SQL 쿼리, 해당 데이터에 관한 기본 연산(차이 및 백분위수 계산 등), 결과 그래프 작성, 설명 또는 권장사항 작성 등의 더 간단한 방법을 추천했다. 

이것이 쉽다고 말하는 게 아니다. 데이터에서 인사이트를 얻으려고 할 때 머신러닝에서 시작할 필요가 없다는 말이다. 또 많은 양의 데이터가 반드시 필요한 것도 아니다. 엘리제블(Eligible)의 CEO 케이틀린 글리슨은 “작은 데이터부터 시작하는 게 중요하다. 나를 최고의 발견으로 이끈 것은 눈 깜짝할 사이에 생긴 이상 현상이었다”라면서, 때로는 분포를 그리는 것만으로도 충분히 명확한 패턴을 확인할 수 있다고 말했다. 

그렇다. 데이터가 작더라도 인간은 충분히 패턴을 감지하고 인사이트를 발견할 수 있다.  

그렇다면 아이로봇(iRobot)의 데이터 과학자 브랜든 로러가 다음과 같이 말하는 게 놀랄 일은 아니다. “문제가 발생하면 멀티클라우드 쿠버네티스에서 실행되는 심층 베이지안(Bayesian) 변환기 그리고 지나치게 단순화한 가정 스택 위에 구축된 SQL 쿼리라는 2가지 솔루션을 구축하라. 하나는 이력서에, 다른 하나는 실제 운영에 써라. 모두가 행복할 것이다.” 

이는 ML을 절대 사용하지 말라는 것이 아니다. ML이 실질적인 가치를 제공하지 않는다는 것도 아니다. 오히려 거리가 멀다. ML로 시작하는 것에 반대하는 의견일 뿐이다. 그 이유를 자세히 알아보려면 얀의 주장을 검토해야 봐야 한다. 

데이터를 알아가는 인간 
먼저 얀은 아래의 구성 요소를 고려할 때 데이터에서 의미를 추출하는 것이 얼마나 어려운지 인지해야 한다고 밝혔다. “데이터가 필요하다. 데이터 흐름을 지원하려면 강력한 파이프라인이 필요하다. 그리고 무엇보다 고품질 라벨이 필요하다.”

다시 말해, 입력이 충분히 까다롭기 때문에 문제에 ML 모델을 던지는 것으로 시작하는 게 특별히 도움을 주지 않을 수 있다. 그는 수동 또는 휴리스틱(현실적인 방법 또는 바로가기)을 사용하여 문제를 해결하라면서, 깃허브의 머신러닝 엔지니어 하멜 후세인의 주장(“이는 가장 중요한 첫 번째 단계인 문제와 데이터에 친숙해지도록 할 것”)을 들어서 이를 강조했다. 

표 형식의 데이터를 다루고 있다면 얀은 통계를 실행할 데이터 샘플과 간단한 상관관계로 시작해 (아마도) 산점도를 사용하여 데이터를 시각화하는 게 좋다고 조언했다. 

예를 들면 추천을 위한 복잡한 머신러닝 모델을 구축하는 대신 ‘이전 기간에서의 최고 성과 항목을 추천’한 다음, 결과에서 패턴을 찾을 수 있다고 그는 설명했다. 이를 통해 ML 실무진은 데이터에 더 익숙해질 수 있으며, 필요한 경우 이는 더 나은 모델을 구축하는 데 도움이 된다. 

그렇다면 머신러닝은 언제 필요한가? 

얀에 의하면 머신러닝은 (ML이 아닌) 휴리스틱 시스템 유지관리가 지나치게 복잡해질 때 적합하다. 그는 “상당히 잘 작동하는 비ML(non-ML) 기준이 있다면 이러한 기준을 유지하고 개선하는 것은 ML 기반 시스템을 구축하고 배포하는 것보다 더 중요하다”라고 전했다. 

물론 언제 이런 일이 발생하는지 과학적인 사실은 없다. 하지만 만약 휴리스틱이 더 이상 현실적인 지름길이 아니라 계속 중단된다면 머신러닝을 고려해야 할 때다. 특히 좋은 데이터를 나타내는 견고한 데이터 파이프라인과 고품질 데이터 라벨을 가지고 있다면 그렇다. 

복잡한 ML 모델로 시작하고 싶은 유혹이 있겠지만 데이터 과학자의 가장 중요한 스킬은 바로 ML보다 회귀 분석이나 몇 가지 if/then문을 활용해야 할 때를 아는 상식이다. 

* Matt Asay는 아마존 웹 서비스(AWS)의 Principal이다. 어도비의 개발자 에코시스템 총괄, 몽고DB의 비즈니스 개발, 마케팅, 커뮤니티 부문 부사장을 역임한 바 있다. ciokr@idg.co.kr



 

X