M.L (p.105)
|
1 2 3 4 5 6 7 8 9 10 |
import numpy as np x = np.array([[0.1, 0.8, 0.4], [0.3, 0.1, 0.6], [0.2, 0.5, 0.3], [0.8, 0.1, 0.1]]) print(x) print(x.shape) y = np.argmax(x, axis=1) print(y) y = np.argmax(x, axis=0) print(y) |

np.argmax() 함수는 axis = 값에 따라 그 차원에 해당하는 값 중 최고 값을 return 하는 함수로 신경망에서는 softmax에서 가장 확률이 높은 값이 어떤 건지 얻기위해 쓰인다. 위 예시는 4행 3열 행렬구조로 axis = 1 (index[1] 값) 으로 최고값을 뽑은 결과 [1 2 1 0] 이 나왔고 axis = 0 (index[0] 값) 은 [3 0 1] 이 나왔다.
|
1 2 3 4 5 6 |
import numpy as np y = np.array([1,2,1,0]) x = np.array([1,2,0,0]) print(y == x) print(np.sum(y==x)) |
다음은 배열 x 와 y 의 값이 같은 값이 있는지 비교를 해 같은 개수만큼 헤아려 출력하는 것으로 신경망 마지막 부분에 argmax로 최고 값이 어떤 위치에 있는지 뽑은 후 답과 비교하는 역할을 한다.
