목표: 역전파와 딥러닝의 개념 이해하기
용어)
- 예측값 = 예상값 = 우리가 만든 모델에서 예상한 값
- 정답값 = 실제값 = 기존 데이터
- 비용함수 cost function en(w) : 예측값과 실제값의 오차를 측정하는 함수
- 파라미터 w(w1, w2, ... ,wn) : 학습도중 변하는 변수. cost func에서 곱하는 값이다.
cost func에서 w로 미분해서 기울기를 구한후 cost func값을 줄여나가기 위해 w값을 조정한다.
(선형모델에서는 w가 기울기를 뜻한다. 기울기를 조정해서 정답값과 예측값의 차이를 줄여나가는 것이 목표이다.)
- 하이퍼파라미터 : 사용자가 임의로 정하는 input
- 활성화 함수 activation function: 노드에 들어온 input을 activation func에 넣는다.
activation func 의 종류: sigmoid relu elu
relu: 0 보다 크면 자기 자신 반환, 0보다 작으면 값을 반환
elu: relu의 반대
sigmoid: if actviatoin func가 시그모이드면 딥러닝과 동일하다
1/(1+E^(-X)) = 시그모이드
x가 작아질수록 0에 가까워지고 x가 커질수록 1에 가까워짐
확률값은 아니지만 확률처럼 보이게 해줌
- input layer: 처음 들어오는 칼럼들
- output layer: 예측할 값들
- hidden layer: input layer, output layer를 제외한 중간에 있는 모든 층들
입력층과 출력층은 정해져 있따
히든 레이어는 자기맘
--> 딥러닝은 히든 레이어를 잘 구조화하는게 잘하는 것!
히든레이ㅓ 구조에 따라 자연어 처리 이미지 처리 등등이 된다
-회귀모델
-logistic 회귀모델
0과 1이라는 정수를 확률값으로 바꾸기
-> 선형회귀에 넣기
-뉴럴네트워크모델
: input layer가 2개(시그모이드가 2개)
** exp = e^(-x)
-cross entropy: 정답값은 0아니면 1(정답이면 1 아니면 0)
-경사하강법
cost func의 결과값을 미분
-> 노답이라 분리하기
1) 출력층과 은닉층 사이
net k: 시그모이드에 들어가기 전값 o k의 input
en(w) w에 대한 비용함수
-경사하강법
사용자가 알파를 정해서 값을 바꿔준다.
-퍼셉트론: 첨엔 단층 퍼셉트론
단층 퍼셉트론: boolean xor을 표현하기 어렵다
-> 보완: 이중퍼셉트론
-> 다층 퍼셉트론:
3/8 2일차
이미지 처리
conv, convtrans
3일차
gan이란
: generator administer
g가 real image를 생성
a가 감별
-> 둘이 서로 학습
generator가 핵심 admin은 하긋ㅂ 도구
gan의 종류: cgan dcgan srgan cyclegan
cgan
gan은 원래 클래스가 1개인데 cgan은 클래스가 여러개가 된다
dcgan 이미지 생성 간 랜덤 생성
srgan 해상도 올리기 super resolution
cyclegan 이미지의 테마 변경
c + dc 간으로 글씨 쓰기 => 글씨 크기 키우고
cycle gan으로 이미지를 주고 그걸로 채색
4개를 합쳐서 모델을 만들고 글씨를 칠한다
댓글