월간 지앤선

번역: 이상한모임 AI/ML번역팀

편집: 지앤선 편집장 아델라

 

 

 

머신 러닝은 무엇일까요?

이 글에서 머신 러닝에 대한 지식을 갈고 닦아보도록 하겠습니다. 정확히 머신 러닝은 무엇일까요? 가장 단순한 정의는 다음과 같습니다.

 

머신 러닝은 "... 인공 지능의 한 분야로, 컴퓨터가 경험을 기반으로 컴퓨터의 성능을 향상시키는 방법을 연구하는 영역입니다."
(출처: 버클리)

 

머신 러닝을 이해하기 위한 토대가 되는 지식을 하나씩 나눠 살펴보겠습니다.

 


 

✔️ 인공 지능의 한 분야

인공 지능(Artificial Intelligence, AI)은 컴퓨터와 그 시스템을 통해 일반적으로 인간의 지적 행동이 필요한 과제를 해결하는 능력을 연구하고 개발하는 분야이고, 머신 러닝은 이 과정 중 하나입니다. 머신 러닝은 과제를 해결하는 데 컴퓨터를 훈련시키는 기술이자 과정을 뜻합니다.

 

✔️ 연구하는 영역

머신 러닝 기법은 이제 드러나는 단계입니다. 컴퓨터를 훈련하기 위한 모델 중에는 이미 인정받고 사용되는 경우(다음에서 살펴 볼 예정입니다)도 있지만 장차 더 개발되리라 기대되는 점도 있습니다. 여기서 기억해야 할 개념은 컴퓨터를 훈련할 때 각각의 비즈니스 문제마다 필요한 다른 모델을 사용할 수 있다는 부분입니다. 

 

✔️ 컴퓨터의 성능을 향상

컴퓨터가 인공 지능으로 과제를 해결하려면 훈련과 적응 과정이 필요합니다. 머신 러닝 모델은 데이터로 훈련하며 대부분의 경우에는 사람의 도움을 거의 필요로 하지 않습니다.

 

✔️ 경험을 기반으로

인공 지능에 경험을 제공한다는 의미를 다시 말하면 인공지능에 데이터를 제공한다는 뜻입니다. 시스템에 제공되는 데이터가 늘어나면, 컴퓨터는 그 데이터 및 미래에 접할 데이터에 더 정확하게 반응할 수 있습니다. 데이터를 더 정교하게 이해한다는 의미는 제시된 과제를 더 성공적으로 해결할 가능성이 높다는 의미이며 예측성이 높은 통찰이 필요할 때 일정 수준의 신뢰를 제공할 수 있다는 뜻입니다.

 

✔️ 예시

  ▫️ 입력 데이터를 선택해 입력 조건으로 준비합니다. (예: 신용 카드와 거래내역)

  ▫️ 머신 러닝 알고리즘을 만들고 특정 과제를 해결하기 위해 학습합니다. (예: 사기성 거래내역 감지)

  ▫️ 필요로 하는 출력 정보를 학습한 데이터를 통해 강화합니다. (예: 이 이체 내역은 사기성 이체이며, 이 내역에는 문제가 없음)

 

 

 

머신 러닝은 어떻게 작동하나요?

 

머신 러닝은 종종 마법 또는 블랙박스로 비유됩니다. 데이터를 입력하고 → 마법의 블랙박스를 거치면 → 임무가 완료됩니다.

트레이닝 프로세스 자체를 살펴 보고 머신 러닝이 데이터로부터 어떻게 가치를 만들어내는지 더 이해해 봅시다.

 

🔧 수집: 머신 러닝은 데이터에 많은 영향을 받습니다. 첫 단계는 풀고자 하는 문제에 알맞은 데이터를 가지고 있는지 확인하는 것입니다. 수집 능력, 출처, 형식과 같은 것을 고려해야 합니다.

 

