Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

덕배의 블로그

원-핫 인코딩(One-Hot Encoding)에 대해 알아보자 본문

인공지능

원-핫 인코딩(One-Hot Encoding)에 대해 알아보자

김덕배_KDB 2023. 8. 20. 21:21
반응형

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]

 

원 핫 인코딩을 어디에 쓸까?

원 핫 인코딩은 주로 범주형 데이터를 수치형 데이터로 변환하여 컴퓨터가 이해하고 처리하기 쉽게 하는 데 사용

 

  1. 기계 학습과 데이터 분석
  2. 자연어 처리
  3. 컴퓨터 비전 분야

 

원 핫 인코딩 쓰는 이유

 

  1. 데이터의 독립성 보존
    • 원 핫 인코딩은 각 범주를 서로 독립적으로 다루기에 데이터의 관계를 왜곡하지 않고 처리 가능
  2. 범주 간 거리 개념 부여
    • 각 범주를 이진 벡터로 표현하기에 범주 간의 거리 개념 부여 가능
  3. 자연어 처리의 토큰화
    • 단어나 문자를 고유한 번호로 매핑한 후에 원 핫 인코딩을 적용해 문장을 벡터로 표현
  4. 계산 효율성
    • 범주의 수에 비례하여 메모리 사용과 계산 복잡성이 증가
  5. 기계 학습 모델의 처리
    • 기계 학습 모델은 수치 데이터를 입력으로 받아들이기 때문에 텍스트나 범주형 데이터를 그대로 사용할 수 없다 그래서 이런 데이터를 모델에 적용하기 위해 원 핫 인코딩 사용

 

이렇게 원 핫 인코딩에 대해서 알아보았다. 인공지능을 공부하는 사람은 꼭 알아야 할 정보인 것 같아 글을 적어보았다.