■ 인공 신경망이란?
- 인간의 두뇌와 신경 시스템을 닮은 정보처리소자
- 연결주의 기법 - 뉴런들을 연결하여 문제해결 모델을 만듬
-- 출처 : http://ipcp.edunet4u.net/~teacher07/bio1/biopic3/%EB%89%B4%EB%9F%B0.gif
- 뉴런 : 신경계의 기능적 최소단위
- 세포체 : 일정기간 동안 들어온 자극은 세포체내에 가중되고 임계치 보다 크면 뉴런을 활성
- 수상돌기 : 인접 뉴런들로부터 정보를 받아들이는 통로 역할
- 축색돌기 : 정보를 전달하기 위한 통로
- 시넵스 : 전달되는 신호의 크기를 조절
■ 인공뉴런의 구조
- 인공뉴런의 구조
-- X1부터 Xn까지 입력 값에 각각 W1부터 Wn까지의 가중치를 곱하고 그 모든 합이 변형함수를 통해
임계치가 초과되면 출력값이 발생하게 됨
- 여러가지 변형함수
- 시그모이드 함수 (c)
- 하드리미터 함수 (a)
■ 다층 인공 신경망
- 하나의 인공 신경망
-- 출처 : http://www.aistudy.co.kr/neural/MLP_kim.htm
-- 각각의 작은 원은 perceptron(인공인지체)를 의미함
- 신경회로망이 커지고 복잡해 질수록, 더 나은 기능 수행
- 다층 인공 신경망 : 입력층과 출력층 사이에 새로운 층 추가
-- 은닉층(hidden layer) 또는 중간층(internal layer)
■ 인공 신경망에서의 학습과정
- 1. 입력 값을 이용하여 인공 뉴런의 출력 값을 계산
- 2. 인공 뉴런이 계산한 출력 값과 사용자가 기대하는 출력 값을 비교
- 3. 기대하는 출력 값을 생성할 수 있도록 가중치 조절
■ 인공 신경망의 장단점
- 활용분야 : 패턴인식, 학습, 분류, 일반화, 추상화, 불완전하고 잡음이 포함된 입력을 이용하는 시스템 등
- 장점
-- 고장 허용성 : 전체 인공 신경망에 영향을 미치지 않음
-- 일반화 : 불완전한 입력정보를 가지고도 적정한 결과 생성
-- 적응성 : 새로운 환경에서 학습 수행 가능
- 단점
-- 설명기능 약함
-- 학습시키는데 많은 데이터와 시간이 필요
-- 병렬처리가 가능한 하드웨어 비용이 비쌈
■ 인공 신경망 예제
- 하나의 인공뉴런이 OR연산자를 학습하는 과정
<End>
- 인간의 두뇌와 신경 시스템을 닮은 정보처리소자
- 연결주의 기법 - 뉴런들을 연결하여 문제해결 모델을 만듬
-- 출처 : http://ipcp.edunet4u.net/~teacher07/bio1/biopic3/%EB%89%B4%EB%9F%B0.gif
- 뉴런 : 신경계의 기능적 최소단위
- 세포체 : 일정기간 동안 들어온 자극은 세포체내에 가중되고 임계치 보다 크면 뉴런을 활성
- 수상돌기 : 인접 뉴런들로부터 정보를 받아들이는 통로 역할
- 축색돌기 : 정보를 전달하기 위한 통로
- 시넵스 : 전달되는 신호의 크기를 조절
■ 인공뉴런의 구조
- 인공뉴런의 구조
-- X1부터 Xn까지 입력 값에 각각 W1부터 Wn까지의 가중치를 곱하고 그 모든 합이 변형함수를 통해
임계치가 초과되면 출력값이 발생하게 됨
- 여러가지 변형함수
- 시그모이드 함수 (c)
예) 시그모이드 변형함수를 갖는 인공뉴런의 출력값 계산 |
예) 하드리미터 변형함수를 갖는 인공뉴런의 출력값 계산 중간값 Y의 값이 특정값보다 작으면 -1, 그 값보다 크면 1로 출력 결정 |
■ 다층 인공 신경망
- 하나의 인공 신경망
-- 출처 : http://www.aistudy.co.kr/neural/MLP_kim.htm
-- 각각의 작은 원은 perceptron(인공인지체)를 의미함
- 신경회로망이 커지고 복잡해 질수록, 더 나은 기능 수행
- 다층 인공 신경망 : 입력층과 출력층 사이에 새로운 층 추가
-- 은닉층(hidden layer) 또는 중간층(internal layer)
■ 인공 신경망에서의 학습과정
- 1. 입력 값을 이용하여 인공 뉴런의 출력 값을 계산
- 2. 인공 뉴런이 계산한 출력 값과 사용자가 기대하는 출력 값을 비교
- 3. 기대하는 출력 값을 생성할 수 있도록 가중치 조절
■ 인공 신경망의 장단점
- 활용분야 : 패턴인식, 학습, 분류, 일반화, 추상화, 불완전하고 잡음이 포함된 입력을 이용하는 시스템 등
- 장점
-- 고장 허용성 : 전체 인공 신경망에 영향을 미치지 않음
-- 일반화 : 불완전한 입력정보를 가지고도 적정한 결과 생성
-- 적응성 : 새로운 환경에서 학습 수행 가능
- 단점
-- 설명기능 약함
-- 학습시키는데 많은 데이터와 시간이 필요
-- 병렬처리가 가능한 하드웨어 비용이 비쌈
■ 인공 신경망 예제
- 하나의 인공뉴런이 OR연산자를 학습하는 과정
|
1. 가중치 W의 초기값 이용 결과값 Y 생성함 Y = ( X1 * W1 ) + ( X2 * W2 ) = ( 0 * 0.1 ) + ( 0 * 0.3 ) = 0 2. Y와 F가 같으면 완료하고 다르면, 차이(d) = F - Y 이용함 새로운 가중치 Wn = Wo + ( a * d * X ) 3. F와 Y가 같을 때까지 반복함 4. 임계치는 0.5 사용 (5번에서 사용됨) 5. 새로운 입력 값을 이용 다시 Y생성함 ( ( X1 * W1 ) + ( X2 * W2 ) ) > 0.5 이면 Y = 1 ( ( X1 * W1 ) + ( X2 * W2 ) ) ≤ 0.5 이면 Y = 0 6. F와 같은 Y를 생성할 수 있는 W를 찾을 때까지 반복함 |
Step | X1 | X2 | a | 초기값 | d | 목표출력값(F) | |||
W1 | W2 | Y | W1 | W2 | |||||
1 | 0 | 0 | 0 | 0.1 | 0.3 | 0 | 0.0 | 0.1 | 0.3 |
0 | 1 | 1 | 0.1 | 0.3 | 0 | 1.0 | 0.1 | 0.5 | |
1 | 0 | 1 | 0.1 | 0.5 | 0 | 1.0 | 0.3 | 0.5 | |
1 | 1 | 1 | 0.3 | 0.5 | 1 | 0.0 | 0.3 | 0.5 | |
2 | 0 | 0 | 0 | 0.3 | 0.5 | 0 | 0.0 | 0.3 | 0.5 |
0 | 1 | 1 | 0.3 | 0.5 | 0 | 1.0 | 0.3 | 0.7 | |
1 | 0 | 1 | 0.3 | 0.7 | 0 | 1.0 | 0.5 | 0.7 | |
1 | 1 | 1 | 0.5 | 0.7 | 1 | 0.0 | 0.5 | 0.7 | |
3 | 0 | 0 | 0 | 0.5 | 0.7 | 0 | 0.0 | 0.5 | 0.7 |
0 | 1 | 1 | 0.5 | 0.7 | 1 | 0.0 | 0.5 | 0.7 | |
1 | 0 | 1 | 0.5 | 0.7 | 0 | 1.0 | 0.7 | 0.7 | |
1 | 1 | 1 | 0.7 | 0.7 | 1 | 0.0 | 0.7 | 0.7 | |
4 | 0 | 0 | 0 | 0.7 | 0.7 | 0 | 0.0 | 0.7 | 0.7 |
0 | 1 | 1 | 0.7 | 0.7 | 1 | 0.0 | 0.7 | 0.7 | |
1 | 0 | 1 | 0.7 | 0.7 | 1 | 0.0 | 0.7 | 0.7 | |
1 | 1 | 1 | 0.7 | 0.7 | 1 | 0.0 | 0.7 | 0.7 |
<End>
'Study > Artificial Intelligence' 카테고리의 다른 글
Alpha-Beta pruning (0) | 2010.09.29 |
---|---|
Turing Test VS Eliza (0) | 2010.08.16 |
Artificial Intelligence: Engineering VS Science ? (0) | 2010.08.16 |
유전 알고리즘(Genetic Algorithm) (1) | 2009.07.01 |
AI 졸업고사 단순정리 (2) | 2009.03.26 |