| 24 Jan 2010 | |
|
|
|
Floyd's Tortoise and Hare 보다 더 나은 Cycle Detection 알고리즘: Teleporting Turtles |
|
| 23 Jan 2010 |
L1 Approximation Problem
Convex by Boyd 을 보면, 많은 경우에 L2 optimized estimator 보다 L1 optimized estimator 가 더 robust 하다고 되어 있다. Outlier 에 훨씬 덜 민감하니까 당연한 노릇. 보면 LP 로 바꿔서 풀 수 있다고 되어 있다. 그래서 파이썬용 Convex Optimization 패키지인 cvxopt 로 풀어보았다. 파란 선을 중심으로 랜덤 샘플을 만들고 (가우시안 노이즈 추가) 적절한 개수로 엉뚱한 위치에 아웃라이어를 좀 던져둔다. 초록색 선이 L2 핏, 빨간색 선이 L1 핏이다. 훨씬 원래 분포에 가까운 결과를 보여줌. cvxopt 샘플에 L1 approximation 이 샘플로 나와 있길래 좋아라 하면서 써먹어 보려 했는데 안돌아가... 행렬 크기가 안맞는대... 좀 검증해 보고 올리지 쩝. ㅠ.ㅠ 미워라 덕분에 무식하게 모델링해서 돌렸다. 속도를 재 보면: 초록색이 처음에 써 본 cvxopt 의 기본 solver 속도. 이건 뭔가 exponential 하게 올라가는 삘인데.. -_-;; 과연 현실적으로 쓸 수 있을까.. 하고 후덜덜했는데, GLPK 써보니 거의 linear 하게 올라가는 듯? 뭐.. 일단 지금은 무지하게 무식하게 짠 점도 있고,뭔가 problem structure 를 이용하면 좀 더 효율적으로 돌릴 수 있을 듯. 그러려면 저 Boyd 책을 봐야 하나.... -_- ..... |
| 20 Jan 2010 | |
| 19 Jan 2010 |
I'm never buying from Dell again: delivers in one month? Even in 90s it took less than a week. |
주말미국은 월요일이 마틴 루터 킹 데이라서 (맞나) 하여간 노는 날이었다. (지금은 월요일 저녁) 밑에는 궁시렁 거려 놨지만, 주말 내내 뒹굴거리면서 잘 놀았다. 주말 동안 뭘 했냐면..
그 외엔 별거 안하고 뒹굴뒹굴거리고 잠자고 놀았습니다. ㄱㅅ |
|
| 18 Jan 2010 |
향수병서울을 떠난지 슬슬 네 달이 되어 간다. 태어나서 서울에서 이렇게 오래 나와 있는 것이 처음이다. 인터넷에 연결된 컴퓨터만 있으면 지구 어디서 살아도 상관없을 것 같았던 나지만 종종, 아니 꽤 자주 서울이 그립다. 신촌거리 술집들, 자주 가던 밥집들. 언더우드 상 앞에서 새우깡 안주로 맥주 마실 때 불어오던 시원한 가을 바람. 강남역 바로 앞의 레비스와 계단을 올라가서 바로 있던 노래방. 안국역 뒷쪽에서 삼청동 걸어가던 골목길과 자전거 타고 퇴근하던 저녁의 탄천 길. 지난 주 내내 괜히 할일 없이 어릴적 하던 게임, 어릴적 보던 만화책을 찾아 인터넷을 뒤적거렸다. 어릴 적 하던 머드게임 매뉴얼을 보고자 하는 일념에 나우누리 동호회 자료실을 뒤지고, 찾은 hwp 2.0 과 이야기 갈무리 파일들을 열 수가 없어서 vmware 위에 윈도xp 를 깔고 다시 이야기 멀티를 까는 삽질까지 했다. 아 이런 존이 있었지. 맞아 여기에서 사냥했었지. 와 그때 만났던 이런 사람들도 있었는데. 이런 기억의 잔해를 뒤적이느라 수많은 시간을 불태우고 나서야 깨달았다. 아, 서울과, 내 과거를 그리워하고 있구나, 하고. 내 삶이 마냥 행복했던 것만은 아니다. 중2틱한 우울병에 걸려 매일매일 우울한 글만 홈페이지에 쓴 적도 있었고, 아픈 적도 있었고, 좌절한 적도 있었다. 하지만 어쨌든 난 그걸 전부다 이겨냈고, 그 모든 것을 지나보낸 덕분에 난 더 행복할 수 있었다. 여기가 내가 익숙한, 그리고 내가 행복했던 환경이 아님을 안다. 목표를 갖고 이 곳에 왔고, 적응해야 할 것이란 것을 알지만.. 언젠가 돌아가고 싶다는 생각이 벌써부터 마음속에 쉬이 사라지지 않는다. 그래도 하고 싶은 일과, 해야 할 일, 그리고 사랑하는 사람이 여기 있으니 힘내서 일어날 수 있다. 오랜만에 허세 글이다. 사실 술먹고 노래방가고 싶은 맘이 간절한데 여기선 텄고, 서울에선 알고스팟 애들이 신년회 한다니 부러워서 써봤다... 시발... ㅠㅠ |
|
von Neumann 이 자주 하던 농담이 있다고 하는데: "뭐, 변수 네 개라고? 변수 네 개면 코끼리도 피팅할 수 있겠다! 변수 다섯 개면 코를 흔들게 할 수도 있어! With four parameters I can fit an elephant, and with five I can make him wiggle his trunk" 실제로 피팅한 용자들이 계시구려. 링크 |
|
| 16 Jan 2010 |
|
| 15 Jan 2010 | |
| 14 Jan 2010 | |
| 13 Jan 2010 |
Boosted Stumps 를 이용한 2차원 평면 상에서의 classification(update) weighted linear regression + boosting 추가 2차원 평면에 두 종류의 점들을 늘어놓고 (여기서는 빨간점과 파란점) 이들의 좌표를 자질로 해서 점의 종류를 판별하는 문제는 여러 기계 분류 알고리즘을 설명하기 위해 자주 쓰인다. 오늘 Decision Stump 의 곱을 부스팅 하는 것에 관한 논문을 읽다가 심심한데 한번 해볼까 하고 저녁 내내 (ㅠ.ㅠ 어느덧 열한시...) 구현하였다. 일단은 가장 일반적인 additive AdaBoost 버전으로. :-) 그림은 XOR 에 해당하는 입력을 주고, 학습시킨 뒤 다시 분류 시킨 것. 동그라미들과 엑스표들은 입력 (동그라미는 제대로 분류된 것, X 는 잘못 분류된 것) 배경 색은 해당 위치에 대한 predictor 의 답을 보여준다. 물론 오버피팅 쩔긴 하지만 이 정도면 놀랍도록 잘 되는 축인 듯. :) Iteration 수는 20회. 처음엔 저번에 산 Machine Learning: An Algorithmic Perspective 를 보고 구현했는데, 설명은 참 쉽게 잘 되어 있지만 algorithmic perspective 라서 그런지 증명과 수학, rationale 얘기는 정말 하나도 없구나... -_- 그냥 아무 생각 없이 뭔지 알고 써먹기만 할 때 유용할 것 같다. 회사에서는 뽀스 아저씨의 Elements of Statistical Learning 을 빌려 보고 있는데 이거 괜찮다. 좀 마이 어렵지만... 두 권을 병행해서 보니 좀 이해가 잘 된다. (해수 참고하셈;;;) 지금까지 한번도 안 써본 matplotlib 의 인터랙티브 기능을 이용해 구현했는데 정말 편했다. 클릭할 때마다 점을 추가하고 자동 학습 + 보여주는 것을 정말 간단하게 구현할 수 있었다. 이벤트 드리븐으로 짤 수 있는데다, ipython 세션이 항상 떠 있으니 디버거가 항상 같이 떠 있는 셈. 처음에는 컬러맵 (MPL 에서 pcolor 함수) 가 지원되는 줄 모르고 pyGTK 나 tkinter 써야 하나.. 고민했는데, 그거 썼으면 하루는 꼬박 더 걸렸을 듯 싶다. MPL + NumPy + SciPy 에 대한 나의 애착은 점점 커져만 가는데;;;; 튜토리얼이라도 함 쓰고 싶지만.. 아. 나 원고해야되는데. -_- |
|
MNIST Database : A database of handwritten images database. |
|
System of a Down - Sugar뭐하다가 찾아듣게 되었는지 몰라도 요 며칠간 다시 SoaD 노래를 열심히 듣고 있다. -_-; 이게 이젠 10년전 노래라니... orz |
|
| 12 Jan 2010 |
꽤나 자세해서 좋군. |
Guestbook 2010이 페이지를 2010년 동안 방명록으로 사용합니다. 리플로 방명록 남겨주세요. This page will serve as a guestbook for the rest of 2010. Fire away! |
|
Delayed parameter passing함수에 다른 함수를 인자로 줘서 호출하게 할 때, 해당 인자의 디폴트 인자를 바꿔서 호출하게 하려면 |
|
|
회사 트레이더와 QR 신입들한테 John Hull 책으로 수업할거란 소문은 들었는데... 진짜로 Hull 이 비디오 컨퍼런싱으로 강의해줄줄은 몰랐다. -_- ; |
|