본문 바로가기

🥾 프로젝트/(STEP)파이썬을 활용한 인공지능 자연어 처리

(17)
4-1회차) 자연어 처리를 위한 토픽 모델링 1. 토픽 모델링을 위한 형태소 분석 1. 토픽모델링을위한형태소분석 1) KoNLPy를 이용한 형태소 분석 (1) 형태소 분석 수행을 위한 데이터 확인 (2) Okt 클래스를 이용한 형태소 분석 -stem : 어근 추출하겠다. (3) 형태소 분석 수행을 위한 함수 정의 2) KoNLPy를 이용한 형태소 분석 결과 저장 (1) 전체 데이터의 형태소 분석 및 결과 저장 - df_news 중에 news는 원본 데이터 - 그 원본 데이터를 apply에 함수명을 넣는다. - get_words 실행되어 나옴 return 값을 df_news에 새로운 컬럼 'words' 생성
3-2회차) 자연어 처리를 위한 Word2Vec Pre-trained Word2Vec 모델활용 1. 한글 모델 1) Pre-trained Word2Vec 모델 다운로드 (1) 코랩에서 파일 불러오기 - 한국 전체 방대양 WIKI 데이터 세트를 미리 학습한다면, OOV 해결 및 적절한 유사도 가능. - 이러한 것이 pre-trained 모델 - 추후 Bert 배울 것도 사전학습 모델임. (2) Pre-trained Word2Vec 모델 메모리 로드 - error 발생 - 아직 해결하지 못함. 2. 한글 모델을 활용한 유사도 분석 1) 유서도 검색 (1) model.wv.similarity( ) 함수를 이용하여 유사도높은 단어 검색 2) 단어 간 유사도 산출 3. 영문 모델 1) Pre-trained Word2Vec 모델 다운로드 - 구글 드라이브에 업로..
3-1회차) 자연어 처리를 위한 Word2Vec Word2Vec 모델 적용 1. Word2Vec 모델 1) Word2Vect 모델 적용을 위한 데이터 세트 (1) 코랩에서 파일 불러오기 (2) 카테코리가 7 출력 2) 전처리, 형태소 분석 및 명사 추출 3) gensim 패키지를 이용한 Word2Vec 모델 생성 - sg : 어떠한 기법을 통해 모델을 만들건가 선택. - size : 문자열을 숫자로 만드는 과정(=벡터화) 오류 방생 - size를 vector_size로 변경 2. Word2Vec 모델을 활용한 유서도 분석 1) 유사어 검색 2) 단어 간 유사도 산출 - 코퍼스가 작기 때문에 유사도가 높음 - 나중에 대량의 코퍼스로 학습하면, 유사도가 낮음 - 뒤에 배울 pre-trained[사전 학습 된] 하면 적절한 유사도 측정 가능 3. Word2..
2-2회차) 자연어 처리 형태소 분석 (형태소 분석 사전활용) 신조어 형태소 분석 1. 신조어 형태소 분석 방법 - 용어 사전에 없는 단어 분석 방법은 아래와 같음. - 다음위 1,2을 알아볼 예정 2. KoalaNLP 패키지 활용 - 기존의 존재한 형태소 분석기를 패키징해서, rab함수를 이용해 접근할 수 있다. - 한국어 형태소 및 구문 분석기 모음 1) KoNLPy, ETRI 형태소 분석, OpenAPI, Khaiii, Kiwi 등 - !pip install koalanlp 설치 - KoalaNLP 지원 형태소 분석기 - KoalaNLP 지원 형태소 분석기 사용 (install 했다는 가정이후, 작업 방법) 1) import : 파이썬 사용하기 위한 모듈, 클래스, 함수 import 2) initialize : 다운로드 및 자원 설정 최기화 3) 형태소 분석 ..
2-1회차) 자연어 처리 형태소 분석 (영문, 한글 형태소 분석) 영문 형태소 분석 1. 형태소 분석을 위한 전처리 수행 - 위와 같은 작업을 모두 한 후에, 형태소 작업을 실시 2. nltk 패키지를 이용해 형태소 분석 수행 - pos_tag 함수 이용해 형태소 분석 - set() 함수 : 중복 단어를 제거하기 위해 사용함. 한글 형태소 분석 1. 형태소 분석을 위한 전처리 수행 - 위와 같은 작업을 모두 한 후에, 형태소 작업을 실시 - 한글은 띄어쓰기 처리를 해야 함. 2. KoNLPy 및 패키지 설치 - 위와 같은 작업을 모두 한 후에, 형태소 - 다음과 같이 설치 해야 함. 3. KoNLPy 이용해 한글 형태소 분석 - KoNLPy의 Okt, Kkma, Komoran, Hannanum, Mecab 등의 클래스를 이용하여 객체 생성 - 각 형태소 클래스별 특성 ..
1-2회차) 인공지능 자연어 전처리 (한글 자연어 전처리) 한글 자연어 전처리 개요 1. 토큰화 - 영문 자연어 전처리와 비슷 - 한글은 형태소, subword 단위로 토큰화 하는 게 성능이 좋다. 2. 불용어 제거 - 한글 경우에는 스스로 환경에 맞는 불용어를 정의하고 제거하는 방식으로 해야 함. 한글 자연어 전처리 적용 1. 정제 - 특수문자 제거 - 영문과 같은 과정 - 정규식을 이용한 특수문자 제거 - 띄어쓰기가 중요한 한글 1) 띄어쓰기가 적용되지 않은 상태로 코퍼스변환 * 정규식을 이용하여 띄어쓰기가 적용되지 않은 상태로 코퍼스 변환 2) 띄어쓰기 적용을 위한 PyKoSpacing 패키지 설치 * PyPi.org에 등록되지않은 상태이므로 git을 이용한 설치 * 실습하려면 구글 colab을 통해 설치. 3) PyKoSpacing을 이용한 띄어쓰기 적용..
1-1회차) 인공지능 자연어 전처리 (영문 자연어 전처리) 영문 자연어 전처리 개요 1. 정제 - 특수문자 제거 - 대소문자 통일 1) 일반적으로 소문자로 통일 2. 토큰화 - 토큰화에 따라 모델 성능이 차이가 난다. - 불용어 제거 1) 전치사, 관사 등 불필요한 단어를 제거하는 단계 2) you, my, the .. 영문 자연어 전처리 적용 1. 정제 - 제거 대상 특수문자의 종류 - 경우에 따라, 웹사이트에서 제공하는 2byte 특수문자는 여기 없을 수 있음.(주의 필요) - 정규식을 이용한 특수문자 제거(re) 1) \w : 문자, \. : 그 자체, \s : 공백 2) ^ : 제외 3) 문자, .(점), 공백을 제외한 모든 것 길이가 0인 문자로 변환(즉 제거하겠다) 4) \n : 엔터키 눌렀을 때, escape 문자임 5) 이것도 제거함. 2. 토큰화..