본문내용
0001
100000000001
100000000001
100000000001
0000000100
110000001100
110000011000
110000110000
110001100000
110011000000
111111000000
110011000000
110001100000
110000110000
110000011000
110000001100
110000000110
0000000010
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
111111111111
000000000000
0000000001
◈ "abc.tes" 파일 내용
문자 인식을 위한 실험 데이터 파일인 "abc.tes"는 인식을 위한 영문자 10개와 실험 데이터 수가 저장되어 있다.
10 실험 데이터 수
111111111110 학습 인식을 위한 영문자 10개 (A, B, C, D, E, F, H, I, K L)
100000000001
100000000001
100000000001
100000000001
111111111110
100000000001
100000000001
100000000001
100000000001
100000000001
111111111110
000001100000
000110011000
001100001100
100000000001
100000000001
100000000001
111111111111
100000000001
100000000001
100000000001
100000000001
100000000001
000000000000
011111111110
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
011111111110
000000000000
000111111000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000111111000
001111111110
010000000001
010000000000
010000000000
010000000000
010000000000
010000000000
010000000000
010000000000
010000000001
001111111110
000000000000
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
100000000000
100000000000
100000000000
100000000000
100000000000
100000000000
100000000001
100000000001
100000000001
100000000001
100000000001
111111111111
111111111111
100000000001
100000000001
100000000001
100000000001
100000000001
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
000000000000
110000001100
110000011000
110000110000
110001100000
110011000000
111111000000
110011000000
110001100000
110000110000
110000011000
110000001100
110000000110
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
111111111111
000000000000
◈ 실험 내용 및 결과
최초 프로그램의 정확한 구현을 확인하기 위해, 8X8의 영문자 5개를 학습, 인식하게 하였다. 그 결과 학습에 대해 정확하게 인식 결과를 표현하였으며, 설정한 오차율 0.1에 근접하여 인식하였다.
본래의 목적을 위해 학습 데이터와 인식 데이터의 영문자 정보를 모두 12X12로 바꾸고 5개에서 10개로 영문자의 학습 패턴 수를 늘렸다. 또한, 입력층의 뉴런수를 144로, 은닉층의 뉴런수를 70으로, 출력층의 뉴런수를 10으로, 학습 패턴 수를 10으로 하여 파일에 저장한 후 다시 실험을 시작하였다.
최초 30000번 순환하여 학습하였을 때는 오차율이 약 15.65로 프로그램이 제대로 학습패턴에 대한 인식을 하지 못하였다. 그리하여 MAX_LOOP (최대 순환)을 100000번과 500000번, 1000000번으로 설정하여 실험한 결과 최대 오차율이 약 9.93이었으며, 인식은 10개 중 절반 정도 밖에 인식하지 못하였다. 그에 따라 은닉층 뉴런수를 조정, 70~90 사이에서 은닉층 뉴런수를 조절하였지만, 학습 패턴에 대한 인식은 제대로 수행되지 못하였다.
0과 1에 대한 영문자의 학습 인식이라는 생각에, 영문자가 나타내는 1을 0에 비해 상대적으로 줄인 후, 은닉층 뉴런수를 144의 절반인 72로 맞추어 다시 실험을 시작하였다. 그 결과 200000번 순환 중 오차율 약 0.12로 학습에 대한 정확한 인식을 확인하였다. 아래 그 결과가 나와 있다.
프로그램 상에서 학습에 대한 인식은 입력층 뉴런수와 은닉층 뉴런수, 그리고 데이터 학습 패턴 수에 대해서도 많은 영향을 미치며, 영문자의 0, 1과 같이 학습 데이터의 패턴의 복잡함에 따라 학습에 대한 오차율과 시간이 상대적으로 높고 오래 걸린 다는 것을 알 수 있었다.
◈ 12X12 영문자 10개에 대한 학습 인식 결과
100000000001
100000000001
100000000001
0000000100
110000001100
110000011000
110000110000
110001100000
110011000000
111111000000
110011000000
110001100000
110000110000
110000011000
110000001100
110000000110
0000000010
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
111111111111
000000000000
0000000001
◈ "abc.tes" 파일 내용
문자 인식을 위한 실험 데이터 파일인 "abc.tes"는 인식을 위한 영문자 10개와 실험 데이터 수가 저장되어 있다.
10 실험 데이터 수
111111111110 학습 인식을 위한 영문자 10개 (A, B, C, D, E, F, H, I, K L)
100000000001
100000000001
100000000001
100000000001
111111111110
100000000001
100000000001
100000000001
100000000001
100000000001
111111111110
000001100000
000110011000
001100001100
100000000001
100000000001
100000000001
111111111111
100000000001
100000000001
100000000001
100000000001
100000000001
000000000000
011111111110
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
001000000001
011111111110
000000000000
000111111000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000001100000
000111111000
001111111110
010000000001
010000000000
010000000000
010000000000
010000000000
010000000000
010000000000
010000000000
010000000001
001111111110
000000000000
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
100000000000
100000000000
100000000000
100000000000
100000000000
100000000000
100000000001
100000000001
100000000001
100000000001
100000000001
111111111111
111111111111
100000000001
100000000001
100000000001
100000000001
100000000001
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
100000000000
100000000000
100000000000
100000000000
111111111111
000000000000
110000001100
110000011000
110000110000
110001100000
110011000000
111111000000
110011000000
110001100000
110000110000
110000011000
110000001100
110000000110
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
110000000000
111111111111
000000000000
◈ 실험 내용 및 결과
최초 프로그램의 정확한 구현을 확인하기 위해, 8X8의 영문자 5개를 학습, 인식하게 하였다. 그 결과 학습에 대해 정확하게 인식 결과를 표현하였으며, 설정한 오차율 0.1에 근접하여 인식하였다.
본래의 목적을 위해 학습 데이터와 인식 데이터의 영문자 정보를 모두 12X12로 바꾸고 5개에서 10개로 영문자의 학습 패턴 수를 늘렸다. 또한, 입력층의 뉴런수를 144로, 은닉층의 뉴런수를 70으로, 출력층의 뉴런수를 10으로, 학습 패턴 수를 10으로 하여 파일에 저장한 후 다시 실험을 시작하였다.
최초 30000번 순환하여 학습하였을 때는 오차율이 약 15.65로 프로그램이 제대로 학습패턴에 대한 인식을 하지 못하였다. 그리하여 MAX_LOOP (최대 순환)을 100000번과 500000번, 1000000번으로 설정하여 실험한 결과 최대 오차율이 약 9.93이었으며, 인식은 10개 중 절반 정도 밖에 인식하지 못하였다. 그에 따라 은닉층 뉴런수를 조정, 70~90 사이에서 은닉층 뉴런수를 조절하였지만, 학습 패턴에 대한 인식은 제대로 수행되지 못하였다.
0과 1에 대한 영문자의 학습 인식이라는 생각에, 영문자가 나타내는 1을 0에 비해 상대적으로 줄인 후, 은닉층 뉴런수를 144의 절반인 72로 맞추어 다시 실험을 시작하였다. 그 결과 200000번 순환 중 오차율 약 0.12로 학습에 대한 정확한 인식을 확인하였다. 아래 그 결과가 나와 있다.
프로그램 상에서 학습에 대한 인식은 입력층 뉴런수와 은닉층 뉴런수, 그리고 데이터 학습 패턴 수에 대해서도 많은 영향을 미치며, 영문자의 0, 1과 같이 학습 데이터의 패턴의 복잡함에 따라 학습에 대한 오차율과 시간이 상대적으로 높고 오래 걸린 다는 것을 알 수 있었다.
◈ 12X12 영문자 10개에 대한 학습 인식 결과
소개글