목표

  • 머신 러닝(Machine Learning)이 무엇인지 알아보기
    • 머신 러닝에 대한 개념 이해
  • 머신 러닝과 통계학/빅데이터와의 관계 이해
  • 데이터 분석과 머신 러닝의 관계 이해


머신 러닝이란?

머신 러닝에 대한 정의

머신 러닝은 무엇인가요?

  • 머신 러닝의 선구자 Tom Mitchell CMU 교수가 정의한 머신 러닝

    "A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E."

    "어떤 컴퓨터 프로그램이 특정 작업(T)에 대해, 성능 지표(P)로 측정했을 때, 경험(E)을 통해 성능이 향상된다면, 그 프로그램은 학습한다고 말할 수 있다.”

  • 머신 러닝의 3가지 핵심 요소

    • 작업(T)
      • 프로그램이 수행해야 할 임무
    • 성능 지표(P)
      • 프로그램이 해당 임무를 잘 수행하였는지 평가하기 위한 수치화된 값
    • 경험(E)
      • 작업의 대상, 즉 데이터

예시

  • 스팸 메일을 분류하는 모델을 만드는 작업
    : [데이터셋 → 스팸메일 분류 모델 실행 → 정확도 확인 → 정확도 향상을 위한 모델 업데이트] 의 반복

    • 단순히 프로그래밍 된 소프트웨어(모델)과의 차이점이 뭘까?
      → 아래와 같은 배달 데이터가 매일 수천 건씩 쌓인다고 가정해보자
      • SQL 쿼리
        → 신규 데이터가 추가되어도 ‘조건에 해당하는 데이터’를 뽑아내는 역할만 수행
      • 배달에 걸린 시간을 예측하는 회귀분석 모델
        → 신규 데이터가 추가되면 이를 활용해 예측값의 오차를 줄이는 방향으로 모델을 업데이트
  • 즉, 머신 러닝은 데이터를 활용하여 작업의 성능을 향상하기 위해 모델(머신)을 학습해나가는 과정을 말함!

머신 러닝 vs. AI vs. 딥 러닝


출처

  • 딥 러닝 → 머신 러닝 → AI 순으로 그 개념의 범위가 넓어짐
    • AI
      • 마치 인간처럼 학습 및 추론을 할 수 있도록 만들어진 프로그램
    • 머신 러닝
      • 데이터를 활용해 명시적으로 프로그래밍되지 않고도 학습할 수 있는 알고리즘
    • 딥 러닝
      • 머신 러닝의 종류 중 하나로 인공 신경망을 이용해 거대한 데이터셋을 학습하는 방법


빅데이터와 머신 러닝

빅데이터와 머신 러닝은 뗄 수 없는 관계

  • 빅데이터란?

    • 과거와는 비교가 안되는 엄청난 규모의 데이터를 칭하는 용어
  • 빅데이터의 특징: 5V

    • Volume (규모)
      • 데이터의 양
    • Velocity (속도)
      • 데이터가 생성되고 처리되는 속도
    • Variety (다양성)
      • 데이터의 형태와 종류의 다양함
    • Veracity (정확성)
      • 데이터의 품질과 신뢰성
    • Value (가치)
      • 데이터로부터 창출할 수 있는 가치
  • 빅데이터와 머신 러닝 분야는 상호 보완적으로 함께 발전

    • 머신 러닝의 핵심 요소 중 한 가지가 바로 경험, 즉 데이터
    • 빅데이터의 활용성이 높아짐에 따라 머신 러닝 분야도 계속해서 발전해 왔음
  • 역사적 발전 과정

    1. 초기 단계 (1990년대 ~ 2000년대 초반)
      • PC 및 메모리 기술의 발달로 데이터 저장 비용이 감소하기 시작
      • 인터넷의 보급화 → 인터넷 상의 데이터를 모아서 분석하는 데이터 마이닝 기술 발달
      • 컴퓨터를 활용한 통계적 분석 진행. 그러나 머신 러닝 학습에는 제한적인 데이터.
    2. 빅데이터 시대의 시작 (2000년대 중반 ~ 2010년대 중반)
      • 인터넷 시대의 가속화 → 디지털 데이터 급증
      • 구글, 야후와 같은 테크 기업을 중심으로 대규모 데이터 처리 기술 연구
      • 하둡(Hadoop)과 같은 분산 처리 시스템의 등장
      • 보다 많은 데이터를 활용하여 머신 러닝 모델의 학습
    3. 머신 러닝을 넘어 딥러닝의 시대로 (2010년대 중반 ~ 2020년 초반)
      • AWS와 같은 클라우드 컴퓨팅의 발전 → 데이터 저장 및 처리가 훨씬 간편해짐
      • SNS의 발전으로 텍스트, 이미지 등 다양한 형태의 데이터 축적
      • 대규모 데이터를 이용해 학습하는 딥 러닝(Deep Learning) 모델의 등장
      • (추가) GPU의 발달로 딥 러닝에 대한 연구 가속화
    4. AI 시대의 가속화 (현재)
      • ChatGPT를 필두로 다양한 생성형 AI 서비스가 등장
      • 다양한 산업군에서 AI와 기존의 머신 러닝 기술의 결합하여 유의미한 결과물을 만들기 위해 시도 중


