Category: NLP

Feature and Feature vector

Feature and Feature vector Feature와 Feature vector에 대해 설명하기 위해 아래 몽타주를 예를 들어 설명해 볼 것이다. 몽타주는 목격자들에 의해 범인의 특징을 합쳐 만든것으로 범인을 대표할 만한 특징을 알 수 있도록 해야할 것이다. 예를 들어 모든 사람이 갖고있는 눈이 2개, 귀가 2개 같은 특징은 범인을 검거하는데 전

NLP 실습 Chat bot 만들기

지금까지 두 가지 문제에 대해 실습을 진행하였다. 1) 텍스트를 분석해서 각 텍스트를 분류하는 문제를 실습했고, 2) 두 개의 텍스트가 있을 때 각 텍스트끼리의 유사도를 판단하는 문제를 실습했다. 마지막으로 이번에는 텍스트를 단순히 분석해서 분류나 유사도를 측정하는 것이 아닌 직업 문장을 생성할 수 있는 text generation 문제를 실습해 볼 것이

NLP 실습 유사도를 반영한 검색 키워드 최적화

이번 실습의 소개는 프로젝트성으로 진행 할 것이다. 프로젝트 소개더존 ICT 온라인 고객센터 키워드 검색 최적화 및 챗봇 구현 프로젝트를 하게 된 계기 먼저, 더존 온라인 고객센터 페이지 중 smart A에 관한 페이지에서 전체 탭을 클릭한 후, 살펴본 QnA 페이지를 살펴보았다. 필자는 고객들의 입장에서 생각해보았을때, 자신이 작성하는 질문(물론

NLP 실습 텍스트 유사도 - 02 (XGBoost, 1D-CNN, MaLSTM)

모델은 총 3가지를 종류를 만들어 볼 것이다. XGBoost CNN MaLSTM XGBoost 앙상블 모델 중 하나인 XGBoost 모델은 ‘eXtream Gradient Boosting’의 약자로 캐글 사용자에 큰 인기를 얻은 모델 중 하나이다. 앙상블 기법이란 여러 개의 학습 알고즘을 사용해 더 좋은 성능을 얻는 방법을 뜻한다. 앙상블 기법에는

NLP 실습 텍스트 유사도 - 01 (데이터 EDA 및 전처리)

텍스트 유사도 텍스트 유사도 문제한 두 문장(글)이 있을 때 두 문장 간의 유사도를 측정할 수 있는 모델을 만드는 것이다. 문제소개 데이터 이름 : Quora Question Pairs 텍스트 용도 : 텍스트 유사도 학습을 목적으로 사용 데이터 권한 : Quora 권한을 가지고 있으며 Kaggle 가입 후 데이터를 내려받으면 문제없다. 데이터 출처 : h

NLP 문장 수준 임베딩 - 02

ELMo(Embedding from Language Models) 미국 연구기관 Allen Institute for Artificial Intelligence와 미국 워싱턴대학교 공동연구팀이 발표한 문장 임베딩 기법이다. Computer vision 분야에서 널리 쓰이고 있었던 Transfer leaning을 자연어 처리에 접목하여 주목받았다. Transf

NLP 문장 수준 임베딩 - 01

참고로 이 모든 내용은 이기창 님의 한국어 임베딩이라는 책을 기반으로 작성하고 있다.문장 수준 임베딩 크게는 행렬 분해, 확률 모형, Neural Network 기반 모델 등 세 종류를 소개할 것이다. 행렬 분해 LSA(잠재 의미 분석) 확률 모형 LDA(잠재 디리클레 할당) Neural Network Doc2Vec ELMo GPT (tran

NLP - 단어 수준 임베딩

단어 수준 임베딩 예측 기반 모델 NPLM Word2Vec FastText 행렬 분해 기반 모델 LSA GloVe Swivel 단어 임베딩을 문장 수준 임베딩으로 확장하는 방법 가중 임베딩(Weighted Embedding) NPLM(Neural Probabilistic Language Model) NLP 분야에서 임베딩 개념을 널리 퍼뜨

NLP 실습 텍스트 분류(Conv1d CNN, LSTM) -03

순환신경망 분류 모델 앞선 모델들과 달리 이미 주어진 단어 특징 벡터를 활용해 모델을 학습하지 않고 텍스트 정보를 입력해서 문장에 대한 특징 정보를 추출한다. RNN은 현재 정보는 이전 정보가 점층적으로 쌓이면서 정보를 표현할 수 있는 모델이다. 따라서 시간에 의존적인 또는 순차적인 데이터에 대한 문제에 활용된다. 이 모델은 한단에 대한 정보를 입력하면

NLP 실습 텍스트 분류(TF-IDF, CountVectorizer, Word2Vec) -02

모델링 소개 선형모델 로지스틱회귀 모델 입력 벡터를 word2vec과 tf-idf를 사용해본다. 랜던포레스트 TF-IDF를 활용한 모델 구현 모델의 입력값으로 TF-IDF 값을 갖는 벡터를 사용할 것이기 때문에 scikit-learn의 TfidfVectorizer를 사용할 것이다. 이를 위해서는 입력값이 텍스트로 이뤄진 데이터 형태이어야 한다.

NLP 실습 텍스트 분류 -01

영어 텍스트 분류 한국어는 띄어쓰기를 기준으로 모든 단어를 처리할 수 없으므로 상대적으로 전처리하기 쉬운 영어 텍스트를 가지고 먼저 감각을 키워보겠다. 데이터 이름 : Bag of Words Meets Bags of Popcorn 데이터 용도 : 텍스트 분류 학습을 목적으로 사용 데이터 권한 : MIT 데이터 출처 : https://www.kaggle.c

NLP 전처리

형태소 Tokenizing 라이브러리영어 Tokenizing 라이브러리 1) NLTK 파이썬에서 영어 텍스트 전처리 작업을 하는데 많 쓰이는 라이브러리로, 이 라이브러리는 50여 개가 넘는 말뭉치 리소를 활용해 영어 텍스트를 분석할 수 있게 제공 한다. 직관적으로 함수를 쉽게 사용할 수 있게 구성돼 있어 빠르게 텍스트 전처리를 할 수 있다. 또한 단어

임베딩이란?

컴퓨터가 바라보는 문자 아래와 같이 문자는 컴퓨터가 해석할 때 그냥 기호일 뿐이다. 이렇게 encoding된 상태로 보게 되면 아래와 같은 문제점이 발생할 수 있다. 이 글자가 어떤 글자인지를 표시할 수 있고 그에 따른 특성을 갖게 하려면 우선 계산할 수 있게 숫자로 만들어 주어야 할 것이다. 그러한 방법 중 가장 단순한 방법이 One-hot enc

NLP란?

자연어란? NLP란? NLP의 어려움 우리가 실생활에서 사용하는 언어는 복잡성, 애매함, 그리고 의존성을 지니고 있기 때문이다. 복잡성이란 예를 들어 필자가 좋아하는 게임인 배틀그라운드로 예를 들어 보겠다. 몇 주전 PUBG에서는 배틀그라운드의 신맵인 카라킨에 대해 반응을 보기 위해 각 배틀그라운드 커뮤니티 사이트에 대한 댓글을 분석한다고 가정해보자. 그

NLP를 공부하는데 도움되는 사이트 모음

자연어 처리 관련 자료 자연어 처리에 대해 공부할 수 있게 도움이 될 만한 사이트 자연어 처리 강의 딥러닝을 이용한 자연어 처리:https://www.edwith.org/deepnlp 자연어 처리 오프라인 스터디 모임 DeepNLP(모두의연구소 자연어 처리 스터디):http://www.modulabs.co.kr/information 바벨피쉬(싸이그래머