10.3 한국어 임베딩

    지금까지 영어에 대한 임베딩을 진행했는데, 한국어에 대한 임베딩도 영어와 동일합니다. 얼마나 동일한지 코드로 직접 확인해 보겠습니다.

    먼저 텍스트를 생성하고 전처리에 필요한 라이브러리를 호출합니다.

    코드 10-64 예제를 진행할 텍스트 생성

    from tensorflow.keras.preprocessing.text import Tokenizer
    from tensorflow.keras.preprocessing.sequence import pad_sequences
    
    text = """과일 가게에 사과가 많이 진열되어 있다
    그녀가 나에게 사과한 후, 우리는 친해졌다
    애플은 사과 모양을 로고로 사용한다\n""" ------ 텍스트 생성

    생성한 텍스트에 대해 인코더를 진행하기 위해 먼저 토큰화를 합니다.

    코드 10-65 텍스트 토큰화

    tok = Tokenizer() ------ Tokenizer 객체 생성
    tok.fit_on_texts([text]) ------ ①
    
    vocSize = len(tok.word_index) + 1
    
    seqs = list()
    for word in text.split("\n"):
        encoded = tok.texts_to_sequences([word])[0] ------ 텍스트를 숫자로 변환
        for i in range(1, len(encoded)):
            seq = encoded[:i+1]
            seqs.append(seq)
    
    maxLen = max(len(i) for i in seqs)
    
    seqs = pad_sequences(seqs, maxlen=maxLen, padding="pre") ------ 패딩을 이용하여 샘플 길이를 동일하게 지정
    seqs
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.