An approximation of Cogswell Regularization for SGD update in Recsys.
Cogswell Regularization
Cogswell Regularization has been proposed by [1] in 2015. This is based on the following observations
- Embeddings are spread on the Euclidean Space.
- If two feature vectors are different, then their representations are different. It would be good to fill the embedding space with a similar density of embeddings if they are in the range of the input network.
So [1] Proposed the following obj...
"오픈소스를 해야 하는 이유"에 대한 생각.
잡담.
자주 듣는 얘기가 있다. 어떤 일이 A, B, C, …, Z 이렇게 순차적으로 이뤄진다고 할 때, 나는 A 설명했다가, B, C, ..,D까지 스킵하고는 E를 설명했다가, F를 한참 설명하다, 다시 B가 필요해진 것 같아 B를 설명하는 식이라고 한다. 한두 명만 이런 얘기를 하는 게 아니라, 나랑 가깝게 일을 한 모두가 비슷한 얘기를 하는 걸로 봐선, 좀 문제가 있는 것 같다.
상대방과 내가 같은 지식과 한계를 갖고 있을 것이라는 전제를 갖고 설명하는 듯한 느낌이다. 내가 쉬운 부분은 상대한테도 쉽고, 내가 어려운 부분은 상대방도 어렵고. 사회적 관계에서만이 아니라 일에서도 공감능력은 중요한 것 같다. 게다가 이런 건 노력해도 잘 나아지지 않는다고 한다……..
오픈 소스에 대한 개인적인 생각
솔직히 자기과시욕을 제외하면, 오픈소스를 왜 하는 이유를 잘...
NeuralSort
잡담
ICLR 2019에 실린 Stochastic Optimization of Sorting Networks via Continuous Relaxations 의 리뷰. 글을 안 쓴 지 너무 오래되서 글을 쓰는 방법을 잊어버린 것 같다.;;
Motivation
정렬이나 top-k element를 선택하는 일은 여러 머신 러닝 task에서 기본적인 연산 중 하나이다.
그런 예시 중 하나로, vector $q$가 주어졌을 때, 주어진 query $q$와 비슷한 여러 vector $v_1, \cdots, v_n$을 KNN을 생각할 수 있다.
이는 각각의 vector $v_i$에 대해 score $s(q, v_i) = q^Tv_i \text{ or } (q-v_i)^2$를 계산해서...
ALS, BPR을 직접 구현해봤다.
잡담
유명 추천 시스템 라이브러리 2개에 involve되어 있긴 한데, 생각해보니 추천 시스템 알고리즘을 스크래치부터 구현해 본 적이 거의 없는 것 같다. Logistic matrix factorization을 implicit에 구현해보긴 했는데…
그래서, 과연 나는 추천 시스템 알고리즘을 충분히 빠르게 구현할 수 있을까? 하는 생각이 들었다. 생각한 김에 바로 해봤다. 주말에 할 게 없기도 했었고…
사용할 언어/프레임워크 선택
언어
인터페이스 부분은 파이썬으로 진행하기로 결정했다. Numpy Array가 무척 편하기도 하고, scipy.sparse_matrix를 그대로 이용할 수 있다는 장점이 있기 때문이다.
사실, 중요한건 Backend였는데, 내가 약간이라도 경험해 본 기술을 사용하는게 유리할...
Hierarchical Navigable Small World Graph로 nearest neighbor를 빠르게 찾아 보자.
[WIP]
Neural Combinatorial Optimization with Reinforcement Learning
잡담
-
회사에서 맥을 받았다. 오예… 맥으로 쓰는 첫 블로그 포스트. 익숙해지질 않는다 ‘ㅅ’… 벌써 한달이나 됬는데, 코드도 제대로 못 짜겠고, 블로그에 글도 제대로 못 쓰고 있다. 근데 맥 생각보다 이쁘자너…불편하지만…이쁜것… 그것이 갬성..
-
요즘 집중을 잘 못하겠다. 우울한 기분은 조금 나아진 것 같은데, 왜 우울함이 끝나면 산만함이 찾아오는 걸까. 나는 공부를 할 수 없는 운명인 것일까… 그런...
TSP 문제를 강화 학습으로 풀기
Neural Combinatorial Optimization with Reinforcement Learning
Attention, Learn to Solve Routing Problems! 논문 리뷰입니다. 설명은 됬고, 코드를 보고 싶어 하실 분도 계실 것 같습니다 ‘ㅅ’… 논문에서 리뷰한 Attention, Learn to Solve Routing Problems!과 Neu...