[NLP Project] 1. 데이터 로드하고 전처리하기
·
Project/캡스톤디자인2
데이터를 로드하고 전처리해봅시다 사용한 데이터는 네이버 ner 데이터 셋을 이용하였습니다. 데이터셋 출처 -> https://github.com/naver/nlp-challenge GitHub - naver/nlp-challenge: NLP Shared tasks (NER, SRL) using NSML NLP Shared tasks (NER, SRL) using NSML. Contribute to naver/nlp-challenge development by creating an account on GitHub. github.com 해당 데이터셋을 텍스트파일로 바꾸어 사용하였습니다. 데이터는 이렇게 각 문장의 인덱스와 단어, 개체명 순서로 있습니다. 그럼 데이터를 사용하기 편하도록 전처리 해보겠습니다. ..
리눅스에 파이썬 설치하기
·
python/기초
이 문서는 파이썬3.6이나 3.8을 우분투 리눅스에 설치하는 방법을 다룹니다. 파이썬3의 어느 버전이 설치되었는지를 확인하려면 커맨드 프롬프트를 열고 실행해보세요. $ python3 --version 우분투 16.10이나 그보다 최신 버전을 사용하고 있다면 아래의 커맨드로 파이썬3.6을 쉽게 설치할 수 있습니다. $ sudo apt-get update $ sudo apt-get install python3.6 다른 버전의 우분투(예를 들면 최신 LTS 릴리즈)를 사용하고 있다면 혹은 더 최신 버전의 파이썬을 사용하고 싶다면 `deadsnakes PPA `_을 사용해서 파이썬3.8을 설치하기를 추천합니다. $ sudo apt-get install software-properties-common $ sudo..
requirements.txt 만들기
·
python/기초
이런식으로 필요한 라이브러리를 작성하고 해당 라이브러리 버전에 맞게 설치할 수 있는 방법을 알아봅시다. 가상환경(venv)이나 현재 파이썬에 pip로 설치된 패키지에 대한 정보를 requirements.txt라는 하나의 파일로 만들 수 있습니다. requirements.txt를 사용하면 또 다른 가상환경(venv) 혹은 다른 파이썬 환경에서 똑같은 패키지를 설치해야 하는경우 단 한번의 명령어로 requirements.txt.에 정의되있는 패키지들을 설치할 수 있습니다. pip freeze 명령어를 통해 requirements.txt를 생성할 수 있습니다. $ pip freeze > requirements.txt -r 옵션을 통해 requirements.txt에 정의되있는 패키지들을 설치할 수 있습니다. ..
[NLP] Mecab 형태소 분석기 품사 태그
·
공부정리/NLP
[NLP] 개체명 인식 참고 사이트
·
공부정리/NLP
https://github.com/songys/entity GitHub - songys/entity: 날짜, 장소, 사람, 기관, 시간 날짜, 장소, 사람, 기관, 시간. Contribute to songys/entity development by creating an account on GitHub. github.com 개체명 태그
[NLP] Pororo 언어 모델 기반 문장 토큰 분류
·
공부정리/NLP
Pororo 언어 모델 기반 문장 토큰 분류 Pororo(Platform Of neuRal mOdels for natuRal language prOcessing) Pororo는 카카오 브레인에서 제공하는 자연어 처리 플랫폼 입니다. Pororo는 Platform Of neuRal mOdels for natuRal language prOcessing의 약자이며 HuggingFace와 유사한 목적이라고 생각할 수 있습니다. 한국어, 영어, 중국어, 일본어 등 여러가지 언어로 30가지 이상의 자연어 처리모델이 구현되어 있습니다. 자연어 처리를 모르더라도 간단한 코드로 개체명 인식, 기계 독해, 기계 번역, 요약, 감정 분류 등의 태스크를 수행 할 수 있습니다. https://github.com/kakaobra..
[NLP] Sentence transformer를 이용하여 텍스트 유사도 구하기 with korQuad Dataset - (3) 명사 추출
·
공부정리/NLP
지난번에는 직접 입력을 하여서 해당 질문과 유사한 질문을 추출하고, 그 질문의 문맥과 해당 문맥에 있는 질문들도 추출하였습니다. 이번에는 질문을 입력하는 것이 아닌, 학습되지 않은 문장을 입력하여 그 문장에서 명사를 추출하고 추출한 명사를 input으로 넣어 텍스트 유사도를 통해 질문들을 추출해보겠습니다. 지난 코드 리뷰 QA 함수에서 입력한 질문을 실행했었음 명사 추출 코드 - 문맥에서 두글자 이상인 명사를 추출합니다. - 명사의 출현 빈도를 추출합니다. from konlpy.tag import Okt from collections import Counter def noun_preprocess(data): # Okt 객체 선언 okt = Okt() noun = okt.nouns(data) for i,v..
[NLP] Sentence transformer를 이용하여 텍스트 유사도 구하기 with korQuad Dataset - (2)
·
공부정리/NLP
지난 포스팅에서 더 나아가 질문을 하면, 그 질문에 비슷한 질문 문장들을 추출하고 해당 질문의 문맥과 다른 질문들도 출력하는 코드를 구현하였습니다! def find_sentens(query, top_k ): query_embedding = model.encode(query, convert_to_tensor=True) cos_scores = util.pytorch_cos_sim(query_embedding, question_embeddings)[0] cos_scores = cos_scores.cpu() #We use np.argpartition, to only partially sort the top_k results top_results = np.argpartition(-cos_scores, range(..
[NLP] Fine Turning - Hugging face
·
공부정리/NLP
Sharing models and tokenizers - Hugging Face Course Using pretrained models The Model Hub makes selecting the appropriate model simple, so that using it in any downstream library can be done in a few lines of code. Let’s take a look at how to actually use one of these models, and how to contribute back to huggingface.co 위의 링크의 내용 1. 파이프라인 패키지를 통해 불러오기 - 가장 단순하지만 Task에 맞는 모델을 불러와야함. 2. 모델 아키텍쳐 패키..
[라이브러리] from collections import deque
·
python/라이브러리
from collections import deque deque는 스택과 큐의 기능을 모두 가진 객체로 출입구를 양쪽에 가지고 있다. 스택처럼써도 되고, 큐처럼 써도 된다. 여러가지 메서드를 이용해서 이런 기능을 구현한다. 먼저 deque를 만들어보자 >>> from collections import deque >>> dq = deque('love') >>> dq deque(['l', 'o', 'v', 'e']) 문자열을 이용해 deque를 만들면 각 문자가 요소로 된 리스트 형태의 deque가 만들어진다. 1. 스택 구현 : append(), pop() 스택은 마지막(오른쪽끝)에서 입출력한다. 입력시에는 append() 메서드를 이용하고, 출력시에는 pop()을 이용한다. >>> dq.append('m..
[NLP] Sentence transformer를 이용하여 텍스트 유사도 구하기 with korQuad Dataset
·
공부정리/NLP
오늘은 korQuad Dataset 을 이용하여 제가 직접 입력안 텍스트와 해당 korQuad에 있는 질문의 유사도를 구해보겠습니다! 먼저 미리 전처리한 파일은 여기서 받을 수 있습니다. https://github.com/Kangsuyeon01/KorQuAD-study GitHub - Kangsuyeon01/KorQuAD-study: KorQuAD 1.0.0 데이터셋을 이용하여 공부한 내용을 저장하는 공간입니다 KorQuAD 1.0.0 데이터셋을 이용하여 공부한 내용을 저장하는 공간입니다. Contribute to Kangsuyeon01/KorQuAD-study development by creating an account on GitHub. github.com - Sentence transformer란..
[NLP] 자연어 처리를 위한 데이터 셋 모음
·
공부정리/NLP
분류 분석 (감성분석/ 의도분류) 이름 설명 링크 네이버 영화 리뷰 네이버 영화 리뷰 데이터에 대한 긍/부정 라벨 데이터 - 학습 15만건 / 테스트 5만건 github Toxic Comment Data 네이버 영화 리뷰 데이터의 라벨을 상세화한 데이터 - toxic / obscene / threat / insult / identity_hate 분류 github 3i4k 의도분류 학습용 데이터셋 - 문장에 대해 7가지 클래스 라벨 부여 - 논문: https://arxiv.org/pdf/1811.04231.pdf github korean-hage-speech 한국어 혐오발언 분류 데이터셋 - 연예 뉴스 댓글에 대한 혐오 / 사회적 편견 유무 라벨 데이터 - 사회적 편견은 성별/ 기타/ 없음 세 가지로 분류..