연습 회고(20150223)

지금까지 이것저것 공부를 해왔지만 정작 다른 사람에게 설명할 수 있을 정도로 알고 있는 것이 별로 없다. 직접 증명을 하거나, 코드를 만들어 보거나, 써 먹어 보거나 하지 않으면 영영 어느 수준 이상은 올라가지 못할 것 같다.

나는 일단 코딩에는 익숙하니, 먼저 어렴풋이 알고 있던 것들을 코드로 만들어보며 연습을 종종 해 보려 한다.

… 라고 생각해서 ML스터디에서 보고 있는 Theano 를 사용해서 Logistic regression 으로 이진 분류기를 만드는 연습을 하려 했다. 튜토리얼보다 쉬운걸로! 적당한 데이터 셋에 실습을 해보려고 구글링해서 아무거나 받아봤는데 하다보니 naive bayes 루트를 타 버렸다. 그나마 제대로 한건지도 잘 모르겠다.

http://blog.dgoon.net/naive-bayes-yeonseub.html

Naive Bayes 는 지금까지 여러번 훑었고, 볼 때에는 비교적 코드로 만들기도 쉽겠네 생각했었는데 실제로 해보려니 바로 코드가 나오진 않았다. 식을 쓰고 나서야 이를 코드로 옮길 수 있었다. 일단 scikit learn 으로 돌린 것과 비슷한 결과가 나오니 완전히 틀린건 아니라고 믿어보고, 같이 스터디 하는 사람들에게 리뷰를 부탁해서 좀 까이면 되겠다.

  • Good: 어쨌거나 생각했던 구현이 코드로 나왔다. 하다가 귀찮아서 때려치지 않은 것이 자랑.
  • Bad:
    • pandas, sklearn 에 있는 유용한 헬퍼들을 좀 더 익숙하게 쓸 수 있으면 좋았을텐데
    • Training/Validation/Test 셋도 제대로 나누지 않았다. CV를 해봤어야 하는데 귀찮고 해서 여기는 손을 놔버렸다.
  • FutureAction: 일단 from sklearn import cross_validation 사용법을 다시 보고 오늘 연습을 조금 개선해본다. (며칠 있다가)

Comments