일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 시계열 분석
- 임베딩
- 순환 신경망
- 클러스터링
- 풀링층
- 원-핫 인코딩
- 망각 게이트
- 딥러닝
- 생성모델
- 출력층
- COLAB
- 코랩
- 합성곱 신경망
- 카운트 벡터
- NLTK
- 프로그래머스
- 코딩테스트
- 과적합
- 이미지 분류
- 양방향 RNN
- 입력층
- RNN
- KONLPY
- 텍스트 마이닝
- cnn
- 합성곱층
- 전이학습
- 완전연결층
- 자연어 전처리
- 성능 최적화
- Today
- Total
목록전체 글 (59)
Colab으로 하루에 하나씩 딥러닝

횟수/예측 기반 임베딩 앞선 횟수 기반과 예측 기반의 단점을 보완하기 위한 임베딩 기법으로 글로브를 사용 글로브(GloVe, Global Vectors for Word Representation) 횟수 기반의 LSA(Latent Semantic Analysis,잠재 의미 분석)와 예측 기반의 워드투벡터 단점을 보완하기 위한 모델 단어에 대한 글로벌 동시 발생확률 정보를 포함하는 단어 임베딩 => skip-gram을 합친 방식 skip-gram을 방법을 사용하되 통계적 기법이 추가됨 더보기 아래의 코드는 glove.6B.zip의 glove.6B.100d.txt를 참조하였습니다. 출처: https://nlp.stanford.edu/projects/glove/ ### 라이브러리 호출 및 데이터셋 로딩 impo..

예측 기반 임베딩 신경망 구조 혹은 모델을 이용하여 특정 문맥에서 어떤 단어가 나올지 예측하면서 단어를 벡터로 만드는 방식 대표적으로 워드투벡터가 있음 워드투벡터(Word2Vec) 신경망 알고리즘으로 주어진 텍스트에서 텍스트의 각 단어마다 하나씩 일련의 벡터를 출력함 코사인 유사도를 이용하여 특정 단어의 동의어를 찾을 수 있음 수행 과정 일정한 크기의 윈도우로 분할된 텍스트를 신경망 입력으로 사용 모든 분할된 텍스트는 한 쌍의 대상 단어와 컨텍스트로 네트워크에 공급 네트워크의 은닉층에는 각 단어에 대한 가중치가 포함 됨 더보기 아래의 코드 중 peter.txt는 피터팬 무료 이북 텍스트를 참조하였습니다. 출처: https://www.gutenberg.org/files/16/16-h/16-h.htm ###..

횟수 기반 임베딩 단어가 출현한 빈도를 고려하여 임베딩하는 방법 대표적으로 카운터 벡터와 TF-IDF가 존재 카운터 벡터(Counter Vector) 문서 집합에서 단어를 토큰으로 생성하고 각 단어의 출현 빈도수를 이용하여 인코딩해서 벡터를 만드는 방법 토크나이징과 벡터화가 동시에 가능 ### 코퍼스에 카운터 벡터 적용 from sklearn.feature_extraction.text import CountVectorizer corpus = [ 'This is last chance.', 'and if you do not have this chance.', 'you will never get any chance.', 'will you do get this one?', 'please, get this cha..

임베딩(Embedding) 사람이 사용하는 언어(자연어)를 컴퓨터가 이해할 수 있는 언어(숫자) 형태인 벡터(vector)로 변환한 결과 혹은 일련의 과정 단어 및 문장 간 관련성 계산 의미적 혹은 문법적 정보의 함축 임베딩 방법에 따라 희소 표현 기반 임베딩, 횟수 기반 임베딩, 예측 기반 임베딩, 횟수/예측 기반 임베딩이 존재 희소 표현 기반 임베딩(sparse representation embedding) 대부분의 값이 0으로 채워져 있음 대표적으로 원-핫 인코딩이 있음 원-핫 인코딩(one - hot encoding) 주어진 단어 N개를 각각 N차원의 벡터로 표현하는 방식 단어가 포함되어 있는 위치에 1을 넣고 나머지에는 0 값을 채움 딕셔너리에 [apple, banana, cherry]의 값이 ..

정규화 표현 방법이 다른 단어들을 통합시켜서 같은 단어로 만들어 주는 것 각각의 데이터가 갖는 스케일 차이가 크면, 상대적으로 큰 값의 범위를 갖는 것이 더 많은 영향을 미침 MonthlyIncome이 0~10,000의 범위를 갖고 RelationshipSatisfaction이 0~5의 범위를 가질 때, 상대적으로 MonthlyIncome이 더 많은 영향을 미침 정규화 실습(사전 준비) 동일한 데이터셋을 이용하여 정규화를 진행했을 때와 진행하지 않았을 때의 정확도 비교 데이터셋은 https://datahub.io/machine-learning/covertype에서 아래와 같은 csv 파일 사용 파일을 구글 드라이브에 저장하고 마운트하여 진행함 정규화 실습(정규화하지 않았을 때) ### 라이브러리 호출 i..

어간 추출(stemming) / 표제어 추출(lemmatization) 단어의 원형을 찾아 주는 것 단어 그 자체만 고려하기 때문에 품사가 달라도 사용 가능 어간 추출과 표제어 추출이 공통적으로 어근 추출이 목적 어간 추출은 사전에 없는 단어도 추출할 수 있지만 표제어 추출은 사전에 있는 단어만 추출할 수 있음 포터 알고리즘 단어의 원형이 비교적 잘 보전되어 있음 ### 포터 알고리즘 from nltk.stem import PorterStemmer stemmer = PorterStemmer() print(stemmer.stem('obsesses'), stemmer.stem('obsessed')) print(stemmer.stem('standardizes'), stemmer.stem('standardiza..

불용어 문장 내에서 빈번하게 발생하여 의미를 부여하기 어려운 단어 자연어 처리에 있어 효율성을 감소시키며, 처리 시간을 길게하기 때문에 반드시 제거해야 함 ex) 'a/an', 'the', 'of', ... ### 불용어 제거 import nltk from nltk.corpus import stopwords nltk.download('stopwords') nltk.download('punkt') from nltk.tokenize import word_tokenize sample_text = """One of the first things that we ask ourselves is what are the pros and cons of any task wwe perform.""" text_tokens = ..

토큰화 주어진 텍스트를 단어 / 문자 단위로 자르는 것 문장 토큰화 / 단어 토큰화로 구분 문장 토큰화 마침표(,), 느낌표(!), 물음표(?) 등 문장의 마지막을 뜻하는 기호에 따라 분리 ### 문장 토큰화 import nltk nltk.download('punkt') from nltk import sent_tokenize text_sample = """Natural Language Processing, or NLP, is the process of extracting the meaning, or intent, behind human language. In the field of Conversational artifical intelligence(AI), NLP allows machine and app..