목록MachineLearning (16)
Data Analysis for Investment & Control
이 포스팅은 위키백과의 내용을 참고해서 작성하였음을 알려드립니다. 베이즈 정리Bayes' Rule은 두 확률 변수의 사전 확률과 사후 확률 사이의 관계를 나타내는 정리이다. 베이즈 정리는 불확실성 하에서 의사결정문제를 수학적으로 다룰 때 사용된다. 확률 이론에 대한 사전 지식은 다음 포스팅을 참조 >> Probability Theory, 확률 이론 수학적으로 다음의 수식이 성립한다. P(A)는 A의 Prior(사전 확률, 사전 지식)으로 B에 대한 어떠한 정보도 알지 못하는 것을 의미한다. Classification 문제에서 A라는 클래스가 얻어질 확률이 P(A)라는 말이다. P(A|B)는 B가 주어졌을 때 A가 나올 Posterior(사후 확률)이다. 즉, B라는 입력 데이터가 주어졌을 때 이 데이터가..
최대가능도 추정의 정의 최대가능도추정, Maximum Likelihood Estimation 혹은 최대우도법이라고 불리우는 이 방법은 어떤 확률 변수가 있을 때 주어진 데이터를 토대로 그 확률 변수의 모수 혹은 System Identification 분야에서 시스템 파라미터를 구하는 방법이다. 최근에는 Unsupervised Learning 분야 중 하나인 Generative Model 분야에서도 활발히 사용되고 있다. 어떤 미지의 값 θ 혹은 시스템 파라미터가 있다고 할 때 이를 기반으로 나올 수 있는 데이터가 확률 분포를 보인다고 하자. 주어진(관측된) 데이터가 이런 확률 분포를 통해서 나온 값이라고 할 때 이 데이터를 통해 미지의 θ 혹은 시스템 파라미터를 추정하는 방법이다. 통계학에서 주로 많이 ..
argmin과 argmax는 논문을 읽다보면 간혹 수식에 등장하는데, 처음 봤을 때는 무슨소린가 했다. argmin argmin의 수식은 아래와 같다. 의미는 함수 f(x)를 최소 값으로 만들기 위한 x 값을 구한다.. 라는 의미이다. 그렇다는 것은 당연하게도 함수 f(x)가 무엇이냐에 따라 x값이 달라지게 된다. 만족하는 값이 하나 이상일 수도 있다. 예를 들어, 라면, f(x)의 최소값은 -1이며, 이를 만족시키는 x 값은 ..., pi, 3pi, 5pi, ... 이다. 이처럼, 수식을 통해 한번에 구해지는 연산이 아닌 특정 조건을 만족하는 파라미터를 찾는 함수이므로 argmin은 indirect한 함수라고 볼 수 있다. argmax argmin을 이해했다면 argmax도 당연히 이해가 갈 것이다. ..
유전 알고리즘을 가지고 어떤 응용을 할 수가 있을까? 유전 알고리즘의 강점 중에 하나는 전역적 최적해를 찾는데 있다. 그것은 어떤 대상을 모델링하는데 있어서 함수 관계로 설명하고자 할때 함수의 인자를 구해야 하는데, 다른 방법으로는 이 인자를 구하기가 쉽지는 않다. System Identification을 사용하여 모델링을 할 수도 있고, Gradient Decent 방법을 가지고 해를 찾을 수 있지만, 지역 국소해(Local Minima) 문제에 빠질 가능성이 있다. 개인적인 관심사인 금융공학, 특히 주가 예측과 관련하여 유전 알고리즘이 사용된 예가 있는지 구글링해 보았다. 그 결과 몇 편의 논문을 찾을 수가 있었는데, 그 중 한 편 선택해 적용된 아이디어를 검토해 보았다. 검토 논문 선정 Expert..
지난 포스트에서는 유전 알고리즘이 어떤 의미를 가지며, 어떤 연산으로 이루어지는지에 대해 알아보았다. 이번 포스트에서는 지난 번에 다루었던 내용을 바탕으로 간단한 형태의 유전 알고리즘을 구현하고, 그 연산 과정이 어떻게 이루어지는지 알아보도록 하겠다. 경험적으로 장황한 이론적인 설명 보다는 복잡하지 않은 예제에 대해 이야기 하는 것이 더 이해가 빠른 경우가 많았다. 따라서 지난번에 유전 알고리즘에 대한 개념에 대해 간단히 언급을 했다라면, 이번 경우에는 실제 문제를 통해 유전 알고리즘의 구성 요소와 연산이 실제 어떻게 이루어지는지에 대해 알아보는 것이 좋을 것 같다. 문제 정의 : 모든 개체가 특정 값의 20자리 바이너리 스트링을 가지도록 진화 수렴 시킴 바이너리 스트링 유전자의 예 초기화 : 100개의..
유전 알고리즘 개요 유전 알고리즘, Genetic Algorithm(GA)은 최근 10~20년 동안 제어 및 패턴 인식 분야에서 활발하게 연구되어온 주제이다. 1960년대에 시작되어 근래에 이르러 전역적 해를 찾는 문제 해결 방법론으로서 그 성능을 인정받아 다양한 분야에서 응용이 이루어지고 있다. 유전 알고리즘을 이해하는데에는 먼저 구성요소와 알고리즘의 프로세스에 대해 알 필요가 있다. 유전 알고리즘은 그 말처럼 자연계에서 생물이 다음 세대에게 유전자를 전달하면서 환경에 적응한 염색체가 살아남도록 교차와 돌연변이에 의해 진화하는 과정을 모델링 한 것이다. 예를 들어, 인간은 세포 하나마다 DNA 한쌍이 있고 각각에는 약 30억 개의 염기로 이루어져 있다. 유전 알고리즘에서는 문제를 해결하기 위해 이러한 ..