본문 바로가기

전체 글

(108)
인공지능, 머신러닝, 딥러닝 개념 인공지능 > 머신러닝 > 딥러닝 순서로 범위가 크다 인공지능은 머신러닝과 딥러닝을 포괄하는 개념! 인공지능(artificial intelligence) 이란? 인공지능은 사람처럼 학습하고 추론할 수 있는 지능을 가진 컴퓨터 시스템을 만드는 기술 강인공지능과 약인공지능 1. 강인공지능 흔히 영화 속의 인공지능은 인공일반지능(artificial general intelligence) 혹은 강인공지능(strong AI) 라고 부르는 인공지능이다. (ex. 영화 her 에 나온 사만다, 터미네이터의 스카이넷 처럼 사람과 구분하기 어려운 지능을 가진 컴퓨터 시스템) 2. 약인공지능 (Weak AI) 약인공지능은 아직까지는 특정분야에서 사람의 일을 도와주는 보조 역할만 가능하다. (ex. 음성비서, 자율 주행 자동..
밑바닥부터 시작하는 딥러닝 5장 -7,8 - 덥셈, 곱셈 노드의 역전파(텐써플로우 포함) ■ 7. 덧셈노드의 역전파 아래는 덧셈노드의 순전파 그림이다. 이 그림의 역전파를 알아보자 역전파를 보면 상류층 L에서 미분되어 역전파로 흐르고 있다. aL/az( z에 대한 L의 미분) 여기서 그림 5-9 의 부분(덧셈노드)의 역전파를 살펴보면 합성함수 미분을 생각하면 된다. 상류층 미분 * 덧셈노드 미분 덧셈노드 미분은 z=x+y를 각각 x에 대해 미분, y에 대해 미분을 하니까 1이 나온다. 그래서 그림과 같이 덧셈노드에서 x로 흐르는 값과 y 로 흐르는 값이 똑같이 aL/az*1 이 된다. 덧셈노드 순전파와 역전파를 텐써플로우 코드 class AddLayer: def _init_(self): pass def forward(self,x,y): # 순전파 out= x+y return out def b..
파코기 4탄 8일차 - 20221007 파코기를 계속 못하다가 어제부터 다시 하고 있다. 오늘 김익환 교수님 말씀 내용 교수님은 일주일 단위로 시뮬레이션하셔서 다음주 포인트를 미리 생각하신다고 한다. 그리고 금요일쯤 이번주 포인트로 생각한 것을 어느정도 했는지 생각하고, 마무리하지 못하면 주말에 조금 더 하기로 하신다고 ~ 인생을 주도적으로 계획적인 게 아닌 주관자로써 살아가는 느낌 주관자로써 내 일상을 조금 더 사랑해주고 조금 더 나아가는 것 내가 주관자로써 계획해보고 계획한 것을 해보려고 하고, 그런 일상을 보듬어주고 사랑해주기. 못하더라도 조금만 더 나아가는 정도로만 해보기. 전쟁처럼 이거 큰일 났네 다 해버리자! 하거나 못한 것을 자책하면 지속성이 떨어지고 어느 순간 무너진다. 오히려 느린 것 같지만 못한 것을 다독여주고, 조금씩만 더..
(밑바닥부터 시작하는 딥러닝) 5장-2 계산그래프 계산그래프란 신경망의 순전파와 역전파 코드를 이해되게 쉽게 그림으로 보여주려 계산그래프를 사용한다. 계산그래프를 이용하면 신경망 전체가 아무리 복잡해도 각 노드에 수행되는 계산에만 집중하여 문제를 해결할 수 있다. 즉 노드마다의 계산문제로 큰 신경망 전체 문제를 해결해가는 것이다. 위의 계산그래프로 순전파와 역전파의 모습을 알 수 있다. 순전파는 100 —→ 200 —→ 220 으로 값이 전파되고 역전파는 다시 거꾸로 1———> 1.1 ——> 2.2 순으로 미분값(기울기) 이 전달되면서 역전파 되는 것이다. 계산그래프의 역전파 계산 그래프의 역전파를 자세히 보자. 역전파를 통해서 미분을 효율적으로 계산할 수 있다. 그 때 중요한 것은 각각의 뉴런을 클래스로 만들어야한다는 것이다! 뉴런을 클래스로 만드는 ..
(밑바닥부터 시작하는 딥러닝) 5장 -1 오차역전파법 수치 미분은 간단하지만 계산 시간이 오래 걸린다는 단점이 있다. 이러한 단점을 오차역전파법(backpropagation)을 통해 해결할 수 있다. 오차역전파법은 도함수에 값을 대입해서 미분계수(기울기)를 구하는 것이다. 신경망의 함수 사용 순서 1. 순전파 2. 역전파 순전파는 사과부터 -> 사과의 개수 -> 소비세 -> 가격 순 역전파는 그 반대 방향 역전파 역전파는 output에서 input 방향으로 진행한다. 역전파로 갈 때는 미분값을 활용한다.
4장 11 신경망 활용 사용자 인터 페이스 만들기 신경망을 활용하여 사용자 인터페이스를 만들어보자 목표: 고객들은 파이썬을 모릅니다. 그냥 이미지를 분류하는 화면(인터페이스)만 있으면 되기 때문에 사용할 수 있는 화면을 요청해옵니다. 1.GUI (Graphic user interface) 2. 홈페이지 (리액트) 구현방법 1. 오늘만든 fashion_model.h5 와 한장을 맞추는 파이썬 코드가 필요합니다. 2. 사용자 인터페이스를 생성하면 됩니다. #1. 게임화면을 구현하는 TKINTER 모듈을 임폴트 받습니다. (코랩에서 하면 안되고 , 로컬 컴퓨터에서 해야합니다) import tkinter as tk from tkinter import filedialog from tkinter import * ■ tkinter 코드를 실행파일(exe)로 변경하는..
4장 10. fashion mnist 신경망에 사진 넣고 예측하는지 확인해보기 밑바닥부터 시작하는 딥러닝 4장 참고 # 사진한장 잘 맞추는지 확인하기 #1. 필요한 패키지 로드 import tensorflow as tf import cv2 #2. 이미지 있는 위치 저장 img_path = '/content/sample_data/ankleboot.png' # 앵커부츠사진 img = cv2.imread(img_path) # 이미지 숫자로 변환 코드 #img = cv2.bitwise_not(img) # 색 반전시키는 코드 (흰검) print(img.shape) # 3. 28 x28 로 reshape 합니다. import matplotlib.pyplot as plt resize_img = cv2.resize( img, (28, 28), interpolation = cv2.INTER_CUB..
4장 9. 학습률(learning rate) p.132 밑바닥부터 시작하는 딥러닝 p.132 참고 학습률(learning rate) 이란? 한번의 학습으로 얼마만큼 매개변수(가중치와 바이어스)를 갱신할 지를 결정하는 하이퍼 파라미터 가중치 = 가중치 - 학습률*기울기 학습률을 잘 조절해야하는 이유 학습률이 너무 ↑ : 학습은 빠르지만 global minimum을 지나칠 수 있습니다. 학습률이 너무 ↓ : global minum을 지나칠 염려는 없지만 학습이 너무 느려서 수렴을 못합니다. [실습 ] 학습률이 너무 큰 경우와 작은 경우를 텐써플로우를 이용해 확인해보자 경사하강법은 RMSprop 을 사용하는 코드를 가지고 확인해보았다. 1. 학습률이 너무 큰 경우 ■ 기존의 코드에서 러닝레이트를 조절하는 부분 from tensorflow.keras import b..