🔧 정제: 데이터가 생성된 출처와 파일 형식, 표현된 언어는 서로 다를 수 있습니다. 데이터 세트에 필요하지 않거나 관계 없는 항목, 누락된 정보 등이 있다면 정보를 더하거나 뺄 필요가 생길 수 있습니다. 이런 준비는 결과물의 사용성과 신뢰성에 영향을 미칠 것입니다.

 

🔧 나누기: 데이터 세트의 규모에 따라 그 일부만 필요할 수 있습니다. 이를 보통 샘플링이라고 부릅니다. 선택된 샘플은 두 그룹으로 나뉩니다. 하나는 알고리즘을 훈련시키기 위한 것이고, 다른 하나는 훈련이 잘 되었는지 평가하기 위한 것입니다.

 

🔧  훈련: 이 단계는 목적을 달성할 수 있는 수학적 함수를 찾는 것을 목표로 합니다. 훈련의 형태는 사용한 모델의 종류에 따라 다를 수 있습니다. 단순한 선형 회귀 모델이라면 선(라인)을 맞추는 것, 랜덤 포레스트 알고리즘이라면 의사 결정 트리를 만드는 것 등을 훈련으로 볼 수 있습니다. 의사결정 트리라면 질문을 바꿈으로써 모델의 매개변수를 유효하게 조정할 수 있습니다. 설명을 단순하게 하게 위해 신경망에 집중하겠습니다. 기본적으로 알고리즘은 데이터 세트 일부를 사용해서 지속적으로 충분히 신뢰할 수 있는 결과물이 만들어질 때까지 데이터를 처리하고, 알고리즘의 성능을 측정(역전파라고 합니다)하며 자동으로 매개변수를 조정할 것입니다.

 

🔧  평가: 알고리즘이 훈련 데이터에 대해 좋은 성능을 보이면, 훈련에 쓰이지 않은 데이터로 성능을 다시 측정합니다. 필요하면 추가적인 조정이 이루어집니다. 이 과정을 통해 훈련 데이터에만 성능이 높아지는 과적합 문제를 방지할 수 있습니다.

 

🔧 최적화: 완성된 모델은 애플리케이션에 통합되기 위해 최대한 가볍고 빠르게 동작하도록 최적화될 수 있습니다.

 

머신 러닝에는 어떤 종류가 있을까요?

 

머신 러닝에는 서로 다른 모델이 다수 이용되지만, 학습 유형에 따라 전형적으로 세 가지로 구분됩니다. 지도(supervised) 학습, 비-지도(unsupervised) 학습, 그리고 강화(enforcement) 학습입니다. 완료할 작업에 따라, 어떤 모델은 다른 모델보다 좀 더 적합하고 좀 더 성능이 뛰어납니다.

 

📂 지도 학습

이 학습 유형에서는 모델을 훈련할 때, 각 데이터 요소에 대해 정확한 결과가 명시적으로 주어집니다. 이것은 학습 알고리즘이 데이터를 읽을 때 이미 정답을 받았음을 의미합니다. 정답을 찾는 것보다는 관계를 찾아서 할당되지 않은 데이터 요소가 주어질 때, 그것을 올바르게 분류하거나 예측할 수 있도록 하는 것이 목표입니다. 분류 맥락에서 학습 알고리즘은, 예를 들어 안전하거나 의심스럽다고 명명된 신용 카드 거래와 같이 제공될 수 있습니다. 이 두 분류 사이의 관계를 학습하고 분류 매개변수(예: 구매 위치, 거래간 시간 등)에 따라 새로운 거래를 적절하게 표시할 수 있습니다. 데이터 요소가 서로 관련하여 연속되는 문맥에서는 (시간에 따른 주식의 가격 같은) 회귀 학습 알고리즘이 다음 데이터 요소를 측정하는데 사용됩니다.

 

📂 비-지도 학습

비-지도 학습에서는 학습 알고리즘이 학습할 때 정답이 제공되지 않습니다. 이 학습은 데이터 요소간의 의미 있는 관계를 찾는 것이 목표입니다. 이 모형의 가치는 패턴과 상관관계를 발견하는 것에 있습니다. 예를 들면, 추천 시스템에서 비-지도 학습은 일반적으로 군집(群集) 방법을 사용합니다(예를 들면, 이 와인을 좋아하는 사람은 저 와인도 좋아합니다).

 

