ML (1)
[STUDY] 5월 2주차 - 머신러닝 시스템의 종류

[머신러닝 프로젝트의 기본 형태]

·         데이터를 분석한다.

·         모델을 선택한다.

·         훈련 데이터로 모델을 훈련시킨다.

·         새로운 데이터에 모델을 적용해 결과를 예측 한다.

 

 

1.     학습하는 동안의 감독 형태나 정보량에 따른 분류

a.     지도 학습

§  알고리즘에 주입하는 훈련 데이터에 레이블(정답)이 포함되는 학습

§  지도 학습의 전형

·         분류 (ex. 스팸 필터)

·         예측 : 예측 변수(특성, feature)를 사용해 타깃 변수 예측 (ex. 중고차 가격)

·         속성(attribute) : 데이터 타입 (ex. 주행거리)

·         특성(feature) : 속성 + (ex. 주행거리=15000)

·         분류 예측 : 특정 클래스에 속할 확률을 예측(ex. 로지스틱회귀)

·         지도 학습 알고리즘

·         k-최근접 이웃(KNN) : 특정 공간 내에서 입력과 제일 근접한 k개의 요소를 찾아 더 많은 갯수가 일치하는 것으로 분류하는 알고리즘

·         선형회귀 : 독립 변수와 종속 변수 간의 관계를 찾는 것

 ex : 통화량(독립변수1)과 실업률(독립변수2)이 물가(종속변수)에 미치는 영향 예측

·         로지스틱 회귀 : 특정 클래스에 속할 확률을 추정

·         서포트 벡터 머신 : 공간을 결정 경계로 어떻게 나누는가?


·         결정 트리와 랜덤 포레스트

·         결정트리 : 다양한 의사결정 경로와 결과를 나타내는 트리구조(ex. 스무고개)

·         랜덤포레스트 : 결정트리로 만들어진 예측 알고리즘

·         신경망

b.     비지도 학습

·   레이블이 없는 훈련 데이터로 학습하는 방법

·   비지도 학습 알고리즘

    • 군집

·         k-평균 : 주어진 데이터를 k개의 클러스터로 묶는 알고리즘

·         계층군집분석 : 각 그룹을 작은 그룹으로 세분화 하면서 분류

·         기댓값 최대화(EM 알고리즘) :  예상과 최대화를 반복해 개체 분류

·         무작위로 군집의 평균, 분산, 혼합 계수를 정한다

·         각 점이 군집에 속할 확률을 구한다(예측단계)

·         가능도가능도(likelihood)를 최대화 하도록 분포를 업데이트 한다(최대화단계)

·         더 이상 분포가 바뀌지 않을 때 까지 예측단계-최대화단계를 반복한다

·         시각화와 차원 축소

·         시각화 : 고차원 데이터를 도식화하는 것. 데이터 자체만으로 볼 수 없었던 데이터의 조직과 패턴을 파악할 수 있음.

·         차원 축소 : 너무 많은 정보를 잃지 않으면서 데이터를 간소화 하는 방법. 실행 속도가 빨라지고 모델의 성능이 좋아지는 것을 기대할 수 있음.

·         주성분 분석(PCA) : 데이터 하나 하나에 대한 성분을 분석하는 것이 아니라, 여러 데이터들이 모여 하나의 분포를 이룰 때 분포의 주 성분을 분석해 주는 방법(쉽게 말해 여러 개 모아놓고 한개로 퉁치는 방법인가?)

·         특성 추출 : 밀접한 상관관계가 있는 여러 특성을 한 특성으로 취급하는 것

ex) 차의 특성 중에 '주행거리' 특성과 '연식' 특성은 두개가 밀접한 관계(연식이 오래 됐을 수록 주행거리가 길다)가 있다는 것을 고려해서, 두 특성을 묶어 하나의 특성('주행거리-연식')으로 취급하는 것.

·         이상치 탐지 : 입력 된 데이터가 정상 데이터인지 이상치인지 판단

ex) 이상한 신용카드 거래 감지, 제조 결함 감지

