목록머신러닝 & 딥러닝 (27)
Haru's 개발 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/llus3/btsfA2IVQ6j/CFeLKCoRvwHwI4POgZ2Jx0/img.png)
RNN(Recurrent Neural Network)이란? RNN : 피드 포워드 신경망 같이 전부 은닉층에서 활성화 함수를 지난 값은 오직 출력층 방향으로만 향한 신경망 들은 피드 포워드 신경망(Feed Forward Neural Network)이라고 합니다. 그와는 다르게 RNN(Recurrent Neural Network)은 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 출력층 방향으로도 보내면서, 다시 은닉층 노드의 다음 계산의 입력으로 보내는 특징을 갖고있습니다. 위의 그림에서는 x는 입력층의 입력 벡터, y는 출력층의 출력 벡터입니다. 실제로는 편향 b도 입력으로 존재할 수 있지만 앞으로의 그림에서는 생략합니다. RNN에서 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드를..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ucetp/btsfaKv1saj/8iZxO4Goxlk5CpL21pSLdK/img.png)
한국어 자연어 처리에 필요한 전처리 과정 1. 한국어에서 정수 인코딩하기 : 한국어에서 정수 인코딩은 자연어 처리 과정 중 하나로, 각 단어를 고유한 정수로 매핑하는 과정입니다. 이를 통해 모델이 텍스트 데이터를 처리하고 예측하는 데 용이해집니다. 정수 인코딩을 수행하기 위해서는 먼저 텍스트 데이터에 대해 토큰화와 같은 전처리 과정이 필요합니다. 이후, 각 단어에 고유한 인덱스를 부여하는 방법으로 정수 인코딩을 수행합니다. 가장 간단한 방법은 파이썬의 기본 자료형인 dict를 이용하여 단어와 인덱스를 매핑하는 것입니다. 아래는 예시 코드입니다. # 예시 문장 text = "나는 자연어 처리를 배운다" # 문장을 띄어쓰기로 토큰화 tokens = text.split() # 단어에 고유한 정수 인덱스 부여 ..
한국어에서 영어와 다르게 토큰화가 어려운 이유 1. 띄어쓰기 단위가 영어처럼 독립적인 단어라면 띄어쓰기 단위로 토큰화를 하면 되겠지만 한국어는 어절이 독립적인 단어로 구성되는 것이 아니라 조사 등의 무언가가 붙어있는 경우가 많아서 이를 전부 분리해줘야 한다는 의미입니다. 한국어 토큰화에서는 형태소(morpheme) 란 개념을 반드시 이해해야 합니다. 형태소(morpheme)란 뜻을 가진 가장 작은 말의 단위를 말합니다. 이 형태소에는 두 가지 형태소가 있는데 자립 형태소와 의존 형태소입니다. 문장 : 하루는 책을 읽었다 자립 형태소 : 하루, 책 의존 형태소 : -가, -을, 읽-, -었, -다 따라서, '하루'라는 사람 이름과 '책'이라는 명사를 얻어낼 수 있습니다. 이를 통해 유추할 수 있는 것은 한..