본문 바로가기

🥾 프로젝트

(28)
6-2회차) 자연어 처리를 위한 Transformer 적용 2. Transformer 감성분석적용 1) Transformer 적용 방법 (1) Transformer 전체 구조 - 앞에서 배운 transformer를 통해서, 감성분석을 할 예정. - 감성분석을 하기 위한 위의 단계가 필요함. - 앞서 설명한 부분을 그림 표현 - 텍스트를 워드 임베딩 실시 2) Word Embedding과 Positional Embedding Layer (1) Word Embedding과 Positional Embedding Layer 추가 - word Embedding과 postition embedding 하기 (2) __init__ - 파일토치에 embbeding이라는 함수를 이용 - num_tokens : 토큰의 갯수 - d : Dimension의 크기 - max_seq_le..
6-1회차) 자연어 처리를 위한 Transformer 적용 1. Attention과Transformer 구현 1) Self-Attention과 Transformer (1) Transformer Block 내부 구조 (2) Query, Key, Value 계산 2) Self-Attention 구현 - 각 글자(It's / a / grat / movie) 입력 값에 대해서 곱 연산 시행 - Q,K,V 대한 weight를 각 각 input 값에 곱 연산 시행 - 그 결과를 K,Q,V (1) Query, Key, Value 계산 - WQ/WK/WV를 input 사이즈에 곱함 - transpose를 통해 변환 - contiquous함수를 통해 실제 연산을 실시. - Query와 Key 가 커진다는 의미는 Query와 Key 벡터 공간에서 유사한 위치(가까운 위치)에 있다..
5-2회차) 자연어 처리를 위한 RNN 2. LSTM/GRU 모델활용 1) PyTorch Lightning 개요 (1) PyTorch Lightning 정의 - 기존 파이토치의 복잡한 train, test 코드를 간결한 코드로 제공해 줌. - 파이토치 vs 라이트 비교 (1) PyTorch Lightning 설치 2) PyTorch Lightning 을 이용한 LSTM 구현 (1) LightningModule 클래스 상속 - class RNNModel 이라는 클래스 새롭게 정의 > 우리가 만들고자 하는 RNN 모델 class 사용 - 우리가 RNN 만들 수 있지만, 파이토치의 LightningModule 상속 받아서 사용할 예정 > light가 아니라 일반 파이토치도 가능은 함. (2) init 함수 재정의(Override) - 정의한 cla..
5-1회차) 자연어 처리를 위한 RNN 1. RNN 데이터입력을위한데이터로더구현 1) field 지정 (1) torchtext를 이용한 field 객체 생성 - 자연어 처리에서 텍스트 데이터를 가지고, 긍부정을 나누는 형태 - torchtext 라이브러리는 파이토치 환경에서 자연어 처리의 전처리, 데이터 분리 등 편리한 기능 제공 - filed를 생성할 예정인데, 여기에 text와 label 값을 넣을 예정. - text : 영화 평 - label : 긍/부정 - sequntial : > RNN계열은 sequntial 사용 예정. > sequntial 데이터란 시간적 흐름에 의미가 있거나, 자연어와 같은 선후관계가 존재하는 것. > 영화평은 자연어가 선후관계가 존재 함. - include_lengths : > 길이를 맞추는 여부 > 문장이 길..
4-3회차) 자연어 처리를 위한 토픽 모델링 3. 토픽 모델 시각화 1) pyLDAvis 설치 및 적용 (1) pyLDAvis 개요 (2) pyLDAvis 설치 (3) pyLDAvis 적용 - 판다스와 사용할 예정인데, 판다스 1.2 버전이 필요. 2) pyLDAvis 이용한 토픽 모델 시각화 (1) 토픽 모델 시각화 활용 - 시각화 작업에 필요한 prepare() 함수 사용. - 1번 파라미터 : 사이킷런의 lda가 전달 - 2번 파라미터 : lda수행한 결과(즉, 토픽 모델링을 수행한 결과) - 3번 파라미터 : lda수행하기 위해 만든 counter_vectorizer - display 함수 : 시각화 - 위 그림은 왼쪽에 위치 함. - 8개 그룹으로 토픽 - 토픽간에 거리가 멀다 -> 유사도가 떨어진다. - 8번은 다른 토픽에 비해 유사도가..
4-2회차) 자연어 처리를 위한 토픽 모델링 2. LDA를이용한토픽모델링 1) LDA 를 이용한 토픽모델링 1) LDA 적용을 위한 CountVectorizer 생성 (1) CountVectorizer 개요 - 사이킷런에서 제공하는 vectorizer 활용 예정 - CounterVectorizer 는 단순 counter - TfidfVectorizer 는 가중치 조정하여 counter - TfidfVectorizer 는 CounterVectorizer 단점을 보완 (2) CountVectorizer 적용 - max_df : 10% 이상 / 너무 자주 등장하는 단어들은 제외 - unigram : 단어 1개/ unigram : 단어 2개 씩 보면서 하겠다. - (1600, 1000) 데이터 모양 : > 1000개의 feature를 생성하라고 위에서 지..
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..
(230209) MS AI-900 합격 후기 합격 점수 810점 공부 시간 순수 공부 시간은 6시간 공부 방법 1. 기본 개념(이론) 정리가 필요함.(★) 이론 양 자체가 많지 않아서, 3~4시간 정도 투자하면 이론 완성 가능. 2. 문제 풀이 문제 은행 방식의 느낌이라서, 많이 푸는 게 중요함. 문제가 이해가 안되면, 그 문제 자체를 암기 추천 (★) 3. 공부 방법 기념 개념 정리 - 2시간 문제 풀기 - 2시간 푼 문제 핵심 개념들 다시 체크 - 30분 문제 기계 처럼 출기 - 1시간 30분 (모르면 그냥 암기) (★) 4. 시험 TIP (★) 한국어 버전으로 시험 보기가 가능함 다른 블로그에서 한국어 시험으로 보면 영어 번역 볼 수 있다고 했으나, 필자는 그런 기능 보지 못함(★★) 한국어 버전 장점 : 쉽게 지문이 읽히며, 영어 문제를 많..