통계학과 머신 러닝

공통점도 많지만 차이점이 있는 두 분야


출처

  • 통계학
    : 표본에서 모집단의 특성을 추론하는 것이 중점

    • 내가 수집한 데이터가 모집단을 얼마나 잘 반영하고 있는지
    • 데이터 셋이 작아도 통계적 유의성만 확인할 수 있으면 Okay!
    • 연역적 추론
      • 가설 설정 → 수학적 검증
  • 머신 러닝
    : 수집된 데이터를 활용해 예측과 일반화 성능을 향상시키는 것이 중점

    • 다른 데이터가 들어왔을 때 기존 모델로 얼마나 비슷하게 예측/분류 할 수 있는지
    • 데이터는 많으면 많을 수록 Good!
    • 귀납적 추론
      • 데이터를 이용해 모델을 우선 돌려보고 결과를 해석
  • 두 분야의 접근 방법이나 지향점이 다르다는 것이지 좋다 나쁘다를 이야기 하는 것은 아님!

    • 데이터 분석을 잘 하기 위해서는 두 가지 분야에 대한 지식을 잘 쌓아두는 것이 좋음


데이터 분석과 머신 러닝

데이터 분석가가 되고 싶은데 머신 러닝을 알아야 할까요?


출처

  • 초반에 다소 추상적이었던 데이터 분석이라는 개념이 최근에는 점점 구체화 및 세분화되고 있음

    • 데이터 분석가(Data Analyst)
      • 데이터를 활용하고 분석하여 의사 결정을 위한 인사이트를 도출
    • 데이터 엔지니어(Data Engineer)
      • 분석의 기초가 되는 데이터를 수집, 저장, 처리 및 데이터 파이프라인 관리
    • 데이터 과학자(Data Scientist)
      • 머신 러닝 등을 활용해서 데이터를 이용한 문제 해결에 집중
  • 위 다이어그램에서 머신 러닝은 데이터 과학자와 데이터 엔지니어의 공통 요구 스킬임!

    • 해당 분야는 수학, 통계학과 프로그래밍 지식이 베이스로 깊이가 있어 인사이트 도출이 주가 되는 데이터 분석가에겐 필수가 아닐 수 있음
    • 그럼 어렵고 관련도 없는 것 같은데 안배워도 될까요?
      • Nope! 세션이 왜 있는지 생각해보세요~

데이터 분석가가 머신 러닝을 학습해야 하는 이유

  1. 깊이 있는 분석이 가능
    • 통계적 분석만으로 확인하기 어려운 비선형적 패턴이나 복잡한 관계를 발견할 수도 있음
  2. 대규모 데이터 및 실시간 데이터 분석 가능
  • 학습한 모델을 바탕으로 대규모 데이터 및 실시간 데이터를 활용해 예측, 분류 등의 작업을 할 수 있음
  1. 다양한 데이터 팀 구성원 및 유관 부서와 협업에 용이
    • 머신 러닝에 대한 이해를 바탕으로 데이터 과학자, 엔지니어 및 유관 부서에 필요한 데이터와 모델을 요청할 수 있음


부록: 참고 자료

학습한 내용에 관련해서 참고할만한 자료들

profile
2 B R 0 2 B

0개의 댓글

Powered by GraphCDN, the GraphQL CDN