Soohyun’s Machine-learning

머신러닝 잡다 정보 본문

Machine Learning/misc

머신러닝 잡다 정보

Alex_Rose 2017. 10. 9. 11:30

- 머신러닝 학습 모델의 특성상, 모델을 그래프로 정의하고, 세션을 만들어서 그래프로 실행하고, 세션이 실행될 때 그래프에 동적으로 값을 넣어가면서(피딩, feeding) 실행한다는 기본 개념을 잘 이해해야 텐서플로 프로그래밍을 제대로 잘 할 수 있다.



- 사이즈가 window size인 이유 : 주변 단어를 몇 개를 "본다"는 뜻이기 때문에. window 크기로 슬라이딩하면서 스크린하며 중심 단어들로 주변 단어들을 보고 각 단어에 해당하는 벡터들의 요소값들을 조금씩 업데이트하면서 단어를 벡터로 임베딩



- 아타리 퐁 게임을 어떻게 학습시키는지를 알려주는 카파시(Karpathy - yup! cs231n의 그 사람!) http://karpathy.github.io/2016/05/31/rl/

http://karpathy.github.io/


- nadam의 뜻

Gradient를 수정한 Momentum, Nag
Learning Rate를 수정한 Adagrad, RMSProp, AdaDelta

이 두 종류의 장점을 합한, Adam, Nadam이 있다. 




y-intercept : y절편

convention : 일종의 약속, 관습

w.r.t : with repect to

residual : 잔차




 

흔히 eval이라고 되어 있는데, evaluation의 약자임


 

stddev  - standard deviation, 표준 편차



Collections 모듈의 deque 클래스 : 

double-ended queue. 큐의 처음과 끝에서 아이템을 삽입하거나 삭제할 때 항상 일정한 시간이 걸리는 연산 제공

 


텐서플로의 flags가 뭐하는 애냐 : http://daeson.tistory.com/256

 

 


- weight initialization에서 활성화 함수로 ReLU를 사용할 때는 He initialization, Sigmoid나 tanh 등의 S자 모양 곡선일때는 Xavier initialization 사용... 이라고 하는데, 또 찾아본 결과에서는 Xavier Glorot (+he) = Glorot Gaussian을 쓴다고 함. 이걸 Xavier initialization이라고도 하고, Glorot initialization이라고도 함. 


Glorot initialization (사진 출처 : http://www.khshim.com/archives/641)



2015년 he가 제안한 다른 weight initialization 


이걸 넣고 PReLU를 넣으면 좋다-라고 함.. 





Backpropagation : output에서부터 순차적으로 partial derivative (편미분)을 수행하면서 weight과 bias 갱신





regularization을 왜 하나? local noise나 outlier가 학습에 큰 영향을 끼치지 않게 하려고

 



L1과 L2의 차이는? L1은 통상적으로 상수값을 빼주도록 되어 있어서 작은 가중치들은 거의 0으로 수렴하고, 몇 개의 중요한 가중치들만 남음. 몇 개의 의미있는 값을 꺼내고 싶으면 L2 reg를 쓰는게 좋다. sparse model 에 적합함. 


 





cross-entropy (negative log likelihood 라고도 함)는 2개의 확률 분포의 차이를 나타내는 용도. 두 개의 확률 분포가 얼마나 가깝냐 머냐를 나타낸다. 차이가 클수록 큰 값, 같아질수록 작은 값이 나오는데, 이게 cost function처럼 사용할 수 있는 이유이다. 항상 양의 값이 나온다.


 

 


텐서플로우의 variable scope : 변수명끼리의 이름 충돌을 방지함



 

ReLU : ramp function이라고도 함. 


fully connected layer = dense layer


 


decision boundaries : 결정 경계



 


piecewise linear : 부분적으로 선형



 

squash : 제한시키다, 짓누르다


 


Leaky ReLU는 dying ReLU 현상을 해결하기 위해 제시된 함수이다. ReLU는 x < 0 일 경우 항상 함수값이 0이라서 뉴런이 으앙 쥬금 ㅠ 


 


Mean Subtraction : 데이터의 모든 feature 마다 평균으로 나누며, 기하학적으로 zero-centered 데이터로 만드는 과정 

(preprocessing) 이미지 처리 분야에서는 평균 이미지를 빼거나, 3개 채널 각각 평균을 구해서 각 채널별로 평균을 빼서 전처리를 한다. 



 

principal component analysis, PCA : 주성분 분석


(여기 글에 있는 PCA, whitening은 무슨 뜻이지?)




중간의 decorrelated data가 PCA를 적용한 것이라고 함. 데이터들이 모두 zero-centered 되어 있고 데이터의 covariance Matrix (공분산 행렬)의 eigenbasis로 회전된 것을 볼 수 있다. (covariance 행렬이 diagonal - 사선의, 대각선의 - 된 상태). 오른쪽은 eigenvalue (고유값) 에 의해 추가적으로 scale 되었으며, 데이터의 covariance matrix 가 indentity matrix (단위행렬) 로 변환된다.


correlation coefficient : 상관계수 


 

Bagging (Boostrap aggregating) : 여러개의 모델을 혼합하여 일반화 에러 (generalization error) 를 줄일 수 있는 방법. 서로 다른 모델들을 각자 트레이닝 시키고, 이 모델들로부터 생성되는 결과값을 투표를 통해 최종 결과값으로 선출하는 방법 





linear classifier 의 문제점은 각종 카테고리별로 1개의 필터 밖에는 사용할 수 없다는 점이다.





VISION


- open CV는 BGR로 color 체크. 알파값이 들어가는 건 영상물일 때


  sendex의 openCV 강의 영상

https://www.youtube.com/watch?v=Z78zbnLlPUA&list=PLQVvvaa0QuDdttJXlLtAJxJetJcqmqlQq





NLP  - Natural language processing


NLP : Zipf's law

lemmatization : 단어의 어근에 기반하여 단어의 기본형(lemma)을 찾아준다. 

ex) play, playing, played -> play


언어마다 중요한 부분이 다르다. 

한국어 : 동사   // 영어 : 명사, 형용사


collocation (연어) : 문장내에서 유의미하게 사용되는 조합. ex) 양말을 입다 (x) -> 양말을 신다 (o)  



command 용어 중에서 cd = current directory

디렉토리 이동시에 쓰는 cd = change directory

cmd에서 del 파일명  <- 이렇게 하면 파일이 삭제됨


'Machine Learning > misc' 카테고리의 다른 글

용어 이해  (0) 2017.10.13
신경망 뼈대 구축하기  (0) 2017.10.13
머신러닝 자료 링크들  (0) 2017.10.09
신경망에 대해 이해한 것  (0) 2017.09.20
텐서플로 GPU / 윈 10 설치  (0) 2017.09.17
Comments