AI-ML
-
[torchvision] datasets.MNIST 데이터 내려받기AI-ML 2024. 4. 24. 07:42
- 목차 키워드.- torchvision- MNIST 들어가며. 이번 글에서는 "torchvision.datasets" 의 MNIST 모듈에 대해서 알아보려고 합니다."torchvision.datasets" 의 "MNIST" 모듈은 이미지 데이터들을 손쉽게 제공하는 기능이 존재합니다. CNN 모델의 테스팅을 위해서 MNIST 이미지 데이터를 내려받을 경우를 위해서 관련 기능들을 정리합니다. 먼저 간단한 코드 예시는 아래와 같습니다.torchvistion 의 datasets 모듈 내부에 MNIST Class 가 존재하구요.이는 각종 Vision 과 관련된 Train/Test 데이터셋을 다루기 위해서 사용됩니다.from torchvision import datasetsfrom torchvision.trans..
-
[torchvision] RGB to Grayscale ImageAI-ML 2024. 3. 31. 15:14
- 목차 Grayscale .이번 글에서는 torchvision 모듈을 사용하여 RGB Channel 의 이미지를 Grayscale 이미지로 변형하는 방법에 대해 알아보겠습니다.Grayscale 이란 RGB 채널을 가지는 이미지를 하나의 Channel 을 가지도록 변형하는 스케일링 방식입니다.일반적으로 하나의 이미지는 아래와 같이 3개의 채널로 구성됩니다.각 채널은 Red, Blue, Green 으로 표현되는데요. 이러한 색상의 요소들이 모여서 하나의 이미지의 색상을 결정합니다. Grayscale 은 RGB 채널의 컬러를 Black - White 범위를 가지는 Grayscale 로 컬러를 변형합니다.그 결과로써 아래의 강아지 이미지는 RGB 컬러에서 흑백 색상으로 변경됩니다. 아래의 코드는 위의 사진의 ..
-
[scikit-learn] LabelEncoder 알아보기AI-ML 2024. 3. 29. 06:50
- 목차 키워드.CategoricalOrdinalEncoderLabelfitinverse_transform 들어가며.이번 글에서는 scikit-learn 의 LabelEncoder 에 대해서 알아보도록 하겠습니다.LabelEncoder 는 Categorical Data 를 수치화하는데에 활용됩니다.예를 들어, True 또는 False 값을 가지는 Boolean Data 는 1 또는 0 으로 표현될 수 있습니다.또한 "매우 아니다", "아니다", "조금 아니다", "적당하다", "조금 그렇다", "그렇다", "매우 그렇다" 와 같이 7가지의 상태를 가지는 설문 조사를 가정할 때, 7단계의 상태를 1 부터 7 까지의 수치로 표현할 수 있습니다.그 외, ["남성", "여성"] 과 같은 성별 데이터나 ["서울시..
-
[Pandas] Correlation 알아보기 ( DataFrame corr )AI-ML 2024. 3. 24. 10:26
- 목차 키워드.Correlation. 들어가며.이번 글에서는 Pandas 의 Correlation 을 계산할 수 있는 corr 함수에 대해서 알아보도록 하겠습니다.Correlation 은 두 Feature 의 상관관계를 -1 부터 1 까지의 값으로 표현합니다.예를 들어, Correlation 을 통해서 키와 몸무게의 상관관계를 표현할 수 있는데요.일반적으로 큰 키에 비례해서 몸무게가 증가하는 경향을 보입니다. 위와 같은 키와 몸무게와 같이 서로의 값이 증가하는 상관관계를 가지면 이들의 상관관계를 양의 값을 가집니다.height 와 weight 는 서로 0.73 의 상관관계를 가집니다. 이처럼 Regression 문제에 접근할 때에 Correlation 을 유용하게 사용됩니다. 아래의 Dataset..
-
Cross Entropy 알아보기AI-ML 2024. 3. 8. 22:42
- 목차 키워드.- Probability- Surprise- Entropy- Cross Entropy 들어가며.이번 글에서는 Cross Entropy 에 대해서 알아보는 시간을 가지도록 하겠습니다. Cross Entropy 를 이해하기 위해서 몇가지 사전지식들이 요구되며, 사전 지식인 Probability, Surprise, Entropy 에 대해서 설명을 선행하면서 Cross Entropy 에 대해 알아보겠습니다. Probability.먼저 확률에 대해서 설명하도록 하겠습니다. 확률은 어떤 사건 X 가 발생하는 빈도를 표현하는 방식입니다. 확률을 계산하는 공식은 “사건 X 의 발생 빈도 / 전체 사건의 총 발생 횟수” 와 같습니다. 사건 X 는 전체 사건의 부분 집합으로 가정하며 그렇기에 확률의 범위는..
-
[pytorch] nn.Embedding 알아보기AI-ML 2024. 3. 8. 22:42
- 목차 키워드.- Embedding- Latent 들어가며.pytorch 의 Embedding Layer 는 Input Tensor 를 다차원으로 확장시켜주는 기능을 수행합니다.예를 들어, 입력값이 1 인 경우에 5차원으로 확장시켜주는 Embedding Layer 에 의해서[-0.8088, 0.6665, -0.0974, -0.1083, 0.2192] 와 같은 형식으로 변형될 수 있죠.1 -> Embedding -> [-0.8088, 0.6665, -0.0974, -0.1083, 0.2192] 이러한 Embedding Layer 는 크게 2가지 동작을 수행합니다.첫번째로 제공되는 기능은 Input Data 를 Latent Vector 인코딩할 수 있습니다.즉, Categorical 한 제한된 범위..
-
pytorch - Conv2D 알아보기 ( CNN )AI-ML 2024. 3. 3. 12:15
- 목차 키워드.- CNN- Convolution- conv2d 들어가며.CNN 을 구성하기 위해서 사용되는 nn.Conv2d 의 구체적인 동작 방식에 대해서 알아보려고 합니다. 함께 보면 좋은 글.https://westlife0615.tistory.com/765 Cross Entropy 알아보기- 목차 키워드.- Probability- Surprise- Entropy- Cross Entropy 들어가며.이번 글에서는 Cross Entropy 에 대해서 알아보는 시간을 가지도록 하겠습니다. Cross Entropy 를 이해하기 위해서 몇가지 사전지식들이 요westlife0615.tistory.com Kernel or Filter.CNN 은 원본 이미지와 커널이라고 불리는 작은 크기의 Matrix 를 곱..
-
[torchvision] ToTensor 알아보기AI-ML 2024. 3. 1. 09:08
- 목차 들어가며.이번 글에서는 torchvision 의 To_Tensor 기능에 대해서 알아보도록 하겠습니다.ToTensor 는 torchvision.transforms 모듈 내의 함수입니다.이는 Image 를 Tensor 로 변형할 수 있는 기능을 제공합니다. 예를 들어 임의의 이미지를 To_Tensor 함수를 이용하여 Tensor 로 변형해보도록 하겠습니다.사용할 이미지는 임의의 이미지로 176x197 사이즈의 이미지입니다.import torchvisionfrom PIL import Imageimage = Image.open("../images/sample1.jpg")to_tensor = torchvision.transforms.ToTensor()tensor = to_tensor(image)prin..
-
[pytorch] NLLLoss 알아보기 (Negative Log Likelihood)AI-ML 2024. 2. 22. 20:39
- 목차 키워드.- Likelihood- NLL Loss Likelihood 란 ?이번 글의 주제인 NLL Loss 의 NLL 은 Negative Log Likelihood 의 약자입니다.그래서 우선적으로 Likelihood 의 의미에 대해서 간략히 알아보려고 합니다.Likelihood 는 우리말로 가능성, 가능도, 우도 등으로 불립니다.Likelihood 는 수식으로 아래와 같이 표현됩니다.$$ L(\theta | x) $$ $ \theta $ 는 모델의 파라미터 또는 확률 분포의 여러 변수들을 의미하구요.그리고 X 는 데이터 또는 Random Variable 을 의미합니다. 정확한 이해를 위해서 여러가지 예시를 설명드리겠습니다. 정규 분포와 Likelihood.대한민국 성인 남성의 키를 정규분포로 표..
-
Sigmoid Activation Saturation 알아보기AI-ML 2024. 1. 10. 22:19
- 목차 키워드.- Saturation- Sigmoid 들어가며.이번 글에서는 Deep Learning 에서 사용되는 대표적인 Activation Function 인 Sigmoid 의 Saturation 에 대해서 알아보려고 합니다.Activation Function 은 크게 Sigmoid 계열과 ReLU 계열로 나뉩니다.아래 왼쪽 그림이 Sigmoid 함수이고, 우측의 그림이 ReLU 함수입니다.ReLU 함수는 Sigmoid 함수의 일부 단점들을 극복하는 특징을 보이며, 근래의 Deep Learning 분야에서 주로 사용되는 Activation Function 입니다. 그럼 위 Sigmoid 함수가 가지는 Saturation 은 과연 무엇일까요 ? Sigmoid Saturation.아래 2개의 이미지..