덕배의 블로그
원-핫 인코딩(One-Hot Encoding)에 대해 알아보자 본문
반응형
One-Hot Encoding
이 글은 원 핫 인코딩이 무엇인지 왜 쓰는지 어디에 쓰는지 알 수 있는 글이다.
원 핫 인코딩을 알기 전에 벡터에 대해서 아는 게 좋다. 밑에 링크를 통해 알아보자
벡터, 행렬, 텐서를 이해하고 Numpy(넘파이)로 실습해보기
딥러닝의 기본적인 단위 딥 러닝의 가장 기본적인 단위는 벡터, 행렬, 텐서이다. 차원이 없는 값을 스칼라 딥러닝을 할 때 다루고 있는 행렬 또는 텐서의 크기를 고려하는 것은 중요하기에 딥러
kdbeom.com
원 핫 인코딩이란?
원 핫 인코딩은 주어진 범주형 데이터를 이진 형태로 변환하는 방법이다.
컴퓨터가 이해하기 쉽도록 데이터를 변환하는 기술
- 사과:1
- 배: 2
- 포도: 3
- 수박: 4
원 핫 인코딩으로 변환하면
- 사과: [1, 0, 0, 0]
- 배: [0, 1, 0, 0]
- 포도: [0, 0, 1, 0]
- 수박: [0, 0, 0, 1]
원 핫 인코딩을 어디에 쓸까?
원 핫 인코딩은 주로 범주형 데이터를 수치형 데이터로 변환하여 컴퓨터가 이해하고 처리하기 쉽게 하는 데 사용
- 기계 학습과 데이터 분석
- 자연어 처리
- 컴퓨터 비전 분야
원 핫 인코딩 쓰는 이유
- 데이터의 독립성 보존
- 원 핫 인코딩은 각 범주를 서로 독립적으로 다루기에 데이터의 관계를 왜곡하지 않고 처리 가능
- 범주 간 거리 개념 부여
- 각 범주를 이진 벡터로 표현하기에 범주 간의 거리 개념 부여 가능
- 자연어 처리의 토큰화
- 단어나 문자를 고유한 번호로 매핑한 후에 원 핫 인코딩을 적용해 문장을 벡터로 표현
- 계산 효율성
- 범주의 수에 비례하여 메모리 사용과 계산 복잡성이 증가
- 기계 학습 모델의 처리
- 기계 학습 모델은 수치 데이터를 입력으로 받아들이기 때문에 텍스트나 범주형 데이터를 그대로 사용할 수 없다 그래서 이런 데이터를 모델에 적용하기 위해 원 핫 인코딩 사용
이렇게 원 핫 인코딩에 대해서 알아보았다. 인공지능을 공부하는 사람은 꼭 알아야 할 정보인 것 같아 글을 적어보았다.
'인공지능' 카테고리의 다른 글
딥러닝 MNIST 알아보고 예제를 파이토치로 실습해보자 (0) | 2023.08.23 |
---|---|
소프트맥스(softmax) 회귀에 대해서 알아보고 파이토치로 실습 해보자 (0) | 2023.08.21 |
OAK-D PoE 카메라에서 yolov8 커스텀 해보기 (0) | 2023.08.19 |
로지스틱 회귀, 시그모이드와 비용함수(크로스 엔트로피)에 대해 알고 파이토치로 실습해보자 (0) | 2023.08.18 |
Gstreamer가 무엇인지 알아보자 (0) | 2023.08.17 |