전체 글

전체 글

    [NLP Article] BERT에 대한 모든 것

    [NLP Article] BERT에 대한 모든 것

    이 게시글은 Language Understanding with BERT 아티클을 참고한 글이다! Thanks to Jinheon Baek~! 출국 전 NLP 공부 .. 일주일에 게시글 세개씩 올릴 것이다. 항상 겸손하기 .. ◆ BERT는 뭘까 BERT의 효용은 아래 두가지라고 저자는 주장한다. Self-supervised learning으로 raw textual data를 pre-training (즉, downstream task를 위한 encoder) 각 token에 대해 bidirectional feature representation을 학습 ◆ Building Blocks of BERT BERT의 구성요소는 1) Self-Attention 2) Transformer Encoders 3) Self-..

    [Direct PhD] 세달만에 AI 미국 박사 준비하기 - (1) 프롤로그

    [Direct PhD] 세달만에 AI 미국 박사 준비하기 - (1) 프롤로그

    오늘 시점으로 세군데의 학교 (UCSD / UNC / BU) 에서 기다렸던 오퍼를 모두 받았다. 미박 준비 일기를 써야지 써야지 하다가 못썼는데, 막상 오퍼를 모두 받으니 글로 남겨야 겠다는 생각이 들어 내가 사랑하는 작고 하찮은 다컴공.. 에 남기기로 했다 ㅋㅋ (티스토리는 왜 블로그 이름이랑 도메인이 바뀌지 않는걸까..........) 연구를 해야하니 바쁘면 못올릴 것 같고, 시간날 때마다 내가 느꼈던 주관적인 것들을 하나씩 올려보려고 한다. 나중에 보고 부끄러워서 비공개할 수도 있다 ㅠ ㅅ ㅠ.. 하지만 Direct PhD, 특히 AI 유학 관련해 참고할 자료가 많이 없었어서, 누군가에게 내 경험이 도움이 되길 바라는 마음에 + 미래의 내게 추억을 남기고 싶어서 .. 글을 쓰기로 했다. 이 글은 프..

    [Git] 특정 브랜치만 clone하기

    [Git] 특정 브랜치만 clone하기

    diffusers library 쓰다가.. 특정 브랜치만 클론해야해서 .. git clone -b {branch_name} --single-branch {저장소 URL}

    [Multimodal] 멀티모달 러닝 (Multimodal Learning)에 대한 아주 기초적인 이해

    [Multimodal] 멀티모달 러닝 (Multimodal Learning)에 대한 아주 기초적인 이해

    요즘 멀티모달에 빠져있다. 간단하게 블로그에도 개괄적인 멀티모달러닝에 관해 정리하면 좋을 것 같아서 포스팅을 하려고 한다. 😉 아마 text-to-image 같은 stable diffusion을 이용한 분야가 요즘 너무 핫해서, 다들 한번 쯤은 들어봤을 분야이지 않나 싶다. 이 게시글에서는 아주 아주 직관적이고 기초적인 부분만 다룬다. # Multimodal learning의 목적? 멀티모달 (Multimodal)은 기본적으로 여러개의 데이터 형태 (소리, 이미지, 비디오, 음성) 등을 의미한다. 우리가 살고있는 세상은 생각해보면 여러개의 modality로 이루어져 있고, 당연히 uni-modal input으로 만든 모델보다 multimodal 모델이 강력한 파워를 가질 수밖에 없다. 이들을 통합해서 딥..

    [Linux] 갑자기 conda를 찾을 수 없을 때 ~/.bashrc 확인하기

    [Linux] 갑자기 conda를 찾을 수 없을 때 ~/.bashrc 확인하기

    바빠 죽겠는데 연달아 포스팅을 하는 이유.. 방금 진짜 역대급으로 식겁했기 때문이다 ㅜㅜ 문제였던 것 이전 포스팅처럼 필자는 서버 home 폴더 청소중이었다. 캐시 파일 지우고.. 그러고 이제 환경변수 추가하려고 nano ~/ .bashrc로 캐시 저장 경로를 추가하고 있던 참이었는데.. vim 대신 nano를 처음 써봐서 그런지 어찌어찌 추가해서 잘 저장했다고 생각했는데 .. 몰라 그 이후로 conda를 물지 못하는 (=conda: command not found) 터미널이 되어버렸다. (conda 라고 터미널에 치면 아무것도 물지 못했던 그 절망적인 상황 ㅜㅜ) 되짚어보니 아마 이때부터가 아닌가 싶다. 근데 그 후로 다시 nano ~/ .bashrc를 치니 아무 것도 안나오는거다. 나는 ~/ .bas..

    [Linux] .cache 폴더 삭제하기 - conda, pip cache 파일 삭제하기

    [Linux] .cache 폴더 삭제하기 - conda, pip cache 파일 삭제하기

    우리의 서버 내 home 폴더의 용량을 가장 많이 잡아먹는 친구가 누군지 아는가? conda env? anaconda directory? 아니다. 바로 .cache 일 수 있다는 점! (나도 알고 싶지 않았다고..!) .cache 삭제하기 살면서 home 폴더의 용량을 줄이고 싶을 때가 한번쯤은 오게된다. 그 때는 .cache를 살펴보자! 필자는 cache가 home 폴더에서 무려 33G 중 15G를 차지하고 있음을 알아내었다. (ㅋㅋ) 심각한 상태를 알았다면 소리를 한번 지르고.. 경악을 해준 뒤 이제 지워주자! 구글링을 해보니 .cache는 함부로 지우면 안된다고 한다. 따라서 pip와 conda의 .cache를 지워주는 방법은 아래와 같다. #pip pip cache purge #conda cond..

    [Linux] du로 폴더 용량 확인 / 가장 용량 큰 폴더 top 10 확인 후 삭제하기

    [Linux] du로 폴더 용량 확인 / 가장 용량 큰 폴더 top 10 확인 후 삭제하기

    요즘 데이터셋 엄청 다운받고.. Ablation 을 하느라 실험을 남발했던 나.. 결국 -bash: cannot create temp file for here-document: No space left on device 라는 오류를 만나게 된다. ^-^ 저 오류는 cd 를 칠 때마다 나와서.. 정말 킹받는다.. 일단 특정 폴더 용량 확인하는 법은 아래와 같다. du -sh 폴더이름 가장 용량이 큰 top10 디렉토리 확인하는 법은 뭘까 ! 아래 명령어를 확인하고 싶은 폴더 경로에서 실행하면 된다. $ du -hsx * | sort -rh | head -n 10 그럼 아래와 같이 범인들이 색출된다. 딱 대자. 그리고 필요 없으면 삭제를 해주면 된다 ~! 83G wr_tools 1.2G exp.city 99..

    [CV] Hidden dimension이 너무 클 때 flatten 하지 말고 똑똑하게 layer 추가하기

    [CV] Hidden dimension이 너무 클 때 flatten 하지 말고 똑똑하게 layer 추가하기

    요즘 모델 아키텍처적인 설계를 많이 하구있다. 사실 내가 가장 못하는 구현이기도 하다. ㅜㅜ 연구를 점점 해나갈수록 내가 상대적으로 잘하는 것, 못하는 것이 슬슬 구분되기 시작하는데 이건 내가 못하는 것에 속한다 ㅎㅋ.. 예전에 친한 언니가 딥러닝은 차원맞추기라고 하는 얘기를 들었던 적이 있는데, 요즘 공감되구 있다. 암튼 ViT 아키텍처를 고치다가, weight matrix를 중간에 추가해야할 일이 생겼다. 그런데 dimension이 맞지 않는거다. 예를 들어서 아래와 같은 상황이다. [1, 65536, 64] 텐서에 특정 weight matrix를 곱해서, 결과적으로 [1,8] 크기의 행렬을 만들어야 함 # Flatten? 나는 아키텍처 설계에 익숙치 않기 때문에, 위와 같은 상황에서 처음에는 아래와..