반응형

전체 글 32

[파이토치 (PyTorch)] 9. Softmax Classifier

Softmax Classifier는 다중 클래스 분류(Multi-Class Classification) 문제를 해결하기 위한 머신러닝 및 딥러닝 모델이다.이 모델은 '입력 데이터를 여러 클래스로 분류하는 작업'에서 확률 분포(probability distribution)를 출력한다.  Softmax Classifier는 다중 클래스 분류 문제에서 사용된다입력 데이터는 선형 변환(Wx + b)를 거친 후 Softmax 함수를 통해 확률로 변환됩니다.Cross-Entropy Loss를 이용해 실제 정답과의 차이를 최소화하도록 학습한다.확률값이 가장 높은 클래스를 최종 예측값으로 반환한다.  Softmax란? 🧐    Softmax 함수는 여러 클래스에 대한 확률 값(0~1)을 계산하고, 모든 확률의 합이 ..

[파이토치 (PyTorch)] 8. PyTorch DataLoader

DataLoader란?DataLoader는 데이터를 효율적으로 관리하고 처리하기 위해, 대규모 데이터를 모델 학습에 사용하기 쉽게 나눠서 로드하고, 배치(batch) 단위로 처리하는 도구이다.모델 학습이나 검증 시, 데이터를 자동으로 샘플링, 섞기(shuffle), 배치(batch) 크기 설정 등의 기능을 제공한다.반복자(iterator) 역할을 수행하여 한 번에 하나의 배치를 모델에 전달한다. - 핵심 개념- Dataset: 데이터를 저장하고 관리하는 구조TensorDataset, ImageFolder 등 사용 가능DataLoader: Dataset을 감싸고, 배치 단위로 데이터를 로드batch_size: 한 번에 처리할 데이터의 크기shuffle: 데이터 섞기 여부 설정 (True로 설정하면 무작위로..

[파이토치 (PyTorch)] 7. Wide and Deep

Wide and Deep Learning은 Google에서 개발한 추천 시스템(Recommendation System) 모델로, 2016년에 발표되었다.이 모델은 기억(Memorization)과 일반화(Generalization)를 동시에 수행할 수 있도록 설계되었다. 개념 🌟 Wide(넓은) 부분과 Deep(깊은) 부분을 결합한 하이브리드 모델이다.Wide 모델:선형 모델(Linear Model) 기반으로, 기존 데이터 패턴을 활용한다.Deep 모델:신경망(Neural Network) 기반으로, 새로운 패턴(일반화)을 학습한다.      입력 데이터는 행렬 X로 표현되고, a와 b는 각각의 특성을 나타낸다.각 행(row)은 하나의 데이터 포인트이며, 열(column)은 특성이다. 가중치는 벡터 W로 ..

[파이토치 (PyTorch)] 6. Logistic Regression (로지스틱 회귀)

로지스틱이란? 🧐"로지스틱"은 시그모이드 함수의 또 다른 이름인 로지스틱 함수에서 유래했습니다.수학적 기반은 회귀(Regression)를 사용하지만, 출력이 확률 값을 의미하므로 분류 (Classification) 문제를 해결하기 위한 지도학습 (Supervised Learning) 알고리즘입니다.시그모이드 함수란? 🧐(출처 : https://datasciencebeehive.tistory.com/80)  주로 S자 형태의 곡선을 그리는 함수로, 수학적으로는 다음과 같이 표현할 수 있습니다.    시그모이드 함수의 특징출력 범위: 시그모이드 함수의 출력값은 항상 0과 1 사이입니다. 이 특성 때문에 이 함수는 확률을 나타내는 데에 아주 적합합니다.S자 곡선: 시그모이드 함수는 S자 형태의 곡선을 그립..

[파이토치 (PyTorch)] 5. Linear Regression in PyTorch way

선형 회귀 꿀팁!!  파이토치리듬 🚀-> 파이토치로 딥러닝 모델을 만들 때 꼭 지켜야 할 '3단계 핵심 흐름' (선형 회귀 뿐만아니라, 복잡한딥러닝 모델에도 모두 적용된다.)  1) 모델에서 쓸 클래스와 변수 설정하기 - (설계)-> 데이터가 입력되었을 때, 어떤 수학적 연산을 거쳐 출력할지 결정 2) 파이토치 api를 사용하여 loss와 optimizer 구성하기 - (목표 설정)-> 모델이 얼마나 잘 예측하는지 평가하고 잘못된 부분을 어떻게 수정할지 결정하는 도구 필요!-> 목표점수를 정하고, 목표에 달성하기 위해 그 도구를 준비하는 단계-> Loss function: 예측값과 실제값의 차이를 측정하고 그 오차를 최소화하기 위함-> Optimizer: loss를 줄이기 위해 가중치과 편향을 조정 (..

[파이토치 (PyTorch)] 4. Back-propagation (역전파)

역전파(Backpropagation)란?Back-propagation는 인공신경망(Artificial Neural Network)에서 오차(에러)를 줄이기 위해 가중치(weight)와 편향(bias)을 업데이트하는 핵심 알고리즘입니다.쉽게 말해, "결과가 틀렸을 때, 왜 틀렸는지 되돌아가면서 원인을 찾고 수정하는 과정"이에요.   역전파(Backpropagation)는 신경망의 손실을 줄이기 위해 가중치를 조정하는 알고리즘입니다.순전파 → 손실 계산 → 역전파 → 가중치 업데이트 과정을 반복하여 최적의 모델을 학습합니다.체인 룰을 사용해 각 층의 기울기를 계산하고, 경사하강법으로 최적화합니다. 1. 개념 설명순전파(Forward Propagation):입력 데이터를 네트워크에 통과시켜 출력을 계산합니다...

[파이토치 (PyTorch)] 3. Gradient Descent (경사 하강법)

Gradient Descent(경사 하강법)은 쉽게 말해서 '최적의 답을 찾기 위해 조금씩 내려가는 과정' 이라고 설명할 수 있다.  1. 개념 설명경사하강법은 **산에서 가장 낮은 지점(최소점)**을 찾는 것과 비슷합니다.산 = 손실 함수(loss function) → 모델의 오차를 측정하는 함수최저점 = 손실이 가장 작은 지점 → 모델이 가장 좋은 상태내려가는 방향 = 기울기(gradient) → 손실을 줄이는 방향목표:손실 함수를 최소화하는 **가중치(weight)**와 편향(bias) 값을 찾아 모델 성능을 최적화합니다.2. 원리기울기(Gradient) 계산:현재 위치에서 얼마나 가파른지(기울기)를 계산합니다.방향 결정:기울기가 가장 가파르게 내려가는 방향을 선택합니다.한 걸음 이동:일정한 크기(..

[파이토치 (PyTorch) ] 2. Linear Model (Linear regression : 선형 회귀)

1. Linear Regression (선형 회귀)1) 개념   선형 모델은 입력값(특징)과 가중치(weight)를 곱하고 편향(bias)을 더해 결과값(출력)을 계산하는 간단한 수학적 모델이다. 수식 표현: y=Wx+b x: 입력 데이터 (특징 또는 독립 변수)W: 가중치(Weight, 모델이 학습하는 값)b: 편향(Bias, 모델이 학습하는 값)y: 출력값(예측값 또는 종속 변수) 선형 모델은 입력과 출력 사이의 선형 관계를 학습하여 예측한다.그래프 또한 선형적인 1차함수의 형태를 띄고 있음장점) 그래프 사이의 거리를 찾기 쉬움  2. Training Loss (훈련 손실)1) 손실 함수의 역할훈련 과정에서 모델의 예측값과 실제값 사이의 차이를 측정합니다.모델은 이 손실값을 최소화하도록 학습합니다. ..

[파이썬 문법] 2. 입출력과 변수

1. 출력하기 - print()1-1) 문자(열) 과 숫자 출력하기‘출력’이란 어떠한 결과를 볼 수 있도록 화면에 띄우는 것으로 생각해도 될 것 같다. 간단하게 화면에 원하는 문장(문자열) 을 출력할 수 있는 방법이다. Shell에 print(" 안녕하세요! ")라고 입력한 후 [enter]를 누르면 파이썬 코드가 실행되면서 안녕하세요! 라는 문장이 출력되는 것을 볼 수 있다. 출력하고자 하는 것이 ‘문자(열)’ 이라면 “” (쌍 따옴표)와 함께 print() 문을 사용하여,print("  ") 의 쌍따옴표 사이에 출력하려는 문자(열)을 적어주면 된다. 숫자를 출력하고 싶은 경우에는 ""(쌍 따옴표) 없이print( ) 괄호 안에 print( 2025 ) 와 같은 형태로 적으면 2025가 출력되는 것을 ..

728x90
반응형
LIST