본문 바로가기

Artificial Intelligence17

[딥러닝] Activation Function 활성함수 한번에 이해하기(Sigmoid, Softmax, Relu) [딥러닝] Activation Function 활성화함수 딥러닝의 장점은 선형함수를 깊게 쌓을 수 잇는 것이 장점이다. 하지만 선형함수를 깊게 쌓아봤자 선형함수가 되어 복잡한 모델링을 하기가 어렵다. 이 문제를 해결하기 위해서 모델 레이어를 쌓을 때 선형 함수 사이사이에 선형함수가 아닌 것을 번갈아 넣어줌으로써 복잡한 문제를 풀 수 있다. 이 비선형 함수를 활성 함수(activation funtion)라고 하고, relu, sigmoid, softmax 등이 있다. 위 설명대로 activation을 넣어서 모델링을 해보면 model = Sequential([ tf.keras.layers.Flatten(input_shape = (28,28)), tf.kearas.layers.Dense(512) tf.kea.. 2022. 2. 18.
[딥러닝] Convolution Neural Network (CNN) 합성곱 신경망 - 간단하고 쉽게 이해하기 Convolution Neural Network (CNN) 합성곱 신경망 CNN Dense 레이어 = 연산을 담당하는 레이어이고. CNN = 들어오는 데이터(features)에 대한 특성을 추출하는 레이어이다. 따라서 모델링을 할 때에 특성 추출을 먼저한 후 연산을 해야하니 윗부분이 특성을 추출하는 레이어가 자리잡고 아랫부분이 연산을 담당하는 레이어가 자리잡는다. input 레이어는 하나의 이미지에 대해서 굴곡 등..특성을 추출하고 그 추출한 이미지를 모아둔 것을 feature maps라고 한다. 계속 cnn층을 깊게쌓으면서 특성 추출을 해가는 것이 위 그림에 대한 설명이다. 여기까지가 CNN의 기본 개념 끝! Dense VS CNN 예를들어 고양이 사진을 가지고 이 사진이 고양인지 아닌지를 알 수 있는.. 2022. 2. 17.
[논문리뷰] VGG Net - Very Deep Convolutional Networks for large-scale image recognit [딥러닝] VGG Net - 논문리뷰 -Very Deep Convolutional Networks for large-scale image recognition 논문 링크 ↓↓↓↓↓↓ https://arxiv.org/pdf/1409.1556.pd VGG net은 유명한 레이어이자 실무에서도 많이 쓰이는 모델이라고한다. 세계 이미지 분류 대회가 있다. 거기서 2014년에 준우승을 한 모델. 살짝 여담으로 인공지능을 활용한 대회는 사람의 성능을 뛰어넘으면 종료되는데 2017년에 종료됐다니..조금 무섭다. 이제 이미지 분류는 기계가 사람보다 더 잘한다는 그런걸까..ㅎ 먼저 총 6개의 구조를 볼 수 있다. 구조도를 보면 마지막 FC-1000인것을 보아 Dense(1000, 'softmax')이므로 1000개의 카.. 2022. 2. 16.
[딥러닝] Dense Layer (Fully Connected Layer) 이해하기 Dense Layer (Fully Connected Layer) 이해하기 Dense Layer 딥러닝에서 가장 기본이 되는 Layer이다. Fully Connected Layer라고도 부른다. 논문에서는 Dense보다 Fully Connected Layer라고 많이 지칭하고 FC라고 줄여서 부른다. 흰색 동그라미를 노드(뉴런)라고 불리는데 y = wx + b 의 w(weight)의 역할을 한다. w들의 가중치가 변하면서 우리가 예측하고자하는 결과값에 가장 근사하게 만들어준다. Dense Layer는 노드와 노드 들이 완전하게 연결되어있다. input layer 위 그림은 4층의 레이어를 가지고있다. 데이터가 왼쪽에서 오른쪽으로 layer를 통과한다. output layer는 바로 앞 hidden laye.. 2022. 2. 9.
[딥러닝] classification neural network(분류신경망) [딥러닝] classification neural network(분류신경망) 머신러닝, 딥러닝의 데이터 문제의 유형은 크게 분류(Classification)과 회귀(regression)으로 나눠진다. 그 중 Classification neural network를 소개해보겠다. 분류(Classification)는 데이터가 어느 범주에 속하는지 알아내는 것이다. 그 중 오늘은 가장 기본데이터인 와인은 분류하는 신경망 모형을 만들어보겠다. random seed 설정 일관된 결과값이 나오도록 랜덤 시드를 설정해줘야한다. numpy와 tensorflow를 import하고 각각 랜덤 시드값을 생성하는 함수를 사용해서 생성한다. import numpy as np import tensorflow as tf np.ran.. 2022. 1. 24.
[딥러닝] batch size(배치사이즈) VS epoch(에포크) VS iteration(반복) [딥러닝] batch size(배치사이즈) VS epoch(에포크) VS iteration(반복) 딥러닝을 학습하는 코드이다. hist = model.fit(x_tn, y_tn, epochs =10, batch_size = 100) 딥러닝을 학습하는 과정에서 epoch와 batch size, interation을 사용한다. 서로 비슷해 보여서 개념이 아주 조금 헷갈린다. batch size 전체 트레이닝 데이터를 여러개의 mini batch로 나누었을 때 하나의 미니 배치에 속하는 데이터의 개수를 말한다. 그림을 설명하자면, train data 700개는 각각 100개로 나눠진 mini batch가 7개로 이루어져있다. 각 mini batch는 100개의 데이터 포인트로 구성되어있고 이를 batch si.. 2022. 1. 22.
[딥러닝] Tensorflow로 신경구조망 모형 만들기 - Sequential API, Functional API [딥러닝] Tensorflow로 신경구조망 만들기 - 시퀀스 API, 함수형 API Tensorflow(텐서플로우) 2.0 Tensorflow는 파이썬을 이용해서 딥러닝 학습에 사용하는 프레임워크이다. 특히 신경망을 기반으로 하는 관련 연산 처리를 할 수 있어 사용을 한다. Tensorflow를 이용해서 신경망을 만두는 방법은 두가지가 있다. 1. 시퀀스 API 시퀀스 API는 직관적이고 편리하지만 복잡한 신경망을 구현할 수 없다. 처음 사용하는 사람들은 시퀀스 API가 익숙해지고 함수 API를 사용하는 것이 배우기 쉬울것이다. 시퀀스 API는 텐서플로에서 제공하는 Sequential()을 통해서 딥러닝 구조의 층을 쌓을 수 있다. Sequential()을 먼저 모형을 선언 하고 model.add() 함.. 2022. 1. 22.
반응형