기계학습1
머신의 로그데이터 등등. 데이터양이 폭증했기때문에
text data
network data
timeseries data
image data
geospace data
....
machine learning의 다양한 어플리케이션
Document Classification- 스팸거르기.
Stock Market Prediction
PlateNum. Recognition
SNS Recommendation
Helicopter Control - 로봇들 행동 결정하는데 많이 쓴다.
Opinion Mining and more
: 선거에도 사용함. 어떤 이벤트에 대한 사람들의 perception 파악,
Stock Market Prediction and more
알아 맞추기, 예상 - supervised learning
요약정리,군집찾아내기- unsupervised learning
어떠한 것들이 좀더 지능적인 행동인가, 우리가 원하는 로봇의 행동인가.- reinforcement learning
Supervised learning
- supervision 이 가미된 러닝
spam filtering
automatic grading
automatic categorization
Classification or Regression of
Hit or Miss : Something received either A+, B, C, or F:
Types : An article is either positive or negative
Value prediction : The price of this artifact is X
Methodologies
Classification :estimating a discrete dependent value from observations
Regression : estimating a (contnuous) dependent value from observations
- Unsupervised learninga : 사람들이 데이터를 주기 힘든 경우.
스스로 패턴을 만들고 찾아내는 학습
You don't know the true value,
1.case, such as
discover laten factor(잠재적인 현상을 드라이브하는 이유들을 찾고싶 을떄)
discover clusters , 주제요약등등
discover graph structure
2. Clustering or filtering or completing of
finding the representative topic words from text data
finding the latent image from facial data
Completing the incomplete matrix of product review scores
filtering the noise form the trajectory data
Methodologies
Clustering : estimating sets and affiliations of instances to the sets
Filtering : estimating underlying and fundamental signals from the mixture of signals and noises
<Binomial Distribution>
연속적인 것이아닌 이산분포에 대한 확률분포
앞이냐 뒤냐, 왼이냐 오른이냐...
Bernoulli experiment : 이산분포를 여러번 돌려보는 실험
압정을 던질때 , i.i.d condition을 가정하고 던지는 것이다.
앞에 던진 사건과 그 뒤에 던진 사건이 서로 연관이 없는 독립사건이라는 가정 independent events
동일한 조건이 계속반복된다. identically distributed according to binomial distribution
p(head) = x ( 압정이 만들어내는 정보인데 압정의 특이한 구조에서 head 가 나올확률), P(tail)= 1-x
p(HHTHT) = xx(1-x)x(1-x)= x^3(1-x)^2
---
D as Data = H,H,T,H,T
n=5
k= 3(head가 나오는 횟수)
p= x (head가 압정의 모양에 귀속되어 나올확률)
f(k;n,p) = P(K=k)= 행렬로 만드네..
n과 p는 파라미터로 주어졌는데 k값을 다양하게 만들어서 보는것.
One candidate is the Maximum Likelihood Estimation (MLE) of x
Choose x that maximizes the probability of observed data
P(D|x)= x3(1-x)2
x값이 정해진 상태에서 D (H,H,T,H,T) 가 만들어질 확률
D는 우리가 관측한 정보
가정은 결과가 이미 정해진 확률의 결과를 따른다고 가정하고,
가정이 어떻게 하면 더욱더 strong해질까.
- ** Finding out a better distribution of the observation
can be done,m but you need more rational
- **Finding out the best candidate of x
What's the condition to make x most plausible?
- 반복실험을 잘하고, 나올확률을 최적화해서 좀더 잘 조절하는거?
어떤 확률을 선택을 했을 경우에, 이 우리가 원하는 Data를 잘 설명을 할 수 있을까?
우리가 관측한 데이터를 나오게 하는 확률x중 최대화하는 확률x'을 찾아내는 것이다.
x' = argmaxx P(D|x)(본식)
x라는 확률이 주어졌을때 D가 관측될 확률을 최대화하는x를 찾아내서 그것을 x' 라고 한다.
지수승이 나오는 방정식은 이용하는데 너무 복잡하기때문에 여기서 사용되는 테크닉은
로그함수를 사용하는 것이다. 로그 함수는 모노토닉하게 증가하는 특징이 있기 때문에.
본식이 최대가 되는 점이 로그함수가 최대가 되는 점과 일맥상통하므로.
argmaxx P(D|x) ---) argmaxx ln P(D|x) 로 바꾸어서 P(D|x) 최대화되는 점 역시 ln P(D|x) 최대화되는 점이다라는 것을 이용한다.
그래서 그 식을 로그 성질을 이용해서 식정리 후, 미분해서 0되는 점(극점)을 이용해서 x를 찾아낸다.
MLE과정을 거쳐서 그 데이터가 나오는 최적화된 확률을 구해낸다.
x' = k/n
- x 에 대한 추론값이지 이게 x값은 아니다.
Simple Error Bound
그래서 추론값 x'와 x가 동일할 수는 없다. 시행하는 동안 에러가 발생하므로.
MLE (사전지식없이)
를 이용해서 추론값을 가지고 오고, 그 추론값이 왜 Probably Approximate Correct learning인지 이해해보는것이 목표에 설명할 수 있어야한다. (MLE 관점에서 추정)
MAP (사전지식을 가미)
'사전정보를 가미한 추정값을 생각해보는것'
P(D|x)P(x)/P(D)
Posterior = Likelihood * Prior Knowledge / Normalizing Constant
사실 D가 주어졌을때 우리가 궁금한 것은 x이다.
관측값이 얼마 안될때는 MLB와 MAP사이의 값은 차이가 커지고 관측값이 많아지면 비슷해진다.
이 두 개의 컨셉은 머신러닝의 필드에서 중요한 컨셈이다!!
---------
3주차
learn the optimal classification concept
classifier - rule based tree, decision tree
분류(classification) vs 군집화(clustering)
supervised learning
Classification or Regression of
- hit or miss : Something has either decrease or not
- ranking : Someone receive A+,b,ot C
- Types : an article is either positive or negative
- value prediction(regression) : the price of this artifact is x.
optimal classification
'x' 가 주어졌을 때 'y' 가 어떤 값일까?
두 그래프에서 x1의 합수값이 높은 경우가 x1이 일어날 확률이 높다고 판별한다.
x1일때 두 함수값의 높이차이가 존재하고 그중에 높은 함수값을 가진 함수를 선택하는것이 낫다고 판단하는 것.
x가 주어진 상황에서 타겟이 된 y 함수의 후보들 중에서 X에 대한 확률이 높은 함수를 선택
정의로 이야기하면,
optimized function
f* = argmin(p(f(x)is not y)
- p(f(x))는 y의 추정값을 나타내는 확률인데 y와의 차이를 최소로 만들어주는 함수를 f*라고한다.
(x가 주어진 상황에서 타겟이 된 y 함수의 후보들 중에서 X에 대한 확률이 높은 함수를 선택: 두 가지 class만 있을 경우는 이 두가지 말이 같은 말이 된다. )
machine learning = probably, approximately, correct한 함수를 만드는 것이라고 할 수 있다.
= 유사하게금 맞게금 만드는 함수를 approximation하는 것이다.
여기서는 function approximation of error minimization
주어진 x값들이 y값에 최대한 근접하게 나올 수 있도록 확률밀도 함수를 조정하는 것,
확률 계산하는 방법 : MLE 와 MAP
MLE : data가 주어진 상황에서 어떻게 하면 확률이 최적화가 되느냥
MAP : 사전 지식이 가미된 확률
MLE 와 MAP를 어떻게 Classification 에 녹여내는 가를 공부하는것이 3주차 내용
decision boundary
곡선 함수가 직선함수가 확률차이를 섬세하게 알려준다. (S curve곡선함수와 1차 직선함수의 성능차이)
급격하게 확률이 변하는 지점 , 높은 확률차이로 두개의 클래스를 분리해줄 수 있다.
점선은 기울기가 동일하기 때문에 위의 상황을 하기가 힘들다.
에러값 ( 함수값들의 확률차이)의 적분값이 최저가 되는 함수가 최적화된 함수라고 할 수 있다.
주어진 값으로 S 커브를 만드는 것이 아니라 확률을 가지고 S커브 만드는 것.
어떤 함수든 간에 classifier의 확률을 높여주는 함수를 죽이되는 밥이 되는 만들어 보는 것
데이타로 제시되는 Y와 우리가 판별하는 y가 최대한 같은 값이 되도록 확률을 만들어주는 함수
베이지 theorem 은 random variables 와 given variables 의 순서를 바꿔주는 역할을 한다.
prior 정보는 우리가 경험적으로도 알 수 있고, data set에서 알아낼 수 있다.

댓글
댓글 쓰기