본문 바로가기
728x90
반응형

2023-1/인공지능10

CNN 개요: 딥러닝과 컴퓨터 비전 **CNN 이란?** CNN(Convolutional Neural Network)는 딥러닝의 한 방법으로, 공간적 구조를 가진 데이터를 다루는 데 특화되어 있습니다. 이러한 데이터에는 이미지, 비디오 클립 등이 포함됩니다. CNN은 기본적으로 이미지의 작은 부분에 집중하며, 이를 통해 이미지의 중요한 특징을 학습합니다. CNN은 Convolution, Pooling, 그리고 Fully-connected 계층으로 구성됩니다. Convolution과 Pooling 계층은 이미지의 특징을 학습하고 추출하는 역할을 합니다. Fully-connected 계층은 추출된 특징을 바탕으로 최종적인 분류 또는 예측을 수행합니다. **End-to-end 학습이란?** 딥러닝은 "end-to-end" 학습을 지원합니다. 이.. 2023. 6. 12.
역전파 학습 개념 기울기 강하 기법을 이용한 신경망 학습 알고리즘은 에러 기울기를 이용해서 가중치를 변경하는 것이다. 이 때, 에러 기울기는 손실함수를 특정 가중치에 대해서 미분시킨 값이다.이것이 손실함수에서 특정w에 대한 접선의 기울기이다. 노드의 에러 기울기 노드의 가중입력합에 대한 에러함수의 기울기. 손실함수를 미분하여 가중입력합을 대입한 값이다. 가중치 에러 기울기 가중치에 대한 에러함수의 기울기. 출력계층 노드 에러 기울기 구하는 방법 활성화함수를 미분하여 가중입력합을 대입한 값 * 손실함수를 미분하여 출력을 대입한 값 --> 활성화함수 시그모이드를 미분하면, 시그모이드(가중입력합)*(1-시그모이드(가중입력합)) 값으로 계산가능 --> 손실함수는 평균제곱에러일 때 -(d1-y1)으로 계산가능 --> 따라서, 평균.. 2023. 6. 12.
기울기 강하 기법 깔끔한 글을 원한다면 아래 더보기를 클릭. 더보기 신경망의 학습은 가중치를 적절하게 조정하는 과정입니다. 이 과정은 순방향 전파(FNN)를 통해 입력에 대한 실제 출력을 계산하고, 이 출력값을 목표 출력값과 비교하는 방식으로 이루어집니다. 추론 결과와 목표값의 차이를 '에러'라고 부르며, 이 에러를 역으로 전파하여 가중치를 조정하는 방식으로 신경망의 학습이 이루어집니다. 이를 통해 가중치를 조정하여 추론값이 목표값과 같아지도록 합니다. 이러한 방법을 '에러 정정 기법'이라고도 합니다. 신경망 학습에서는 '경사하강법'이라는 방법을 사용합니다. 이를 위해 '손실 함수'를 적용해야 합니다. 손실 함수는 목표치(라벨 값)와 실제 출력(추론)간의 차이(손실, 에러)를 계산하는 함수입니다. 이에는 평균제곱오차(MS.. 2023. 6. 12.
FNN 원리와 구현 다층 신경망 FNN(Feedforward Neural Network) 기존 퍼셉트론의 선형분리성의 한계를 극복한다. 2개의 계층으로 구성된 다층 펏뎁트론으로 XOR기능을 구현해 입증했다. 2개 이상의 계층을 갖는 구조를 활용 다 계층 구조 활용의 최대 걸림돌인 학습 문제를 오류 역전파 알고리즘으로 해결. 비선형 활성화 함수를 도입하여 다양한 함수 기능 구현 -계단함수 대신 시그모이드 함수를 적용 다층 신경망은 초기에 다층 퍼셉트론으로 불렸지만, 시그모이드 함수를 사용하는 신경망은 더 이상 퍼셉트론이 아님.(이진출력이 아니라 0과1사이 모든 값이 나오니까) 따라서 다층 신경망, 일반 신경망(FNN, feedforward neural network: 앞먹임 신경망) 이라고 부름 FNN의 구조 No cycli.. 2023. 4. 19.
퍼셉트론의 학습 퍼셉트론의 학습 퍼셉트론의 학습 알고리즘 개요 -학습 데이터셋 준비(입력,정답) -가중치 초기값 설정 -각 입력에 대해 오차가 감소하도록 가중치 조정 -모든 입력이 정확하게 분류될 때까지 여러번(Many epoch) 반복 학습데이터는 N개의 학습샘플로 구성된다. 각 학습샘플은 퍼셉트론 입력과 정답 쌍(xi,di)으로 구성된다. 각 xi를 퍼셉트론에 입력했을 때 산출되는 yi를 di(정답)와 비교하여 에러를 정정한다. 이 한 번의 과정을 에폭:epoch 라고 한다. 에폭을 많이 돌릴수록 정답에 가까워진다(실제로는 안 그럴수도..) import numpy as np #아래는 학습데이터임 X = np.array([[0,0], [1,0], [0,1], [1,1]]) Y = np.array([-1,-1,-1,1].. 2023. 4. 19.
신경망 신경망(Neural Network) -인간의 두뇌를 모방한 연결주의의 대표적 AI기술 -안정적인 학습 기능, 병렬처리와 에러 감내 등의 장점 -초기부터 음성, 영상, 자연어 처리 등에 많은 응용 신경망 모델링 인공신경망의 학습 : 학습데이터를 입력으로 사용 학습과정에서 학습데이터에서 추출한 지식이 뉴런 간의 연결강도에 반영됨. => 학습은 가중치와 편향을 적합한 값으로 변경하는 작업임 뉴런의 연산 모델 v=(x1*w1+x2*w2+...+xi*wi) + b 가중입력합 v에서 편향을 제외한 값을 순수 가중입력합 이라고 부른다. 편향은 뉴런 입력과 별도로 뉴런에 가해지는 값으로, 순수 가중입력합에 어파인 변환을 적용하는 효과임. 활성화 활성화 함수는 : 입력가중합이 어떻게 처리되는지 결정 응용에 맞는 컴퓨팅 .. 2023. 4. 19.
신경망, 퍼셉트론 생물학적 신경망은 뉴런과 시냅스로 이루어져 있다. 생물학적 신경망을 모사한 인공 신경망을 알아보자. 구분 생물학적 뉴런 인공 뉴럴 네트워크 처리 뉴런 그래프의 노드 뉴런 간 신호전달 시냅스 노드간 연결선(Edge) 학습 시냅스 연결 강도 연결선의 가중치 크기 퍼셉트론은 초기 인공 신경망의 한 종류이다. 퍼셉트론은 입력 벡터(입력 값들의 집합)을 받아 이진 출력을 내는 선형 분류기의 일종이다. x1*w1+x2*w2를 순수가중합이라고 부르는데, 이 값이 임계값보다 작거나 같으면 0, 크면 1이 된다. 여기서 임계값 세타를 좌변으로 넘기면 이것을 편향(bias)이라고 한다. (임계값과 편향은 부호가 반대임) import numpy as np def AND(x1,x2): x=np.array([x1,x2]) #입.. 2023. 4. 19.
넘파이를 알아보자(numpy) 0. 넘파이 임포트하기 import numpy as np (np로 사용하기 위해 as np를 붙임) 1. 넘파이 배열 생성하기 x = np.array([0,10,20,30,40,50]) #파이썬 자료형(리스트)를 넘파이 배열로 변환 print(x) print(type(x.dtype),end='') print(x.shape) np.array()에 리스트를 인자로 넘기면 넘파이 배열로 반환. [ 0 10 20 30 40 50] (6,) 이차원 배열 생성 y= np.array([[0,1,2],[10,11,12]]) #2차원 리스트를 넘파이 배열로 생성 print(y) print(type(y.dtype),end='') #데이터타입 출력 print(y.shape) #행과 열을 출력 z=np.zeros_like(y.. 2023. 4. 18.
퍼셉트론의 이해 퍼셉트론은 인공 신경망 중 하나로, 이진 분류를 위해 사용되는 간단한 알고리즘이다. 퍼셉트론은 다수의 입력값과 가중치(Weight)를 곱한 합을 계산하고, 이 합이 특정 임계값 ㄷ보다 크면 1을, 작으면 0을 출력한다. 이 때 가중치와 임계값을 적절히 조절하여 분류 경계선을 찾아야 한다. AND게이트를 퍼셉트론으로 구현하기 우선 AND게이트의 동작을 살펴보자. x1 x2 y 1 1 1 0 1 0 1 0 0 0 0 0 두 개의 입력(x1, x2)이 주어졌을 때 두 입력이 모두 1일 때만 출력(y)이 1이 되어야 한다. 두 개의 입력 x1, x2에 대한 가중치를 w1, w2라고 하면 가중합은 x1*w1 + x2*w2 이 된다. (이 계산은 np.dot(가중치,입력값) 또는 np.sum(가중치*입력값)과 같다.. 2023. 3. 25.
머신러닝과 딥러닝 이해 인공지능 : 기계가 지능을 갖도록 하는 것. '지능'은 주변 환경에서 기계가 적절하고 예측가능한 방식으로 동작하는 것. 문제는 '지능'이라는 개념이 매우 모호함. AI의 역사. -1956년 다트머스대학 워크샵에서 "사람처럼 생각하는 기계"라는 개념의 AI라는 용어 등장. 이후 다양한 AI기술이 개발되어왔음. 2000년대에 딥러닝등이 개발된듯.. 인공지능과 머신러닝,딥러닝의 관계 인공지능과 머신러닝,딥러닝은 기술범주에 있어 포함관계이다. 머신러닝: 특징 데이터를 입력 받아, 자동으로 분류 등과 작업을 수행할 수 있는 프로그램(알고리즘)을 자동으로 만들어 내는 기술 딥러닝: 특징 추출부터 추론/예측까지 전 주기의 자동화를 실현한 머신러닝의 한 분야. 최근 인공지능 붐을 가져오는데 실질적인 기여를 함. 머신러.. 2023. 3. 10.
728x90
반응형