해당 포스팅 시리즈는 전부 아래 도서 내용을 기반으로 작성됩니다. https://book.naver.com/bookdb/book_detail.nhn?bid=11750210&stay=y 세상에서 가장 쉬운 베이즈통계학 입문 비즈니스에 사용할 수 있는 베이즈통계 베이즈통계는 인터넷의 보급과 맞물려 비즈니스에 활용되고 있다. 인터넷에서는 고객의 구매 행동이나 검색 행동 이력이 자동으로 수집되는데, 그로부 book.naver.com GAN이나 VAEs 등 생성모델을 공부하다보면 정말 많은 확률이나 통계적인 이야기, 이해하기 어려운 수학 기호들을 많이 마주하게 된다. 나는 포스팅에서 여러번 얘기하듯 수학적인 개념이 상당히 약하다. 특히나 통계와 같은 내용은 하물며 표준편차가 뭔지, 분산이 뭔지 그 공식조차 기억도..
Transformer를 이용해 protein sequence를 source로, Drug SMILES sequecne를 target으로 사용하는 모델을 만들고 있다. 더보기 Transformer input은 보통 RNN과 다르게 단어의 토큰 시퀀스를 하나씩 순차적으로 전달하지 않고, 문장 하나를 뭉탱이로 Encoder나 decoder로 전달하기 때문에 컴퓨터는 로직상 RNN처럼 순차적으로 전달될때와 다르게 문장이 어떤 순서로 작성되어있는지 이해할 수 없다. 예를 들어보자, "나는 찰옥수수가 들어간 밥을 먹기로 엄마와 약속했다." 라는 문장이 있을 때 이 문장을 RNN으로 전달하면 ['나', '는', '찰옥수수', '가', '들어', '간', '밥', '을', '먹기', '로', '엄마', '와', '약속'..
파일을 다루다보면 한번에 파일명을 주루룩 바꾸고싶을때가 있다. 그런데 이게 glob이용하면 되는건 아는데 매번 까먹어서 아예 블로그에 박제시켜놓는다. import os from glob import glob path = "Your/file/path/" # 본인의 파일이 들어있는 경로를 복사해서 붙여넣기 하세요 files = glob(path + '*') for i, f in enumerate(files): new_f = os.path.join(path,'img_'+str(i)) # 변경될 파일명을 new_f변수에 저장합니다. # path 뒤, 'img_'+str(i) 부분은 본인이 원하는 파일 명으로 변경하면 됩니다. os.rename(f, new_f) 위 코드 실행시 바로 파일명들이 변경되니까 혹시 불..
class ToDataset(Dataset): def __init__(self, df): self.df = df # self.src = df['src'] # self.tgt = df['tgt'] # self.label = df['pKa'] def __len__(self): return len(self.df) def __getitem__(self, index): src = self.df.iloc[index]['src'] src = src_embedder(torch.tensor(src, requires_grad=False)) tgt = self.df.iloc[index]['tgt'] tgt = tgt_embedder(torch.tensor(tgt, requires_grad=False)) label = sel..
Tensor형태의 데이터는 .is_cuda를 붙여보면 cuda위에 있을경우 True, cpu에 있을 경우 False를 반환한다. 따라서 확인하기 쉽지만 class instance인 model은 단순하게 model.is_cuda를 할 경우 attribute error가 난다. 모델이 cuda에 있는지 확인하기 위해서는 아래 코드를 입력하면 된다. next(model.parameters()).is_cuda (여기서 model은 본인의 모델을 저장한 변수 이름으로 바꿔야한다.)
nn.Embedding에 대한 이해가 제대로 되어있지 않아 여러가지 문제가 있었다. 다음과 같은 문제들이 맞는지 확인해보자 일단 nn.Embedding(n, m)은 (n개의 정수값을 인덱스로 하는, m차원의 테이블)을 만드는 역할을 한다고 생각하면 된다. 예를들어 temp_embedding = nn.Embedding(2, 4)라고 하면 0 0.1123 -0.5321 1.1232 0.8737 1 -2.0012 1.2231 0.6653 0.5531 처럼 0~1 (2개)의 인덱스를 가지는 4차원의 테이블이 만들어진다. 이것을 보통 lookup table이라 표현한다. 다음으로 내가 가진 데이터를 저 인덱스를 통해서 vector의 형태로 불러오는 것이다. 예를들어 내가 가지고 있는 텐서 temp = [0, 0 ..
string 형태가 아닌 다른 타입의 변수를 f.write()함수 내부로 전달하면 아래와 같이 str 형태의 데이터를 전달하라며 오류가 난다. a = {"A":143} with open (..., "W") as f: f.write(a) # TypeError: write() argument must be str, not dict 그럴 때 write 함수 내에서 변수를 repr()로 감싸서 전달하면 정상적으로 저장이 된다. a = {"A":123} with open (... ,"W") as f: f.write(repr(a)) # 정상적으로 저장된다. 다만 이렇게 저장된 변수는 string 형태로 저장되기 때문에 다시 원하는 타입 (딕셔너리 등)의 형태로 이용하려면 eval()함수를 사용해야한다. with o..
나는 음악 감상을 상당히 좋아하고, 이어폰이나 헤드폰이 새로 나오면 집 가까 아니 각설하고 요번에 소니에서 XM5 헤드폰을 내면서 헤드폰 시장이 상당히 핫한데 나도 이참에 헤드폰 하나 살까 고민을 많이 하다가 나의 음악 소비 패턴에 더 적합하다고 생각되어 그냥 이어폰인 WF-1000MX4를 샀다. 길게 쓸 시간따위 대학원생한테 사치다, 진짜 빠르게 평가하겠다. 1. 헤드폰에 도전하는 이어폰이라는 슬로건에 관하여 인정한다, 솔직히 안믿었다 이어폰으로 어떻게 헤드폰 사운드에 감히 도전하겠다는 소리를 하는지? 6mm 드라이버로 40mm 드라이버의 헤드폰에 도전하겠다고? 이제 믿을 수 있겠다, 소니 대단하다 이정도 사운드면 이제 헤드폰의 크기에서 오는 파워풀함까진 따라잡지 못하지만, 해상도, 베이스 빵빵한 음악..
- Total
- Today
- Yesterday
- 이왜안
- MorganCircularfingerprint
- MLE
- 선형대수
- manimtutorial
- variational autoencoder
- 3B1B따라잡기
- manim library
- kld
- manim
- vae
- MatrixAlgebra
- elementry matrix
- ai인공지능
- 베이즈정리
- 기계학습
- ai신약개발
- 제한볼츠만머신
- Matrix algebra
- 백준
- 3b1b
- kl divergence
- 최대우도추정
- eigenvalue
- marginal likelihood
- eigenvector
- 인공지능
- 오일석기계학습
- Manimlibrary
- 파이썬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |