오늘의 코딩 (30) 썸네일형 리스트형 [NLP] 단어임베딩 정리 # 4.21. 1차 수정 단어임베딩 (개요) 1. 신경망은 비선형적 차원 축소를 통해 특징을 효율적으로 추출할 수 있다. 2. 그러나 비선형적 차원 축소는 계산 비용이 매우 비싸고 최적화가 어렵다. 3.비선형적 방법을 이용하지 않고서도 성능이 좋은 단어임베딩을 구현한 알고리즘이 word2vec / GloVe 알고리즘 종류 : word2vec (skip-gram&CBOW) / GloVe Word2Vec CBOW : 주변에 나타나는 단어들을 원핫인코딩된 벡터로 입력받아 해당 단어를 예측 skip-gram : 대상 단어를 입력받아 주변에 나타나는 단어를 예측하는 네트워크를 구성해 단어 임베딩 벡터를 학습 (분류문제-softmax사용) Negative Sampling : 전체 단어 집합에 대하여 임베딩을 조정하.. 자연어 처리 시작! word embedding 특정 인물이 어떤 사람인지 알기 위해서는 어떻게 해야 할까? 한 방법으로는 그 사람의 주변인을 보면 된다는 말이 있다. 그렇다면 특정 단어의 특징을 알기 위해서는 어떻게 해야 할까? 마찬가지로 그 단어가 어울리는 단어를 확인하면 된다. Word Embedding은 이런 생각에서 나온 것 같다. 각 단어(token)을 One hot encoding 을 하면 모든 단어 벡터 사이의 거리가 같다. 모든 단어는 서로 독립적이라는 뜻인데, 전혀 그렇지 않다. 예를 들어, '강아지'와 '고양이'는 비슷한 카테고리이지만, '강아지'와 '날다'는 거의 관계가 없다. 이처럼 벡터 공간에 token을 뿌릴 때, 연관성이 높은 단어는 근처에, 연관성이 떨어지는 단어는 멀리 token 벡터를 배치해야 할 것이다. word e.. [ML]Regularization에 대하여 Concept of bias and variance ML model의 hypotheses를 평가하는 기준은 무엇인가? 단순히 모델의 정확도만을 가지고 판단하기엔 불안하다. 99개의 참인 데이터와 단 1개의 거짓인 데이터에 대하여 항상 참밖에 모르는 바보같은 모델을 평가한다고 상상해보라! 모델의 성능을 평가하는 또하나의 기준으로 우리는 모델을 평가하는 기준의 하나로 실제값과 예측치 간의 에러를 평가 기준으로 삼을 수 있다. 이때 에러는 두 가지의 관점에서 발현된다. 1. Approximation 2. Generalization Approximation 근사에 의한 에러 ML는 현실의 데이터를 예측하기 위해 SVM이나 logistic 등 특정한 learning algorithm을 사용한다. 그러나 algor.. 재밌는 분야[적대적 훈련(Adversarial training)] 적대적 훈련이란 적대적 훈련 Adversarial training은 regularization의 한 방법이다. 머신러닝, 딥러닝 분야에서 regularization은 overfitting을 막고 모델을 robust하게 만들어주기 위해 사용한다. 딥러닝 모델은 Input data를 학습하여 적절한 label을 반환하는 것을 목적으로 훈련을 진행한다. Adversarial attack은 반대로 이미 훈련된 모델에 대하여 입력 데이터를 잘못 예측하도록 Input을 조작하는 것을 말한다! (Adversarial attack) 이미지 데이터를 input으로 받는 CNN의 경우 정답 Y에서 내가 원하는 예측값Y'를 반환하도록 조금씩 이미지의 픽셀을 수정한다. 그렇다면 이러한 공격에 대하여 어떻게 방어할 수 있는가?.. [python] bool 연산 bool() : 인수가 True인지 False인지 알려주는 함수 bool(0) # False bool(1) # True bool( 99) # True bool("") # False bool([]) #False [R] 기초 1. R studio #R스튜디오 구성 메뉴바 단축 아이콘 툴바 스크립트 창 환경 및 히스토리 R 콘솔 dir , Plots , packages , 도움말 # 코드 실행 RUN 버튼 Ctrl + Enter 실행하고 싶은 부분만 드래그하여 Ctrl+Enter #R 패키지 설치하기 메뉴바 - Tools - Install Packages package 탭에서 인스톨 install.packages("패키지 이름") #설치한 패키지 불러오기 library(패키지 이름) #도움말 불러오기 ?패키지 이름 help(패키지이름) 2. R 언어와 문법 -벡터 -행렬 -데이터 프레임 #벡터 c() 벡터 데이터 구조: 하나의 스칼라 값, 혹은 하나 이상의 스칼라 원소들을 갖는 단순한 형태의 집합 (원소: 숫자, 문자, 논리 .. [R] R 개요 1. R은 오픈소스 통계 분석 도구이다. 상업용 분석 소프트웨어 SAS, SPSS와 달리 R은 오픈소스 소프트웨어이다. 또한 R은 사용자들이 직접 제작한 패키지를 오픈소스로 구할 수 있기 때문에 최근 알고리즘 및 기술 반영이 빠른 편이다. 또한 강격한 시각화 요소를 갖추고 있어 통계 분석 도구로 활용하기 적절하다. 2. R의 역사 통계 프로그래밍 언어 'S' : 1976년 AT&T의 bell labs statistics Group 에서 John Chamber, Rick Becker, Allan Wilks 가 개발. "to turn ideas into software, quickly and faithfully" 1988년 S 의 문법 구조나 언어에 많은 변경이 있었고 객체라는 개념이 도입되며 기존의 코드를.. 우분투18에 R 설치하기 https://www.digitalocean.com/community/tutorials/how-to-install-r-on-ubuntu-18-04#step-1-%E2%80%94-installing-r How To Install R on Ubuntu 18.04 | DigitalOcean R is an open-source programming language that specializes in statistical computing and graphics. In this tutorial, we will install R and show how to add packages from the official Comprehensive R Archive Network (CRAN). www.digitalocean.c.. 이전 1 2 3 4 다음