ML 과 DL 에서 feature selection 을 이용하는 알고리즘과 해당 내용에 대해서 써볼 예정입니다. Autoencoder Random forest PCA Machine Learning - Filter Method (통계 테스트) - Wrapper Method (Forward Selection, Backward Elimination, Recursive Feature Elimination) - Embedded Method (LASSO, RIDGE) [참고] https://sherry-data.tistory.com/12

위 책을 읽고 코드로 구현하기에 적합하도록 수식을 변경하여 정리했습니다. keras, tensorflow 등의 라이브러리 없이 numpy 행렬 연산을 통해 직접 feed forward, back propagation 을 구현하여 학습을 할 수 있도록 코드를 구현했습니다. Perceptron 다수의 입력을 받아서 모두 더한 뒤 특정한 함수를 통과시켜 얻은 결과는 아래와 같이 정리할 수 있습니다. $ u = \sum_{i=1}^{3}{w_i \cdot a_i} + b $ $ z = f(u) $ f : activation function Multiple Layer Perceptron ■ 다층 layer를 가지는 퍼셉트론을 도식화 하면 아래와 같은 그림으로 표현 가능합니다. 우선 진행에 앞서 혼동이 되지 않도록..
안녕하세요 비오는 장마철에 다시 뵙네요!! neuron network 중 한 개의 노드를 perceptron 이라고 부릅니다.입력으로 x1, x2, x3 가 주어졌을 때 이를 이용해서 output 을 나타내는 대표적인 non-linear 모델의 핵심 내용입니다. perceptron 이 모여서 한 개의 layer를 구성하고 layer 들이 모이면 흔히들 말하는 multi-layer perceptron 이라고 부르는 neural network이 구성됩니다. 그 핵심은 물론 perceptron 이겠죠?? neuron 이 동작하는 원리를 따라서 만들었다고 인공신경(perceptron) 이라고 붙었을 만큼, 동작 원리는 비슷합니다.우선 x1,x2,x3 라는 입력값이 들어왓을 때 각각의 가중치(w1,w2,w3) 가..
똑똑한 후배에게 Gradient descent 를 설명해 주었더니, learning rate 구현을 빼먹어서 error function 이 발산하는 쪽으로 가버렸네요.. 최적화 방법 중에 그럼, learning rate 없이 할 수 있는 방법을 없을 까요? *Gauss-Newton Method 설명을 위해서 Newton's Method 에 대한 설명이 필수적이라, 먼저 간략히 설명 뒤에 Gauss-Newton Method에 진행하겠습니다. Newton's methodWikipedia : https://en.wikipedia.org/wiki/Newton%27s_method - 임의의 시작점에서 함수의 미분을 이용하여 1차 식으로 근사하여 0과 만나는 다음의 x 값으로 x를 업데이트 진행하는 방식입니다. 아..
Gradient Descent 방법 중 업데이트 시 데이터를 사용하는 기준에 따른 분류 Batch Gradient DescentStochastic Gradient DescentMini-batch Gradient Descent $$ \large \begin{matrix} \\ \vec p_{t+1} = \vec p_t - \lambda \nabla E(\vec p_t) \tag {1} \end{matrix} \\ \\ \lambda \text{ : learning rate } $$ 우선 Batch 경우는 $\vec p_{t+1}$ 업데이트를 할때 주어진 학습 데이터를 전부 사용하여 진행하기 때문에 방향에 대해서는 정확할 수 있지만, 계산량 면에서는 너무 많을 수 있습니다. 다음 경우로 Stochastic ..
써먹을 일 없다고 내려두었던 내용들이 누군가에게 도움이 된다면, Linear regression 에 대해서는 closed-form 인 pseudo inverse 존재하기 때문에 대부분은 gradient descent 방식을 시도 조차 하지 않습니다. 하지만, nonlinear 로 넘어가면 꽤나 간단하면서 직관적인 최적화 방법이기 때문에 많이 사용하고 있습니다. 제가 이번에 다룰 내용은 polynomial 함수 (y = ax^2 + bx + c), 2차 함수에 대해서 gradient descent 방법을 통해 최적화 하는 방법을 다루도록 하겠습니다. 시작에 앞서 기초적인 내용과 수식을 설명 드리겠습니다. 수식 전개에 앞서서 저랑 약속 한개만 할께요, 모든 벡터는 열벡터 이고 위와 같이 열벡터를 볼드체로 표..
요즘은 어느 곳이든 머신 러닝이라는 말을 많이 사용합니다.더 나아가 딥러닝이란 말도 사용하는데 정말 머신러닝이 무엇을까요? 대부분 사람은 아래 x와 그 결과가 나온 표를 보고는 f(10) 이 무엇이 될지 단박에 알아 냅니다.어떻게 이런 일이 일어나고 있는 것일까요? 1. 입력과 출력의 데이터를 쭈욱 본다.2. 출력에 연관된 함수(모델)을 몇가지 생각해본다.3. 잘 들어맞는 함수를 찾아낸다.4. 그 함수에 최종 10 값을 넣어 그 결과를 도출한다. 위 예를 가지고 용어를 정리해보도록 하겠습니다.정답지가 주어져 있는 경우를 supervised 그렇지 않은 경우를 unsupervised 라고 합니다. unsupervised 우선 논외로 하고 위에처럼 정답지 데이터가 주어진 경우를 머신러닝에서는 supervis..
이 내용은 다크 프로그래머님의 http://darkpgmr.tistory.com/141 (벡터 미분과 행렬 미분) 내용을 보고 내용을 정리 한 수준입니다. 다크 프로그래머님의 내용과 같이 추가로 https://en.wikipedia.org/wiki/Matrix_calculus 위키피디아 내용도 참조하였습니다. 학부 시절에 배웠던 gradient 가 머신러닝을 하면서 이렇게 와 닿을 줄 몰랐습니다. x1, x2, x3 독립 변수를 가지는 f(x) 에 대하여 gradient 를 취하면 각 독립변수에 대한 미분 값을 구할 수 있습니다. ( 스칼라 미분을 벡터로 확장). 다음에 배우겠지만, vector 를 vector 로 미분하게 되면 jacobian 까지 확장 될 수 있습니다. 이제 추가로 matrix(행렬)..
이글은 순수하게 다크프로그래머 님의 기계학습 중 함수 최정확 기법정리 부분을 인용하여, 내용은 정리한 수준입니다.http://darkpgmr.tistory.com/142 *residual 이 최소가 되는 일반적인 최소자승법 * parameter 에 linear 한 모델의 경우 아래와 같이 수식 유도 가능합니다. -> Ap * 선형회귀(linear-regression) 경우 pseudo inverse 를 통해 특정해를 구할 수 있습니다. *일반적인 해를 구하는 방식으로 아래 4가지 방식에 대해서 추가 설명 드리겠습니다.1. Gradient Descent2. Newton-raphson3. Gauss-Newton4. Levenberg_marquardt
- Total
- Today
- Yesterday
- 캡처방지
- DW
- DWT-DCT
- Residual Block
- 네이버웹툰
- keras
- flask serving
- numpy
- gPRC
- tensorflow serving
- backpropagation
- implementation
- dct
- Digital watermarking
- SvD
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |