다중 분류 다중 분류 신경망을 만들기 위해서는 소프트맥스(softmax) 함수와 크로스 엔트로피(cross-entropy) 손실 함수라는 새로운 개념을 알아야 한다. 이진 분류와 다중 분류는 크게 다르지 않다. 출력층의 개수만 다르고 나머지는 동일하다. 이진 분류는 양성 클래스에 대한 확률 하나만 출력하고 다중 분류는 각 클래스에 대한 확률 값을 출력한다. 예를 들어 첫 번째 클래스에 대한 확률값이 y1, 두 번째 클래스에 대한 확률값은 y2, 세 번째 클래스에 대한 확률값은 y3로 출력된다. 다중 분류 긴경망은 출력층에 분류할 클래스 개수만큼 뉴런을 배치해야 한다. 다중 분류의 문제점과 소프트맥스 함수 숫자는 확률을 얘기한다. 0.9는 90%이다. 왼쪽과 오른쪽의 신경망 모두 자동차를 타깃 클래스로 예..
전체 글
MongoDB 연결하기 https://www.mongodb.com/cloud/atlas/lp/try2?utm_source=google&utm_campaign=gs_apac_south_korea_search_brand_atlas_desktop&utm_term=mongodb&utm_medium=cpc_paid_search&utm_ad=e&utm_ad_campaign_id=1718986522&gclid=CjwKCAiA8ov_BRAoEiwAOZogwRJOWJo-GuKttO0DxA5P0m9m3E-wXqcPuVXeRGbLlk41JZeTp1llRBoCoIEQAvD_BwE MongoDB Atlas: Cloud Document Database Cloud-hosted MongoDB service on AWS, Azure,..
Node.js란? node.js는 쉽게 말해 JavaScript를 서버단에서 사용할 수 있는 언어라고 생각하면 된다. 즉, 서버를 구축하는데 사용되는 언어이다. express.js node.js가 자동차의 엔진이면 express.js는 엔진을 가지고 자동차를 만드는 것이다. node를 이용하여 서버를 구축할 때 사용되는 것이다. 환경설정 node.js 설치를 해야 한다. https://nodejs.org/ko/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 여기서 설치를 하면 된다. 설치가 완료되면 cmd나 git-bash를 켜서 확인을 한다. node -v라는 명령어로 확인할 수 있다...
github.com/rougier/numpy-100 rougier/numpy-100 100 numpy exercises (with solutions). Contribute to rougier/numpy-100 development by creating an account on GitHub. github.com 41. np.sum() 말고 np.add()를 이용하여 array를 더할 수 있다. 42. allclose(): 두 array가 같은지 비교하는 메서드이다. 43. Z.flag.writeable = False로 설정하여 쓰기 권한을 제한하여 error가 발생한다. 44. random 한 값으로 10x2 matrix를 생성한 뒤 연산을 이용하여 값을 구한다. 45. argmax(): 최댓값을 가지는 ..
미니 배치 사용 딥러닝에서는 종종 아주 많은 양의 데이터를 사용하는데 배치 경사 하강법은 모든 샘플을 처리해야 하기 때문에 적절하지 않을 수 있다. 따라서 확률적 경사 하강법과 배치 경사 하강법의 장점을 절충한 미니 배치(mini-batch) 경사 하강법이 널리 사용된다. 미니 배치 경사 하강법의 구현은 배치 경사 하강법과 비슷하지만 에포크마다 전체 데이터를 사용한느 것이 아니라 조금씩 나누어 정방향 계산을 수행하고 그레이디언트를 구하여 가중치를 업데이트한다. 보통 16, 32, 64 등의 2의 배수를 사용한다. 미니 배치의 크기가 1이라면 1개의 샘플씩 수행하는 것이기 때문에 확률적 경사 하강법과 동일하다. 배치 크기에 따라 확률적 경사 하강법과 배치 경사 하강법의 장점과 단점을 가지는 방법이다. 미니..
다층 신경망 하나의 층에 여러 개의 뉴런을 사용하면 신경망이 어떻게 달라질까?? 입력층에서 전달되는 특성이 각 뉴런에 모두 전달될 것이다. 이를 'Dense'하다고 표현한다. 정방향 계산이 진행되는 과정부터 알아보자. 3개의 특성과 2개의 뉴런이 있는 경우이다. 모두 입력층에서 특성을 전달받아 z1, z2의 출력을 내놓는다. 이를 행렬 곱셈으로 표현하면 다음과 같다. 가중치 행렬의 크기는 (입력의 개수, 출력의 개수)로 생각하면 된다, 현재 3개의 입력과 2개의 출력이 나오는 형태이기 때문에 (3, 2) 크기를 갖는다. 출력 통합 breast_cancer 데이터 세트는 binary 한 출력을 낸다. 즉, 악성인지 정상인지 판단하는 문제이다. 따라서 이진 분류 문제이므로 각 뉴런에서 출력된 값(z1, z2..
github.com/rougier/numpy-100 rougier/numpy-100 100 numpy exercises (with solutions). Contribute to rougier/numpy-100 development by creating an account on GitHub. github.com 31. np.seterr(): err를 설정하는 함수이다. 모두 무시하게 설정한다. 32. False이다. nan == 1j로 다른데 emath를 사용하면 허수로 표현 가능하다. 33. np.datetime64('today'): 날짜를 받아올 수 있다. 34. np.arange()는 날짜도 적용이 가능하다. 35. 여러 함수를 사용하여 copy 없이 연산을 수행한다. 36. 모두 int부분만을 cl..