본문 바로가기

mambo's coding note346

DL : VAE Reference https://hugrypiggykim.com/2018/09/07/variational-autoencoder%EC%99%80-elboevidence-lower-bound/ Variational-AutoEncoder와 ELBO(Evidence Lower Bound) 안녕하세요. 첫번째 스터디를 위해 글을 올립니다. Variational Auto Encoder Auto-Encoding Variational Bayes, 2014 비록 오래된 논문이긴 하지만 많은 논문에서 VAE의 개념과 사용된 목적함수(Evidence Lower Bound)가 갖는 의미 등이 중요하다고 생각되어 공부하여 정리한 내용을 소개드리겠습니다… hugrypiggykim.com 제일 잘 설명 되있는 포스팅. https://ratsgo.g.. 2020. 3. 18.
DL : Entropy, Cross Entropy 정보량 위의 정의대로 한 사건에 대한 정보량은 (사건이 일어날 확률 * log(가능한 결과의 수) )를 의미한다. Entropy https://hyunw.kim/blog/2017/10/14/Entropy.html 초보를 위한 정보이론 안내서 - Entropy란 무엇일까 딥러닝을 공부하다 보면 KL-divergence, cross-entropy 등에서 entropy라는 용어를 자주 접하게 됩니다. 이번 글을 통해서 정보이론의 아버지라 불리는 Shannon이 주창한 기초 개념인 entropy를 정리해봅니다. hyunw.kim 아래 증명은 위에 블로그에 나와있다. 질문의 개수를 이용하는데 참고하자. 위의 정보량을 빌려쓰면, 해당 한 사건이 일어나게될 정보량을 우리는 흔히 entropy라고 한다. 사건 발생확률.. 2020. 3. 18.
Chemistry : 유기태양전지 원리 https://blog.naver.com/plkillme/10106531386 유기태양전지의 원리 (1) 글을 퍼가실때는 출처 표시 및 꼭 댓글부탁드립니다!!! 유기 태양전지는 Organic Photo Voltaic Cell로... blog.naver.com https://blog.naver.com/plkillme/10106805875 유기태양전지의 원리 (2) 글을 퍼가실때는 출처 표시 및 꼭 댓글부탁드립니다!!! 자 앞선 포스팅에서 유기태양전지의 핵심이 되는 전... blog.naver.com https://m.blog.naver.com/PostView.nhn?blogId=plkillme&logNo=220999726764&proxyReferer=https%3A%2F%2Fwww.google.com%2F.. 2020. 3. 17.
Computer Structure : 공냉쿨러 vs 수냉쿨러 https://www.dogdrip.net/userdog/189409545 수냉과 공냉의 차이 - DogDrip.Net 개드립 읽판이나 컴판갈 글이니 붐업달게받음 선 세줄요약 1. 방온도는 외부조건이 같다면 최종적으로 똑같아진다. 원리는 둘다 열교환으로 같고 방식의 차이만 있음. 2. 하지만 온도가 오르는 방식에 차이가 있고, 몸으로 ... www.dogdrip.net 공냉쿨러는 말 그대로 팬이 돌아가는 것 수냉쿨러는 물이 들어가 있어 팬안에 물이 열기를 흡수한다. 비열이 액체가 더 높기 때문에 열을 더 많이 잡아먹어서 수냉쿨러가 훨씬 열을 많이 잡아먹을 수 있다. 2020. 3. 16.
자연어처리 : 절차적 단계가 뭘까? 1. Text 전처리 정규식 표현, stopwords 적용, nltk, 어간추출, 표제어 추출, 대소문자 변경 등등 여러가지 기법이 존재한다. 여기서 내가 이 단어를 어떻게 바꾸고, 없애고 할 것인지가 나중에 model의 performance에 영향을 줄 것 이다. 2. Sentence & Word 분류 2-1 count 기반의 기법 N-gram, BoW, DTM, TF-IDF 등등 여러가지 기법이 존재한다. 그리고 DTM을 기반으로 하는 cosine 유사도 및 유클리드 유서도, 잠재의미론적 추측법인 LSA가 존재한다. 2-2 예측 기반의 기법 Word2Vec : 앞뒤 단어들을 비교를 해 중심단어가 무엇이 올 것인지 or 중심단어를 입력해 주위 단어들이 어떤 단어들이 나올 것인지 예측하는 기법을 말한다... 2020. 3. 15.
자연어처리 : Word Embedding : Glove (Global Vectors for Word Representation, GloVe) 배경 LSA : count 기반 LSA는 DTM이나 TF-IDF 행렬과 같이 각 문서에서의 각 단어의 빈도수를 카운트 한 행렬이라는 전체적인 통계 정보를 입력으로 받아 차원을 축소(Truncated SVD)하여 잠재된 의미를 끌어내는 방법론이었습니다. LSA는 카운트 기반으로 코퍼스의 전체적인 통계 정보를 고려하기는 하지만, 왕:남자 = 여왕:? (정답은 여자)와 같은 단어 의미의 유추 작업(Analogy task)에는 성능이 떨어집니다. Word2Vec : 예측 기반 Word2Vec는 실제값과 예측값에 대한 오차를 손실 함수를 통해 줄이며 학습하는 예측 기반의 방법론이었습니다. Word2Vec는 예측 기반으로 단어 간 유추 작업에는 LSA보다 뛰어나지만, 임베딩 벡터가 윈도우 크기 내에서만 주변 단어를.. 2020. 3. 15.
자연어처리 : Word Embedding : Word2Vec, CBOW, Skip-Gram, Negative Sampling 1. 배경 '비슷한 위치에서 등장하는 단어들은 비슷한 의미를 가진다'라는 가정입니다. 예를들어 강아지란 단어는 귀엽다, 예쁘다, 애교 등의 단어가 주로 함께 등장하는데 분포 가설에 따라서 저런 내용을 가진 텍스트를 벡터화한다면 저 단어들은 의미적으로 가까운 단어가 됩니다. 분산 표현은 분포 가설을 이용하여 단어들의 셋을 학습하고, 벡터에 단어의 의미를 여러 차원에 분산하여 표현합니다. 요약하면 희소 표현이 고차원에 각 차원이 분리된 표현 방법이었다면, 분산 표현은 저차원에 단어의 의미를 여러 차원에다가 분산하여 표현합니다. 이런 표현 방법을 사용하면 단어 간 유사도를 계산할 수 있습니다. 이를 위한 학습 방법으로는 NNLM, RNNLM 등이 있으나 요즘에는 해당 방법들의 속도를 대폭 개선시킨 Word2V.. 2020. 3. 14.
자연어처리 : Topic Modeling : LDA (Latent Dirichlet Allocation) 1. Abstract Topic Modeling은 간단하게 말하자면, 문서의 집합에서 topic을 찾아내는 프로세스를 말합니다. 이는 검색엔진, 고객 민원 시스템 등과 같이 문서의 주제를 알아내는 일이 중요한 곳에서 사용합니다. 나도 client들이 반응을 검색을 할 때, benzene, water은 시약이라는 주제를 알고, room temperature 는 조건, bial은 시약통 같은 topic들을 추려내서 내가 원하는 결과를 알도록 도와줄 수 있다. 2. LDA의 가정 LDA는 문서의 집합으로부터 어떤 토픽이 존재하는지를 알아내기 위한 알고리즘입니다. LDA는 앞서 배운 빈도수 기반의 표현 방법인 BoW의 행렬 DTM 또는 TF-IDF 행렬을 입력으로 하는데, 이로부터 알 수 있는 사실은 LDA는 .. 2020. 3. 14.
Numpy : np.linalg.svd (SVD) np.linalg : 선형대수 method가 담겨져있다. np.linalg.svd(A, full_matrices=True, compute_uv) full_metrics defualt=True, True일 경우, A가 (M,N)일 때 U = (M,M), V=(N,N) False일 경우, A가 (M,K)일 때, U=(M,K), V=(K,N), K = min(M,N) A = np.array([[0,0,0,1,0,1,1,0,0], [0,0,0,1,1,0,1,0,0], [0,1,1,0,2,0,0,0,0], [1,0,0,0,0,0,0,1,1]]) U, s, VT = np.linalg.svd(A, full_matrices=False) print('U : {}, \nU\'s shape : {}'.format(U.rou.. 2020. 3. 12.
자연어 처리 : Topic Modeling : 잠재의미분석 (LSA) 배경 Pizza vs Hamburger 를 비교해보자. Back of Words 로 비교해보면, 이 둘은 관계가 없다. TD-IDF 로 비교해보면, 같은 단어가 없기 때문에 이 둘도 서로 유사도가 없다. 하지만, 이 둘은 food라는 topic으로 모일 수 있고, 단어 기반의 vector이기 때문이다!!, Topic 기반이 아니기 때문이다. LSA는 Topic 기반으로 한다. 이를 위한 대안으로 DTM의 잠재된(Latent) 의미를 이끌어내는 방법으로 잠재 의미 분석(Latent Semantic Analysis, LSA)이라는 방법이 있다. 1. SVD (Singular Value Decomposition) 2020/03/06 - [machine_learning/natural language] - 자연어.. 2020. 3. 12.
자연어처리 : Word Embedding 정의 Word Embedding은 단어를 벡터로 표현하는 방법이다. 원래는 단어를 count 기반으로 단어를 유추하였지만, 단어가 어느정도 연관이 있는지, 단어가 그 문장 속에서 중요한 단어인지를 잘 모를수 밖에 없다. 하지만, Word Embedding은 단어를 벡터로 표현하기 때문에, 단어간의 유사도에 따라 벡터의 방향을 설정하기 때문에, count 기반의 단점을 보완할 수 있다. 1. 희소 표현 (Sparse Representation) One_hot encoding이 그 예다. 단어의 index의 값은 1이고, 나머지 index는 0으로 표현한다. Ex) 강아지 = [ 0 0 0 0 1 0 0 0 0 0 0 0 ... 중략 ... 0] # 이 때 1 뒤의 0의 수는 9995개. 단점 : one-h.. 2020. 3. 12.
DL : Keras Sequential method 정리 https://github.com/keras-team/keras/blob/master/keras/engine/sequential.py keras-team/keras Deep Learning for humans. Contribute to keras-team/keras development by creating an account on GitHub. github.com 2020. 3. 11.