개발

시계열 데이터 Augmentation 방법 정리 - TimeSeries Data Augmentation for Deep Learning: A Survey
Churn Prediction task를 연구하면서 유저 데이터를 확인해보면, 데이터가 누적되기에 압도적으로 이탈자 데이터가 많다. 이런 Imbalanced Label 조건에서는 데이터 밸런싱을 해줘야 하는데, OverSampling 기법이 주를 이룬다.(UnderSampling은 데이터를 버리는 거라 선호되지 않는다.) 좋은 augmentation 기법이 없나 찾아보던 중에, 적당히 잘 모아둔 서베이 페이퍼 - TimeSeries Data Augmentation for Deep Learning: A Survey - 가 하나 있어서 이 페이퍼를 약간 번역인듯 정리 아닌 정리를 해보려고 한다. 논문의 모든 내용을 담지 않았으니 관심 있으신 분은 원문을 꼭 확인하시길.. Time Series Data Aug..
![[논문] Neural Graph Collaborative Filtering](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk4HME%2FbtrGQEJpxr0%2FTB9WwzFWnOwL11ledv2Gr1%2Fimg.png)
[논문] Neural Graph Collaborative Filtering
영어도 영 시원찮고~ 그러다보니 공부도 잘 안되는 것 같아, 시간이 더 걸리더라도 새로운 방법으로 공부해보기로 했다. 아예 번역을 하듯 공부를 하는 것이다. 적당히 요약하면서 불필요한 내용은 좀 쳐내고, 암튼 그렇게 해서 논문에서 놓치는 내용 없이 공부해보도록 하자. 다 쓰고 나서 보니 할 짓 못되는 것 같다. 쓸데없이 오래걸려... 내 TODO time complexity 파트 다시 읽어보기 Abstract 유저와 아이템의 벡터 표현(임베딩)은 현대 추천 시스템에서 매우 중요하다. 고전적 MF부터 현대 딥러닝을 활용한 방법론까지, 대부분의 임베딩은 유저/아이템을 설명하는 pre-existing features(ID, attributes, etc...)로 매핑된다. 이러한 방법들의 inherent dra..
![[논문] BERT-QE: Contextualized Query Expansion for Document Re-ranking](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzd9C2%2FbtrGQpZ2u0g%2F9gRUh3Kbi7Bsc1OOMMoZn0%2Fimg.png)
[논문] BERT-QE: Contextualized Query Expansion for Document Re-ranking
이 논문을 읽기 위해 최소한 준비해야 할 것(뇌피셜) 읽어봐야 하는 논문: BERT 알아야 할 개념: IR, Pseudo Relevance Feedback, Query Expansion PRF는 나도 조금 생소하여 찾아봤다. 출처: 정형일(2007), 질의 확장과 중복 문장 제거 방법을 이용한 신문 기사 요약 시스템. 서강대학교 대학원 석사학위논문. 가장 중요하면서도 어려운 문제 중의 하나는 사용자가 원하 는 정보를 찾기 위한 효율적인 질의를 작성하는 일이다. 하지만, 전체 문 서집합의 구성에 대해 미리 알고 있지 않는 한 이상적인 최적의 질의는 작 성할 수 없다. 대신 최초에는 시험적 질의 (tentative query)로 검색을 수 행한 후, 이전의 검색 결과에 대한 평가에 기반하여 다음 번 검색의 ..
![[논문] Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJOoi1%2FbtrGQZsYMDN%2F13Spn71bghXTxEdGc0uFak%2Fimg.png)
[논문] Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
사단법인 한국인공지능연구소에서 진행하는 오픈랩 프로그램이 7기로 참여했고, 어찌어찌 NLP 분야의 팀에서 활동을 하게 되었다. 여기서 BERT 공부를 다 끝내면 한 번 읽어보라고 논문을 추천받은 게 바로 Sentence-BERT이다. 논문 내용은 생각보다... 별 게 없어보이는데, 또 나름 유의미한 것들이다. 한 번 살펴보자. 이 논문을 읽기 위해 최소한 준비해야 할 것(뇌피셜) 읽어봐야 하는 논문: BERT 알아야 할 개념: Embeddings, Siamese Network, Triplet Network 주의! 본 포스팅은 논문을 번역하거나 자세하게 설명하는 것이 아닌, 주요한 부분들을 집어 제 나름대로의 이해를 바탕으로 서술한 것입니다. 이 포스팅은 논문 이해에 도움이 될 순 있어도 논문의 모든 것을..
딥러닝에서 for문은 최대한 피해야..
[논문] Deep Kinematics Analysis for Monocular 3D Human Pose Estimation 논문의 큰 틀을 차용하면서, 세부적인 것들은 내 맘대로 바꿔보며 3D Pose Estimation 모델을 개발하고 학습해봤다. 근데 이게 영, 어지간히 오래 걸리는 게 아니다. 한 라인마다 time.time()을 찍어가며 테스트를 해봤는데, composition — decomposition 과정이 되게 오래 걸렸다. sk_sidx = torch.tensor([0, 1, 2, 3, 1, 5, 6, 0, 8, 9, 0, 11, 12, 1]).cuda() sk_eidx = torch.tensor([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ,13, 14]).cud..

