본문 바로가기

ML & DL

(5)
나만의 pytorch 환경 설정하는 방법. 0. 시작. 그 동안 논문만 읽고 수학 공부 위주로 하느라 거의 코딩을 할 기회가 없었다. 그러던 와중 이번에 'Generalised Mutual information for Discriminative Clustering'을 읽은 뒤 새로 모델을 돌려보려는데 해당 Github에는 requirements.txt 외에는 각 framework 간 호환을 맞출 만한 친절함을 갖추고 있지 못했다. 사람들마다 하고자 하는 목표가 다르고, 그에 따라 사용해야 하는 도구가 전부 다른데, 그에 반해 구글링을 통해 얻을 수 있는 결과는 매우 제한적이라고 생각한다. '나는 이렇게 해봤더니 되더라'가 꼭 나의 경우에도 들어맞을 수는 없다. 어떤 사람은 torch geometric을 써야할 수도, 또 다른 사람은 torch l..
나만의 Pytorch environment 개박살났을 때 대처방법 보호되어 있는 글입니다.
'찐비전공자를 위한' : Cosine Similarity 구현(1) 시작. 말로만, 논문으로만 Cosine Similarity를 구했던 저인지라.. 양심의 가책을 늘 느껴오고 있었습니다. Cosine Similarity를 구하는 이유는 king = [1,1,0,0] man = [1,1,1,0] queen = [0,0,1,1] woman = [0,1,1,1] 이렇게 임베딩 값일 있을 때, 저 vector만을 놓고 봤을 때는 단순히 0,1로만 이루어져 있기 때문에, 실제 단어 사이의 연관성을 읽어낼 수 없다는 단점이 생기기 때문입니다. 우리는 "king + man // queen + woman" 이렇게 단어 사이에도 연관 관계를 잘 알 수 있지만, 컴퓨터는 그렇지 않죠. 그래서 vector를 어떤 임의의 그래프 상에 나타내었을 때, 기울기 정도와, representation..
'찐비전공자를 위한' : Pytorch 기초 다루기 - 행렬 연산, 사칙 연산 시작. 이번에는 Numpy & torch.tensor를 가지고 기본적인 연산을 해보겠습니다. 제가 class를 써서 계속 구현해보는 이유는 기본적으로 모든 framework가 class를 통해 이루어져 있기 때문입니다. 우리는 class에 익숙해지고, 각 인자의 흐름을 정확하게 파악할 필요가 있습니다. 그에 대한 적응력을 기르고자 항상 무언가를 새로 배우면, class와 접목시켜보는 것이 중요합니다. 그리고 이번에는 간단한 bfs알고리즘을 함수 인자로 구현해보는 시도도 해보겠습니다. 즉 이번에는 자료 구조 + 알고리즘 + class + torch.tensor + Numpy 의 활용입니다. 시작합니다. Pytorch Basic arithmetics. 1. Numpy array, torch.tensor 조작..
'찐비전공자를 위한' : Pytorch 기초 다루기 - Numpy & Tensor 시작. 저는 원래 ML과 DL 입문을 CV, 그리고 Tensorflow로 했습니다. 그런데 보통 이미 나와 있는 Transformer 모델이나, 아니면 제가 현재 다루어야 할 모델들은 전부 Pytorch로 구현 되어 있는 경우가 많았습니다. 하여 단숨에 다시 Pytorch로 밑바닥부터 차근차근 Tensorflow에서 Pytorch로 컨버젼(개인)하고, Pytorch도 다른 Python syntax를 다뤘던 부분과 연계하여 class, 문자열 함수와 결합한 형태를 만들면서 연습해보도록 하겠습니다. Pytorch Basic. 1. 1차원 Numpy, torch.tensor import numpy as np import torch np_1d = np.array([0,1,2,3,4]) torch_1d = tor..