인공지능 공부 (28) 썸네일형 리스트형 chapter 2 딥러닝과 신경망 - 3절 활성화 함수 활성화 함수는 전이 함수(transfer function) 또는 비선형성(nonlinearity) 이라고도 불린다. 활성화 함수는 신경망에 비선형성을 도입하고 출력값을 제약하는 역할을 한다. 비선형성이 없다면 다층 퍼셉트론이 단일 퍼셉트론과 다를 바가 없다. 선형 전달 함수 선형 전달 함수(linear transfer function)는 항등 함수(identity function)이라고도 불리며 입력을 그대로 출력한다. 즉, 실질적으로 활성화 함수가 없는 효과를 낸다. 헤비사이드 스텝 함수 스텝 함수(step function)는 입력이 0보다 크면 1을 출력하고 0보다 작으면 0을 출력한다. 주로 이진 분류 문제에 사용된다. 시그모이드 함수 시그모이드 함수(sigmoid function)는 모든 입력을 .. chapter 2 딥러닝과 신경망 - 2절 다층 퍼셉트론 1. 다층 퍼셉트론의 구조 퍼셉트론을 여러 층으로 연결한 구조를 다층 퍼셉트론라고 한다. 다층 퍼셉트론(multilayer perceptron, MLP)은 입력층, 은닉층, 결합 가중치, 출력층으로 구성된다. 입력층은 특징 벡터가 담기는 곳이다. 은닉층은 특징을 직접 학습하는 곳이다. 결합 가중치는 노드 간의 연결에서 입력의 영향력을 나타내는 역할을 한다. 출력층은 모델의 예측결과가 출력되는 층이다. 2. 층수와 층을 이루는 노드 수 층수와 층을 이루는 노드 수는 신경망의 성능을 결정짓는다. 일반적을로 모델의 정화도를 높이려면 층수와 층을 이루는 노드 수를 늘리면 된다. 하지만 이것들을 과도하게 늘리면, 모델이 학습 데이터에 지나치게 부합해버리는 과적합(overfit)을 일으키고 계산 비용도 많이 든다... chapter 2 딥러닝과 신경망 - 1절 퍼셉트론 1. 퍼셉트론의 개념 퍼셉트론이란 뉴런이 하나뿐인 신경망이다. 퍼셉트론(perceptron)은 가중합(weighted sum)과 스텝 함수(step function)으로 구성되어 있다. 가중합은 선형 결합(linear combination)이라고도 부르며 각 가중치를 곱한 입력값의 합에 편향을 더한 값으로 정의된다. 가중합은 직선을 만들어내며 편향이 직선의 y절편 역할을 한다. 스텝 함수는 출력 값들을 목적에 맞는 값으로 만들어 준다. 2. 퍼셉트론의 학습 과정 퍼셉트론은 실수를 통해 배우는 시행착오 전략으로 학습한다. 퍼셉트론은 뉴런이 가중합과 스텝 함수를 통해 예측값을 결정하고, 이를 실제 레이블과 비교해 오차를 계산하고, 오차를 줄이는 방향으로 가중치를 조절하는 방식으로 학습한다. 학습이 완료되면 .. chapter 1 인공지능 딥러닝의 이해 - 2절 딥러닝 맛보기 - 5항 머신러닝 방식의 신경망 함수 생성과 사용 머신러닝 방식으로 함수를 정의해 보겠다. 머신러닝에서는 여러 개의 데이터들과 그에 대응되는 답들을 통해 규칙을 만든다. 이번 실습에서는 아래와 같은 데이터 집합으로 모델을 만들어 보겠다. x -1 0 1 2 3 4 y -2 1 4 7 10 13 우리는 위의 표에 나와있는 데이터 셋을 보고 x와 y의 관계가 y = 3x + 1 이라는 것을 어림짐작 할 수 있다. 따라서 x가 10일 때의 값을 예측해보라 한다면, 31이라고 대답 할 것이다. 위의 모델도 마찬가지이다. 모델은 데이터와 답을 통애 학습하여, x가 10일 때의 값을 31과 근사하게 예측한다. 하지만 실행 결과 예측 값이 약 4.17로 우리가 기대한 값인 31과는 매우 차이가 큰 것을 알 수 있다. 그 이유는 학습이 충분하지 않기 때문이다. 코드의.. chapter 1 인공지능 딥러닝의 이해 - 2절 딥러닝 맛보기 - 4항 기존 방식의 함수 정의와 사용 고전적인 프로그래밍 방식으로 함수를 정의해 보겠다. 고전적인 프로그래밍에서는 정해진 규칙을 통해 함수를 정의한다. 이번 실습에서는 아래와 같은 규칙으로 함수를 정의해 보겠다. f(x) = 3x + 1 (x는 실수) f(x)에 10을 대입하면 위의 식에 따라 31이 나와야 한다. 실행 결과 실제로 31이 나온 것을 확인할 수 있다. chapter 1 인공지능 딥러닝의 이해 - 2절 딥러닝 맛보기 - 2항 머신러닝은 무엇일까요? 머신러닝에서는 기계가 스스로 데이터와 답을 통해 규칙을 만든다. 고전적인 프로그래밍은 규칙을 통해 함수를 정의한다. 그리고 값을 함수에 입력하면, 규칙에 맞는 걸과 값이 나온다. 즉, 규칙과 입력 값을 통해 출력 값을 도출하는 방식이다. 반면에, 머신러닝에서는 데이터와 답을 입력하면, 그 결과로 규칙이 도출된다. 여기서 답은 라벨이라고 부른다. 그리고 머신러닝을 구현하는 인공 신경망 함수를 모델이라고 부른다. 규칙을 만들어낸 모델은 데이터를 입력했을 때, 만든 규칙을 이용해 답을 예측한다. chapter 1 인공지능 딥러닝의 이해 - 2절 딥러닝 맛보기 - 1항 Hello 딥러닝 인공 신경망은 작동 규칙을 스스로 만들어낸다. 기존 프로그래밍에서는 명확한 규칙을 가진 함수를 정의하면서 프로그래밍 한다. 그러나 인공 신경망을 이용한 프로그래밍에서는 입력 값들과 출력 값들의 관계를 기반으로 인공 신경망 함수를 만든다. 그리고 이 인공 신경망 함수는 학습을 거치며 입력 값과 출력 값 간의 관계를 기반으로 만들어진 규칙을 스스로 만들어낸다. 따라서 우리는 우리가 명확한 규칙을 설명하기 힘든 작업을 머신러닝(machine learning, ML)을 통해 기계에게 시킬 수 있다. chapter 1 인공지능 딥러닝의 이해 - 1절 인공 신경망의 이해 - 3항 인공 신경 살펴보기 1. 인공 신경의 구조 인공 신경망은 인공 신경으로 구성되어 있다. 그리고 인공 신경은 여러 개의 입력부와 하나의 처리부, 하나의 출력부로 이루어져 있다. 2. 인공 신경의 데이터 처리 방식 인공 신경은 세 가지 단계를 거쳐 데이터를 처리한다. 1. 각각의 입력 값이 가중치에 의해 커지거나 작아진다. 입력값마다 각각의 가중치(weight)를 적용해 입력값을 조정한다. 입력값이 작더라도 가중치가 크면 값이 커지고, 입력값이 크더라도 가중치가 작다면 값이 작아진다. 가중치는 강도(strength)라고도 불린다. 2. 모든 입력 신호들이 더해진다. 가중치에 의해 곱해진 입력 값들이 하나의 값으로 더해진다. 그리고 보정 값이 추가적으로 더해진다. 이 보정 값은 편향(bias)라고 불린다. 3. 신호를 활성화한다.. 이전 1 2 3 4 다음