$D^{-1/2}$는 어떤 방법으로 구해야 할까? np.ndarray와 np.matrix의 차이
Graph Convolutional Network를 사용하면 아래와 같은 수식을 이용하게 된다. $$ Z=\tilde D^{-{1\over2}}\tilde A\tilde D^{-{1\over2}}X\Theta $$ 이때, 인접행렬 $A$에 대해 $\tilde A=A+I$이고, $D$는 의 차수 행렬로 다음과 같다. D = np.diag(np.sum(A, axis=0)) 그냥 $A$의 행벡터의 합으로 나타나는 열벡터를 대각성분으로 한 행렬로 보면 된다. $\tilde D$는 $\tilde A$의 차수행렬로, 크게 다르지 않다. 다음과 같이 구할 수 있다. D_tilde = np.diag(np.sum(A + np.eye(A.shape[0]), axis=0) 앞으로 코드상에선 편하게 $\tilde A, \ti..
![[논문] Exploting Spatial-temporal Relationships for 3D Pose Estimation via Graph Convolutional Networks](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCzGzp%2FbtrGPM8ByzI%2FbftGAF3KAwxePL05XM8s11%2Fimg.png)
[논문] Exploting Spatial-temporal Relationships for 3D Pose Estimation via Graph Convolutional Networks
이 논문은 ICCV 2019에 accepted된 논문으로, CVPR 2019의 3D human pose estimation in video with temporal convolutions and semi-supervised training의 다음 SOTA이다. 이 논문은 3D Body Pose Estimation과 3D Hand Pose Estimation을 모두 다루고 모두 SOTA를 달성했는데, 본 포스팅은 3D Body Pose Estimation에 대해서만 설명하겠다. 한 번 살펴보자. 이 논문을 읽기 위해 최소한 준비해야 할 것(뇌피셜) 알아야 할 개념: Graph Convolution, Local-to-Global Architecture, Non Local Block 주의! 본 포스팅은 논문을..
![[논문] 3D human pose estimation in video with temporal convolutions and semi-supervised training](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYLXE1%2FbtrGTxWi8BR%2FoarxuK3MvV6l6LAtgCkVTk%2Fimg.png)
[논문] 3D human pose estimation in video with temporal convolutions and semi-supervised training
이 논문은 FAIR팀이 CVPR 2019에 제출한 논문으로, SOTA를 달성하였다. ICCV 2019의 Exploting Spatial-temporal Relationships for 3D Pose Estimation via Graph Convolutional Networks 의 이전 SOTA이다. 그럼에도, 논문을 읽다보면 알겠지만 ICCV의 것은 $T=3$일 때이고, 따라서 본 논문의 구조 역시 $T=3$일 때를 기준으로 평가했는데, 본 논문은 $T=243$일 때를 메이저하게 다루고 있어 이 둘을 비교하는 것이 적절한지는 모르겠다. 일단 한 번 살펴보자. 이 논문을 읽기 위해 최소한 준비해야 할 것(뇌피셜) 알아야 할 개념: TCN 주의! 본 포스팅은 논문을 번역하거나 자세하게 설명하는 것이 아닌, ..