본문 바로가기

파이썬406

[딥러닝을이용한 자연어 처리 입문] 0209 데이터의 분리 Splitting Data ○ 데이터 분리(Splitting Data) : 데이터 집합을 입력(문제 X), 출력(정답 y) 또는 훈련용, 테스트용으로 분리하는 작업 1. 지도 학습(Supervised Learning) - 지도 학습의 훈련 데이터는 정답이 무엇인지 맞춰야 하는 '문제'에 해당되는 데이터와 레이블이라고 부르는 '정답'이 적혀있는 데이터로 구성되어 있음. 쉽게 비유하면, 기계는 정답이 적혀져 있는 문제지를 문제와 정답을 함께 보면서 열심히 공부하고, 향후에 정답이 없는 문제에 대해서도 정답을 잘 예측해야 함. - 표기 방식 X_train : 문제지 데이터 y_train : 문제지에 대한 정답 데이터 X_test : 시험지 데이터 y_test : 시험지에 대한 정답 데이터 2. X 와 y 분리하기 1) zip 함수를 이.. 2021. 5. 16.
[딥러닝을이용한 자연어 처리 입문] 0208 원-핫 인코딩 One-Hot Encoding ○ 단어 집합(vocabulary) : 텍스트의 모든 단어를 중복을 허용하지 않고 모아놓은 것 1. 원-핫 인코딩(One-Hot Encoding)이란? - 원-핫 인코딩은 단어 집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은 단어의 인덱스에 1의 값을 부여하고, 다른 인덱스에는 0을 부여하는 단어의 벡터 표현 방식. 이렇게 표현된 벡터를 원-핫 벡터(One-Hot vector)라고 함 - 두 가지 과정 각 단어에 고유한 인덱스 부여 (정수 인코딩) 표현하고 싶은 단어의 인덱스의 위치에 1, 다른 단어의 인덱스의 위치에 0 부여 2. 케라스(keras)를 이용한 원-핫 인코딩(One-Hot Encoding) 3. 원-핫 인코딩(One-Hot Encoding)의 한계 - 단어의 개수가 늘어날 수록, 벡터.. 2021. 5. 16.
[딥러닝을이용한 자연어 처리 입문] 0207 패딩 Padding ○ 패딩(Padding) : 문장 또는 문서의 처리를 위하여 데이터에 특정 값을 채워서 데이터의 크기(shape)를 조정하는 것. 숫자 0으로 채운다면 제로 패딩(zero padding) 1. Numpy로 패딩하기 2. 케라스 전처리 도구로 패딩하기 - 출처 : [딥러닝을이용한 자연어 처리 입문] 0207 패딩 Padding 2021. 5. 16.
[딥러닝을이용한 자연어 처리 입문] 0206 정수 인코딩 Integer Encoding 1. 정수 인코딩(Integer Encoding) 단어에 고유한 정수 또는 인덱스를 부여할 때 단어를 빈도수 순으로 정렬한 단어 집합(vocabulary)를 만들고, 빈도가 높은 순서대로 차례로 낮은 숫자부터 부여하는 방법 1) dictionary 사용하기 2) Counter 사용하기 3) NLTK의 FreqDist 사용하기 4) enumerate 이해하기 enumerate()는 순서가 있는 자료형(list, set, tuple, dictionary, string)을 입력으로 받아 인덱스를 순차적으로 함께 리턴 2. 케라스(keras)의 텍스트 전처리 - 출처 : [딥러닝을이용한 자연어 처리 입문] 0206 정수 인코딩 Integer Encoding 2021. 5. 15.