2023/01/03 5

라벨값 암호화 설정과 One Hot Code

이진 분류(binary classification) 예제에서 입력 데이터에 대한 단위 신경망의 출력은 판별이 가능하도록 라벨값을 “1” 과 “-1”( 또는 “0”)로 설정된다. 따라서 학습과정에서는 주어진 학습데이터인 라벨값에 맞춰 Cost 함수의 Gradient Search 기법을 성공적으로 적용하면 학습 결과 가중치(weight)가 결정된다. 2종류 이상의 분류(classification)를 위한 종류 수가 많아지게 되면 머신러닝 작업을 위한 적절한 암호화 표기 체제가 필요하게 되며, 그 대표적인 사례가 one hot 코드이다. MNIST 예제에서는 0~9까지의 10종류 수기문자를 분류해야 하며 위 표와 같은 one hot 코드가 사용된다. 10 종류의 서로 독립적인 클라스를 표현하기 위해서는 10 ..

word2vec, CBOW (Continuous Bags of Words)

참조: ”Deep Learning from Scratch ⓶: 밑바닥부터 시작하는 딥러닝2“, 3장 word2vec, pp.113 ~ 141., 사이토 고키 지음, 한빛미디어. 분산가설에 따른 통계적 기법과 달리 신경망 학습법을 사용하는 추론적 방법 즉 word2vec 알고리듬에 대해서 살펴보자. word2vec 알고리듬에서는 인접한 맥락(문맥, context)이 주어져 있을 때 무슨 단어가 가장 적합할지 추론하는 알고리듬이다. 즉 맥락이 주어진 상태에서 ? 에 적합한 단어를 단어장에서 확률적으로 가장 높은 확률값을 가지는 단어를 찾아내는 작업이다. 맥락으로 주어지는 입력 단어들은 숫자 라벨 값을 가지고 있는바 이들을 one-hot 코드화 하여 사용하면 편리하지만 통계적 방법에서 동시발생 매트릭스처럼 그..

자연어처리 2023.01.03

Simple Bow 알고리듬에서의 Back-propagation of Matrix Multiplication

다음 그림의 Simple CBOW 알고리듬에 의한 알고리듬을 살펴보면 입력 데이터의 은닉층 처리와 출력층 처리에 Matrix Multiplication 처리가 핵심적인 역할을 담당한다. Simple CBOW 알고리듬 학습과정 알고리듬을 코딩하려면 MatMul층에 대한 순전파(forward propagation)와 역전파(back-propagation) 연산이 필수적일 것이다. 순전파 연산은 메트릭스의 곱셈과 덧셈 연산을 이해하면 쉽게 코딩이 충분히 가능하지만 다층 구조에서 역전파는 합성함수의 편미분 값들을 체계적으로 연산할 필요가 있다. 머신러닝에서 역전파 연산의 필요성은 웨이트 값들을 랜덤한 값으로 초기화하므로 Cost 함수가 취해야 할 최소값과는 큰 차이가 있다. 이러한 차이를 줄여 학습을 통해 Co..

자연어처리 2023.01.03

텐서플로우 다변수 선형회귀법 예제: Antique Grand farther’s clock

할아버지 시계 입찰가 결정 머신 러닝 분야의 regression 예제들은 통계학과 밀접한 관계가 있ek. 시카고에는 밀을 포함한 곡물 중심의 상품 거래소가 오래전부터 있어 귀중한 거래 데이터들이 기록되어 남아 있다. 아래의 인터넷 주소를 참조해 보자. 참조: StatSci.orf http://www.statsci.org/data/multiple.html 이번 절에서 다루려는 할아버지 시계는 희귀한 고가의 골동품으로서 입찰 가격 사례데이터가 연식(Age)과 입찰 참가자 수(bidder)를 파라메터로 하여 상세한 자료를 남기고 있다. 아래의 인터넷 주소를 참조하여 data 파일을 다운하여 사용하기로 한다. 참조: http://www.statsci.org/data/general/auction.html 상태가 ..

텐서플로우 선형회귀법 예제

그림의 선형회귀법 예제에서 기울기 w를 미지수로 생각하고 회귀법(regression)으로 찾아보자. 미지의 웨이트 값 w는 처음에 random number 나 임의의 상수값을 준 상태에서 시작하면 된다. 한가지 주의할 점은 직선의 방정식을 결정하는 과정에서 2개 이상의 많은 수의 데이터들이 주어질 경우 이 점들을 대표할 수 있는 직선을 결정하게 되는 것이며, 이는 통계학이나 사회학 분야에서 많이 응용되는 기법이다. TensorFlow 라이브러리를 사용하여 1차식 regression 코드를 작성하자. 아울러 matplotlib.pyplot 라이브러리를 사용하여 주어진 좌표 데이터를 사용하여 점그래프(scatter graph)와 구해진 1차식 regression graph를 함께 작도하도록 한다. 1 imp..