반응형

AI 56

[인공지능 : AI, Artificial Intelligence]Chapter 2 : Intelligent Agent

Chapter 2 Inteligent Agent Agent란 무엇인가? 센서를 통해서 environment을 파악 환경 위에서 actuator를 통해서 acting을 한다. agent의 큰 그림 아키텍쳐 = 동작하는 구조 프로그램 = 중간에 있는 function 예시 오목을 둔다고 해보자. 여기서는 오목판이 environment 이걸 perceive하고 판단 및 행동 (percept한 것을 저장하는데, 이를 precepted sequence라고도 한다.) environment가 변화 이를 반복 그런데 이를 어떻게 할 것인가? AI를 이용한다 Agent = 자율적, 연속적 판단 및 행동 human, robot, softbot 등이 agent motor, screen 등이 action이다. 예) 로봇 청소기..

[인공지능 : AI, Artificial Intelligence] Chapter 1 : Introduction

Chapter 1 : Introduction 인공지능의 각 영역과 수업이 포함하는 부분 인공지능의 역사 튜링머신 : 현대 컴퓨터의 근본 1950년 인공지능 최초 논문 : Imitation Game 1956년 당시 : 휴리스틱 탐색, 지식표현, 논리추론 1980 ~ 2010년 : 기계학습, 신경망, 딥러닝 현재 : 자연어처리, 패턴인식, 컴퓨터비전 알고리즘과 AI 모델의 차이 일반 알고리즘은 static, 정해져있고, 순서대로 진행하는 과정 AI 모델은 이런 알고리즘의 특성에서 벗어난다. AI는 인간의 지능적 행위를 컴퓨팅 모델로 만드는 것에 대한 것이다. 고양이 강아지 구분하기와 같은 문제는 static한 방법으로는 해석할 수 없다. 임의의 미로에 대한 미로찾기와 같은 문제도 그러하다. 임의의 문장을 다..

[Deep Learning : 딥러닝] EECS 498 Lecture 7 : Convolution Network

Linear Classifier는 spatial structure를 반영하지 못하고 flatten만한다. Conv를 도입하면 해결! 이제 Layer의 component가 FC Layer & Activation Function → Convolution Layer & Pooling Layer & Normalization으로 바뀌는 것을 목도하게 될 것! 그중에서 Convolution Layer는 FC Layer의 역할을 하게 된다. 그동안 FC Layer는 다음과 같이 forward pass 과정을 거쳤다. 그저 dot product했다는 뜻 그러나 우리는 앞으로 아래 같은 33232 이미지에서 spatial structure을 유지하는 방식으로 연산을 거치는 layer를 선언할 것이다. 이미지는 기본적으로..

[Deep Learning : 딥러닝] EECS 498 Lecture 6 : Backpropagation = Auto gradient

Graph 편미분 계산을 위해 Computational Graph를 사용한다. 다음과 같은 computational graph가 있다고 하자. forward pass와 backward pass를 거친다. forward pass에서는 Loss function까지 쭉 값을 대입해준다. backward pass에서는 차례로 하나의 node를 기준으로만 output과 input의 gradient를 계산하고, input node 쪽으로 그 gradient를 곱해 Chain Rule을 적용해준다. 이런 순서로 backward pass가 진행된다. 참고로 아래 사진과 같이 각각의 항을 Downstream Gradient Local Gradient Upstream Gradient 라고 한다. 하나의 node에 대해서 ..

[Deep Learning : 딥러닝] EECS 498 Lecture 5 : Neural Network

Lecture 5 : Neural Network 그동안 살펴본 머신러닝 모델은 Linear Model이다. 이러한 경우 문제가 풀리지 않는 것을 지난 번에 배웠다. 컴퓨터 비전에선 이를 Transform으로 해결하는 경우가 많다. 같은 원리로 컬러를 히스토그램으로 나타낸다. 위치 형태와는 무관히 이번에는 위치형태만을 신경쓰고 edge를 찾는다. 이를 벡터로 나타낸다. 이런 방법은 어떤 quality를 채집할지 결정할 Practictioner가 필요하다. 또한, 어떤 transform을 쓸지도 따로 결정해야한다 Bag of Words (Data Driven) https://en.m.wikipedia.org/wiki/Data-driven_programming 수많은 이미지에서 random patch를 얻고 ..

[Deep Learning : 딥러닝] EECS 498 Lecture 4 : Optimization

General한 경우에는 수식을 작성해서 bottom을 찾는 것이 불가능하므로 iteration이 가능한 방법을 찾아서 적용한다. Gradient = function이 가장 큰 상승을 하는 방향, 절대값은 그런 위치에서의 slope를 의미한다. Backpropagation을 통해서 4단계가 아닌 1단계만으로 gradient를 구한다. Gradient Descent로 조금씩 local steepest로 전진한다. 여기서 우리가 스스로 정해야하는 HyperParameter가 세가지이다. 가중치 초기화 방법, 분포 Epoch수 Learning Rate GD를 가하면 다음과 같이 정규화가 잘된 데이터는 local min으로 직선으로 간다. 정규화가 안된 찌그러진 모양은 아래처럼 optimizing path가 휘..

[Deep Learning : 딥러닝] EECS 498 Lecture 3 : Linear Classifier

Linear Classifier는 basic layer다. 어디에서든 쓰이는 기본이다. 기본적으로 이미지를 다음과 같이 $32 \times 32 \times 3$ 행렬로 생각하고 flatten한 다음, 위 사진과 같이 계산한다. $x$가 이미지이고 $W, b$는 각각 weight와 bias이다. 이제 Linear Classifier를 다음 세가지 viewpoint로 볼 것이다. Algebraic Viewpoint Visual Viewpoint Geometric Viewpoint 첫번째로는 Algebraic Viewpoint 여기서는 Linear Classifier가 다음 문제를 푸는 것으로 본다. Weight에 1을 추가하고 bias를 weight에 통합하는 trick이 있으나 잘 쓰이진 않는다 이미지도..

[Deep Learning : 딥러닝] EECS 498 Lecture 2 : Image Classification

Image Classification 컴퓨터는 이미지를 다음과 같이 RGB의 숫자로 받아들인다. 여기서 RGB와 같은 차원을 channel이라고 부른다. 즉, 이미지는 height * width * channel 세가지 차원으로 구성된다. 하지만 이 숫자들이 명확히 고양이를 다루고 있다고 구분 짓는 것이 어렵다. 이런 차이를 semantic gap이라고 한다. image problem을 더 애매하게 만드는 요인들 Viewpoiint Variation Intraclass Variation : 같은 종류인데 다른 것으로 인식할 수 있다. Fine Grainded Categories : 비슷한 아종들 분류하는 문제 Background Clutter illumination Change : Light Prob D..

[Deep Learning] Wine Classification Problem

이번 예제는 화이트와인과 레드와인을 구분하는 예제이다. 산도, 당도, pH등을 이용해서 12번 인덱스에 있는 두 클래스(화이트와인, 레드와인)을 구분하자. # 데이터 입력 from google.colab import files uploaded = files.upload() my_data = 'wine.csv' # !pip install -q tensorflow-gpu==1.15.0 # %tensorflow_version 1.x import tensorflow as tf import pandas as pd import numpy import matplotlib.pyplot as plt from keras.models import Sequential from keras.layers import Dense f..

반응형