본 게시물은 2021.03.31. 에 작성되었으며, 블로그를 이전하며 현재 날짜로 등록되었습니다.
본 게시물은 문일철 교수님의 인공지능 및 기계학습 개론 강의를 보고 정리한 내용입니다.
머신러닝의 정의
- 많은 경험(E)을 학습해 특정 task(T)에 대한 수행 성과가 높아진다.
- 경험, 데이터, 사전 지식이 많아질수록 수행 성과가 높아진다.
규칙 기반의 task를 통해 머신러닝 알아보기
완벽한 세상(perfect world)이란?
- 완벽한 세상 : 관측의 에러가 없다, 모든 관측이 일관적이다, random effect가 없다, 결과를 설명할 수 있는 모든 요인에 대한 경험이 있다.
야외활동 가능 여부를 위한 요인들
- 우리는 야외활동(EnjoySport)이 가능한가에 대한 결과(Yes/No)를 얻기 위해 어떤 요소가 가장 중요한지 알아봐야 한다.
- 어떤 함수를 이용해서 각 요소에 따라 어떤 결과가 나오는지 답을 얻을 수 있고, 그 함수를 이용한 답이 정답과 매우 유사하다면? -> 이것을 Function Approximation이라고 한다.
Function Approximation
- 머신러닝 : Function Approximation을 더 잘할 수 있게 하는 것
- 야외활동 문제를 풀기 위해 Instance X, Training Dataset D, Hypotheses H, Target Function C를 갖고 있다.
- Instance X : 기후 요인을 나타내는 Features, 야외활동 가능 여부를 나타내는 Label로 구성되어있다.
- Training Dataset D : 여러 Instance가 들어있는 집합
- Hypotheses H : 실제 의사결정과 동일할 것이라는 가설
- ex) h_i : <Sunny, Warm, ?, ?, ?, Same> -> Yes
- Target Function C : data를 통해 추론해 알아내야만 하는 함수
- 목표 : h(X)=c(X)
- 각 instance x에 mapping 되는 가설 h가 있다.
- 가설 h별로 mapping되는 instance x의 넓이가 다르다.
- h가 general 할수록 mapping 되는 x의 넓은 것을 그림을 통해 볼 수 있다.
- 어떻게 하면 가장 적합한 가설 h를 찾을 수 있을까?
Find-S 알고리즘
- 가설 h를 가장 specific 하게 초기화한다.
- 모든 데이터셋에 대해 야외활동이 가능할 조건을 만족하는지에 대해 검증한다.
- Find-S 알고리즘은 instance x를 최대한 만족하는 가설을 찾는 방법이다.
- 하지만, 딱 하나의 가설을 찾게 되면 다른 가설들을 수렴하지 못할 수 있다.
Version Space
- 특정 가설이 아닌 범위를 탐색하는 방법
- 여러 가설 중 General 한 영역(G)과 Specific 한 영역(S) 그 중간 범위를 탐색한다.
Candidate Elimination Algorithm
- Version Space를 찾기 위해 Candidate Elimination Algorithm을 사용한다.
- 가장 specific 한 가설과 가장 general 한 가설을 세운 후 그 범위를 좁혀나가면서 Version Space를 탐색한다.
- 각 instance x에 벗어나는 조건들을 변경(제거)하면서 적합한 가설(version space)을 탐색한다.
위 알고리즘의 단점
- 새로운 instance를 가설이 수렴시키지 못할 수 있다.
- 데이터셋에 노이즈가 있을 수 있다.
- 또 다른 요인이 있을 수 있다.
반응형