AI/Deep Learning 9

[Deep Learning] 메타 러닝 (Meta Learning)

일반적으로 딥러닝은 많은 데이터를 필요로 합니다. 고양이와 강아지를 분류하는 모델은 두 클래스에 대하여 충분한 데이터를 학습해야 입력 이미지가 무엇인지 분류할 수 있습니다. 사람은 데이터를 몇 번만 보고도 빠르게 학습할 수 있으나, 딥러닝 모델은 수많은 데이터를 기반으로 학습 시행착오를 겪어야 비로소 어떤 개념을 학습할 수 있습니다. "딥러닝 모델도 사람처럼 '적은 데이터'만으로도 '빠르게' 학습할 수는 없을까?"라는 질문에 대한 답변으로 제안된 방법이 바로 메타 러닝(meta learning)입니다. 메타 러닝은 새로운 개념 또는 태스크를 빠르게 학습하기 위해 '학습을 학습(learning to learn)'하는 방법입니다. 메타 러닝의 핵심 아이디어는 모델이 단순히 해당 데이터를 학습하는 것뿐만 아니..

AI/Deep Learning 2023.12.01

[Deep Learning] 적대적 생성 신경망 (GAN)

적대적 생성 신경망(GAN: Generative Adversarial Networks)는 생성자(generator)와 판별자(discriminator)라고 하는 두 네트워크가 서로 경쟁함으로써 학습하는 네트워크입니다. 판별자는 데이터셋으로부터 생성되었는지 아니면 가짜로 생성되었는지를 확인합니다. 반면에 생성자의 임무는 판별자가 진짜와 가짜를 구분할 수 없도록 진짜 같은 가짜 데이터를 생성하는 것입니다. 즉, 생성자가 입력과 구별할 수 없는 가짜 데이터를 만들도록 학습하는 것이 GAN입니다. GAN을 제안한 Ian Goodfellow은 경찰과 도둑을 예로 들어 적대적 신경망 학습을 설명했습니다. 도둑은 계속 위조 지폐를 생성하고, 경찰은 위조 지폐와 실제 지폐를 구별하는 것입니다. 즉, GAN의 아키텍처는..

AI/Deep Learning 2023.06.10

[Deep Learning] 오토 인코더 (Auto-Encoder)

오토 인코더(Auto-Encoder)는 입력 데이터를 코드(code)라고 부르는 은닉층으로 인코딩하는 인코더(encoder)와 코드를 디코딩하는 디코더(decoder)로 구성된 네트워크입니다. 여기서 인코딩은 입력 데이터의 차원을 축소하는 것을 의미하고, 디코딩은 차원 축소된 데이터를 다시 원래 데이터로 차원을 복원하는 것을 의미합니다. 오토 인코더는 아래 구조와 같이 입력층보다 적은 수의 노드로 구성된 은닉층을 이용하여 입력 데이터의 차원을 축소합니다. 이후 입력층과 같은 크기의 출력층을 구성합니다. 이러한 방법은 기존의 입력 데이터 X를 이용하여 타겟 데이터 Y를 예측하는 것과 다릅니다. (오토 인코더는 비지도 학습입니다.) 오토 인코더는 주성분 분석(차원 축소)를 위해 사용했지만, 최근에는 컴퓨터 ..

AI/Deep Learning 2023.06.08

[Deep Learning] RNN (Recurrent Neural Networks)

순환 신경망(RNN: Recurrent Neural Networks)은 시퀀스(sequence) 데이터를 이용한 네트워크입니다. 여기서 시퀀스 데이터란 보통 시계열(time series) 데이터라고도 불리며, 시점을 기준으로 데이터가 다른 것을 의미합니다. 주식 데이터가 시계열 데이터 중 하나입니다. RNN은 DNN, CNN과 달리 출력층의 결과를 재사용하는 구조입니다. 위 그림에서 A를 은닉층이라고 부르며, A의 출력은 h입니다. 그리고 입력은 X, h입니다. 이 부분이 DNN, CNN과 다른 점입니다. 즉, 은닉층의 출력값이 다시 입력층으로 되돌아가는 구조로 h가 재사용되고 있습니다. 다시 말해서 이전 상태를 기억하여 다음 상태를 예측한다는 의미입니다. 따라서, 시퀀스 데이터를 이용한 예측에 사용되는..

AI/Deep Learning 2023.06.08

[Deep Learning] CNN 파라미터 수 계산

