KNN
https://cypress-roast-60f.notion.site/KNN-0f737b2e57f6407c9dc1b4323ec92f38?pvs=4
KNN | Notion
Problem Setting ✔️Dataset : {(x1,y1),…(xn,yn)} - training data - supervised learning setting : unsupervised, semi-supervised, self-supervised learning이 있는 경우도 있지만, 본 상황은 정답지가 있는 경우이므로 supervised learnin
cypress-roast-60f.notion.site
KNN
<aside> 🔥 Problem Setting
✔️Dataset : {(x1,y1),…(xn,yn)}
- training data
- supervised learning setting : unsupervised, semi-supervised, self-supervised learning이 있는 경우도 있지만, 본 상황은 정답지가 있는 경우이므로 supervised learning setting
✔️Evaluation data
✔️x는 numeric이나 image 데이터를 사용하고 y는 class labels로 사용함.
✔️우리가 찾아야 하는 model은 우리의 데이터셋을 잘 학습하고 일반적인 데이터를 잘 작동하는 모델
</aside>
Image Classification Task
- input : 이미지 데이터를 이용 → output : 몇가지 label 중 고르게 하는 것
- input 이미지 데이터는 어떻게 이루어져 있을까? ( Computer 에서..?!)
- channel ⇒ 2D(width, height) matrix 로 이루어짐 (← 그 안에서는 [0,255]의 수치로 이루어져 있음)
- [0,255]를 [-1,1] or [0,1]로 정규화 해서 사용하기도 함
- Colored image 의 경우 3개의 channel로 이루어져 있음 = RGB channels
Image Classification Benchmark Datasets (예제로 많이 사용되는 데이터셋)
이미지 데이터를 학습시키는 데에는 여러개의 데이터가 필요함
이때, 우리에게 제공되는 데이터셋이 있음
- MNIST dataset
TensorFlow 샘플에 보면 MNIST 데이터셋이 많이 등장하는데, 이는 인공지능 연구의 권위자 LeCun교수가 만든 데이터 셋이며 Image 훈련 시 꼭 사용하는 Hello, World 같은 존재
10 classes : 0-9
28*28 grayscale image (흑백 데이터의 경우)
50k training images
10k test images
- 추가설명https://sdc-james.gitbook.io/onebook/4.-and/5.1./5.1.3.-mnist-dataset
- TensorFlow 샘플에 보면 mnist 데이터셋이 많이 등장합니다. MNIST는 인공지능 연구의 권위자 LeCun교수가 만든 데이터 셋이고 현재 딥러닝을 공부할 때 반드시 거쳐야할 Hello, World같은 존재입니다. MNIST는 60,000개의 트레이닝 셋과 10,000개의 테스트 셋으로 이루어져 있고 이중 트레이닝 셋을 학습데이터로 사용하고 테스트 셋을 신경망을 검증하는 데에 사용합니다. MNIST는 간단한 컴퓨터 비전 데이터 세트로, 아래와 같이 손으로 쓰여진 이미지들로 구성되어 있습니다. 숫자는 0에서 1까지의 값을 갖는 고정 크기 이미지 (28x28 픽셀)로 크기 표준화되고 중심에 배치되었습니다. 간단히 하기 위해 각 이미지는 평평하게되어 784 피쳐의 1-D numpy 배열로 변환되었습니다 (28 * 28).
- CIFAR-10 dataset
10 classes : 0-9
32*32 RGB image
50k training images
10k test images
- 추가설명각 라벨당 6,000개의 이미지가 포함되어 총 60,000개의 이미지로 구성되었다.각 이미지는 (가로, 세로, 채널) = (32, 32, 3) 로 구성되었다.RGB로 구성된 이미지는 (가로, 세로, 3)으로,gray scale의 경우 채널을 생략할 수도 있다.
- gray scale인 이미지는 (가로, 세로, 1)으로 표현한다.
- 채널에는 주로 색상의 개수가 포함된다.
- 기본적으로 training images 50,000개 , test image images 10,000개로 나뉘어 존재한다.
- 데이터 셋 이름 + 라벨의 개수로 CIFAR10은 label이 10개인 데이터로 구성된 비교적 작은 규모의 데이터셋이다.
- CIFAR-100 dataset
100 classes
32*32 RGB image
50k training images
10k test images
20개의 중분류 > 5개의 소분류
K-Nearest Neighbor
- 가정 : 비슷한 input → 비슷한 output
- 방법
- x를 넣어서 데이터에서 가장 가까운 데이터를 뽑으라는 것
- k 설정이 매우 중요함
- 가까움의 척도
- Dot product similarity
- Cosine similarity
- Euclidean distance
RECAP Distance Metric
- L^p-norm: p > 0 인 경우, L^p-norm x = (x1,x2,…,xn)
- : 원점과의 거리
- Minkowski distance(Generalized Euclidan distance)
- : 두 점 사이의 거리
Proper value of K
- k의 범위 : 1 ~ num_data
- 내 데이터에 맞는 k를 찾아야 하는데, 여기서 k는 hyper-parameter (사람이 결정해야하는 것)
KNN
<aside> 🔥 Problem Setting
✔️Dataset : {(x1,y1),…(xn,yn)}
- training data
- supervised learning setting : unsupervised, semi-supervised, self-supervised learning이 있는 경우도 있지만, 본 상황은 정답지가 있는 경우이므로 supervised learning setting
✔️Evaluation data
✔️x는 numeric이나 image 데이터를 사용하고 y는 class labels로 사용함.
✔️우리가 찾아야 하는 model은 우리의 데이터셋을 잘 학습하고 일반적인 데이터를 잘 작동하는 모델
</aside>
Image Classification Task
- input : 이미지 데이터를 이용 → output : 몇가지 label 중 고르게 하는 것
- input 이미지 데이터는 어떻게 이루어져 있을까? ( Computer 에서..?!)
- channel ⇒ 2D(width, height) matrix 로 이루어짐 (← 그 안에서는 [0,255]의 수치로 이루어져 있음)
- [0,255]를 [-1,1] or [0,1]로 정규화 해서 사용하기도 함
- Colored image 의 경우 3개의 channel로 이루어져 있음 = RGB channels
Image Classification Benchmark Datasets (예제로 많이 사용되는 데이터셋)
이미지 데이터를 학습시키는 데에는 여러개의 데이터가 필요함
이때, 우리에게 제공되는 데이터셋이 있음
- MNIST dataset
TensorFlow 샘플에 보면 MNIST 데이터셋이 많이 등장하는데, 이는 인공지능 연구의 권위자 LeCun교수가 만든 데이터 셋이며 Image 훈련 시 꼭 사용하는 Hello, World 같은 존재
10 classes : 0-9
28*28 grayscale image (흑백 데이터의 경우)
50k training images
10k test images
- 추가설명https://sdc-james.gitbook.io/onebook/4.-and/5.1./5.1.3.-mnist-dataset
- TensorFlow 샘플에 보면 mnist 데이터셋이 많이 등장합니다. MNIST는 인공지능 연구의 권위자 LeCun교수가 만든 데이터 셋이고 현재 딥러닝을 공부할 때 반드시 거쳐야할 Hello, World같은 존재입니다. MNIST는 60,000개의 트레이닝 셋과 10,000개의 테스트 셋으로 이루어져 있고 이중 트레이닝 셋을 학습데이터로 사용하고 테스트 셋을 신경망을 검증하는 데에 사용합니다. MNIST는 간단한 컴퓨터 비전 데이터 세트로, 아래와 같이 손으로 쓰여진 이미지들로 구성되어 있습니다. 숫자는 0에서 1까지의 값을 갖는 고정 크기 이미지 (28x28 픽셀)로 크기 표준화되고 중심에 배치되었습니다. 간단히 하기 위해 각 이미지는 평평하게되어 784 피쳐의 1-D numpy 배열로 변환되었습니다 (28 * 28).
- CIFAR-10 dataset
10 classes : 0-9
32*32 RGB image
50k training images
10k test images
- 추가설명각 라벨당 6,000개의 이미지가 포함되어 총 60,000개의 이미지로 구성되었다.각 이미지는 (가로, 세로, 채널) = (32, 32, 3) 로 구성되었다.RGB로 구성된 이미지는 (가로, 세로, 3)으로,gray scale의 경우 채널을 생략할 수도 있다.
- gray scale인 이미지는 (가로, 세로, 1)으로 표현한다.
- 채널에는 주로 색상의 개수가 포함된다.
- 기본적으로 training images 50,000개 , test image images 10,000개로 나뉘어 존재한다.
- 데이터 셋 이름 + 라벨의 개수로 CIFAR10은 label이 10개인 데이터로 구성된 비교적 작은 규모의 데이터셋이다.
- CIFAR-100 dataset
100 classes
32*32 RGB image
50k training images
10k test images
20개의 중분류 > 5개의 소분류
K-Nearest Neighbor
- 가정 : 비슷한 input → 비슷한 output
- 방법
- x를 넣어서 데이터에서 가장 가까운 데이터를 뽑으라는 것
- k 설정이 매우 중요함
- 가까움의 척도
- Dot product similarity
- Cosine similarity
- Euclidean distance
RECAP Distance Metric
- L^p-norm: p > 0 인 경우, L^p-norm x = (x1,x2,…,xn)
- : 원점과의 거리
- Minkowski distance(Generalized Euclidan distance)
- : 두 점 사이의 거리
Proper value of K
- k의 범위 : 1 ~ num_data
- 내 데이터에 맞는 k를 찾아야 하는데, 여기서 k는 hyper-parameter (사람이 결정해야하는 것)
+) notion to tistory 해봐야지..