EM Algorithm
신경망
2016년 9월 3일 토요일
2016년 8월 30일 화요일
2016년 8월 26일 금요일
패턴인식 실습(1)
2016년 4월 1일 금요일
알파고 기사 스크랩
완벽한 계산은 불가능한 일
그래서 사람처럼 직관으로 승부수를 던진다
인간의 뇌는 신경세포들의 연결체이다. 신경세포들은 전기신호를 주고받는다. 공부를 하거나 경험을 하면 신경세포의 연결망이 재조직되거나 연결 강도가 바뀌면서 기억이나 판단 능력이 생긴다. 알파고의 핵심 능력은 사람의 뇌를 본뜬 인공 신경망에서 나온다. 알파고의 인공 신경망은 크게 ‘정책망(policy network)’과 ‘가치망(value network)’으로 나뉜다. 먼저 세 종류의 정책망이 알파고가 만들어진 뒤 3주 동안의 집중 학습을 통해 형성됐다.우선 ‘롤아웃(rollout) 정책망’에는 바둑의 기본이 들어 있다. 바둑에는 격언처럼 전해오는 일종의 규칙이 있다. ‘붙이면 젖혀라’, ‘젖히면 뻗어라’, ‘모자는 날일자로 벗어라’ 등 바둑을 배운 사람이라면 누구나 별다른 생각없이 가장 좋은 수로 여기는 규칙들이 롤아웃 정책망으로 학습된다. 이어 딥마인드는 알파고에게 아마추어 고수들이 인터넷에서 둔 바둑 기보(棋譜) 16만건을 공부시켰다. 특정한 상황을 보여주고 다음에 사람이 어디에 두었는지 맞히는 문제를 3000만개 풀었다. 이를 통해 얻은 경험은 ‘지도학습 정책망(supervised learning)’에 업데이트됐다.
하지만 16만건의 바둑 기보는 바둑을 알기엔 턱없이 부족하다. 이 때문에 알파고는 수없이 가상 대국을 두며 새로운 수를 찾았다. 알파고는 혼자서 하루에 3만번 바둑을 두면서 배운 것들을 하나하나 따져보고 검증했다. 기보에 없는 수를 둘 경우 어떻게 되는지, 어떤 수를 둬야 이길 확률이 높은지 자율학습을 통해 깨달은 것이다. 이 정보는 ‘강화학습(reinforcement learning) 정책망’에 쌓였다.
이기는 게임엔 무리수 안 둬
정책망을 통해 추려낸 수 후보들의 승률 분석
이 부분을 맡는 신경망이 '가치망'이다
알파고는 정책망으로 현재 상황에서 어떤 수가 좋다는 것은 비교적 잘 알게 됐지만, 전체적인 바둑이 유리한지 불리한지는 판단할 수 없었다. 형세를 판단할 수 없다는 뜻이다. 프로 바둑기사들은 ‘기분 좋은 형세’라는 말에서 알 수 있듯 감(感)으로 형세를 판단한다. 사람이 논리적으로 설명할 수 없는 것을 알파고에 입력하기는 힘들다. 알파고는 가치망이라는 또 다른 신경망을 이용, 정책망을 통해 추려낸 다음 수 후보들의 승률을 추정한다.바둑판에서 한 점에 돌을 놓으면 그다음에 돌을 놓을 수 있는 다양한 점들이 나온다. 이 점들도 각각 그다음에 가능한 여러 점들을 쭉 나열할 수 있다. 이는 마치 한 가지에서 여러 가지가 계속 나오는 나무(트리) 모양새가 된다. 가치망에는 이와 같은 가지 중 일부를 선택하는 ‘몬테카를로 트리 서치(MCTS)’라는 방식이 사용된다. 다음 수 후보들을 뒀을 때 생겨나는 경우의 수 중 일부만을 무작위로 시뮬레이션해본 뒤 이를 근거로 승률을 얻어내는 방법이다. 마치 방송국에서 TV 프로그램 시청률을 집계하기 위해 일부 가구만 표본조사하는 것과 비슷하다. 시청률 조사는 많은 가구를 조사할수록 정확하다. 알파고는 후보 수마다 10만번에 이르는 시뮬레이션 결과를 얻어내는 것으로 알려져 있다. 가치망을 통해 알파고는 현재 상황에서 자신의 유불리를 파악할 수 있다. 정책망과 가치망을 활용해 알파고는 아무리 상대방이 최선의 수를 둬도, 그보다 더 승률을 높이는 수를 판단할 수 있게 됐다.
알파고의 기본 틀은 정책망이다. 수많은 대국을 거쳤지만, 알파고 역시 바둑에서 일어나는 모든 경우를 알 수 없다. 정책망에 없는 수가 나오면 가치망도 승률이 50%를 넘어서는 수를 찾아내기 힘들다. 알파고의 가장 강력한 무기가 무용지물이 된 것이다.
좋은 기사다.
주소는 http://news.naver.com/main/read.nhn?mode=LSD&mid=shm&sid1=105&oid=023&aid=0003160410
2016년 3월 27일 일요일
Bayesian network(1)
기본 단어 정리
probabilistic GMs includes BNs
node = random variable
edges = probabilistic dependency
GMs with undirected edges : Markov random fields
DAG
- nodes
- directed edges : statistical dependence = "influence"
* each variable is independent of its non-descendents in the graph given the state of its parents.
* For discrete random variables, this conditional probability is often represented by a table, listing the local probability that a child node takes on each of the feasible values for each combination of values of its parents.
A Bayesian network B is an annotated acyclic graph that represents a JPD over a set of random variables V. The network is defined by a pair B =<G, θ>
G : Graph
θ : set of parameter ex) θxi|πi = PB(xi|πi)
probabilistic GMs includes BNs
node = random variable
edges = probabilistic dependency
GMs with undirected edges : Markov random fields
Markov blanket :
every node is only dependent on its parents, children and children's parents
DAG
- nodes
- directed edges : statistical dependence = "influence"
* each variable is independent of its non-descendents in the graph given the state of its parents.
* For discrete random variables, this conditional probability is often represented by a table, listing the local probability that a child node takes on each of the feasible values for each combination of values of its parents.
A Bayesian network B is an annotated acyclic graph that represents a JPD over a set of random variables V. The network is defined by a pair B =<G, θ>
G : Graph
θ : set of parameter ex) θxi|πi = PB(xi|πi)
피드 구독하기:
글 (Atom)