최적의 방법을 찾는 행위
최적화
- Optimization은 무엇일까요?
+ 최고가 아닌 최적을 찾는 것.
- Optimization 을 왜 하는가?
+ 기회 비용을 최소화해 최적화 값을 얻기 위해 통계적 최적화를 사용할 수 있다.
- Optimization 을 하면 최고인가?
+ 최적을 하는 것이다.
해답 표현하기
- 예) 비행편 출발 시간, 도착 시간을 하루 중 가장 먼저 출발하는 것을 0부터 시작해서 1씩 증가, 각 인원에 대한 수치를 1차원 배열로 나열하는 행위를 모델링이라 한다.
예) [1,4,5,2,3,7,4,2]
- 첫값 : 0, 그리고 1식 증가
- 비행편 API 제공 : 카약 http://www.kayak.com/labs/api/search (개발자 키를 발급 받아야 함)
- 랜덤 값을 사용한다. 얼마나 제대로 된 랜덤 값을 만들어 내느냐가 중요하다. 만약 랜덤 값을 사용하면 stochastic optimization 즉, 통계적인 최적화이다.
- 랜덤 값에 대한 부분은 도메인 지식을 필요로 한다?
비용 함수 (Cost Function)
- 비용이 될 만한 것을 도출
- 비용 함수에 적용하여 비용이 많이 들수록 큰값을 반환
언덕등반 (hill climbing)
- 무작위 해답으로 시작해서 더 좋은 해답을 찾아 이웃 해답들ㅇ르 살펴보는 기법
- 내리막에서 오르막이 시작될 즈음에서 찾음. 좌우 비교를 통함.
- 결점 : 오르락 내리락할 때 작은 내리막이 최적이라고 판단할 수 있은 오류
시뮬레이티드 어닐링 (Simulated Annealing)
- 물리학에서 영감을 받음
- 언덕 등반의 결점을 보안
- 나쁜 선택이 현재 선택이 될 수 있지만 계속 진행할 수록 낳아진다.
- 시장에서 많이 사용.
유전자 알고리즘 (Genetic Algorithm)
- 개체군(population)이란 무작위 해답들을 생성하면서 시작
- elitism, 돌연변이(mutation), 교배(crossover), 번식(breeding)
- 존 홀랜드 1975년 발생 "Adaptation in Natural and Artificial Systems"
선호도 최적화
- 최적화 기법의 필요 조건 : 문제가 정의된 비용 함수 + 유사한 해답이 유사한 결과를 낼 것
네트워크 시각화
- SNS에서 사용
<참조>
- 두번째
'Deep Learning' 카테고리의 다른 글
[ML] 8주차 - 7장 의사결정트리 (0) | 2015.02.14 |
---|---|
[ML] 7주차 - 6장 문서 필터링 (0) | 2015.02.07 |
[ML] 4주차 - 군집하기 (0) | 2015.01.03 |
[ML] 3주차 - 추천하기 (0) | 2014.12.13 |
[ML] 2주차 - 추천하기 (0) | 2014.12.06 |