본문 바로가기
728x90

Study (Data Science)/NLP25

Keras Tokenizer 와 SentencePiece 비교 이해 Keras vs SentencePiece 1. fit_on_texts() : keras.preprocessing.text.Tokenizer에 내장된 함수로, 사전을 만들기 위한 준비작업 Sentencepiece : 파일을 불러올 때 SentencePieceTrainer.Train("--input 파일명 --model_prefix=korean_spm --vocab_size= 보카사이즈") 이렇게 불러오면, prefix 단위로 토큰화, idx 매길 준비를 한다. 불러올 때 이미 토큰화를 내재적으로 하기때문에, 다른 두개와 달리 토큰화된 문장 list가 아니라 온전한 원문 문장 list를 매개변수로 전달함. 2. texts_to_sequences() : word to 숫자 Sentencepiece : Enco.. 2023. 2. 15.
전처리, 분산표현, 임베딩, 토큰화 자연어 (Natural) : 인류의 언어. 200가지의 언어 중 40가지 정도가 문자를 가짐. 문맥 의존 언어 (context sensitive language) parsing이 어려움. 문맥, 현실세계의 이해를 필요로 할 때가 많아 단순 파싱이 되지 않음. 착한 영희 친구를 parsing 하여 다 떨어뜨리면, 영희가 착한건가 친구가 착한건가.. She drove down the street in her car. 그녀는 그녀의 차를 타고 길을 운전한건가, 차안에 있는 길을 운전한건가. 인공어 (Artificial) : 프로그래밍 언어. C언어, 파스칼 등등. 문맥 자유 언어 (context free language) parsing이 너무 잘됨. 문맥이 자유로우니 그냥 나누면 끝. 1. 전처리 자연어의 N.. 2023. 2. 14.
Chatbot 챗봇의 종류 1.대화형 챗봇 NLP처리를 기본으로 한 챗봇으로 질문을 분석하여 답변을 주는 프로세스를 가진다. 비용, 전문성, 개발소요시간 모두 최상으로 소요된다. 2. 트리형 챗봇 인공지능은 아니며, 질문을 받으면 그 다음 단계로 넘어갈 버튼을 제시한다. 자주하는 질문에 쓰기 좋으며, 챗봇1세대의 방식이다. 비용은 매우 낮고, 전문성은 낮은 정도, 시간은 보통으로 소요된다. 3. 추천현 챗봇 인공지능일수도 있고, 아닐수도 있다. 질문을 받으면 추천하는 답변을 여러개 제시한다. 만약 1개만 제시한다면 대화형 챗봇이 된다. 비용과 전문성은 보통이고, 시간은 많이 소요되는 편이다. 4. 시나리오형 챗봇 제공할 서비스나 결과물이 정해져 있을 때 많이 사용한다. 고객에게 받아야할 정보를 단계적으로 받을 수 있어.. 2023. 1. 27.
Ex12_ NLP / 뉴스 요약봇 1. 데이터 전처리 null값 제거 : .nunique()로 null 확인 후, .dropna로 제거 중복 제거 : drop_duplicates()로 제거 텍스트 정규화와 stopwords 제거 정규화사전, 불용어사전(NLTK) 를 불러오거나 만들어주거나 한 후에 preprocess_sentence라고 함수를 만드는데 text 컬럼은 정규화와 불용어 모두 처리하고, clean_text=[ ]에 담고 headlines 컬럼은 자연스러운 문맥을 위해 정규화만 하고, clean_healines =[ ] 에 담아둠. 2. train, test 나누기 최대길이 정하기 길이분포를 구하여 그래프로도 한번 보고 적당한 text_max_len, headlines_max_len을 임의로 잡는데, 잡을 때 평균보다는 약간 .. 2023. 1. 25.
NLP 기본개념 희소 표현(Sparse Representation) 단어 벡터의 각 차원마다 고유의 의미를 부여하는 방식 (너무 양이 많아 결국 한계가 옴) 분산 표현(Distributed Representation) 유사한 맥락에서 나타나는 단어는 그 의미도 비슷하다 라는 분포가설에서 비롯하여, 유사한 맥락에 나타난 단어들끼리는 두 단어 벡터 사이의 거리를 가깝게 하고, 그렇지 않은 단어들끼리는 멀어지도록 조금씩 조정 Embedding layer 컴퓨터용 단어사전을 만드는 곳 (단어 n개 쓸꺼고 k 깊이(차원)로 표현한 것) Weight이다 Lookup Table이다 (LUT : 주어진 연산에 대해 미리 계산된 결과들의 집합(배열), 매번 계산하는 시간보다 더 빠르게 값을 취득해 갈 수 있도록 사용되는 레퍼런스로 사용.. 2022. 12. 29.
728x90