머신러닝이란?

leban·2022년 4월 3일
0

머신러닝

목록 보기
1/2

# 머신러닝이란 무엇인가?

  • 데이터로부터 학습하도록 컴퓨터를 프로그래밍하는 분야
  • "명시적인 프로그래밍 없이 컴퓨터가 스스로 학습하는 능력을 부여하는 것" - Arthur Samuel
  • 과거 경험에서 학습을 통해 얻은 지식을 미래의 결정에 이용하는 컴퓨터 과학의 한 분야
  • 관측된 패턴을 일반화하거나 주어진 샘플을 통해 새로운 규칙을 생성하는 목표를 가짐

<머신러닝이 적용된 프로그램>

1) 알파고
2) 자율주행차
3) 음성 인식
4) 문자 인식

# 전통적인 접근방법

→ 길고 복잡해지는 규칙, 높아지는 비용

# 머신러닝 접근방법

→ 짧아진 프로그램의 길이, 높아진 분류 정확도

# 자동으로 변화에 적응

→ 자동으로 변화에 적응하여 사람의 개입이 필요 없음

# 머신러닝을 통해 새로운 패턴을 발견

→ 비용, 적응성, 새로운 가치의 측면에서 매우 유용

# 지도 방식에 따른 분류

1) 지도 학습

  • 학습 데이터가 입력(특징 행렬)과 출력(대상 벡터) 쌍으로 제공됨 -> "레이블 데이터"
  • 학습 목표는 입력 특징 행렬과 출력 대상 벡터를 매핑시키는 규칙을 찾는 것임
  • 입력 특징 행렬에 대한 출력 대상 벡터가 알려져 있으므로 '지도'라 부름

<해결할 수 있는 대표적인 문제>

1) 회귀

  • 연속형 수치 데이터 예측
  • 집 값, 중고차 가격, 주가 예측 등

2) 분류

  • 범주형 데이터인 클래스 레이블 예측
  • 스팸 메일 필터, 긍정/부정의 감성분석, 채무 불이행 예측 등

<알고리즘>

  • k-최근접 이웃, 선형 회귀, 로지스틱 회귀, 서포트 벡터 머신, 결정 트리와 랜덤 포레스트, 신경망

2) 비지도 학습

  • 학습 데이터로 입력(특징 행렬)만 제공됨 -> "레이블 없는 데이터"
  • 입력 특징 행렬에 대한 출력 대상 벡터가 없으므로 '비지도'라 부름

<해결할 수 있는 대표적인 문제>

1) 군집

  • 특징이 비슷한 것들끼리 묶어 군을 만드는 것
  • k-평균, 계층 군집 분석(HCA), 기대값 최대화 등

2) 시각화와 차원축소

  • 시각화 시 인간이 인지할 수 있는 차원(2차원 등)으로 축소하는 것
  • 주성분분석(PCA), 커널 PCA, 지역적 선형 임베딩(LLE), t-SNE

3) 연관 규칙 학습

  • 구매 경향성 규칙 발견 등(장바구니 분석)
  • Apriori, Eclat

<추천 엔진>

3) 강화 학습

  • 시스템이 어떤 목표를 달성하기 위해 동적인 조건에 적응하도록 함
  • 학습하는 시스템("에이전트")이 환경 관찰 -> 액션 실행 -> "보상" 또는 "벌점"
  • 시간이 경과하면서 가장 큰 보상을 얻기 위해 최상의 전략("정책")을 스스로 학습
  • 자율주행자동차, 알파고

4) 준지도 학습

  • 학습 데이터에 레이블이 일부만 있는 경우 활용
  • 데이터 세트 전체에 레이블을 붙이는데 고비용이 발생
  • 사진 입력을 통한 사람 식별(군집) + 개인 정보 레이블
  • 지도 학습 + 비지도 학습
  • 심층신뢰신경망(DBN)은 제한된 볼츠만 머신(RBM)과 같은 비지도 학습에 기초

파이썬 머신러닝 강의 01-2 - 머신러닝을 사용하는 이유
출처: 파이썬 머신러닝 강의 01-3 - 머신러닝 기법의 분류

0개의 댓글