일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- PYTHON
- 코딩 테스트
- DFS
- OS
- 파이썬
- AI
- linux
- 구글 킥스타트
- 브루트포스
- kick start
- 프로그래밍
- 알고리즘
- 운영체제
- 코딩테스트
- 순열
- 백준
- nlp
- 네트워크
- google coding competition
- 프로그래머스
- CSS
- 딥러닝
- 코딩
- 동적프로그래밍
- 킥스타트
- BFS
- 리눅스
- dp
- 그래프
- 동적 프로그래밍
- Today
- Total
목록AI (48)
오뚝이개발자
아나콘다 설치 방법은 여러 곳에서 찾아볼 수 있으니 생략하겠다. GPU를 사용하는 머신러닝을 위해서는 환경설정이 중요하다. 아나콘다를 이용해 환경 세팅을 해주어야 하는데 파이썬, 파이토치, 쿠다 버전을 맞추기가 까다롭다. 각 버전별로 호환이 되는 것들이 정해져있어서 다른 버전으로 다운받았다가는 싹 다 엎고 재설치를 해야 한다. 여기서는 python3.9에 pytorch를 설치하여 GPU 환경을 구축하는 방법을 소개한다. 먼저 아래와 같은 커맨드로 python3.9를 사용하는 콘다 가상환경을 생성한다. conda create -n [환경이름] python=3.9 가상환경이 만들어졌으면 아래 커맨드로 해당 가상환경을 활성화시킨다. conda activate [환경이름] 그 후 아래 커맨드로 python3.9..
오늘 소개할 논문은 Geoffrey Hinton의 “The Forward-Forward Algorithm: Some Preliminary Investigations”이다. 2022 NIPS talk에서 다루어졌던 논문으로 22년 12월에 arXiv에 공개된 따끈따끈한 논문이다. 힌튼은 현재 딥러닝 학습의 근간을 이루는 역전파(Backpropagation) 알고리즘의 초기 연구에 참여했던 인물이다. Backpropagation(이하 BP)은 오늘날 여러 AI 모델들의 learning procedure에 사용되는 중요한 알고리즘이다. 하지만 컴퓨터 과학자이면서 인지심리학자이기도 한 힌튼은 실제 우리 대뇌 피질의 학습 과정이 BP와 유사하지 않다는 점을 지적하면서 새로운 Forward-Forward algor..
아나콘다(Anaconda)를 사용하다보면 같은 환경을 다른 머신에서도 사용하고 싶거나, 같은 머신에서 비슷한 환경을 복제한 뒤 이런저런 패키지를 추가, 삭제하여 사용하고 싶은 경우가 있다. 이를 위한 기능이 콘다에 있다. 즉, 일일히 패키지를 설치하지 않아도 된다. Step #1 : Conda env를 yaml 파일로 export 하기 아래와 같이 자신이 복제하고자 하는 콘다 가상환경을 activation 시킨 뒤 conda env export 명령어를 사용해서 해당 콘다 환경을 yaml 파일로 저장해주면 된다. conda activate myconda# 만약 가상환경 이름이 myconda라면 conda env export > myconda.yaml 두번 째 명령어를 실행하면 yaml 파일에 자신의 콘다..
아나콘다(Anaconda)는 AI나 데이터 과학 패키지를 많이 포함하고 있다. 아나콘다를 통해 이들을 일괄적으로 편리하게 설치할 수 있다. 이 글에선 리눅스에 아나콘다를 설치하는 방법을 소개한다. Step #1 : 아나콘다 사이트에 접속해 installer 다운로드 https://www.anaconda.com/products/distribution Anaconda | Anaconda Distribution Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine. www.anaconda.com 위 공식 사이트에 접속해서 자신의 OS에..
아나콘다(Anaconda)는 AI나 데이터 과학 패키지를 많이 포함하고 있다. 아나콘다를 통해 이들을 일괄적으로 편리하게 설치할 수 있다. 이 글에선 리눅스에 아나콘다를 설치하는 방법을 소개한다. Step #1 : 아나콘다 사이트에 접속해 installer 다운로드 https://www.anaconda.com/products/distribution Anaconda | Anaconda Distribution Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine. www.anaconda.com 위 공식 사이트에 접속해서 자신의 OS에..
Error 발생 상황 모델 학습을 돌리다보면 다음과 같은 에러를 종종 만나게 된다. device-side assert triggered Assertion `srcIndex < srcSelectDimSize` failed. RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE when calling `cublasSgemm( handle, opa, opb, m, n, k, &alpha, a, lda, b, ldb, &beta, c, ldc)` Error의 원인 GPU단에서의 에러 메시지는 이처럼 자세한 이유를 드러나지 않아 디버깅이 쉽지 않다. 위와 같은 에러의 원인은 대게 차원(dimension)이 일치하지 않아 발생하는 문제이다. 즉, input으로 모델에 주입..
GPU를 사용해 모델 학습을 돌리다보면 GPU의 사용률이 저조하게 나오는 경우가 있다. 이런 경우 충분한 자원이 있더라도 학습에 오랜 시간이 걸리게 된다. 이 때 필요한 것이 GPU 사용률을 최적화시키는 것이다. 방법은 많지만 그 중 가장 대표적인 방법을 소개하고자 한다. GPU 사용률이 저조한 이유는 대부분 CPU단에서 데이터 처리가 GPU에서의 처리 속도를 따라가지 못해 발생한다. 즉, GPU에서 처리할 데이터가 CPU에서 아직 프로세싱을 거쳐서 준비가 다 되지 않은 경우이다. num_workers 설정해주기 pytorch와 huggingface의 transformers엔 모두 num_workers라는 파라미터를 설정해줄 수 있다. 이는 학습 도중 CPU의 작업에 몇 개의 코어를 사용할지를 결정하는 ..
모델 학습을 돌리다보면 GPU 상태를 모니터링해야 되는 경우가 종종 있다. 내가 지정한 GPU로 프로그램이 잘 돌아가고 있는지, GPU 메모리가 학습이 진행되는 정도에 따라 얼만큼 점유되고 있는지, GPU 사용률이 충분히 높게 잡히고 있는지 같은 사항들을 확인해야 되는 경우들이 그러하다. 이럴 땐 아래의 커맨드로 확인이 가능하다. 리눅스 커맨드 창에 아래와 같은 명령어를 입력하면 1초 단위로 갱신되는 GPU 상태를 모니터링할 수 있다. watch -n -1 nvidia-smi