목록인공지능 (45)
juuuding

Computer Vision이란? Computer Vision이란 시각적 데이터들을 효과적으로 이해하고 분석하여, 컴퓨터가 인간의 시각적인 인식 능력을 가질 수 있도록 알고리즘을 개발하기 시작한 것이다. Vision의 역사 약 5억 4천만년 전, 천 만 년이라는 짧은 시간동안 생물 종이 폭발적으로 증가한 시기가 있다. 이 현상을 "Evolution's Big Bang" 이라고 부른다. 이 현상의 원인의 가설 중 가장 설득력 있는 가설은 Andrew Parker가 5억 4천만년 전 생물에게 최초의 눈이 생겨났다는 가설이다. 눈이 생김으로써 생물들은 훨씬 더 능동적이게 되었고, 살아 남기 위해서는 빠른 진화가 필요해졌다고 한다. Computer Vision의 역사 🔎1950s [Hubel & Wiesel] ..

Forward prop in a single layer 앞서 본 coffee roasting 예제로 forward propagation 과정은 아래와 같은 그림으로 표현된다. # inupt data x = np.array([200,17]) 우선 layer1의 unit 1 처리 과정이다. w1_1 = np.array([1,2]) b1_1 = np.array([-1]) z1_1 = np.dot(w1_1,x)+b1_1 a1_1 = sigmoid(z1_1) 위와 마찬가지로 layer1의 unit 2, unit 3 처리 과정이다. # layer1 unit2 w1_2 = np.array([-3,4]) b1_2 = np.array([1]) z1_2 = np.dot(w1_2,x)+b1_2 a1_2 = sigmoid(z..

Inference in Code [Coffee roasting 예제] training set X에 temperature & duration 입력하여 good coffee / bad coffee 를 구분해보자. neural network의 layer 개수는 2개, layer1은 unit 3개, layer2는 unit 1개로 이루어져 있다고 가정한다. 그 후 layer2를 거친 값인 a2가 임계값 0.5 이상이면 "good coffee", 0.5 미만이면 "bad coffee"로 구분한다. model 생성을 위해 TensorFlow를 사용한다. # layer1 적용 x=np.array([[200.0, 17.0]]) layer_1 = Dense(units = 3, activations = 'sigmoid') ..

Neural network layer hidden layer 내부를 좀 더 자세히 살펴보자. 아래의 사진은 layer1의 내부이다. 각 neuron 마다 w, b 값이 있으며 표기는 다음과 같이 한다. hidden layer1을 거친 결과는 a[1]로 표현되며 이는 각 뉴런에 해당되는 w,b가 적용된 sigmoid 함수를 거친 활성화 값이다. a[1] 값이 output layer인 layer2에 들어가면 한 뉴런의 sigmoid 함수를 거쳐 결과가 도출되고 이 결과 값은 스칼라 값으로 결정된다. 이 후 결과 값으로 category를 예측한다. More complex neural networks hidden layer가 더 많은 복잡한 신경망을 자세히 살펴보자. hidden layer1과 마찬가지로 hid..

Neurons and the brain Neural networks란 뇌를 모방한 알고리즘이다. 인간의 뇌는 한 뉴런에서 다른 뉴런으로 신호를 보내며 생각이라는 것을 하게 되는데, 이러한 특징을 단순화하여 만든 모델이 Neural Networks이다. Demand Prediction 예를 들어 소비자가 옷을 살지 안살지를 예측하는 모델을 살펴보자. 소비자의 구매 여부를 결정하는 요소는 cost, shipping cost, marketing, material로 정했다. 그리고 하나의 layer은 3개의 neurons(units)로 구성하였고, 이 unit들은 각각 affordability, awawreness, perceived quality 에 해당한다. 한 layer은 동일하거나 유사한 특징을 입력 받..

Machine Learning 특화 과정 중 첫 번째 과정인 을 완료하였다. 다음으로 두 번째 과정인 을 수강할 예정이다. 에서 regression과 classification을 큰 틀로 하여 linear regression, logistic regression에 대해 배우고, 이에 맞는 cost function과 gradient descent을 학습하였다. 그리고 마지막 주에는 발생할 수 있는 overfitting에 대해 알아본 후 이를 해결할 수 있는 방법을 배웠고, 그 중 regularization 방법을 자세히 공부하였다. 에서는 TensorFlow를 사용하여 Neural Network에 대해 배워볼 예정이다.

Cost Function with Regularization ovefitting 문제가 발생했을 때 이를 해결하는 방법 중 하나는 정규화를 이용하는 것이다. 정규화 과정은 간단하게 parameter에 penalty를 부여하여 각 feature에 대한 영향을 줄이는 것이라고 할 수 있다. 예를 들어 많은 feature로 model을 생성해 다음과 같은 overfitting이 발생했다고 가정하면, 여기서 feature에 대한 영향을 줄이는 방법이 regularization이다. 영향력을 줄이기 위해서는 해당 feature에 대한 parameter w 값을 작게 해야한다. 이를 위해 w가 클수록 cost function 값을 커지게 하므로써 각 feature에 대한 penalty를 부여하여 w가 적당한 크기의..

이진화 이진 영상이란 화소가 0 (흑) 혹은 1 (백)인 영상을 뜻한다. 이진 영상은 한 화소를 1 bit로 표현할 수 있지만 현대 컴퓨터는 메모리 용량이 크기 때문에 프로그램 편리성을 위해 1byte (8bit)를 사용한다. 컴퓨터 비전에서는 이러한 이진 영상을 "에지만 1로 표현하는 일" , "물체 검출 후 물체는 1, 배경은 0으로 표시하는 일" 등에 활용할 것이다. 명암 영상을 이진 영상으로 바꾸는 과정을 이진화라고 말한다. 이 때 임계값 T를 설정한 후 T보다 큰 화소는 1, 작은 화소는 0으로 바꾸어 이진화를 실행한다. 여기서 가장 중요한 것은 어떻게 이 임계값 T를 결정하느냐인데, 보통 히스토그램의 계곡 근처를 임계 값으로 결정한다. 여기서 말하는 히스토그램은 명암 단계를 가로축으로 두고, ..