Deep Learning/Natural Language Processing 7

Q. java.lang.OutOfMemoryError: java.lang.OutOfMemoryError: Java heap space 에러 발생 원인과 해결방법은?

환경 Windows 10 Pro python 3.8.12 IDE - vscode 에러 발생 상황 konlpy 0.6.0 버전의 형태소분석기 Kkma로 명사 추출을 진행중. 동일한 코드로 테스트를 위해 10000개 행까지만 슬라이싱해서 진행할 경우는 코드가 잘 돌아가지만, 전체 텍스트를 동일한 코드 실행할 경우 outofmemory 에러 발생 # 3. 명사 추출 def extract_nouns(text, stopwords_path = False): kkma = Kkma() noun = kkma.nouns(text) result = [] if stopwords_path: stopword_list = get_stopwords(stopwords_path) # Stopword 및 한글자 형태소 제거 for n i..

한국어 오픈소스 말뭉치 활용 라이브러리 코포라 Korpora

세상에! 이렇게 유용한 라이브러리가 있었다니! 한국어 오픈소스 말뭉치들의 다운로드와 전처리를 라이브러리로 불러와서 쉽게 사용할 수 있게 해주는 라이브러리 Korpora를 이제야 알게 되었다. 한국어 nlp 테스트를 정말 쉽고 편하게 할 수 있을 것 같다. 앞으로 더 많은 오픈소스 텍스트가 공개되고, Kopora에도 편입되어 연구와 활용에 널리 사용할 수 있게 되길 희망한다. https://ko-nlp.github.io/Korpora/ko-docs/introduction/ 코포라 소개 · Korpora 코포라 소개 Korpora는 오픈소스 말뭉치들의 다운로드와 전처리 기능을 제공하는 파이썬 라이브러리입니다. 복잡한 설명을 피하고 싶으신 분들은 ‘설치 방법'과 ‘빠른 사용법'만 읽으셔도 간편 ko-nlp.g..

자연어 처리 왕초보 가이드

프로그래머스에서 진행한 KDT, 구글 머신러닝 부트캠프 과정에서 주로 vision 관련 AI 위주로 공부했는데, 입사 후 졸지에 자연어 처리를 빠른 시일 내에 마스터하라는(!!) 이야기를 들었다. 물론 강의 커리큘럼에 NLP 내용이 없었던 것은 아니지만, 프로젝트도 비전 관련해서 했기 때문에 '나 바쁜데 지금 필요없어' 라며 대충 대충 넘겼던 것이 화근이 되고 말았다. 진짜 처음부터 차근차근 공부하기 위해 정리한 리스트와 공부 과정 * 현재 공부하고 있는 것* https://wikidocs.net/book/2155 딥 러닝을 이용한 자연어 처리 입문 공부한 내용을 설명할 수 있을 정도로 정리하기 위해 기술 블로그가 아닌 책 형식으로 정리하고 있습니다. 잘 모르는 사람이 봐도 이해될 정도로 글을 쓰는 태도..

[W13D5] NLP : 단어 임베딩

단어 임베딩 : 단어의 의미를 이해하기 위해 어떻게 표현할 것인가? 글자의 나열? one-hot encoding? 좋은 표현방식: 단어 간의 관계를 잘 표현할 수 있어야 함 단어의 의미 어근(lemma),의미(sense) ex> 마우스는 쥐라는 뜻과 컴퓨터 주변기기 마우스가 있음. 복수형(mice)이나 단수형(mouse)이나 word-form은 다르지만, 모두 같은 어근임. 단어들의 관계는 어떤 것들이 있을까? 동의어(Synonyms) 문맥상 같은 의미를 가지는 단어들, 문장 안에서 단어를 교체해도 되는 경우 filbert / hazelnet couch / sofa automobile / car vomit / throw up 동의어라고 해서 항상 그 단어로 대체할 수 있는 것은 아니다. H2O / wat..

[W13D4] NLP : 문서분류

문서 분류(Text Classification) 문서 분류란? (자연어 처리 중 가장 중요한 분야, 다양한 세부 응용 분야가 있음, 가장 흔히 접할 수 있는 분야) 텍스트를 입력으로 받아 텍스트가 어떤 종류의 범주에 속하는지를 구분하는 작업 이 자체가 하나의 과제일 수도 있고, 이 과제의 결과물이 다른 작업을 위한 input이 되기도 한다. 다양한 문서 분류 주제들 문서의 범주, 주제 분류 예: CS 논문의 CS 주제분류 (multi-label classification - 하나의 논문이 여러 개의 주제로 분류될 수도 있음) 이메일 스팸 분류 감성 분류 예 영화: 리뷰가 긍정적/부정적? 제품: 새로운 아이폰에 대한 대중의 반응? 정치: 이 정치인에 대한 사람들의 생각? 예측: 감성 분류를 기반으로 선거 ..

[W13D3] NLP : 단어 모델

언어모델 다음 문장 다음에 이어질 단어는? Please turn your homework -> "in" or "out"? 다음 두 문장 중에 나타날 확률이 더 높은 것은? all of a sudden I notice three guys standing on the sidewalk on guys all I of notice sidewalk three a sudden standing the 목표: 문장이 일어날 확률을 구하는 것 다음 문장 다음에 이어질 단어는? 다음 두 문장 중 나타날 확률이 더 높은 것은? 왜 필요한가? 기계번역 (machine translation) 중국어 大风을 영어로 번역한다면? P(high winds tonight) > P(large winds tonight) 맞춤법검사 (spel..

[W13D2] NLP 텍스트 전처리

자연어 처리: 텍스트 전처리 자연어 처리란 자연어의 의미를 컴퓨터로 분석해서 특정 작업을 위해 사용할 수 있도록 하는 것 응용분야 기계번역, 감성 분석, 문서 분류, 질의응답 시스템, 챗봇, 언어 생성(ex> GPT), 음성인식, 추천 시스템 등... 최근의 딥러닝 분야의 인기 성장은 컴퓨터 비전 분야의 발전과 성공의 영향이 컸다. 자연어 처리에서는 비전만큼의 성공을 거두지 못해왔다. 그러다가 비전에 사용하던 알고리즘을 자연어 문제에 적용시켜서 성능 향상이 이뤄지기 시작했고, 요즘에는 성공적인NLP의 기술(ex> transformer model, BERT model)을 컴퓨터 비전에 적용시켜 발전시키고 있다. 참고 자료 Speech and Language Processing: http://web.stan..