자연어 처리13 [딥러닝을 이용한 자연어 처리 입문] 카운트 기반의 언어 모델 오늘은 텍스트 마이닝 분야에서 주로 사용되는 카운트 기반의 텍스트 표현 방법인 DTM(Document Term Matrix)과 TF-IDF(Term Frequency-Inverse Document Frequenct)에 대해 다루고자 함 단어의 표현 방법 단어의 표현 방법은 크게 국소 표현과 분산 표현이 있으며, 국소 표현은 해당 단어만 보고 특정값을 맵핑하여 단어를 표현하는 것이며, 분산 표현은 그 단어를 표현하는 주변을 참고하여 단어를 표현하는 방법임 분산 표현 방법의 경우 단어의 의미, 뉘앙스를 표현할 수 없게 됨 예를 들어 puppy, cute, lovely라는 단어가 있을 때 각 단어를 1, 2, 3과 같은 숫자에 맵핑하는 것이 국소 표현이며, 분산 표현 방법은 puppy라는 단어는 cute, l.. 2023. 3. 20. [딥러닝을 이용한 자연어 처리 입문] 언어모델 언어모델이란 단어 시퀀스(문장)에 확률을 할당하는 모델을 말하며, 오늘은 통계에 기반한 전통적인 언어 모델에 대해서 학습하였음 언어모델이란? - 언어모델은 단어 시퀀스에 확률을 할당하는 일을 하는 모델로, 이전 단어들이 주어졌을 때 다음 단어를 예측하는 방식으로 가장 많이 활용됨 통계적 언어모델에서 확률 - 카운트 기반의 접근 - 문장의 확률을 구할 때 카운트에 기반하여 계산이 가능함 - 예를 들어, An adorable little boy가 나왔을 때, is가 나올 확률은 아래와 같이 계산이 가능함 P(isㅣAn adorable little boy) = count(An adorable little boy is)/count(An adorable little boy) 기계가 학습한 코퍼스 데이터에서 An .. 2023. 3. 4. [딥러닝을 이용한 자연어 처리 입문] 패딩과 원-핫인코딩 오늘은 자연어 처리 전 input data를 만들 때 필요한 패딩과 원-핫인코딩에 대해서 학습해보겠습니다. 패딩(Padding) - 자연어 처리를 하다보면 각 문장(또는 문서)의 길이가 서로 다른 경우가 있는데 기계는 길이가 동일한 문서들을 하나의 행렬로 보고 한꺼번에 병렬로 처리함. 따라서, 길이가 다른 문장들을 동일하게 맞춰주는 작업이 필요함. - 이때, 데이터에 특정 값을 채워서 데이터 크기를 조정하는 것을 패딩이라고 하며, 숫자 0을 사용하면 제로 패딩이라고 함. - 아래는 길이가 다른 문장을 가장 길이가 긴 문장에 맞추어 0으로 제로 패딩한 예시임. import numpy as np from tensorflow.keras.preprocessing.text import Tokenizer prepr.. 2023. 2. 27. [딥러닝을 이용한 자연어 처리 입문] 정규 표현식 텍스트를 전처리하는 과정에서 '과정중심평가', '과정 중심 평가', '과정중심 평가'와 같은 동일한 의미를 가지지만 띄어쓰기가 다르게 된 단어들을 '과정중심평가'로 통일할 필요가 있음. 이때, 모든 단어들을 각각 '과정중심평가'로 바꿀 수도 있지만 정규표현식을 사용하여 좀 더 간단하게 바꿀 수도 있음. 그럼 파이썬에서 지원하고 있는 정규 표현식 모듈 re의 사용 방법에 대해서 알아보자. 1. re 모듈함수 정규 표현식 re 모듈에서 지원하는 함수는 아래의 표와 같음. 앞으로 진행될 실습에서는 re.compile()에 정규 표현식을 컴파일하고, re.search()를 통해서 해당 정규 표현식이 입력 텍스트와 매치되는지 확인해 볼 예정임. re.search()는 매치된다면 Match Object를 리턴하고,.. 2023. 2. 25. 이전 1 2 3 4 다음