-
[퍼즐 연구] 따라 하면서 배우는 유니티 ML-Agents2019.06.14 PM 01:03
나는 AI에 대해서 조금이라도 알고 있는가? NO
나는 머신러닝에 대해서 조금이라도 알고 있는가? NO
나는 딥러닝에 대해서 조금이라도 알고 있는가? NO
나는 알파고의 작동 원리에 대해서 알고 있는가? NO
파이선을 잘 아는가? 글쎄요.
퍼즐을 어떻게 분석해야할지는 알고 있는가? YES
유니티는 만질줄 아는가? YES
=> 기초적이면서 따라할 수 있는 책을 하나 사서 대충 분위기 파악을 한다.
--------------------------------------------------------------------------------
https://wikibook.co.kr/unity-ml-agents/
'따라 하면서 배우는 유니티 ML-Agents' 라는 책을 하나 구입하였음.
절반을 읽으면서 느낀점.
[Academy, Agent, Brain]
위의 세개는 학습에 있어서의 구성요소인데
문제는 책에 '머신러닝, 즉 브레인을 스스로 개발해야 한다는 점을 명심하라'라는 문장이 있음.
결론은 은총알은 없다는 이야기임.
결국 알고리즘의 문제라는 이야기이고 그렇다면 대상에 대한 깊은 고찰과 통찰력이 필요하다는 의미라는건데...
'왜 게임회사는 알고리즘 문제를 풀게 하나요?'라는 질문에 대한 답변인것 같음.
'일하다보면 지금까지 없었던 알고리즘을 통찰력있게 풀어내야 할 상황이 튀어나오니까'
그렇다면 '머신러닝을 전공한 사람이 퍼즐을 배워서 코딩하는게 나을까?'와
'퍼즐쪽에 전문가인 사람이 머신러닝을 배워서 코딩하는게 나을까?' 라는 두가지 질문이 생긴다.
뭐. 최고는 '퍼즐을 즐겨 하는 사람이 머신러닝을 전공해서 퍼즐쪽으로 박사를 완료한 사람'일텐데 지구상에 혹시라도 존재한다면 구글이나 딥마인드에 있을것 같음. 한국땅에는 없을것 같고 위의 두가지 질문중에 만만한건 후자쪽이라고 봐야 할 것 같다.
결국 퍼즐을 매칭하는게 왜 당연히 그런지를 다시한번 고민하고 알고리즘으로 만들어내야 한다.
기계가 수많은 연습을 통해서 능력을 습득하는것은 그 다음일테니.
[Bandit]
라스베가스에서는 슬롯머신을 구어체로 'One-Armed Bandit'이라고 부른다. 레버가 한개 달린 슬롯머신이 산적같이 내 돈을 가져가기 때문에 그렇게 불렸다고 한다. 'Multi-Armed Bandit' 문제를 찾아보면 재미있을 것이다. 아무튼 상태와 행동과 보상을 설계하기 위한 Bandit의 정확한 설정이 필요하다.
[수많은 단어들]
- Convolutional Neural Network (CNN)
- ReLU
- Value Network : tanh 유닛
- Monte-Carlo Tree Search : 쓸만한 것 부터 해보자의 로직은?
- RNN : Recurrent NN
- LSTM : Long Short-Term Memory
등등등.... 모르는 개념들이 쏟아져 나오고 있는데 스택에 쌓고 하나씩 꺼내서 공부해야겠음.
4장부터는 대충 훑어서 넘겨보았다.
기본 지식이 부족한 상태에서 따라했다가는 완전히 내것으로 만들기 어려운듯 함.
다른 정보가 더 필요한 상태로 위 책은 3장에서 잠시 보류.
user error : Error. B.