본문 바로가기
728x90

인공지능7

유넷 (UNET) 유넷이란 ? - 저차원과 고차원 정보를 모두 사용하여 이미지의 특징을 추출하는 인공신경망 - AE와 구조가 유사하며 다른 점이 있다면 AE는 디코딩이 저차원 정보만을 이용해 고차원으로 복원해나가는데 반해 UNET은 고차원의 특징점도 함께 이용해 이미지 특징점 추출에 더 용이 - 입력 이미지를 특별한 형태로 변형하는 데 사용되는 인공신경망 - ex. 흑백 이미지를 컬러 이미지로 전환하는 경우 사용 UNET의 원리 ? - 복호화 시 모든 부호화 계층의 출력을 다시 사용하기 때문에 입력 이미지를 외곽선 추출, 오브젝트 검출 등 특정 형태로 변형하는데 적합 - 부호화 단계에서 복호화 단계로 정보가 전달될 때 부호화 마지막 계층의 정보만 복호화 첫 계층으로 전당되는 것이 아닌 부호화 단계의 각 계층의 결과가 해당.. 2020. 10. 8.
생성적 적대 신경망 GAN (Generative Adversarial Network) GAN이란 ? - 경쟁하여 최적화를 수행하는 생성형 신경망 - 생성망과 판별망, 두 신경망이 상호 경쟁하면서 학습 - 레이블이 없는 정보를 다루는 비지도 학습 - 실제 데이터(Real data)와 비슷한 확률분포를 가지는 허구 데이터(Fake data / 생성데이터)를 생성 - ex. 실제 데이터로 얼굴 사진을 제공하면 비슷한 확률분포를 가지는 새로운 허구 얼굴 사진을 생성 GAN의 기본 개념 ? - 입력데이터는 무작위 잡음, 출력데이터는 입력 데이터보다 높은 차원으로 구성 - 입력한 무작위 잡음은 출력 데이터와 상관이 없기 때문에 GAN은 비지도형의 생성형 신경망 - 출력 데이터는 특정 분포도를 갖는 데이터로 가정 ex. 필기체 숫자, 사람 얼굴 사진 - 학습을 마친 GAN에 새로운 무작위 잡음을 입력.. 2020. 9. 23.
합성곱신경망 CNN(Convolutional Neural Network) CNN이란? 영상 처리에 많이 활용되는 합성곱을 이용하는 인공신경망 기술 합성곱을 이용해 가중치 수를 줄여 연산량을 줄이면서도 이미지 처리를 효과적으로 할 수 있음 CNN의 원리 ? 합성곱 필터를 이용하여 신경망 동작을 수행 여러 작은 필터가 이미지 위를 돌아다니면서 특징점들을 찾아 그 합성곱 결과를 다음 계층으로 보냄 적은 수의 가중치로 이미지 처리를 효율적으로 할 수 있음 합성곱 계층 : 특징점을 효과적으로 찾는데 활용 완전 연결 은닉 계층 : 찾은 특정점을 기반으로 이미지를 분류하는 데 주로 활용 2차원이나 그 이상 차원의 데이터 처리에 적합 DNN은 이미지를 1차원 벡터로 변환하여 전 계층이 1차원 방식으로 신호를 처리하기 때문에 2차원 특성을 처리하기에는 한계가 있는 반면, CNN은 2차원 합성.. 2020. 9. 10.
심층신경망 DNN(Deep Neural Network) DNN ? 복잡한 데이터를 학습하기 위해 은닉 계층을 많이 쌓아서 만든 인공지능 기술 ANN은 주로 하나의 은닉 계층을 포함하나 DNN은 수십에서 수백의 은닉 계층으로 구성 가능 다수의 은닉 계층을 활용하면 은닉 계층 하나를 활용할 때보다 입력 신호를 더 정교하게 처리 가능 => 복잡도가 높은 비정형 빅데이터에 용이하지만 결국은 과적합을 얼마나 방지하느냐가 이를 제대로 활용하는 열쇠 경사도 소실 문제란 ? DNN은 활성화 함수에 따라 경사도 소실 발생 가능 오차역전파를계산할 때 경사도 계산이 누적되는데 이로 인해 경사 하강법을 사용하는 오차역전파 알고리즘의 성능이 낮아질 수 있음 특히 시그모이드 함수와 같이 입력을 특정 범위로 줄이는 활성화 함수들은 입력이 크면 경사도가 매우 작아져 경사도 소실을 유발할.. 2020. 9. 8.
필기체를 구분하는 분류 ANN 1단계 : 케라스 패키지에서 2가지 모듈을 불러옴 #분류 ANN을 위한 인공지능 모델 구현 from keras import layers, models layers는 각 계층을 만드는 모듈 models는 각 layer들을 연결하여 신경망 모델을 만든 후, 컴파일하고 학습시키는 역할, 평가도 포함 객체지향 방식을 지원하는 케라스는 models.Model 객체에서 compile(), fit(), predict(), evaludate() 등 딥러닝 처리 함수 대부분을 제공 Nin : 입력계층의 노드 수 Nh : 은닉 계층의 노드 수 number_of_class : 출력값이 가질 클래스 수 Nout : 출력 노드 수 2단계 : ANN 모델을 분산 방식으로 구현, 모델 구현에는 함수형 방식을 사용 x = layer.. 2020. 9. 8.
인공신경망 ANN(Artificial Neural Network) ANN이란 ? - 생체 신경망 구조와 유사하게 은닉 계층을 포함하는 인공신경망 기술 - 입력, 은닉, 출력 계층으로 구성되어 있으며 은닉 계층을 한 개 이상 포함할 수 있고, 각 계층은 여러 노드로 구성된다. - 은닉 계층 수나 각 은닉 계층의 노드 수는 사용자의 선택 사항이므로 입력 데이터아 목표로 하는 출력 데이터의 모양에 따라 적절한 값으로 선정해야 한다. 이러한 과정을 모델 최적화 또는 하이퍼 파리미터 최적화라고 한다. ANN의 활용 ? - 크게 분류와 회귀로 나뉨 - 분류 ANN은 입력 정보를 클래스 별로 분류하는 방식이며, 회귀 ANN은 입력 정보로 다른 값을 예측하는 방식 분류 ANN이란 ? - 입력 정보를 바탕으로 해당 입력이 어느 클래스에 속하는 지를 결정 - 판별은 두 출력 노드의 값을.. 2020. 9. 7.
728x90