출처 : Stanford cs231n https://www.youtube.com/watch?v=h7iBpEHGVNc&list=PL3FW7Lu3i5JvHM8ljYj-zLfQRF3EO8sYv&index=3 0. SVM ( Support Vector Machine ) 이란? http://hleecaster.com/ml-svm-concept/ 1. Multiclass SVM loss 코드는 다음과 같이 벡터화해서 작성할 수 있다. 2. Loss함수의 regularization 처음과 같이 작성하니 과도하게 training set에 최적화되는 문제가 생겼다. 파란색 선처럼! 그래서 람다 값을 추가하는데 이를 Regularization이라고 한다. 그래서 Loss함수는 이제 Data Loss와 Regularizat..
1. flatnonzero import numpy as np a = np.array([1.2,-1.3,2.2,5.3,3.7]) print(np.flatnonzero(a>2)) # [2 3 4] a에서 2보다 큰 애들 ( 즉 조건에 부합하는 원소들 ) 의 index를 array로 리턴해주는 함수! 2. dot W.dot(x) 3. arange print(np.arange(12)) -> [0, 1, ..., 11]이 결과로 나온다! print(np.arange(1, 12)) 이런식으로 쓰면 [1, ..., 11]이 된다. 4. reshape reshape()의 ‘-1’이 의미하는 바는, 변경된 배열의 ‘-1’ 위치의 차원은 “원래 배열의 길이와 남은 차원으로 부터 추정”이 된다는 뜻이다. x = np.ara..
# 1722 순열의 순서 # 10845 큐 N = int(input()) queue = [] for i in range(N): command = input() if command.__contains__("push"): queue.append(command[-1]) elif command.__contains__("pop"): if len(queue) != 0: val = queue.pop(0) print(val) else: print("-1") elif command.__contains__("size"): print(len(queue)) elif command.__contains__("empty"): if len(queue) == 0: print("1") else: print("0") elif comman..
# 2504 괄호의 값 str = input() # 맞는지 검증 stack = [] for index, char in enumerate(str): if char == '(': stack.append('(') elif char == '[': stack.append('[') elif char == ')': if len(stack) > 0: ret = stack.pop() if ret != '(': print("0") exit(0) else: print("0") exit(0) elif char == ']': if len(stack) > 0: ret = stack.pop() if ret != '[': print("0") exit(0) else: print("0") exit(0) if len(stack) !=0:..
"밑바닥부터 시작하는 딥러닝"을 읽고 작성한 게시글입니다. 이 포스팅 에서 퍼셉트론을 다룰 때, 퍼셉트론을 다음과 같은 함수로 정의했다. \begin{equation*} y=\begin{cases} 0\quad (w_1x_1+w_2x_2+b\leq0)\\ 1\quad (w_1x_1+w_2x_2+b>0) \end{cases} \end{equation*} 임계값을 경계로 출력이 바뀌는 이 함수는, 계단같이 생겨서 계단 함수이다. Perceptron에서는 Activation Function(활성화 함수)으로 계단 함수를 사용하는 것이다. 그렇지만 계단함수 외에 다양한 함수들을 사용할 수 있는데, 이 포스팅에서는 새로운 함수로 Sigmoid와 ReLU를 다뤄보려 한다. 1. Sigmoid Function $h(..
1. Mean Squared Error(MSE) 2. Cross Entropy Error(CEE) 먼저,이 에러는 하나하나의 데이터에 대한 에러 값이다. softmax를 통과한 값을 확률로 쓴다. softmax를 생각해보면, 이렇게 생겼다. k = e^a / (e^a + e^b + e^c) t는 정답이면 1이고, 오답이면 0이다. sigma를 쓰지만 정답인 값의 log만 쓰이는 셈이다. one-hot encoding한 y(신경망 출력), t(정답 레이블) 에 대해서, E = -sum(t_k * log(y_k)) 근데 one-hot encoding 해줬으니까 0
print(*list)
"밑바닥부터 시작하는 딥러닝"을 읽고 작성한 게시글입니다. 머신러닝 문제는 크게 분류(classification)과 회귀(regression)으로 나눠진다. 출력층의 활성화 함수(output layer function)가 Regression에서는 항등함수를, 2클래스 Classification에서는 시그모이드 함수를, 다중 Classification에서는 소프트맥스 함수를 사용하는것이 일반적이다. 오늘은 그 중에서 다중 클래스 분류에 쓰이는 softmax function을 (주로) 다뤄보려고 한다. 1. Identity Function 말그대로 input과 output이 identical한 함수이다. $ f(x) = x $ 2. Softmax Function $ y_k = \frac{e^{a_k}}{\s..