일반화 선형 모델

(Generalized linear

models, GLM)

선형 회귀(linear regression)의 발전된 형태로, 다양한 가능성 분산과 연결 함수를 지원해 분석가가 더 효과적으로 데이터를 모델링할 수 있도록 한다. 그리드 탐색(grid search)으로 강화된 GLM은 전통적인 통계와 가장 발전된 머신러닝의 조합이다.

일반화 선형 모형은 종속변수가 정규분포하지 않는 경우를 포함하는 선형모형의 확장이며 glm()함수를 사용한다. 

  • 종속변수가 범주형변수인 경우 : 이항변수( 0 또는 1, 합격/불합격, 사망.생존 등)인 경우도 있으며 다항변수(예를 들어 poor/good/excellent 또는 공화당/민주당/무소속 등)인 경우 정규분포 하지 않는다.
  • 종속변수가 count(예를 들면 한 주간 교통사고 발생 건수, 하루에 마시는 물이 몇잔인지 등)인 경우. 이들 값은 매우 제한적이며 음수가 되지 않고 평균과 분산이 밀접하게 관련되어 있고 정규분포하지 않는다.

의사결정 트리

(Decision trees)

각 속성들이 포함되어 있는가 아닌가를 기반으로 분류를 수행함.

'일병'이라는 단어가 있는 집합과 들어있지 않은 집합으로 나누고, '육군'이라는 단어가 들어있는 집합과 들어 있지 않은 집합으로 분류하여, '일병과 육군이 동시에 들어 있으면 군인 카테고리로 구분할 수 있다'와 같은 룰을 만드는 방식으로 질문 트리를 자동으로 만든다. 

결론적으로, 질문에 들어 있는 각각의 요소에 대해 그 단어가 들어 있는지 아닌지를 가지고 가장 그럴듯한 분류와 그 결과를 뽑아 내는 것  

나이브 베이즈법(Naive Bayes)

확률에 관한 유명한 정리인 '베이즈의 정리'를 사용해 나누는 방법으로, 데이터의 특징마다 어느 카테고리에 꼭 들어 맞는가에 대한 확률들을 곱해 가장 그럴 법한 분류를 찾는다.

예를 들어 기사에 '여당'이라는 단어가 들어 있었다면 아마도 그 기사는 정치 기사일 가능성이 높을 것이다. 이것은 확률적으로 다음과 같이 생각할 수 있다.  모든 카테고리의 기사에 '여당'이라는 단어가 포함되는 확률과 정치 카테고리에 '여당'이라는 단어가 포함되는 확률을 비교한다. 이 확률의 비교가 예를 들어 '1:10'이라면 정치 카테고리에 log(10/1), 즉, 1포인트 추가한다. 이 비교가 극단적일수록 높은 점수가 들어간다. 이것을 조사하고 싶은 기사 중에 포함되는 모든 단어로 시도한후에, 최종적인 '정치' 카테고리의 점수, '과학'카테고리의 점수, '문학'카테고리의 점수를 계산하여 가장 높은 것을 옳은 분류의 결과로 판정한다는 것이다.

그러나 차별적인 결과를 나타낼 가능성도 있어서 속성에 근거한 평가에 의해 합리적인 의사결정을 만들어야 함.

스팸메일 분류를 위해 그 필터는 하나하나의 키워드가 '어떤 확률로 스팸 메일이 될 가능성이 있나'를 수치로 갖고 있도록 함.

서포트 벡터 머신(Support Vector Machine, SVM)

최근 15년 정도 유행하던 방법으로 데이터를 구분 짓는 구분선과 각 데이터 그룹간의 간격을 최대로 나누는 방법.

 

 

 

 

 

즉. 3가지의 정보가 널려있다면 1과 2의 각각의 가장자리에서 동일한 간격의 중앙점을 찾아 나누어 구분한다면 2개를 나눌수 있을 것이다. 다른 나머지 1개도 마찬가지로 구분 짓는다. 정밀도가 높은서 잘 이용되어 왔으나 큰 데이터에 대한 계산은 시간이 걸리는 단점이 있다.

뉴럴네트워크

(Neural Network)

지금까지의 방법이 단순하게 분류하는 것인데 반하여 뉴럴네트웍은 인간의 뇌신경 회로를 흉내 내 매우 복잡한 구조의 힘을 통해 분류하는것.

앞에서도 언급한것과 같이 뉴런과 시냅스의 작동과 유사한 작동을 한다. 여기에 자극이 일정 임계값을 넘지 못하면 전기 신호가 발생되지 않아 그 값을 0으로 처리하고 신호가 발생되면 1로서 정보를 전달하는 방식

 

 

출력이 0.3이므로 발현되지 않는것으로 분류함

이러한 일련의 작업에서 중요한 것은 weight로서 인간의 뉴런이 학습에 의해 시냅스의 결합 강도를 변화시키듯이 학습하는 과정에서 가중치의 부여를 변화시켜 최적인 값을 출력하여 조정하는 것으로 정밀도를 높여 간다. 결과적으로 훈련 데이터를 통해 이 가중치값들이 결정되면 이들의 결정된 네트워크를 통해 입력 데이터를 분류하는 것

그럴다면 기계학습에서느 어떤 데이터가 필요한것인지 또는 어떤 정확한 결과 데이터가 필요한지 이 2개의 조합에 의해 얼마나 새로운 일을 시킬수 있는지 예를 들어보자

- 음식점의 좋고 나쁨을 판별할수 있는가?

- 자신이 좋아하는 음악장르를 분류할 수 있는가?

- 경기 결과에 영향을 주는 생활 패턴을 분류할 수 있는가? 등

딥 러닝

(Deeping Learning)

뉴럴 네트웍의 발전에 의해 혁신적인 결과를 도출해 낸 분야로 데이터의 고수준 패턴을 복합적인 다계층 네트워크로 모델링하는 방법. 문제를 모델링하는 가장 일반적인 방법이며 머신러닝의 가장 어려운 문제를 해결할 잠재력을 지님

 

1) 퍼셉트론
2) 델타 알고리듬
3) 다층퍼셉트론
4) 오류역전파 알고리듬

 

등 앞으로 다루어야할 중요한 부분들이 많다

+ Recent posts