Michael Chen | Content Strategist | 2024년 11월 25일
머신러닝은 공상 과학 소설에나 등장하는 용어였지만, 최근 몇 년 사이 기업이 정보를 처리하는 핵심적인 방식으로 자리잡으며 일상적인 용어가 되었습니다. 데이터 생성 속도가 기하급수적으로 증가함에 따라 머신러닝은 데이터로부터 패턴을 발견하고, 추세를 파악하고, 가장 수익성이 높은 경로를 모색하려는 기업을 위한 필수적인 도구 역할을 수행하고 있습니다.
머신러닝은 얼마나 일상적으로 사용되고 있을까요? 이커머스 웹사이트 또는 스트리밍 플랫폼의 제안을 클릭했거나, 신용카드 오용 가능성에 대한 알림을 받았거나, 음성을 텍스트로 변환해 주는 소프트웨어를 사용했다면 이미 머신러닝을 사용해 본 경험이 있는 것입니다. 머신러닝은 금융, 의료, 마케팅, 리테일을 비롯한 다양한 산업에서 데이터로부터 가치 있는 인사이트를 추출하고 프로세스를 자동화하는 데 사용되고 있습니다.
머신러닝(ML)은 데이터를 처리하며 지속적으로 학습하고 개선하는 시스템을 구축하기 위한 인공지능의 하위 집합입니다. 인공지능은 인간의 지능을 모방한 시스템이나 기계를 지칭하는 포괄적인 용어입니다. 머신 러닝과 AI는 함께 논의되는 경우가 많고 서로 교환해서 사용되기도 하지만 같은 것을 의미하지는 않습니다.
즉, 모든 머신러닝은 AI이지만 모든 AI가 머신러닝인 것은 아닙니다.
핵심 요점
머신러닝은 매우 대규모인 경우가 많은 데이터 세트를 검색해 단순한 통계 분석을 넘어 패턴 및 추세를 발견함으로써 데이터로부터 그간 알려지지 않았던 관계성을 새롭게 발견하는 기술입니다. 머신러닝은 데이터의 패턴을 식별하도록 훈련된 정교한 알고리즘을 사용해 모델을 생성합니다. 생성한 모델은 예측을 수행하고 데이터를 분류하는 데 사용할 수 있습니다.
알고리즘은 모델과 동일하지 않다는 사실에 유의해야 합니다. 알고리즘은 특정 문제를 해결하거나 특정 작업을 수행하는 데 사용되는 일련의 규칙 및 절차이고, 모델은 데이터 세트에 알고리즘을 적용한 결과 또는 결과물입니다.
훈련 전에는 알고리즘만이 존재합니다. 훈련 후에는 모델이 구축됩니다.
예를 들어, 머신러닝은 의료 분야에서 의료 영상 분석, 예측 분석, 질병 진단 등의 작업에 널리 사용되고 있습니다. 머신러닝 모델은 MRI 스캔, X-레이, CT 스캔과 같은 의료 이미지를 분석해 패턴을 식별하고, 사람의 눈에는 보이지 않거나 피로한 진단 담당자가 놓칠 수 있는 이상 징후를 감지하기 위한 이상적인 도구입니다. 또한 머신러닝 시스템은 증상, 유전 정보 등의 환자 데이터를 분석해 암, 당뇨병, 심장병과 같은 질환에 대한 검사를 제안할 수 있습니다.
머신러닝의 주요 기능은 다음과 같습니다.
머신러닝에는 크게 네 가지 유형이 있습니다. 각 유형별 장점과 한계를 파악해 수행하고자 하는 작업에 적합한 접근 방식을 선택하는 것이 중요합니다.
강화 학습은 비지도 학습과 마찬가지로 레이블이 지정되지 않은 데이터 세트를 사용하며 알고리즘이 데이터를 평가하도록 합니다. 그러나 강화 학습은 알고리즘이 데이터를 탐색하며 어떤 패턴이 존재하는지 직접 발견하도록 하는 대신 정해진 목표를 향해 작업하도록 한다는 점이 다릅니다. 알고리즘은 주어진 목표를 바탕으로 시행착오를 거듭하는 프로세스를 진행합니다. 각각의 움직임에는 긍정, 부정, 중립적인 피드백이 주어지고 알고리즘은 이를 통해 전반적인 의사 결정 과정을 개선합니다. 강화 학습 알고리즘은 단기적으로는 부정적인 결과를 도출하더라도 거시적인 차원에서는 프로젝트 목표에 점점 가까워지는 방식으로 작동합니다. 즉, 강화 학습은 프로젝트 목표라는 큰 맥락에 따라 위험이 내재된 선택을 수행하기도 하므로 다른 방식보다 더 복잡하고 역동적인 상황을 처리할 수 있습니다. 컴퓨터에게 체스를 가르치는 것이 좋은 예입니다. 전체적인 목표는 게임에서 승리하는 것이지만, 게임이 진행되는 과정에서는 말을 희생시켜야 할 때도 있기 때문입니다.
귀사의 목표를 달성하는 데는 어떤 유형이 가장 적합할까요? 지도 학습 또는 다른 세 가지 학습 방법 중 하나를 선택하는 기준은 일반적으로 가용 데이터의 구조 및 볼륨, 학습에 투입할 수 있는 예산 및 시간, 최종 모델을 적용하고자 하는 사용 사례 등에 따라 달라집니다. 블라우스에 어울리는 스커트를 제안하는 모델을 구축하는 과정에서는 어떤 방식을 사용하든 큰 차이가 없을 수 있습니다. 반면 종양을 찾아내는 모델의 경우 모델의 학습 방식이 환자의 생사를 좌우할 수도 있습니다.
머신러닝은 그 이름과도 같이 프로그래머가 문제 해결을 위한 정적인 알고리즘을 개발하는 고전적인 방식 대신 모델이 훈련 데이터를 직접 분석해 주어진 목적에 맞춰 개선된 컴퓨터 기반 통계 모델을 생성하는 방식으로 작동합니다. 데이터 과학자는 데이터 세트가 ML 모델을 통과한 결과물의 정확도를 판단해 하이퍼파라미터라는 일련의 설정된 변수와 학습 파라미터라는 알고리즘으로 조정된 변수를 사용해 모델을 조정할 수 있습니다.
알고리즘은 학습 데이터를 분석하며 조정되므로 새로운 데이터에 대한 노출 및 계산 프로세스를 통해 작업을 더 잘 수행하도록 알고리즘을 훈련시킬 수 있습니다. 알고리즘은 모델 훈련 프로젝트의 계산을 담당하는 요소이며, '모델'이라는 용어는 실제 사용 사례에 적용할 수 있는 훈련된 알고리즘을 의미합니다.
머신러닝 프로젝트에 가장 적합한 경로는 범위, 리소스, 목표에 따라 결정되지만, 그 과정은 대부분 다음과 같은 일련의 단계를 거치게 됩니다.
1. 데이터 수집 및 컴파일
ML 모델을 훈련하려면 대량의 고품질 데이터가 필요합니다. 그만한 데이터를 찾기가 어려울 수도 있고, 레이블링 작업은 매우 리소스 집약적일 수 있습니다. 잠재적인 데이터 소스를 찾아낸 뒤에는 평가 작업을 통해 데이터의 전반적 품질을 파악하고 프로젝트의 기존 데이터 통합/저장소 리소스와의 연계성을 결정합니다. 데이터 소스는 머신러닝 프로젝트에 필요한 훈련의 기반이 됩니다.
2. 원하는 모델 생성을 위한 적절한 알고리즘 선택
데이터 과학자는 지도, 비지도, 준지도 등 프로젝트에 사용할 학습법에 따라 가장 적합한 알고리즘을 선택합니다. 예를 들어, 레이블이 지정된 데이터 세트가 있는 간단한 프로젝트의 경우 의사 결정 트리를 사용할 수 있지만, 클러스터링(데이터 샘플을 유사한 개체 그룹으로 나누는 것)의 경우 알고리즘이 비지도 방식으로 작동해 목표에 이르는 최적의 경로를 스스로 결정하므로 더 많은 컴퓨팅 리소스가 필요합니다.
3. 분석을 위한 데이터 정제 및 준비
데이터가 바로 사용 가능한 준비가 되어 있지 않을 가능성도 있습니다. 데이터 준비는 훈련 중 모든 레코드를 간단히 가져올 수 있도록 데이터 세트를 정리하는 작업입니다. 데이터 준비는 날짜 및 시간 형식 설정, 필요에 따른 열 조인 또는 분리, 기타 형식 매개변수 설정(예: 실제 숫자 데이터의 허용 가능한 유효 자릿수) 등의 다양한 변환 작업을 통해 수행됩니다. 다른 주요 작업으로는 중복 레코드 정리(또는 데이터 중복 제거), 이상값 식별 및 제거 등이 있습니다.
4. 훈련을 통한 모델 교육
원하는 최종 모델을 선택한 뒤에는 훈련 프로세스가 시작됩니다. 훈련 과정에는 레이블이 지정되거나 또는 지정되지 않은 선별된 데이터 세트를 알고리즘에 공급합니다. 초기 실행에서는 좋지 않은 결과가 도출될 수도 있으며 데이터 과학자는 필요에 따라 성능을 개선하고 정확도를 높이기 위한 조정을 수행합니다. 더 정확한 조정을 위해 다음 번에는 알고리즘에 더 많은 양의 데이터를 보여주는 것이 일반적입니다. 알고리즘이 더 많은 데이터를 볼수록 최종 모델이 더 정확한 결과를 도출할 수 있습니다.
5. 모델 성능 및 정확도 평가
충분한 정확도로 모델을 훈련시킨 뒤에는 훈련 시에는 볼 수 없었던 데이터를 제공해 모델의 성능을 테스트합니다. 테스트에 사용되는 데이터는 초기 훈련 뒤 사용하기 위해 따로 보관해 두었던 훈련용 데이터의 하위 집합인 경우가 많습니다.
6. 모델 매개변수 미세 조정 및 보강
이제 모델이 배포 가능한 수준에 가까워졌을 가능성이 높습니다. 테스트 데이터 세트를 사용해 모델을 실행하면 정확도가 높은 결과를 얻을 수 있습니다. 모델 보강은 일반화된 데이터로 훈련된 모델에 특정 데이터(많은 경우 고유한 기업별 운영 데이터)를 추가적으로 학습시켜 보완하는 방식으로 이루어집니다.
7. 모델 배포
모델의 결과값이 최적화되었다면 해당 모델은 일반적인 운영 환경에서 훈련 과정에서는 접할 수 없었던 데이터를 처리할 준비를 마친 것입니다. 모델을 운영 환경에 배포한 프로젝트 팀은 실제 시나리오에서 모델이 어떻게 작동하는지에 대한 데이터를 수집합니다. 데이터 수집은 모델 산출물의 정확도, 모델 예측의 전반적 정확도, 양성 데이터를 정확하게 예측하는 비율인 리콜 등의 주요 성능 메트릭을 모니터링하는 방식으로 이루어집니다. 또한 모델의 예측이 실제 비즈니스 성과에 어떤 영향을 미치는지, 예를 들어 블라우스의 판매량 증가, 진단 성공률 상승 등의 실질적인 가치를 창출하는지 여부도 함께 고려해야 합니다.
모델 성능에 대한 정기적인 감사 및 검토를 수행하는 것은 배포 후 사용 과정에서 발생 가능한 문제 또는 왜곡을 식별하는 데 도움이 될 수 있으며, 모델의 효과적 작동 및 목표 달성을 위한 필수 요소입니다.
알고리즘은 머신러닝 프로젝트의 계산을 담당하는 요소입니다. 훈련된 알고리즘은 일정한 통계적 확률로 질문에 답하거나 목표를 달성할 수 있는 모델을 구축합니다. 목표는 '고양이를 모두 찾기'과 같이 이미지로부터 특정 요소를 찾는 것일 수도 있고, 사기, 스팸, 기계의 유지보수가 필요한 부분 등을 암시하는 데이터의 이상 징후를 발견하는 것일 수도 있습니다. 구매자가 장바구니에 추가한 항목을 기반으로 구매 확률이 높은 다른 의류 품목을 예측하는 등의 예측 작업에 사용되는 알고리즘도 있습니다.
머신러닝에 사용되는 가장 일반적인 알고리즘은 다음과 같습니다.
신경망을 넘어서
머신러닝은 방대한 알고리즘을 사용합니다. 앞서 설명한 알고리즘들이 가장 많이 사용되지만, 그보다는 덜 일반적이면서도 유용한 5가지 알고리즘은 다음과 같습니다.
| 그래디언트 부스팅 | 이전 시퀀스의 오류에 집중하며 순차적으로 모델을 구축합니다. 사기 및 스팸 감지에 유용합니다. |
| K-최근접 이웃(KNN) | 훈련 데이터에서 가장 가까운 이웃의 레이블을 기반으로 데이터 포인트를 분류하는 간단하면서도 효과적인 모델입니다. |
| 주성분 분석(PCA) | 가장 중요한 특징을 식별해 데이터의 차원을 줄이는 알고리즘입니다. 이상 감지 등을 위한 시각화 및 데이터 압축 작업에 유용합니다. |
| Q-러닝 | 적합한 행동에 대한 보상, 잘못된 행동에 대한 처벌을 제공하며 시행착오를 통해 에이전트를 훈련합니다. |
| 서포트 벡터 머신(SVM) | 이미지 분류와 같이 서로 다른 클래스에 속하는 데이터 포인트를 효과적으로 구분하기 위한 하이퍼플레인을 생성합니다. |
기업은 머신러닝을 통해 데이터로부터 다른 방법으로는 찾을 수 없었던 인사이트를 도출할 수 있습니다. 기업의 프로세스에 머신러닝을 통합해 얻을 수 있는 가장 일반적인 이점은 다음과 같습니다.
머신러닝 프로젝트의 효과는 프로젝트 구축에 사용된 시스템과 자원의 효율성에 비례합니다. 이는 적절한 계획 및 준비를 위한 투자의 중요성을 강조합니다.
머신러닝 프로젝트가 직면하는 가장 일반적인 도전 과제는 다음과 같습니다.
머신러닝은 거의 모든 산업, 기업 내 거의 모든 부서에 유의미한 이점을 제공할 수 있습니다. 충분한 숫자 및 데이터가 존재하는 경우, 머신러닝은 효율성을 높이고 새로운 유형의 참여를 이끌어낼 수 있는 방법을 제공합니다. 산업 전반의 일반적 머신러닝 사용 사례는 다음과 같습니다.
Machine Learning in Oracle Database는 머신러닝 프로세스를 가속화할 수 있는 다양한 기능을 제공합니다. 데이터 과학자는 데이터베이스 내에 저장된 데이터를 그대로 활용할 수 있는 기능을 통해 워크플로를 간소화하고, 보안을 강화하고, 30개 이상의 내장된 고성능 알고리즘, R, SQL, Python을 비롯한 인기 언어 지원, 자동화된 머신러닝 기능, 노코드 인터페이스 등을 활용할 수 있습니다.
대규모 데이터 세트를 보유한 기업의 경우, HeatWave MySQL을 통한 인데이터베이스 머신러닝을 사용하면 머신러닝을 위해 데이터를 별도의 시스템으로 옮길 필요가 없으므로 보안을 강화하고, 비용을 절감하고, 시간을 절약할 수 있습니다. HeatWave AutoML은 알고리즘 선택, 학습을 위한 지능형 데이터 샘플링, 기능 선택, 튜닝 등의 머신러닝 수명 주기 전반을 자동화해 많은 시간과 노력을 절약시켜 줍니다.
머신러닝의 장점은 대량의 데이터를 빠르고 정확하게 분석하고 해석할 수 있다는 것입니다. 훈련 완료된 머신러닝 모델은 인간이 직접 식별하기에는 몇 주가 걸리거나 불가능할 수도 있는 패턴, 트렌드, 인사이트를 단 몇 초 또는 몇 분 내로 식별할 수 있습니다. 결과적으로 더 많은 정보를 바탕으로 의사 결정을 내리고, 문제 해결 능력을 향상시키고, 데이터 기반 예측을 수행할 수 있습니다. 또한, 머신러닝 모델은 반복적인 프로세스를 자동화해 시간과 리소스를 절약시켜 줍니다. 머신러닝에는 업무 환경을 혁신하고 혁신을 주도할 수 있는 잠재력이 있으며, 이제 그 잠재력을 꽃피우기 시작했습니다.
머신러닝은 데이터에서 가치를 창출하는 열쇠이자 성공적인 인공지능 프로그램의 첫걸음입니다.
AI와 ML의 차이점은 무엇인가요?
인공지능은 인간처럼 생각할 수 있는 시스템을 구축하고 개선하는 데 중점을 둔 광범위한 컴퓨팅 분야입니다. 머신러닝은 인공지능의 하위 분야로서 특히 학습 과정의 계산적 측면에 집중합니다. 두 용어는 종종 같은 의미로 사용되고 비슷한 도전 과제에 직면하곤 하지만, 이러한 연관성에도 불구하고 분명 별개의 개념입니다.
머신러닝의 4가지 주요 유형은 무엇인가요?
머신러닝의 4가지 유형은 다음과 같습니다.
머신러닝은 배우기 어려운가요?
다른 기술 분야와 마찬가지로 머신러닝을 숙달하기 위해서는 긴 시간과 반복적인 노력이 필요합니다. 머신러닝을 배우는 좋은 출발점은 Python이나 R과 같은 프로그래밍 언어에 대한 기초 지식, 통계에 대한 지식을 갖추는 것입니다. 머신러닝 결과물을 평가하는 데 관련된 많은 요소에는 회귀, 분류, 피팅, 매개변수 등의 통계적 개념이 사용됩니다.
머신러닝의 예시로는 어떤 것들이 있나요?
머신러닝의 가장 일반적인 예시로는 제안 엔진이 있습니다. 이커머스 사이트에서는 '이런 제품은 어떠신가요?'와 같은 제품 제안에 사용됩니다. 비디오 스트리밍 미디어에서는 다음 차례로 시청할 작품을 제안하는 데 사용됩니다. 알고리즘은 사용자의 과거 기록을 바탕으로 사용자가 흥미를 느낄 만한 내용을 예측합니다. 사용자가 데이터 포인트를 더 많이 추가할수록 알고리즘이 예측을 더 세밀하게 조정할 수 있습니다.