Total41 BERT (Pre-training of Deep Bidirectional Transformers for Language Understanding) 논문 링크 - https://arxiv.org/abs/1810.04805 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding We introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers. Unlike recent language representation models, BERT is designed to pre-train deep bidirectional representations from unla arxiv.org 0. Abstra.. 2024. 3. 15. Wsl, CUDA, Cudnn, Miniconda, PyTorch 설치 1. wsl2 설치 powershell 관리자 권한으로 실행하고, 아래와 같은 명령어를 실행합니다.wsl --install이후 설치가 완료되었다면, PC를 재부팅 후 사용자 계정을 등록합니다. 2. nvidia 그래픽카드 driver 설치 3. CUDA 설치본인 그래픽카드에 맞는 CUDA Toolkit 버전을 설치합니다.아래와 같이 옵션을 선택한 후 나오는 명령어들을 복사하여 붙어넣습니다. 설치가 완료되었다면 bashrc 편집을 위해 gedit 설치합니다.sudo apt updatesudo apt install gedit bashrc에 아래와 같은 내용을 추가해줍니다. gedit ~/.bashrc 단, 본인의 CUDA버전을 작성해서 추가(무지성 복붙x)export PATH=/usr/loc.. 2024. 3. 4. YOLOv8 Custom Dataset 학습 Local 환경에서 YOLOv8 Custom Dataset을 학습시키는 과정을 기록으로 남겨두려고 합니다. 1. Custom Dataset 다운로드 Detection Dataset으로 유명한 Roboflow를 이용하였습니다. Dataset은 Aquarium Dataset을 사용하였습니다. 위의 링크로 접속하여 오른쪽 상단의 Download 버튼을 클릭한 후, YOLOv8 Format을 눌러 다운로드를 진행합니다. Dataset은 train, test, valid 폴더로 이루어져 있고, 각각의 폴더는 images와 labels로 구성되어 있습니다. 이를 진행하고자 하는 프로젝트 폴더에서 datsets이란 폴더를 생성하여 압축을 해제해줍니다. 2. Custom Data를 위한 yaml파일 생성 YOLO모델은.. 2024. 2. 28. CS231n 16강 마지막 강의인 16강에서는 Adversarial Example에 대해서 배웁니다. 2013년부터 NN 성능은 인간 수준까지 끌어올렸습니다. Nueral Network가 좋은 성능을 이끌어낼 수 있었던 것은 CNN의 사용이 큰 지분을 차지합니다. 그러나, 입력 이미지의 약간의 변동을 주는 것(Adversarial Attack)으로 Nueral Network를 헷갈리게 만들어 잘못된 출력값을 내뱉게 공격이 가능하다는 약점이 발견되었습니다. 위 슬라이드를 보면 인간의 눈으로 봤을 때, 왼쪽과 오른쪽의 이미지는 둘 다 판다의 이미지라고 판단하지만, Neural Network의 입장에서는 왼쪽 이미지에서 noise filter를 더한 오른쪽 이미지는 긴팔 원숭이라고 판단을 하게 됩니다. 인간의 눈으로는 각 이미지.. 2024. 2. 23. CS231n 13강 우리는 이전 강의까지 다양한 Supervised Learning을 이용한 task에 대해서 알아봤습니다. 이번에는 다른 학습 방법인 Unsupervised Learning과의 차이점에 대해 알아보겠습니다. Supervised Learning Data - (x,y) 형태, x = Data, y = Label Goal - x -> y를 mapping해주는 함수를 학습 Task - classification, regression, object detection, semantic segmentation, image captioning Unsupervised Learning Data - x만 존재, x = Data , No Label Goal - Data의 숨어있는 기본적인 구조를 학습 Task - cluster.. 2024. 2. 7. CS231n 11강 이번 강의에서는 Classification이 아닌 Computer Vision task에 대해서 배웁니다. Semantic Segmentation에 대해서 알아봅니다. Image에 대한 객체를 분류하는 것이 아닌 Pixel을 분류하는 task입니다. Image내의 모든 Pixel을 카테고리별로 분류를 수행합니다. Semantic Segmentation의 특징은 instance를 구별하지 않는다는 것입니다. 위 슬라이드를 예제로 볼 때, 2마리의 Cow를 따로따로 보지 않고, Image 전체 Pixel에 대해 Cow로 Label된 Pixel들을 하나의 객체로 덩어리 지어 분류합니다. Sliding Window는 Semantic Segmentation을 위해 Image를 보는 접근 방법을 말합니다. Inpu.. 2024. 2. 6. CS231n 10강 이번 강의에서는 자연어처리에서 사용되는 RNN구조에 대해서 배웁니다. 기존에 배운 Neural Network의 경우 input = output = 1개 였습니다. 그러나 input값이 여러개이거나 output이 여러개일 수도 있습니다. RNN은 이럴때 사용됩니다. one to many는 Image Captioning에서 사용되고, many to one는 감정 분류에서 많이 사용됩니다. many to many는 번역에 사용되거나 비디오에 사용됩니다. 방금 말한 것의 공통점은 가변길이의 데이터 라는 것입니다. RNN은 가변길이의 데이터에 강합니다. RNN의 구조는 input값이 입력되면, hidden state로 들어갑니다. hidden state는 input값마다 매번 update가 됩니다. hidden .. 2024. 2. 1. CS231n 9강 이번 강의에서는 CNN Architecture를 사용한 모델들에 대해서 자세히 배웁니다. AlexNet AlexNet은 처음으로 large scale로 구성한 CNN모델입니다. Conv Layer 5개, Pooling Layer 3개, ReLU를 사용한 Fc Layer 2개, 최종 출력을 위해 Softmax를 사용한 Fc Layer 1개로 구성되어 있습니다. 많은 data Augmentation을 사용하였고, dropout 사용, SGD Momentum 0.9로 설정, lr - 1e-2으로 사용하였다고 합니다. GPU의 한계로 인하여 GPU 2개를 쓰기위해 절반씩 할당하여 연산을 수행하였습니다. VGGNet 더 작은 filter, 더 깊은 Network를 사용한 모델입니다. Layer의 수가 16,19개.. 2024. 2. 1. CS231n 8강 8강에서는 Deep Learning에 필요한 Hardware와 Software에 대해 배웁니다. CPU vs GPU CPU 더 적은 수의 core(4~10개) 각 core는 더 빠르고, 연속적 처리에 좋음 GPU 수천개의 core 각 core는 더 느리지만 동시에 일을 수행 개별적인 RAM 을 갖고, RAM 사이의 cache 존재 두 행렬곱에서 GPU가 동시연산이 가능하다는 점에서 강력한 장점을 가짐 실제 hardware적으로 CPU와 GPU는 분리되어 존재하고, 여기서 문제가 발생 문제점 Model의 Weight는 GPU의 개별 RAM에 저장되어 있고, train data는 SSD, HDD등에 저장되어 있다는 점에서 train data는 매우 큰 데이터이기에 GPU에서 train을 반복 수행할 때 데이.. 2024. 2. 1. 이전 1 2 3 4 5 다음