📂 강화 학습

이 학습은 지도 학습과 비-지도 학습이 섞인 유형입니다. 이 학습은 종종 좀 더 복잡한 문제를 해결하기 위해 사용하며 주변 환경과 상호 작용이 필요합니다. 데이터는 환경이 제공해 주고, 에이전트는 데이터를 통해 응답하고 학습할 수 있습니다. 실제로 가장 효율적인 모터의 조합을 이용하여 로봇의 팔을 제어하는 것부터, 장애물에 부딪히는 부정적인 피드백으로부터 충돌 회피를 학습할 수 있는 로봇 조종술까지 다양하게 적용할 수 있습니다. 논리 게임은 전통적으로 일련의 의사 결정으로 볼 수 있는데, 이는 강화 학습에 매우 적합합니다(논리 게임으로는 포커, backgammon-주사위 놀이의 일종- 그리고 가장 최근에는 구글의 알파고가 성공을 보여준 바둑을 예로 들수 있습니다). 강화 학습의 일반적인 다른 응용 분야로는 물류, 일정 그리고 업무의 전략적인 계획을 들 수 있습니다.

 

머신 러닝은 무엇에 사용할 수 있을까요?

 

머신 러닝의 개발과 사업적 응용은 서술, 예측, 규정으로 단계를 나눠 고려해볼 수 있습니다. 서술의 단계는 전보다 늘어난 기업의 정보수집 활동을 위해서 녹음, 녹화된 기록과 역사적 자료의 분석을 참고합니다. 관리자들은 결과의 더 나은 이해와 과거에 했던 행동, 그리고 결정들에 따른 결과를 제공 받습니다. 이런 절차는 현재 전세계 가장 큰 기업들의 일상 업무입니다. 예를 들어, 홍보의 효과와 ROI(역주: Return of investment, 투자 수익률)를 이해하기 위해 판매 기록을 검토하고 홍보에 들어간 노력들을 그와 맞춰 봅니다.

머신 러닝 응용의 두 번째 단계는 예측입니다. 특정 결과를 예측하기 위해 데이터를 수집하고 사용한다면 더 빠르게 반응할 수 있고, 더욱 빠른 의사결정과 보다 나은 정확성을 가질 수 있습니다. 응용의 이러한 단계는 현재 대부분의 사업영역에서 수용하고 있는 중입니다. 머신 러닝의 마지막 단계로 지금까지 가장 진보한 단계는 현존하는 사업 영역에 의해 이미 채택되고 있는 중이고, 새로이 더해진 시도에 의해 앞으로 나아가고 있는 중입니다. 행동 또는 결과를 예측하는 것은 효과적이고 효율적인 사업 사례를 목표로 하기엔 아직 충분하지 않습니다. 원인, 동기 그리고 문맥을 이해하는 것은 최적화된 의사결정의 전제 조건입니다. 구체적으로, 이 단계는 사람과 기계가 힘을 합쳤을 때 가능합니다. 머신 러닝은 데이터 전문가가 유의미한 관계가 존재하는 이유를 (머신 러닝 시스템에) 제공해 주었을 때 의미있는 연관관계를 찾곤 했습니다. 보통 말하는, 더욱 정밀하게 행동을 규정하는 것이 가능해지고 있습니다.

뿐만 아니라, 예측을 하는 통찰력 외에도 머신 러닝의 또다른 응용 방향은 바로 자동화입니다. 제가 여기에 대해 좀더 자세한 개요와 이 두 개념의 비교를 제공한 적이 있습니다. (here).

 

다음은 머신 러닝으로 해결할 수 있는 문제 예시입니다.

 

 

