본문 바로가기

NLP(자연어 처리)4

텍스트 전처리 - 토큰화 텍스트 전처리 - 토큰화 토큰화(tokenization) 주어진 코퍼스에서 토큰이라 불리는 단위로 나누는 작업 단어의 토큰화 토큰의 기준을 단어로 하는 경우(단어는 단어 단위 외에도, 의미를 갖는 문자열로도 간주되기도 함) from nltk.tokenize import word_tokenize from nltk.tokenize import WordPunctTokenizer from tensorflow.keras.preprocessing.text import text_to_word_sequence word_tokenize Don't -> Do , n't 로 분리 Jone's -> Jone , 's 로 분리 문장 = "Don't be fooled by the dark sounding name, Mr. Jon.. 2022. 6. 29.
자연어 처리(3) - 시퀀스배열_순환신경망 자연어 처리(3) - 시퀀스배열_순환신경망 시퀀스배열_순환신경망(RNN, LSTM)에 대해 알아보자. 순환신경망(RNN) 연속된 데이터가 순서대로 입력되었을 때 앞서 입력받은 데이터를 잠시 기억해 놓는 방법 기억된 데이터 마다 중요도 가중치를 주면서 다음 데이터로 넘어감 모든 입력 값에 이 작업을 순서대로 실행(다음 층으로 넘어가기 전 같은 층을 맴도는 것처럼 보임) LSTM(Long Short Term Memory) 한 층에서 반복되기 직전에 다음 층으로 기억된 값을 넘길지 관리하는 단계를 하나 더 추가하는 것 RNN의 기울기 소실 문제 보완을 위해 나온 방법 사용 - 다수 입력 단일 출력 ex) 문장을 읽고 뜻을 파악할 때 활용 - 단일 입력 다수 출력 ex) 사진의 캡션을 만들 때 활용 -다수 입력.. 2022. 6. 15.
자연어 처리(2) - 문장의 원-핫 인코딩, 단어 임베딩 자연어 처리(2) - 문장의 원-핫 인코딩, 단어 임베딩, 패딩 문장의 원-핫 인코딩, 단어 임베딩, 패딩 시 사용하는 코드에 대해 알아보자. ex) to_categorical( ), Embedding( ), pad_sequnce( ) 문장의 원-핫 인코딩(one-hotencoding) 단어가 문장의 다른 요소와 어떤 관계를 가지고 있는지를 알아보는 가장 기본적인 방법 # 문장의 원-핫 인코딩 from tensorflow.keras.preprocessing.text import Tokenizer text = '오랫동안 꿈꾸는 자는 그 꿈을 닮아간다' token = Tokenizer() # 토큰화 함수 지정 token.fit_on_texts([text]) # 토큰화 함수에 문장 적용 print('문장의 토.. 2022. 6. 15.
자연어 처리(1) - 토큰화 자연어 처리(1) - 토큰화 텍스트의 토근화, Bag-of-Words에 대해 알아보고 코드를 작성해보자. ex) text_to_word_sequence(), .word_counts, .document_count, .word_docs, .word_index 자연어 처리 음성이나 텍스트를 컴퓨터가 인식하고 처리하는 것 텍스트의 토큰화 입력된 텍스트를 잘게 나누는 과정 토큰(token) : 텍스트(문장)를 단어별, 문장별, 형태소별로 나누어져서 의미가 있는 단위 1) 단어단위 토큰화 - text_to_word_sequence() # 케라스의 텍스트 전처리와 관련한 함수중 text_to_word_sequence 함수를 불러 옵니다. from tensorflow.keras.preprocessing.text imp.. 2022. 6. 15.