본문 바로가기

Archive171

[Rec] Neural Collaborative Filtering 리뷰(1) Neural Collaborative Filtering 리뷰 논문 : https://arxiv.org/abs/1708.05031 참고링크 : https://lsjsj92.tistory.com/613?category=792966 추천 시스템에 딥러닝, 신경망을 활용할 수 있을까? 해당 논문을 통해 어떤 구조로 만들었는지 우선 간단하게 파악하고 (2)편에서는 간단한 형태의 Matrix Factorizaion과 논문의 NCF 구현을 참고하여 두 모델의 비교를 진행하고자 한다. Introduction - NCF의 도입 이유, Matrix Factorization의 한계 inner product로는, latent feature을 linear하게 할 수 밖에 없을 뿐더러, latent factor를 활용할 경우 차.. 2021. 12. 26.
(극복Proj-2) RNN 구현 이해하기 실습 코드를 바탕으로 RNN 구현을 다시 한 번 이해해보고자 한다. 실습은 IMDB 영화 리뷰를 바탕으로 진행한다. 실습 코드: https://wikidocs.net/60691 import os import torch import torch.nn as nn import torch.nn.functional as F from torchtext import data, datasets, legacy import random SEED = 5 random.seed(SEED) torch.manual_seed(SEED) # 하이퍼파라미터 BATCH_SIZE = 64 lr = 0.001 EPOCHS = 10 시드와 배치 크기, 학습률, 몇 에폭을 돌지 미리 결정해둔다. 이제 text와 label을 받을 데이터 필드를 저.. 2021. 12. 24.
(극복Proj-1)[Pytorch] DataLoader란? * 당분간 DL 기초 구현 극복 Project를 진행하고자 합니다. Pytorch에서 잘 이해하지 못했던 기능들과 RNN, LSTM의 구현 및 텍스트 문제에의 적용의 극복을 통해 다음 단계로 넘어가기 위한 준비를 진행하고자 합니다. 왜, 기본 예제 이외에 추가로 무언가 하려고 하면 RNN/LSTM에서 학습이 잘 안되고 있었는지 이러한 것들을 공부하고 맨 처음 딥러닝을 접할때 어려움을 느낀 부분들을 정리하려고 합니다. ------------------------------------------------------------------------------------------------------------------------- [1] Pytorch - DataLoader 이해하기 [참고자료] http.. 2021. 12. 23.
[Data] 데이터 분석 용어 - 이용자 및 매출에 대한 지표 요약 출처 [1] https://you-yeon.tistory.com/29 [2] https://team.postype.com/post/9405656 [3] https://mixpanel.com/ko/resources/how-to-calculate-lifetime-value/ * 이용자 및 매출에 대한 지표를 간단하게 요약하였습니다. 각각에 대한 세부적 이해에 앞서 먼저 큰 그림을 잡고 넘어가고자 합니다. Q. 특정 서비스를 사용하는 유저의 수를 어떻게 셀 것인가? 단순히 접속 카운트로만 센다? 그러나 여기에는, 한 가지 문제가 존재한다. 하나의 유저가 핸드폰으로도, 컴퓨터로도 다양한 방식으로 여러 번 접속할 수 있을 것이다. 이러한 케이스를 어떻게 가중치를 두고, 어떻게 다룰 것인가에 대해 정리해볼 필요가 .. 2021. 12. 10.
[TIL] 간단한 ML Serving 방법 / Flask (1) Flask 를 통한 ML Serving 개요 코드 출처 https://github.com/bharatc9530/Machine-Learning/tree/master/Model-Deployment-Using-Flask 개요 기본적인 구조는 다음과 같다. FRONT(화면에버 보여지는 것) Flask ML/DL Model 즉 FRONT에서 값을 입력하면, 그 값을 받아 Flask에서 처리후 이를 넘겨 학습한다. 학습한 결과물을 다시 가져와서 Flask에서 처리 후에 FRONT로 보내버린다. 이 과정을 만드는 것이 Flask를 통한 ML Serving의 간단한 개요라고 할 수 있을 것이다. Flask의 아주 간단한 사용법 Flask의 구조도 이전에 보았던 django와 비슷하나, 훨씬 더 간편하게 serving시.. 2021. 12. 6.
[Stat] 범주형 변수에 대한 검정 범주형 변수에 대한 검정을 한다? 범주형 변수에 대한 통계적 검정을 한다는 것의 의미는 분포에 대한 검정을 의미한다. 이는, 우리가 예상하는 범주형 변수의 분포랑, 실제 관찰된 변수의 분포가 동일한지, 다른지 해석을 통해 통계적 Insight를 찾아내려는 것을 말한다. 예시1> 주사위가 하나 있다. 이 주사위를 던져, 모든 눈이 균일하게 나온다고 할 수 있을까? 예시2> 상품 A, B, C의 선호도에 대해 조사해보았다. 상품에 대한 선호도는 남성, 여성 상관없이 동일한 선호도 분포를 가지고 있을까? 이러한 질문들에 대해 답하고자 할 때 카이제곱검정을 이용하게 된다. 카이제곱 분포의 이용 범주형 변수에 대해 검정을 할 때는, 카이제곱분포를 활용한다. 카이제곱 분포를 바탕으로 관찰된 빈도와, 기대하는 빈도의.. 2021. 11. 17.