공부/likelion
-
N. MSE , BCEE, CCEE의 Jacobians 구해보기(정리중)공부/likelion 2021. 10. 22. 01:53
MSE : MeanSquaredError BCEE : BinaryCrossentropy CCEE : CategoricalCrossentropy Jacobians : 야코비 행렬 오늘의 제목은 MSE, BCEE, CCEE의 야코비안, 즉 도함수 행렬을 구해보는 것이 목표이다. 이번 글에서는 각 함수와 그에 대한 도함수에 대하여 수식을 정리하고, 이를 클래스로 나타내보겠다. 미분을 명확하게 설명하고 싶은데, 생각보다 어렵다.. 1. MSE(MeanSquaredError) 한글로 옮기면 '평균제곱오차'라고 불리는 함수이다. 의미를 풀이해보자면, 오차 제곱 합(SSE)을 평균낸 것인데, '실제 데이터와 예측 데이터의 편차를 제곱한 것을 합한 것' 을 데이터의 크기 또는 갯수로 나누어 평균으로 만든 것이다. 그리..
-
11. mathematical functions공부/likelion 2021. 10. 19. 21:45
목차 1. 상수 2. 삼각함수 3. 지수함수 4. 쌍곡선 함수 5. 2차 함수 6. Irrational Function(무리 함수) 7. 유리 함수 8. 멱함수 9. 로그함수 (목차를 보면 알겠지만, numpy가 많이 쓰이는 라이브러리인 이유를 알 수 있다.) 1. 상수 PI = np.pi E = np.e print("pi: ", PI) print("natural constant: ", E) 상수, 즉, 변하지 않는 수인 파이와 자연로그의 밑(base of the natural logarithm)을 numpy에서 제공한다. 물론 무리수이기 때문에 무리수 전체를 구현하지는 않은 것으로 추측할 수 있다. degree = np.array([30, 45, 60, 90, 180, 360]) rad = np.deg..
-
10. rounding and sorting공부/likelion 2021. 10. 17. 18:43
오늘은 반올림과 올림,내림,버림, 그리고 정렬에 대해 알아보자. 기초적인 수학인 반올림, 올림, 내림, 버림은 이 포스팅을 읽으러 오는 사람들은 다 알테지만, 혹시나 정렬이 뭔지 모른다면 이 영상을 보고오자. 오늘 포스팅에서 주의할 점은, 우리가 계산을 하는 과정에서 숨쉬듯 이루어지는 소수점을 설정해주는 과정도 (당연히) 컴퓨터이기 때문에 설정을 해줘야하는 점 argmin, argmax 때 했었던 인덱스 반환. 이 두가지가 되겠다. Index 1. round, around (반올림) 2. ceil, floor, trunc (올림, 내림, 버림) 3. sort, argsort (정렬 ,요소의 크기 기준으로, 정렬되기 전 데이터의 인덱스 반환) 1. round, around(반올림) x = np.random..
-
9. Sum, Prod, Diff and Statistics공부/likelion 2021. 10. 12. 23:02
주말에 백신 2차 때문에 내내 아파, 포스팅이 많이 밀렸다 이제부터는 수학적인 내용들이 하나씩 늘어나기 시작한다. 간단하게 제목에 대해서 언급해보자면 Sum = 합 Prod = 곱 diff = 차분 Statistics = 통계 이며 통계의 경우 기초적인 평균, 중간값, 분산 등을 정리해볼 계획이다. 목차 1. Sum 2. Prod 3. diff 4. Statistics 1. Sum #합과 누적합 a = np.arange(2 * 3 * 4).reshape((2, 3, 4)) print("ndarray: {}\n{}".format(a.shape, a), end="\n\n") sum_ = np.sum(a) cumsum = np.cumsum(a) print("sum: {}\n{}".format(cumsum.sh..
-
8. axis and keepdims Arguments공부/likelion 2021. 10. 8. 02:51
오늘은 배열의 축, 그리고 이와 관련된 함수에 대해서 알아보자. 본인처럼 이해가 먼저 되어야 외울 수 있는 타입, 또는 본인만의 이해방식을 세워야하는 사람이라면 부디 당신의 이해력이 나처럼 나쁘지 않기를 기원한다. 특히 머릿속에 좌표계가 잘 그려지지 않으면 진짜 이해하기 위해 개고생을 하게 될 것이다. 파라미터 자체는 어렵지 않지만, 왜 이런 결과가 나오는지를 이해해야한다 목차 0. sum을 이용한 axis 이해 1. sum을 이용한 keepdims 이해 2. 3차원일 경우 0. sum을 이용한 axis 이해 a = np.arange(5) print("ndarray: ", a) print("np.sum: ", np.sum(a)) print("ndarray.sum: ", a.sum()) 우선 sum에 대해..
-
7. Indexing and Slicing ndarrays공부/likelion 2021. 10. 6. 08:41
이번 글에서는 슬라이싱과 인덱싱에 대해서 알아보자. 한글로는 각각 '일부분으로 나누기'와 '순번'이라고 불리지만, 동사처럼 쓰이는 것과는 다르게 국어에서는 명사처럼 인식되어 다소 의미가 퇴색되므로 이번 글에서는 원문 그대로 슬라이싱과 인덱싱이라고 표기하겠다. Index 1. 인덱싱 2. 슬라이싱 3. n차원 이상에서의 인덱싱과 슬라이싱의 혼합 4. 조건식을 이용한 인덱싱과 슬라이싱 1. 인덱싱 목차는 간단해보이지만 세부적으로 나뉜 게 알아두어야 할 게 많은 부분이다. 우선 간단하게 개념만 짚고 넘어가자면, 인덱싱은 각 배열이나 리스트에서 순번에 맞는 번호를 뽑아내는 방법이다. 중고등학교때 "오늘 문제는 몇번이 풀어볼까?"이러면서 호명당하는 것과 같다고 생각하면 된다. 좀 더 깊숙하게 들어가면 그 번호가 ..
-
중간과제2. 코사인 유사도를 이용한 색상 추출의 타당성(실습)공부/likelion 2021. 10. 3. 20:22
https://endure-life.tistory.com/27 지난 글에서는 개념에 대해서 알아보았으니, 이번에는 실제로 코사인 유사도와 이를 이용하여 사진에서 내가 원하는 색상만 화면에 나올 수 있도록 추출 코드를 작성해보자. 크게 분류해보자면 1. 이미지 불러오기 2. 이미지의 각 채널을 이용한 단위 벡터 생성 3. 우리가 원하는 색상을 추출하기 위한 색상 기준 이미지 생성 4. 3의 단위 벡터 생성 5. 2,4를 이용하여 코사인 유사도 비교 6. 유사도가 일정 점수를 넘을 때만 색상, 아니면 회색이 출력되도록 함 이 되겠다. 코드 1. 이미지를 불러온다 2. 이미지의 각 RGB 채널을 가져온다. (채널이라고 부르는 모양이다) #이미지를 불러온 뒤, float64로 인코딩했다. img = plt.im..
-
중간 과제2 : 코사인 유사도를 이용한 색상 추출의 타당성(개념)공부/likelion 2021. 10. 3. 19:01
Cosine Similarity를 이용한 Color Extraction의 타당성. 들어가기 전. 본인은 저런 식으로 영어 섞어서 말하는 거 굉장히 안좋아한다. 당신이 영어가 약해서 그런 거 아니냐라는 식의 인신공격의 오류를 범하는 사람은 제발 없길 빈다. 코사인, 벡터 같이 대체가 안되는 고유명사이거나 영한번역간 의미가 미세하게 변해 그 명칭을 써야지만 의미가 전달되는 경우에는 그럴 수 있다고 생각하는데, 그게 아니라 일부러 코사인 법칙도 '코사인 로우'라고 발음한다거나, 다른 단어들도 다 한국어로 완역이 가능한 경우인데도 불구하고 꼭 영어를 섞어쓰는 사람들이 있다. 그런 사람들에게 유시민씨의 저 말을 그대로 전해주고 싶다. 이 사람이 말한 건 글을 어렵게 쓰는 사람에 대한 것이지만, 말과 글이 다른 것..