Computer Engineering/머신러닝(ML: Machine Learning)

[ML] 2-1. 머신러닝의 종류 및 적용 사례 (지도 학습, 비지도 학습, 준지도 학습, 강화 학습)

잇트루 2021. 4. 14. 13:20
반응형

[이전글]

[ML] 1. 머신러닝이란 무엇인가? (About ML: Machine Learning)

ittrue.tistory.com/33

 

[ML] 1. 머신러닝이란 무엇인가? (About ML: Machine Learning)

1. 머신러닝이란? 아서 새뮤얼(Artuhr Samuel, 1959) "머신러닝은 명시적인 프로그래밍 없이 컴퓨터가 학습하는 능력을 갖추게 하는 연구 분야" 톰 미첼(Tom Michell, 1977) "어떤 작업 T에 대하여 컴퓨터 프

ittrue.tistory.com

 

머신러닝의 대표적인 적용 사례

  • 이미지 분류 : 제품 생산 시 제품의 이미지를 분석해 자동으로 분류하는 시스템
  • 시맨틱 분할 : 인간의 뇌를 스캔하여 종양 여부의 진단
  • 텍스트 분류(자연어 처리) : 자동으로 뉴스, 블로그 등의 게시글 분류
  • 텍스트 분류 : 토론 또는 사이트 등에서의 부정적인 코멘트를 자동으로 구분
  • 텍스트 요약 : 긴 문서를 자동으로 요약하여 요점 정리
  • 자연어 이해 : 챗봇(chatbot) 또는 인공지능 비서 만들기
  • 회귀 분석 : 회사의 내년도 수익 예측
  • 음성 인식 : 음성 명령에 반응하는 프로그램
  • 이상치 탐지 : 신용 카드 부정 거래 감지
  • 군집 작업 : 구매 이력을 기반으로 고객 분류 후 서로 다른 마케팅 전략 계획
  • 데이터 시각화 : 고차원의 복잡한 데이터셋을 그래프와 같은 효율적인 시각 표현
  • 추천 시스템 : 과거 구매이력, 관심 상품, 찜 목록 등을 분석하여 상품 추천
  • 강화 학습 : 지능형 게임 봇 만들기

 

1. 머신러닝 시스템의 분류

머신러닝 시스템의 종류를 나누어 분류하기 위해서는 훈련 지도를 하는지, 실시간으로 훈련을 하는지, 예측 모델을 사용하는지 등 세 가지 기준을 통해 분류할 수 있습니다.

  1. 훈련 지도 여부 : 지도 학습, 비지도 학습, 준지도 학습, 강화 학습
  2. 실시간 훈련 여부 : 온라인 학습, 배치 학습
  3. 예측 모델 사용 여부 : 사례 기반 학습, 모델 기반 학습

하지만 분류하는 기준은 상호 배타적이지 않아 하나의 훈련 모델이 세 가지의 기준을 충족할 수도 있습니다. 예를 들어 스팸메일을 구분하는 프로그램의 경우 실시간으로 스팸 메일을 분류하는 학습이 가능하며 지도 학습과 온라인 학습, 모델 기반 학습을 통해 완성되어 머신러닝 시스템의 분류 기준 세 가지를 모두 충족할 수 있습니다. 이를 분류 기준의 상호 배타적이지 않다고 하며, 비배타성이라고도 합니다.

 

2. 훈련 지도 여부 구분

2-1 지도 학습

지도 학습은 훈련 데이터로부터 하나의 함수를 유추해내기 위한 방법입니다. 훈련 데이터는 일반적으로 입력 객체에 대한 속성을 벡터 형태로 포함되고 있으며 각각의 벡터에 대한 원하는 결과가 무엇인지 표시되어 있습니다. 이렇게 유추된 함수 중 연속적인 값을 출력하는 것을 회귀분석, 주어진 입력 벡터가 어떤 종류의 값인지 표시하는 것을 분류라 합니다.

지도 학습에는 훈련 데이터에 레이블(label) 또는 타깃(garget)이라는 정답지가 포함되어 있습니다.

 

1) 분류(classification)

분류는 전형적인 지도 학습 작업 중 하나로 앞서 설명한 스팸 필터 프로그램이 예를 들 수 있습니다. 스팸 필터 프로그램은 여러 가지 메일과 발송 기관 등을 샘플로 훈련하여 스팸메일인지 아닌지를 분류할 수 있도록 훈련되어야 합니다.

 

2) 회귀(regression)

회귀는 여러 가지 특성을 사용하여 타깃의 수치를 예측하는 방법 중고차 가격 예측을 예로 들 수 있습니다. 중고차 가격을 예측하기 위해 사용되는 특성에는 주행거리, 연식, 브랜드 등을 사용할 수 있으며, 타깃은 중고차의 가격이 되어 타깃을 예측하는 것입니다. 회귀 방법을 사용하기 위해서는 예측 가능한 변수와 레이블이 포함된 대량의 중고차 판매 데이터가 필요하게 됩니다.

 

3) 지도 학습 알고리즘

지도 학습을 하기 위해 사용되는 알고리즘입니다.

  • k-최근접 이웃(kNN : k-Nearest Neighbors)
  • 선형 회귀(linear regression)
  • 로지스틱 회귀(logistic regression)
  • 서포트 벡터 머신(SVC : support vector machines)
  • 결정 트리(decision trees)
  • 랜덤 포레스트(randome forests)
  • 신경망(neural networks)

2-2 비지도 학습