·         연관 규칙 학습커널

·         지역적 선형 임베딩

·         t-SNE

·         연관규칙학습 : 여러 특성 간의 연관 관계를 찾는 것

ex) 연식과 주행거리는 비례한다/바비큐 소스를 많이 산 사람은 스테이크도 많이 구매한다.

·         어프라이어리

·         이클렛

c.     준지도 학습 : 레이블이 일부만 있는 데이터를 학습

·   지도 학습과 비지도 학습의 조합으로 구성됨.

ex) 심층 신뢰 신경망 : 세부 비지도 학습을 수행 한 후 그 결과를 전체 시스템에 지도 학습 방식으로 적용 및 조정함.

ex) 구글 포토 호스팅

·         비지도학습 : 각 사진으로부터 같은 인물로 추정되는 이미지 군집

·         지도 학습 : 한 인물 이미지로부터 '이름' 특성이 있는 데이터

d.     강화학습 : 에이전트(학습을 수행하는 시스템)가 환경을 관찰, 행동하고 결과로 보상과 벌점을 받는 것을 반복하면서 에이전트의 정책이 최상의 전략이 되도록 학습하는 것.

 

2.     실시간 학습 여부

a.     배치 학습(=오프라인 학습)

·         시스템 훈련을 먼저 수행하고 학습 적용 (학습 먼저 하고 나중에는 적용만 한다)

·         시스템이 점진적으로 학습할 수 없음. (한번 학습하면 끝임)

·         시간과 자원을 많이 소모하므로 보통 오프라인에서 수행된다.

·         가용한 데이터를 모두 사용해 훈련시켜야 한다.

·         새로운 데이터에 대해 학습하려면 이전 데이터를 포함해서 시스템의 새로운 버전을 처음부터 학습시켜야 한다.

b.     온라인 학습

·         데이터를 순차적으로 한 개씩 또는 미니배치라 부르는 작은 묶음 단위로 주입하여 시스템을 훈련시킨다.

·         학습 단계가 빠르다. (데이터를 받는 족족 학습시킨다)

·         빠른 변화에 적응해야 하는 시스템에 적합하다.

·         컴퓨터 자원이 한정적인 경우 적합하다.

·         학습률 : 변화하는 데이터에 얼마나 빠르게 적응할 것인지 결정하는 파라미터

·         학습률이 높으면 시스템이 데이터에 빠르게 적응하지만 예전 데이터를 금방 잊는다.

·         학습률이 낮으면 시스템의 관성이 더 커져서 더 느리게 학습되지만 새로운 데이터가 오류가 있을 경우 영향을 덜 받는다.

·         나쁜 데이터가 주입되었을 때 시스템 성능이 점진적으로 감소한다는 특징이 있다.

3.     학습 기반 별 분류

a.     사례 기반 학습

·         시스템이 사례를 기억함으로써 학습한다

ex) 사용자가 스팸메일이라고 지정하면 그 것을 기억한다.

·         새로운 데이터는 입력 된 사례들과의 유사도를 통해 예측을 적용한다.

b.     모델 기반 학습

·   데이터로 모델을 만들어서 모델을 써서 예측하는 방법.

·   모델 선택 : 예측 결과를 반환 할 모델을 선택하는 것.

ex) 월급 액수와 행복도 간의 상관관계를 예측 모델로 선택한다.

    (행복도) = w * (월급) + b

    -> w, b를 모델 파라미터라 한다.

·         효용 함수(utility function) : 모델의 성능이 얼마나 좋은지 측정하는 함수

·         비용 함수(cost function) : 모델의 성능이 얼마나 나쁜지 측정하는 함수

·         모델 훈련 : 선택한 모델이 높은 효용 함수 결과, 혹은 낮은 비용 함수 결과를 나타내도록 모델 파라미터(w, b) 값을 찾는 것.

 

  Comments,     Trackbacks
최근 작성 글
최근 작성 댓글
최근 작성 트랙백
프로필
공지사항
글 보관함
캘린더
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
TODAY TOTAL