CNN기반의 네트워크를 다음과 같이 구성했다고 가정해 봅시다. summary()를 이용하여 모델의 파라미터 수를 확인할 수 있는데, 여기서 파라미터의 수 계산 공식은 다음과 같습니다. conv param size = filter size * input channel * output channel + bias 위 summary() 내용을 기준으로 파라미터 수를 계산해 보겠습니다. 첫 번째 conv2d 레이어의 파라미터는 어떻게 416이 될까요? 먼저 conv2d의 필터 사이즈는 5 * 5입니다. 그리고 input_shape는 (28, 28, 1)로, 입력 채널 수는 1이며 출력 채널 수는 16입니다. 또한 바이어스는 출력 채널 수마다 1개씩 증가하므로 16입니다. 따라서 conv2d의 필터 사이즈는 (5 ..

AI/Deep Learning 2023.06.07

[Deep Learning] CNN (Convolutional Neural Networks)

CNN(Convolution Neural Networks) 컨볼루션 연산은 우리말로 합성곱이라고 합니다. 즉 CNN은 합성곱을 이용한 신경망입니다. 합성곱은 원본 이미지의 각 픽셀을 포함한 주변 픽셀과 필터의 모든 픽셀을 각각 곱연산을 하고, 그 결과를 모두 합해서 새로운 이미지에 넣습니다. ref : excelsior-cjh.tistory.com/79 필터를 사용하는 이유는 이미지에서 우리가 필요한 특정 영역을 추출하기 위해서입니다. 이전에는 사람이 수작업으로 필터를 만들었습니다. 검출 알고리즘이나 SIFT 등이 해당됩니다. 이것은 적용하고자 하는 분야에 대한 전문적 지식을 필요로 하며 시간과 비용이 많이 드는 작업입니다. 딥 러닝 기반의 컨볼루션 연산은 특징을 검출하는 필터를 수작업으로 설계하는 것이..

AI/Deep Learning 2023.06.07

[Deep Learning] 활성화 함수 (Activation Function)

활성화 함수는 뉴럴 네트워크(neural networks)에서 이전 층(layer)의 결괏값을 다음 층으로 전달하는 역할을 합니다. 아래 그림은 네트워크에서 활성화 함수의 위치와 역할을 나타냅니다. 이러한 활성화 함수가 필요한 이유는 네트워크의 복잡도를 올려 비선형 문제를 해결하기 위함입니다. DNN에서 활성화 함수는 비선형 함수를 사용하는데, 그 이유는 비선형 활성화 함수 없이 은닉층을 쌓는 것만으로는 비선형 문제를 해결할 수 없기 때문입니다. 그 이유는 은닉층의 수가 3이고 출력 함수를 y(x)라고 할 때, 활성화 함수 h(x)가 선형이면 합성 함수 1차 함수의 합성 함수 형태이며 이것은 1층으로 구성된 모델과 동일하기 때문입니다. 활성화 함수에는 여러 종류가 있지만 가장 자주 쓰는 3가지를 알아보겠..

AI/Deep Learning 2023.06.02

[Deep Learning] 퍼셉트론(Perceptron)과 뉴럴 네트워크(Neural Networks)

퍼셉트론(perceptron)은 프랑크 로젠블라트가 1957년에 제안한 초기 형태의 인공 신경망(ANN: Artificial Neural Netwokrs)입니다. 퍼셉트론은 다수의 입력으로부터 출력을 갖는 알고리즘으로, 사람의 뇌를 구성하는 신경 세포 뉴런의 동작과 유사합니다. 뉴런이 가지돌기에서 신호를 받아들이고, 이 신호가 일정치 이상의 크기를 가지면 축삭돌기를 통해 신호를 전달하는것처럼 퍼셉트론은 입력, 가중치, 활성화함수, 출력으로 구성됩니다. 아래 그림은 뉴런과 퍼셉트론을 나타냅니다. 퍼셉트론의 활성화함수는 입력과 가중치에 대하여 출력을 결정 짓는 중요한 역할을 합니다. 활성화함수에 대한 자세한 내용은 다음 포스팅을 참조해 주세요. 초기에 퍼셉트론은 AND, OR 연산을 풀어내어 주목 받았습니다..

AI/Deep Learning 2023.06.02

[Deep Learning] 딥 러닝 용어 정리

1. 퍼셉트론 (Perceptron) 1957년 미국의 심리학자 프랑크 로젠블라트(Frank Rosenblatt)에 의해 고안된 인공신경망 최초의 알고리즘 다수의 입력과 하나의 출력을 가짐 뉴런이라고도 부르며 뉴런은 입력, 가중치, 활성화함수, 출력으로 구성 2. 퍼셉트론의 겨울(한계) 퍼셉트론은 AND, OR, NANA 같은 선형문제는 해결(분류) 가능하지만 XOR 같은 비선형 문제는 해결 불가능 XOR 문제를 분류하기 위해서는 직선이 아닌 곡선으로 분류 가능함 다층 퍼셉트론 탄생의 기초가 됨 3. 다층퍼셉트론과 인공지능의 부흥 단층 퍼셉트론에서 층을 증가시킴으로써, XOR 문제 해결 가능 4. 인공신경망 (ANN) 단층 퍼셉트론을 기반으로 생물학적 신경망 영감을 받은 통계 학습 알고리즘 심층신경망(D..

AI/Deep Learning 2021.02.25