본문 바로가기

Computer Technology 기록부30

Deep network 종류 사전 학습된 시중의 딥러닝 네트워크들에 대해 알아보자 텐서플로우에서 제공하는 이미지 분류 모델 library 모음 https://github.com/tensorflow/models/tree/master/research/slim GitHub - tensorflow/models: Models and examples built with TensorFlow Models and examples built with TensorFlow. Contribute to tensorflow/models development by creating an account on GitHub. github.com ImageNet Challenge 비전 관련 딥 러닝에서 가장 유명한 데이터셋 세계에서 가장 많은 데이터 셋을 보유하고 있고.. 2022. 2. 8.
CS231n Lecture 06. Training Neural Network 인공신경망을 학습시키는 방법에 대해 알아보자 목차 - Activation Functions - Data Preprocessing - Weight Initialization - Batch Normalization - Babysitting the Learning Process - Hyperparameter Optimization Activation Functions 입력을 받아 w와 가중치 연산된 후 활성함수가 적용되어 다음 퍼셉트론으로 이동 Activation Function - Sigmoid 각 입력을 받아서 그 입력을 [0, 1] 사이 값이 되도록 해줌 입력의 값이 크면 Sigmoid의 출력은 1에, 작으면 0에 가깝게 됨 0 근방의 모습은 선형성을 띔 sigmoid의 문제점 1. : Saturated.. 2022. 2. 7.
CS231n Lecture 05. CNN - Convolution Neural Network 이미지 인식의 대표 알고리즘, 공간적 구조를 유지하는 CNN에 대해 알아보자 History of CNN 1957년, Frank Rosenblatt가 Mark I Perceptron machine 을 개발 update rule 이 존재함 - back prop과 유사해 보이나 당시엔 단지 w를 사람이 직접 조절해 가며 맞추는 방식. 1960년, 최초의 Multilayer Perceptron Network 발명, NN와 비슷한 형식이나, 아직 back prop은 없었다. 1986년 처음으로 network 학습 개념 정립 시작됨 back prop 기법의 발견 2006년 Geoff Hinton 과 Ruslan Salakhutdinov의 논문이 DNN의 학습 가능성 선보임 backprop이 가능하려면 세심하게 초기.. 2022. 2. 6.
CS231n Lecture 04. Introduction to Neural Networks backpropagation - 목적 : 각각의 웨이트가 결과에 얼마나 영향을 미치는지를 알아보자! Backpropagation with scalar - 각각의 가중치 값 찾기!! q = x+y f = q * z Purpose : Want to calculate df/dx. df/dy, df/dz (x,y,z가 함수 F에 미치는 영향을 알 수 있다. 기울기값이므로 초기 인풋값의 변화량만큼의 f값의 변화를 알 수 있기 때문) Chain rule을 통해 단계마다의 함수값을 미분하며 올라가면 가장 최상층 웨이트의 미분값도 알 수 있다!! Process of backpropagation in Local gradient 각 노드(함수)를 거슬러 올라갈때, [upstream gradient] X [local gra.. 2022. 1. 28.
신경망(Neural Network)이란? 딥러닝 알고리즘의 구현 방식, 신경망에 대해 알아보자. 신경망(Neural network)이란? 우리 뇌에는 1000억 개에 가까운 신경계 뉴런들이 있다. 이 뉴런들은 서로 매우 복잡하게 얽혀 있고, 조금 물러서서 보면 하나의 거대한 그물망과 같은 형태를 이루고 있다. 보통 우리는 이를 신경망이라고 한다. 머신러닝/딥러닝 분야는 위와 같은 뇌 속의 신경망처럼 컴퓨터 알고리즘을 구현하여 인공지능을 만들고자 시도했다. 그들은 우리 뇌 속의 신경망 구조에 착안해서 퍼셉트론(Perceptron)이라는 형태를 제안하며 이를 연결한 형태를 인공신경망(Artificial Neural Network)이라고 부르기 시작했다. 다층 퍼셉트론 입력층(input layer), 은닉층(hidden layer), 출력층(outp.. 2022. 1. 25.
딥러닝과 신경망의 본질 딥러닝과 머신러닝의 차이는 무엇인지, 표현학습, 연결주의, 선형성은 무엇인지 알아보자 딥러닝vs머신러닝vs인공지능?? 인공지능은 기계가 스스로 규칙 시스템을 만들어 학습하게 하는 과학을 말함(인간이 직접 프로그래밍x) 머신러닝은 데이터를 통해 스스로 학습하는 방법론을 의미. 데이터분석, 패턴학습, 판단/예측 실시 딥러닝은 머신러닝의 일종으로, 학습 모델의 형태가 신경망(NN)구조인 방법을 말함 기존의 머신러닝은 데이터를 입력하기 위해 사람이 feature를 가공해줘야 함 - 사람의 개입 많이 필요 딥러닝은 모델의 복잡성을 늘려 사람이 feature를 직접 가공하지 않아도 됨(자연어의 경우 embeding 필요) 딥러닝은 머신러닝과 달리 비정형데이터로부터 표현을 추출하는데 매우 능함 신경망(Neural N.. 2022. 1. 20.
CS231n lecture 03 Loss function and optimization Topic : How to choose weight for best accuracy Loss function w가 얼마나 좋은지 나쁜지를 결정하는 함수. 가장 덜 나쁜 w는 무엇인지를 결정하는 함수 - 최적화 과정 General formulation to determine Loss x : image, y : label(how many classes exist in data), N : number of image f : Loss function, W : weight, L : Loss Minimize the value L is the way to optimize algorithm Loss function 1. Hinge loss in Multiclass svm loss (이미지내 정답이 아닌 카테고리의 점수.. 2022. 1. 17.
[최종] 카메라 스티커 만들기 - 예외처리 포함 고양이 스티커 부착하기¶ 1. 필요 모듈 임포트¶ In [1]: from IPython.core.display import display, HTML display(HTML("")) In [2]: import os import cv2 import matplotlib.pyplot as plt import numpy as np import dlib 2. 이미지 경로 설정 및 이미지 전처리¶ 이미지를 가져와 사용할 준비를 한다. opencv 특징 상 BGR 색상계 사용하므로 사진 색이 변경될 수 있다. 따라서 cv2.cvtColor() 메서드를 통해 다시 RGB 색상계를 이용한 이미지로 변경해준다.¶ In [3]: #이미지 경로설정 my_image_path = os.getenv('HOME')+'/aiffel/c.. 2022. 1. 13.
카메라 스티커 만들기 snow나 snapchat같은 카메라 필터앱처럼 사진에서 얼굴을 인식하고 해당 위치에 스티커 사진을 삽입하는 프로그램을 만들어 보자. 기본 원리는 다음과 같다. 얼굴 검출 face detection Object detection 기술을 이용해서 얼굴의 위치를 찾는다. dlib의 face detector는 HOG(Histogram of Oriented Gradients)와 SVM(Support Vector Machine) 사용 HOG : 이미지에서 색상의 변화량을 나타낸 것 Deep-learning 나오기 이전 사용 多 이미지로부터 물체의 특징을 잡아내는 능력 大 얼굴 인식해 카메라 초점잡는 기능에 사용 SVM : 선형분류기, 한 이미지를 다차원 공간의 한 벡터로 보고, 벡터간 구분하는 방식 이미지의 색상.. 2022. 1. 11.