비지도 학습은 레이블이 없는 훈련 데이터를 이용하여 시스템이 스스로 학습을 하도록 하는 학습 방법입니다. 데이터가 어떻게 구성되어 있는지를 알아내는 문제의 범주에 속하여 지도 학습, 강화 학습과는 달리 입력 값에 대한 목표치가 주어지지 않습니다. 비지도 학습의 대표적인 예로는 군집, 시각화, 차원 축소, 연관 규칙 학습 등이 있습니다.

 

1) 군집

군집은 데이터를 비슷한 특징을 가진 몇 개의 그룹으로 나누는 것으로 블로그 방문자들을 그룹으로 묶는 것을 예로 들 수 있습니다. 어떤 블로그에 방문자들을 성별, 날짜, 연령대, 게시글 카테고리 등으로 그룹화하는 것을 뜻합니다. 군집의 대표적인 알고리즘에는 k-평균, DBSCAN, 계층 군집 분석 등이 있습니다.

 

2) 시각화와 차원 축소

시각화는 레이블이 없는 다차원 특성을 가진 데이터셋을 2D 또는 3D로 표현하는 것으로 시각화를 하기 위해서는 데이터 특성을 두 가지로 줄여야 합니다. 시각화된 데이터는 구성 패턴을 통해 어떻게 조직되어 있는지 이해할 수 있게 되고 이상치 패턴들을 발견하여 잘못된 정보를 분석할 수 있게 됩니다.

 

차원 축소는 데이터의 특성 수를 줄이는 것으로 상관관계가 있는 여러 특성을 하나로 합치는 과정입니다. 이를 특성 추출이라 하며 예를 들어 자동차의 주행거리와 연식은 상관관계가 높아 자동차의 '마모 정도'라는 하나의 특성으로 합칠 수 있습니다. 차원 축소를 통해 머신러닝 알고리즘의 성능을 향상할 수 있고, 훈련 실행 속도가 빨라지는 등 메모리 사용 공간이 줄어드는 장점이 있습니다.

 

시각화와 차원 축소의 알고리즘으로는 주성분 분석(PCA), 커널 PCA, 지역적 선형 임베딩, t-SNE 등이 있습니다.

 

3) 이상치 탐지(Outlier detection)와 특이치 탐지(Novelty detection)

이상치 탐지는 정상 샘플을 이용하여 훈련 후 입력 샘플의 정상여부를 판단하여 이상치를 추출하거나 자동으로 제거하는 것으로 신용 카드의 부정거래를 감지하거나 제조업에서 제품 결함을 잡아내는 것을 예로 들 수 있습니다.

 

특이치 탐지는 전혀 오염되지 않은 훈련 세트를 활용한 뒤 훈련 세트에 포함된 데이터와 달라 보이는 데이터를 감지하는 것입니다.

 

이상치 탐지와 특이치 탐지를 비교하기 위해 수 천장의 강아지 사진에 치와와 사진이 1% 정도를 포함하여 탐지를 할 경우를 예로 들 수 있습니다. 특이치 탐지 알고리즘은 새로운 치와와 사진을 특이치로 간주하지 않는 반면에 이상치 탐지 알고리즘은 새로운 치와와 사진을 다른 강아지들과 비교하여 다른 종으로 간주할 수 있는 차이가 있습니다.

 

4) 연관 규칙 학습

연관 규칙 학습은 데이터 특성 간의 흥미로운 관계를 찾는 것으로 마트 판매 기록을 예로 들 수 있습니다. 예를 들어 연관 규칙 학습을 통해 바비큐 소스와 감자 구매와 스테이크 구매 사이의 연관성이 밝혀지게 된다면 이들을 가까운 진열대에 진열할 수 있도록 하는 것으로 서로 다른 데이터의 연관성을 찾을 때 사용합니다.

 

2-3 준지도 학습

새로운 사례인 X는 세모에 더 가깝다고 판단한다.

준지도 학습은 레이블이 적용된 적은 수의 샘플이 주어졌을 때 유용한 방법으로 비지도 학습을 통해 군집을 분류한 후 샘플들을 활용해 지도 학습을 실행하는 것입니다. 대부분 머신러닝을 사용할 때 지도 학습과 비지도 학습을 혼합하여 사용하고 있습니다. 

 

준지도 학습의 좋은 예로 구글 포토 호스팅을 들 수 있습니다. 가족사진 몇 장에만 레이블을 적용하여 이후 모든 사진에서 가족사진을 확인 가능하도록 하는 것을 말합니다. 

 

2-4 강화 학습

강화 학습은 학습 시스템을 에이전트라 부르며, 에이전트가 취한 행동에 대해 보상 또는 벌점을 주어 가장 큰 보상을 받는 방향으로 유도하는 방법입니다. 여기서 가장 큰 보상을 얻기 위해 에이전트가 해야 할 행동을 선택하는 방법을 정의하게 되는데 이를 정책이라 합니다. 강화 학습에는 딥마인드의 알파고를 예로 들 수 있습니다.

 

[다음글]

[ML] 2-2. 머신러닝의 종류 및 적용 사례 (2)

ittrue.tistory.com/36

 

[ML] 2-2. 머신러닝의 종류 및 적용 사례 (2)

[이전글] [ML] 2-1. 머신러닝의 종류 및 적용 사례 (1) ittrue.tistory.com/35 [ML] 2-1. 머신러닝의 종류 및 적용 사례 [이전글] [ML] 1. 머신러닝이란 무엇인가? (About ML: Machine Learning) ittrue.tistory.c..

ittrue.tistory.com

 

반응형