본문 바로가기

분류 전체보기195

Python으로 Custom Sparse Matrix 생성하기 파이썬은 sparse-matrix를 만들기 위한 훌륭한 라이브러리들을 가지고 있다. one-hot encoding 역시 코드 1~2줄이면 간단하게 사용이 가능하다. 하지만 추천 시스템과 같이 대용량의 sparse-matrix를 처리하거나, Factorization Machine 같은 알고리즘을 사용하는 경우, scikit-learn이나 pandas가 제공하는 dummy encoder 만으로는 부족한 경우가 많다. 모델의 Input 타입이 idx:value 와 같은 text file로 구성되어 있는 경우에 해당한다. 추천 시스템의 경우는 대부분 extreme-sparse matrix를 생성하기 때문에, 학습의 batch시에 hashing으로 idx:value를 지정해 주는 것이 일반적이다. 이렇게 구조를 .. 2018. 12. 8.
영화 이야기 : 50년대 이후의 할리우드 영화 어느덧 [영화의 역사 이야기 시리즈]의 마지막 내용이다. 처음 시리즈의 기획 의도는, 간략한 영화 사조들을 훑어보면서 중요한 작품들에 대한 리뷰를 하려고 했었다. 하지만 처음 의도보다는 이론이나 사조에 조금 더 집중했던 것 같다. 각 사조들의 영화에 대해 리뷰를 하려면 영화를 다시 봐야 했기에, 그 점이 부담이 되었다. 어찌되었든 몇 년 전에 공부했었던 영화의 역사를 억지로라도 다시 훑어보는 좋은 계기가 된 듯 하다. 대망의 마지막 포스팅은, 역시나 할리우드에 대한 이야기이다. 이전에도 언급했었지만 영화의 역사에서 '할리우드'를 빼놓고는 영화를 논할 수 없기 때문에, 축약된 시리즈에서는 할리우드 위주로 이야기를 할 수 밖에 없는 것 같다. 특히나 영화라는 분야에서는 메인 스트림을 이끌어 가는 것이 결국에.. 2018. 12. 6.
[Recommender System] - Factorization Machine 리뷰 + code 본 포스팅은 링크의 글을 번역한 것이다. 글을 옮기면서 부족한 설명이나 내용은 Factorization Machine 원 논문의 내용을 추가하여 살을 붙여 두었다. 원 블로그의 글은 FM을 이용하여 추천 영역에서의 cold-start 문제를 해결하는 방법에 대한 짧은 설명과 코드를 함께 기술한 글이다. 블로그에서는 tffm을 이용하여 예제를 만들었지만, 현재 사용중인 라이브러리가 xlearn인 관계로, 본 포스팅에서는 xlearn을 이용한 tutorial 코드를 작성하였다. 내용은 생략하고, 코드만 궁금한 사람은 링크로 가면 된다. 데이터 분석가가 개인화 추천을 잘 수행하기 위해선, 최신 머신 러닝을 잘 적용하는 것도 중요하다. 추천 시스템에서의 가장 잘 알려진 알고리즘들이 대부분은 잘 동작한다. 하지만.. 2018. 11. 1.
영화 이야기 : 네오 리얼리즘과 뉴 이탈리안 시네마 [영화의 역사 이야기 시리즈]에서는 지금까지 영화의 역사를 시간 순으로, 그리고 할리우드를 중점적으로 살펴보았다. 이 외에도 어두운 내면세계와 흑백의 미학을 극대화한 스칸디나비아 영화, 파시즘을 거쳐간 이탈리아와 독일 영화, 특색넘치는 일본과 영국 두 섬나라의 영화, 프랑스의 누벨 바그 운동 등 많은 이야기들이 남아있다. 이 중 누벨 바그에 대해서는 따로 이야기를 했었고, 나머지 이야기들을 다루기에는 내용이 너무 방대해 질 것 같아 마지막 두 가지 정도의 이야기로 연재를 매듭짓고자 한다. 우선 이탈리아의 영화 사조, 그리고 마지막으로는 다시 한 번 할리우드 영화에 대한 이야기를 할 것이다. [영화의 역사 이야기 시리즈] [1] 영화의 탄생[2] 볼거리로서의 영화[3] 1차 대전 전후의 할리우드 영화[4].. 2018. 10. 26.
영화 이야기 : 프랑스의 아방가르드와 시적 리얼리즘 아방가르드라는 용어는 예술의 분야를 막론하고 등장하는 예술의 사조이다. 사실 이 용어는 특정 예술의 사조라고 보는 것보다, 어떠한 경향을 나타내는 고유명사에 더 가깝다고 볼수도 있다. 기존과 다른 새로운 경향을 의미하는 용어로써 말이다. 영화에서도 마찬가지로 아방가르드가 등장한다. 아방가르드 사조는 1920년대부터 1930년대까지 프랑스에서 일어난 영화적 움직임을 말한다. 이번 포스팅은 바로 이 아방가르드 사조, 그리고 더 나아가서 시적 리얼리즘에 대해서 이야기해보도록 하겠다. [영화의 역사 이야기 시리즈] [1] 영화의 탄생[2] 볼거리로서의 영화[3] 1차 대전 전후의 할리우드 영화[4] 20년대의 할리우드 영화[5] 30~40년대의 할리우드 영화[6] 2차 대전 전후의 할리우드 영화[7] 독일 표현.. 2018. 10. 7.
[Recommender System] - Wide & Deep Learning for Recommender Systems 리뷰 추천시스템에서의 SOTA(State of the Art)는 Matrix Completion 계열의 FM, SVD 등의 알고리즘이다. 최신 추천 알고리즘들의 핵심은 변수들의 의미를 나타내는 latent vector를 만들어 내거나, 변수간의 cross-product를 자동화하는 것이다. 구글이 2016년 발표한 Wide & Deep Learning for Recommender Systems는 이러한 알고리즘들의 핵심을 Deep Learning의 관점에서 새롭게 해석한 것이다. 여기에 사람의 기억과 일반화에 대한 모티브를 기술적 아이디어로 추가하여 발표하였다. 이 알고리즘은 선형대수에 대한 깊은 이해가 없어도 일반적인 Deep Learning의 관점에서 쉽게 구현에 접근할 수 있고, 추천 시스템에 한정되어 .. 2018. 8. 24.
영화 이야기 : 독일 표현주의 영화, 소비에트 영화 지난 포스팅들을 통해 영화의 전반적인 역사에서부터 할리우드 영화의 발전사까지 알아보았다. 할리우드 영화사를 통해 영화의 산업적 발전, 물리적 기술 발전에 대해서 시간순으로 이야기 했다면 앞으로의 포스팅에서는 영화 내적인, '예술적' 측면에서의 발전사를 이야기해볼 것이다. 가장 먼저 이야기해볼 주제는, 독일의 표현주의 영화와 소비에트 영화이다. [영화의 역사 이야기 시리즈] [1] 영화의 탄생[2] 볼거리로서의 영화[3] 1차 대전 전후의 할리우드 영화[4] 20년대의 할리우드 영화[5] 30~40년대의 할리우드 영화[6] 2차 대전 전후의 할리우드 영화[7] 독일 표현주의 영화, 소비에트 영화[8] 프랑스의 아방가르드와 시적 리얼리즘[9] 네오 리얼리즘과 뉴 이탈리안 시네마[10] 50년대 이후의 할리우.. 2018. 8. 23.
영화 이야기 : 2차 대전 전후의 할리우드 영화 영화의 역사 이야기를 연재하다 보니, 미국의 이야기를 많이 다루는 경향이 있는 것 같다. 하지만 그만큼 영화의 역사에서 가장 중요한 부분이 바로 미국영화의 역사이기 때문이다. 후에 다루게 될 아방가르드, 독일 표현주의, 이탈리안 시네마 등 다른 국가에서의 중요한 흐름들도 있지만 문화산업으로써의 영화의 큰 맥락을 이해하려면 미국을 가장 먼저 이해해야 할 것이다. 오늘은 드디어, 현대 영화로 들어가기 이전에 살펴보는 마지막 미국 영화 이야기이다. [영화의 역사 이야기 시리즈] [1] 영화의 탄생[2] 볼거리로서의 영화[3] 1차 대전 전후의 할리우드 영화[4] 20년대의 할리우드 영화[5] 30~40년대의 할리우드 영화[6] 2차 대전 전후의 할리우드 영화[7] 독일 표현주의 영화, 소비에트 영화[8] 프랑.. 2018. 8. 19.
GAN 모델의 이해와 구현 2014년에 처음 선보인 이안 굿펠로우(Ian Goodfellow)의 GAN(Generative Adversarial Network) 모델은 서서히 냉각되던 딥 러닝에 대한 열기를 다시 활활 타오르게 한 발명품이다. 연구에도 유행이 있는 것을 감안한다면, 현재의 최신 유행 딥 러닝 모델은 GAN이다. GAN을 접하기 이전에는, 워낙 최신 알고리즘인데다가 이름이 주는 위압감 때문에 막연하게 어려운 알고리즘이라고 생각했었다. 하지만 실제로 접하고 보니, 오히려 CNN이나 RNN을 처음 접했을 때 보다 쉬운 느낌이 들었다. 사실 GAN의 아이디어는 어렵지 않기 때문이다. 본 포스팅에서는 GAN을 (수식을 최대한 배제하고) 쉽게 이해해보고, 이를 간단한 Keras 코드로 구현해 볼 것이다. 본 포스팅은 Neur.. 2018. 8. 17.
영화 이야기 : 30~40년대의 할리우드 영화 유성영화, 장르영화가 뿌리를 내리기 시작한 할리우드에서는 어느덧 영화는 가장 대표적인 대중문화가 되었다. 대공황을 거쳐 30년대를 지나면서 영화라는 매체는 현재의 드라마처럼 하루하루 소비되어지는 가벼운 대중예술로써 기능하였다. TV와의 구분이 없던 시절이기에, 연속극의 형태와 같은 영화들이 유행하였고 영화관이 동전에서 유래한 '니켈로디언' 이라는 용어로 불릴만큼 저렴한 가격에 문화생활 영위가 가능했다. 이전의 역사에서는 영화 자체가 어떻게 발전되었는지가 중요했었다면, 30년대 할리우드 영화사는 인류의 대중문화로써 영화가 본격적으로 인정받기 시작한 지점이라는 것이 중요하게 여길 만한 부분이다. [영화의 역사 이야기 시리즈] [1] 영화의 탄생[2] 볼거리로서의 영화[3] 1차 대전 전후의 할리우드 영화[4.. 2018. 8. 14.