[Coursera/IBM course #7] Data preparation for LLMs
·
🥇 certification logbook
[IBM course #7] Generative AI and LLMs: Architecture and Data Preparation Data LoaderDataLoader는 대규모 텍스트나 이미지 등 다양한 데이터셋을 효율적으로 불러오고(batch), 섞고(shuffle), 전처리하는 데 사용되는 PyTorch의 핵심 도구PyTorch에서는 torch.utils.data.DataLoader 클래스를 사용함. Dataset: 전체 데이터를 담고 있으며, 학습(train), 검증(val), 테스트(test) 세트로 나누어 사용함CustomDataset 클래스: 사용자 정의 데이터셋 클래스 (반드시 __init__, __len__, __getitem__ 메서드 필요)init() : 데이터 불러오기len() :..
[Coursera/IBM course #7] 생성형 AI (Generative AI)
·
🥇 certification logbook
[IBM course #7] Generative AI and LLMs: Architecture and Data Preparation 생성형 AI (Generative AI)생성형 AI란?생성형 AI(Generative AI)는 텍스트, 이미지, 오디오, 3D, 음악 등 다양한 콘텐츠를 자동으로 생성할 수 있는 인공지능 기술.기존의 대규모 데이터를 학습하여, 그 안의 패턴과 구조를 이해하고 새로운 데이터를 생성하는 방식으로 작동한다. 대표 모델1. 텍스트 생성 모델GPT (Generative Pre-trained Transformer): 대화, 문서 작성, 요약 등에 사용2. 이미지 생성 모델DALL·E, GAN (Generative Adversarial Network), Diffusion Models: ..
[Coursera/IBM course #6] Capstone Project 메모
·
🥇 certification logbook
[IBM course #6] AI Capstone Project with Deep Learning 6번째 코스는 AI Capstone Project로, ResNet을 이용하여 정상 이미지 / 이상 이미지를 분류하는 모델을 만드는 프로젝트를 진행한다.단계별로 실습을 진행하면서, 마지막에는 학습 결과를 제출하고 peer review를 받으면 마무리되는 코스이다.실습을 진행하면서 정리해 두면 좋을 것들을 가볍게 메모하는 수준으로 게시글을 남겨두려 한다. 1. Dataset - 슬라이싱 문법현업에서는 파이썬을 잘 사용하지 않아서 이런 게 튀어나올 때마다 당황한다ㅠ 그리고 공부해도 금방 까먹음 휴 from torch.utils.data import Dataset를 상속해서 사용자 정의 데이터셋 만들기 여기에서,s..
[Coursera/IBM course #5] Convolution 연산 기본 개념
·
🥇 certification logbook
[IBM course #5] Deep Learning with PyTorch Convolution 연산 기본 개념Convolution은 이미지에 작은 필터(=커널)를 움직이면서 겹쳐 곱한 뒤 합산하는 연산으로, 특징(feature)을 추출하는 데 사용된다.Kernel: 고정된 크기의 필터, 예: 3x3작동 방식: 이미지의 각 부분과 커널을 dot product(내적) → 결과값(activation map) 생성 커널 크기(K), 이미지 크기(M), 스트라이드(S), 패딩(P) 일 때,$\text{Output Size} = \frac{M - K + 2P}{S} + 1$→ PyTorch에서 다음과 같이 설정 가능nn.Conv2d(in_channels=1, out_channels=1, kernel_size=3..
[Coursera/IBM course #5] 신경망 (Neural Net)
·
🥇 certification logbook
[IBM course #5] Deep Learning with PyTorch 신경망 (Neural Net)기본 신경망 구조 : 1개의 은닉층(2 뉴런)을 가진 신경망 구조입력 → Linear → Sigmoid → Linear → Sigmoid → Threshold (이진 분류용) 활성화 함수: Sigmoid 사용 (출력값: 0~1)PyTorch 구현 방법: nn.Module 또는 nn.Sequential 활용모든 연산은 행렬 곱 기반으로 처리Forward 패스에서 입력 벡터의 shape 변화 추적 가능 이진 분류 학습손실 함수: nn.BCELoss() (Binary Cross Entropy Loss)최적화 함수: Adam 사용입력: 2D 벡터출력: 0 또는 1 (Sigmoid 통과 후 threshold..
[Coursera/IBM course #5] Softmax
·
🥇 certification logbook
[IBM course #5] Deep Learning with PyTorch SoftmaxSoftmax 함수는 여러 개의 클래스 중 하나를 선택해야 하는 분류 문제에서 자주 사용되는 함수각 클래스에 대해 계산된 값을 확률처럼 변환해주며, 이 확률은 모든 클래스에 대해 0~1 사이의 값으로 나타나며, 총합은 1이되게 된다. 1D 예시클래스 3개(파랑/빨강/초록)로 구분각 클래스마다 선형 함수(z0, z1, z2)를 적용한 후 argmax로 예측 - argmax 함수: 가장 큰 값을 갖는 인덱스를 반환예를 들어, z = [1.2, 3.5, 0.8]의 argmax(z)는 1 (가장 큰 값 3.5의 인덱스) 2D 예시 + MNISTMNIST 이미지 (28x28)는 784차원의 벡터로 변환됨각 클래스(0~9)는 ..
[Coursera/IBM course #4] Linear Regression Prediction
·
🥇 certification logbook
[IBM course #4] Introduction to Neural Networks and PyTorch Linear Regression Prediction독립 변수 x, 종속 변수 y 사이의 관계를 선형 함수로 모델링.모델: y = w*x + b (w: weight, b: bias)예측값은 ŷ로 표기. 직접 텐서로 모델 정의requires_grad=True로 파라미터 정의forward() 함수에서 직접 선형 계산 수행2행 1열 텐서 입력 → 각 행마다 선형 함수 적용하여 출력 텐서 생성 가능w = torch.tensor(2.0, requires_grad = True)b = torch.tensor(-1.0, requires_grad = True)def forward(x): yhat = w * x ..
[Coursera/IBM course #4] Dataset
·
🥇 certification logbook
[IBM course #4] Introduction to Neural Networks and PyTorch Simple DatasetDataset 클래스torch.utils.data.Dataset은 PyTorch에서 데이터셋을 커스터마이징할 수 있도록 제공하는 추상 클래스(Abstract Class)주로 __init__, __len__, __getitem__ 메서드를 구현해서 나만의 데이터셋을 만들 수 있음__init__ : 초기화 메서드. 파일 경로, 라벨, 전처리 등을 저장하고 준비__len__ : 데이터셋의 총 길이 반환. len(dataset) 호출 시 몇 개의 샘플이 있는지 알려줌__getitem__ : 주어진 index에 해당하는 데이터 샘플 하나를 반환. dataset[i] 호출 시 i번째 ..
[Coursera/IBM course #4] Tensors
·
🥇 certification logbook
[IBM course #4] Introduction to Neural Networks and PyTorch Overview of Tensors신경망은 수학적 함수이며, 입력 → 처리 → 출력 구조로 구성.PyTorch의 모든 구성 요소는 텐서로 표현된다.즉,입력 x → 텐서출력 y → 텐서신경망의 가중치 (파라미터) → 텐서 PyTorch 텐서는 쉽게 NumPy 배열로 변환 가능PyTorch는 GPU 연산을 손쉽게 지원 파라미터에 대해 requires_grad=True로 설정 시, 자동 미분이 가능→ 이를 통해 모델 학습이 가능해짐 Tensors 1D0차원 텐서 → 숫자1차원 텐서 → 숫자의 배열 (DB의 row, vector, time series) tensor types실수 → float tensor..
[NLP/자연어처리/Python] koGPT2 ChatBot 실습
·
🤖 ai logbook
(PyTorch) koGPT2 ChatBot 참고 : https://wikidocs.net/158023 9-3. koGPT2 ChatBot 프로그래밍에 사용된 패키지들의 버전은 다음과 같다. * huggingface-hub 0.2.1 pypi_0 pypi *… wikidocs.net "PyTorch 딥러닝 챗봇" wikidocs의 koGPT2 챗봇 만들기 page를 따라해보며 공부한 내용을 정리해보았다. KoGPT2란? 참고 : https://github.com/SKT-AI/KoGPT2 GitHub - SKT-AI/KoGPT2: Korean GPT-2 pretrained cased (KoGPT2) Korean GPT-2 pretrained cased (KoGPT2). Contribute to SKT-AI..