물류(Logistics) 및 생산(production) 분야

 

  ▪️ Rethink Robotics는 머신 러닝을 통해 로봇 팔을 교육하고 생산 속도를 향상시킵니다.

  ▪️ JaybridgeRobotics는 보다 효율적인 작업을 위해 산업 등급 차량을 자동화합니다.

  ▪️ Nanotronics는 검사 향상을 위해 광학 현미경을 자동화합니다.

  ▪️ NetflixAmazon은 사용자 요구에 따라 리소스 배분을 최적화합니다.

다른 예로는 ERP/ERM 수요 예측으로 자산 실패 및 유지 보수 예측, 품질 보증 개선 및 생산 라인 성능 향상 등이 있습니다.

 

 

◾ 영업 및 마케팅 분야

 

  ▪️ 6sense는 납의 구매 및 판매 시기를 예측합니다.

  ▪️ Salesforce Einstein은 판매 기회를 예측하고 작업을 자동화하는 데 도움을 얻습니다.

  ▪️ Fusemachines는 AI 보조원과 함께 판매 작업을 자동화합니다.

  ▪️ AirPR은 홍보 성과를 높이는 통찰력을 제공합니다.

  ▪️ Retention Science는 계약을 유도하기 위해 교차 채널(cross-channel) 활동을 제안합니다.

다른 예로는 고객의 평생 가치 예측, 고객 세분화 정확도 향상, 고객 쇼핑 패턴 검색 및 사용자의 인앱(in-app) 환경 최적화 등이 있습니다.

 

 

인적 자원 분야

 

  ▪️ Entelo는 채용 담당자가 지원자를 식별하고 심사하는데 도움을 줍니다.

  ▪️ hiQ는 핵심 인재 관리 작업을 돕습니다.

 

 

금융 분야

 

  ▪️ Cerebellum CapitalSentient는 투자 관리 의사결정에 머신 러닝 소프트웨어 사용 비중을 늘리고 있습니다.

  ▪️ Dataminr은 소셜 트랜드와 속보를 바탕으로 조기 경보 기능을 제공해 실시간으로 금융 관련 의사결정을 할 수 있게 합니다.

그 외 다른 예로는 주가를 예측하거나 금융 부정 행위 탐지 등에도 사용됩니다.

 

 

◾ 헬스 케어 분야

 

  ▪️ Atomwise는 예측 모델을 사용해 의약품 생산 시간을 단축하였습니다.

  ▪️ Deep6 Analytics는 임상 시험 대상 환자를 식별하는 데 머신 러닝 기술을 사용합니다.

다른 예로는 질병을 보다 정확하게 진단하고, 개인의 맞춤화 관리를 개선하고, 건강 위험을 평가합니다.

 

그 외 다양한 머신 러닝과 인공 지능에 관련된 예시들은 샘 드브룰이 작성한 멋진 리스트에서 찾으실 수 있습니다.

 

마지막으로.

 

결국 협업이 핵심이라는 것을 기억하기 바랍니다. 인공 지능이나 머신 러닝이 매혹적이긴 하지만 까다로운 기술이기도 합니다. 인공 지능에 손을 대려면 주변의 인공 지능 전문가와 상의해 보시기 바랍니다. 제가 인공 지능 분야에 대해서 알게 된 것이 있다면, 이쪽 분야의 사람들은 매우 열성적이고 기꺼이 도움을 주려 한다는 것입니다. 아래에 코멘트나 질문을 남겨주셔도 됩니다. 할 수 있다면 제가 즐거운 마음으로 돕겠습니다.

 

 

 

 

🖋 원문 출처: https://dzone.com/articles/understanding-machine-learning 

🖋 원문 저자: Charles A. R.

 

Understanding Machine Learning - DZone Big Data

What, exactly, is machine learning? Brush up on your machine learning knowledge right here.

dzone.com

🖋  '이모 AI/ML번역팀' 은 인공지능과 머신러닝에 대한 아티클을 번역하는 이상한모임 번역 커뮤니티의 기술번역파트입니다.

이 글은 김용균(Edward Kim), 이욱진(novice), 이승윤(seungyuoon lee), 송태의(kofboy2000), 정영우(TomJung), 오시영(ohahohah) 님이 공동번역하였습니다.

Comment +1