Mạng thần kinh nhân tạo cho phân lớp màu sắc part 1
lượt xem 8
download
hỉ dẫn Không nghi ngờ gì nữa, con người là cách tốt nhất để phân loại màu sắc. Tuy nhiên, các ứng dụng đòi hỏi sự phân loại màu trực tuyến và sửa lại tín hiệu sắc màu một cách có lựa chọn như trong tín hiệu truyền hình màu, thay thế cho sự phân lớp của con người là cần phải có. May mắn thay, một nhóm các kiểu phân loại được mô hình hoá theo kiểu trí tuệ sinh vật (hệ thống thần kinh nhân tạo) đã được phát triển và nghiên cứu trong một thời gian dài....
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Mạng thần kinh nhân tạo cho phân lớp màu sắc part 1
- Ch¬ng 12 m¹ng thÇn kinh nh©n t¹o cho ph©n líp mµu s¾c 12.1 ChØ dÉn Kh«ng nghi ngê g× n÷a, con ngêi lµ c¸ch tèt nhÊt ®Ó ph©n lo¹i mµu s¾c. Tuy nhiªn, c¸c øng dông ®ßi hái sù ph©n lo¹i mµu trùc tuyÕn vµ söa l¹i tÝn hiÖu s¾c mµu mét c¸ch cã lùa chän nh trong tÝn hiÖu truyÒn h×nh mµu, thay thÕ cho sù ph©n líp cña con ngêi lµ cÇn ph¶i cã. May m¾n thay, mét nhãm c¸c kiÓu ph©n lo¹i ®îc m« h×nh ho¸ theo kiÓu trÝ tuÖ sinh vËt (hÖ thèng thÇn kinh nh©n t¹o) ®· ®îc ph¸t triÓn vµ nghiªn cøu trong mét thêi gian dµi. Môc tiªu cña c¸c nghiªn cøu nµy lµ ®¹t ®îc tíi møc gièng nh con ngêi. Chóng ta cha ®¹t ®îc môc tiªu nµy. Sù th¸ch thøc lµ chóng ta ph¶i hiÓu ®îc b»ng c¸ch nµo mµ mét lo¹t c¸c t¸c ®éng thÇn kinh ®em l¹i cho chóng ta kh¶ n¨ng nh×n, nghe, c¶m gi¸c, chuyÓn ®éng... MÆc dï chóng ta ®· cã nh÷ng hiÓu biÕt ®óng ®¾n cÊu t¹o cña tæ chøc bé n·o con ngêi, chóng ta vÉn kh«ng hiÓu mét c¸ch ®Çy ®ñ b»ng c¸ch nµo mµ con ngêi cã thÓ cã mét lo¹t c¸c chøc n¨ng nh vËy. Kh¶ n¨ng häc hái vµ thÝch nghi cña con ngêi vÉn cßn lµ mét ®iÒu bÝ Èn. Mét trÝch dÉn rÊt ®¸ng quan t©m, "T«i ®· ®Ó l¹i c¸c dÊu hiÖu nh mét b»ng chøng vÒ sù tån t¹i cña t«i, c¸i nµo trong sè c¸c dÊu hiÖu nµy b¹n ph¶n ®èi? T«i ®· t¹o ra con ngêi, t«i ®· d¹y [lËp tr×nh] cho hä cã kh¶ n¨ng nhËn biÕt..." (Kinh Coran, Suret Al-Rahman). Con ngêi nhËn ra hä cã kh¶ n¨ng ph¸t minh ra c¸c c«ng cô ngay tõ khi hä míi ®îc t¹o ra. PhÇn lín c¸c s¸ng t¹o cña con ngêi ®Òu dùa trªn ham muèn t×m hiÓu trong lÜnh vùc vËt lý. B»ng tÊt c¶ c¸c kh¸m ph¸, con ngêi l¹i quay trë vÒ ®Ó t×m hiÓu chÝnh b¶n th©n m×nh. Cïng víi sù ra ®êi cña phÇn mÒm, tù ®éng ho¸, pháng sinh häc ta ®· cã thÓ m« pháng mét sè chøc n¨ng cña con ngêi qua c¸c phÇn cøng vµ phÇn mÒm m« pháng. Gièng nh khi b¾t ®Çu, hÖ thèng thÇn kinh nh©n t¹o vÉn cha m« pháng ®îc d¹ng thøc con ngêi; tuy nhiªn, c¸c cÊu tróc nµy cã rÊt nhiÒu øng dông h÷u Ých. Mét trong nh÷ng øng dông sÏ tr×nh bµy ë phÇn díi ®©y lµ ph©n líp mµu s¾c. Trong ch¬ng nµy chóng ta sÏ xem xÐt mét lo¹t c¸c m« h×nh thÇn kinh nh©n t¹o, c¸ch thøc nhËn thøc cña chóng, vµ hiÖu qu¶ trong ph©n líp mµu. 255
- 12.2 HÖ thèng thÇn kinh sinh vËt M¾t c¶m nhËn ¸nh s¸ng xung quanh chóng ta vµ chuyÓn chóng thµnh c¸c xung ®iÖn, sau ®ã ®a vÒ bé nhí qua c¸c d©y thÇn kinh. T¹i phÝa sau cña m¾t, mét líi d©y thÇn kinh tõ gi¸c m¹c t¹o thµnh c¸c d©y thÇn kinh c¶m quang. Hai líi d©y thÇn kinh c¶m quang gÆp nhau t¹i mét miÒn cã tªn lµ giao thoa thÞ gi¸c (optic chiasm). T¹i miÒn nµy hai d©y t¹o thµnh mét líi, vµ ®îc chia lµm hai vïng c¶m quang ®i tíi bªn tr¸i vµ bªn ph¶i cña n·o. TÊt c¶ c¸c miÒn nµy mang tÝn hiÖu tõ hai m¾t, vµ n·o tæng hîp ®îc h×nh ¶nh thùc sù. Vïng cña n·o cho c¸c ®¸p øng cña h×nh ¶nh gäi lµ vá n·o thÞ gi¸c (H×nh 12.1). NÕu mçi vïng cña n·o nhËn ®îc hai ¶nh cña vËt thÓ, mçi ¶nh lÊy tõ mét m¾t víi mét gãc nh×n kh¸c nhau nhá th× kÕt qu¶ ta sÏ nhËn ®îc mét h×nh ¶nh ba chiÒu hay cßn gäi lµ h×nh ¶nh næi. T¹i n·o, mét sè khæng lå c¸c liªn l¹c cña c¸c tÕ bµo thÇn kinh t¹o ra xö lý th«ng tin. H×nh 12.1 C¸c ®êng thÞ gi¸c cña bé n·o. H×nh 12.2 lµ mét s¬ ®å ®¬n gi¶n ho¸ cña tÕ bµo thÇn kinh. Nã bao gåm mét tÕ bµo (soma) víi d©y thÇn kinh vµo (dendrites) vµ d©y thÇn kinh ra (axons). C¸c d©y thÇn kinh vµo nhËn c¸c tÝn hiÖu kÝch thÝch hoÆc c¸c tÝn hiÖu kiÒm chÕ. C¸c tÝn hiÖu kÝch thÝch lµm t¨ng vµ c¸c tÝn hiÖu kiÒm chÕ lµm chËm kh¶ n¨ng ph¸t tÝn hiÖu cña thÇn kinh. C¸c d©y thÇn kinh ra ®a tÝn hiÖu ®Õn mét tÕ bµo kh¸c. Th«ng tin ®îc chuyÓn qua c¸c h×nh hµnh cuèi khíp thÇn kinh (synaptic-end bulbs) vµ nhËn bëi d©y thÇn kinh vµo th«ng qua vïng chuyÓn tiÕp. H×nh hµnh cuèi khíp thÇn kinh vµ vïng chuyÓn tiÕp 256
- ®îc chia ra b»ng mét lç hë vµo kho¶ng mét phÇn triÖu inch, vµ chuyÓn tiÕp tÝn hiÖu qua lç hæng nµy bëi c¬ chÕ ho¸ ®iÖn (h×nh 12.3). PhÇn cuèi hµnh vµ miÒn chuyÓn tiÕp ®îc gäi lµ khíp thÇn kinh (synapse). TÝn hiÖu ®i trong d©y thÇn kinh vµo vµ d©y thÇn kinh ra nh mét dßng ®iÖn. Cã rÊt nhiÒu kiÓu d©y thÇn kinh trong n·o vµ mét sè lín c¸c tÕ bµo tr¹ng th¸i vµ chøc n¨ng. Mét sè h¹n chÕ c¸c xung mµ cã kh¶ n¨ng lµm qu¸ t¶i m¹ch c¶m biÕn. Mét sè ®a tin tøc tæng hîp ®Õn bÒ mÆt n·o, mét sè kh¸c nhËn tÝn hiÖu ®a vµo. C¸c hµnh ë khíp thÇn kinh chøa c¸c tói nhá bÐ gäi lµ c¸c tói khíp thÇn kinh (h×nh 12.3). Mçi tói chøa hµng ngµn c¸c ph©n tö gäi lµ chuyÓn tiÕp thÇn kinh (neurotransmitter). Khi mét tÝn hiÖu thÇn kinh ®Õn hµnh cña khíp thÇn kinh, c¸c tói hîp nhÊt víi mµng, lµm trµn c¸c chÊt chøa bªn trong vµo c¸c lç cña khíp thÇn kinh. C¸c chuyÓn tiÕp thÇn kinh g¾n chÆt víi c¸c phÇn tö tiÕp nhËn ë t©m cña tÕ bµo; lµm më c¸c tuyÕn tiÕp nhËn vµ cho phÐp c¸c ion natri ®i vµo trong t©m tÕ bµo vµ c¸c ion kali ®i ra. Dßng cña c¸c ion kÝch thÝch c¸c mµng cña t©m tÕ bµo vµ t¹o ra xung ®iÖn trong tÕ bµo trung t©m. 257
- H×nh 12.2 S¬ ®å ®¬n gi¶n ho¸ cña tÕ bµo thÇn kinh. H×nh 12.3 C¸c khíp thÇn kinh. Con ngêi cã vµo kho¶ng xÊp xØ 1011 tÕ bµo thÇn kinh, íc lîng cã kh¶ n¨ng thùc hiÖn trªn 100 tû phÐp tÝnh mét gi©y. Mét siªu m¸y tÝnh Cray X_MP, mét lo¹i m¸y tÝnh nhanh nhÊt hiÖn nay, cã kh¶ lµm ®îc 0.8 tû phÐp tÝnh mét gi©y. Con ngêi nhanh h¬n 100 lÇn bÊt kú mét lo¹i m¸y tÝnh hiÖn ®¹i nµo, víi u ®iÓm h¬n h¼n vÒ kÝch thíc nhá gän vµ ®ßi hái Ýt h¬n h¼n n¨ng lîng. Mét tÝnh chÊt còng cÇn ph¶i nãi tíi lµ bé n·o con ngêi ®îc thiÕt kÕ ®Ó xö lý ba chiÒu. Trong khi ®ã, c¸c m¹ch tÝch hîp thêng lµ hai chiÒu, vµ víi sù tiÕn bé ngµy nay viÖc thiÕt kÕ m¹ch tÝch hîp ba chiÒu vÉn cha ®îc hoµn thiÖn hoÆc thËm chÝ còng kh«ng gÇn ®îc nh kiÓu tÝch hîp ba chiÒu cña bé n·o con ngêi. 12.3 Perceptron H×nh 12.4 giíi thiÖu c¸i mµ ngêi ta tin r»ng ®ã lµ m« h×nh thuËt to¸n häc cho mét tÕ bµo thÇn kinh ®¬n lÎ. Chó ý lµ cã N ®Çu vµo, cung cÊp gi¸ trÞ ngìng ..., vµ cho kÕt qu¶ ®i qua mét hµm phi tuyÕn. TÝn hiÖu ra cã thÓ lµ gi¸ trÞ 1 kÝch thÝch cho mét d©y thÇn kinh, hoÆc lµ 0 (-1 còng cã thÓ ®îc dïng). Hµm phi tuyÕn hay ®îc dïng lµ hµm xichma vµ hµm giíi h¹n (logic ngìng). 258
- CÊu tróc trong h×nh 12.4 gäi lµ perceptron, vµ lµ c¬ së cho mét c¸ch ph©n líp tuyÕn tÝnh mµ cã thÓ chia ra lµm hai líp t¸ch rêi nhau nh trong h×nh 12.5. TÝn hiÖu ra tõ perceptron cã thÓ viÕt díi d¹ng (12.1) y f ( ) N 1 i xi ë ®©y (12.2) i 0 Mét s¬ ®å x¸c ®Þnh c¸c träng sè {w0, w1, w2, ..., wN} vµ cã hµm f() chia thµnh hai líp A vµ B ph©n biÖt gäi lµ s¬ ®å nhËn thøc. gäi lµ gi¸ trÞ ngìng, vµ thêng n»m trong kho¶ng 0 ®Õn 1. XuÊt ph¸t tõ s¬ ®å nhËn thøc, chóng ta sÏ xem xÐt mét perceptron chØ cã hai ®Çu vµo: (12.3) 0 x 0 1 x1 x0 ký hiÖu cho ®Æc ®iÓm mµu x cña s¬ ®å mµu, x1 lµ ®Æc ®iÓm mµu y. NÕu chóng ta muèn perceptron ph©n biÖt hai mµu A vµ B, chóng ta sÏ chê ®Çu ra cho gi¸ trÞ 1 nÕu (x0,x1) thuéc vÒ mµu A, vµ 0 nÕu ®Çu vµo thuéc B. Theo c¸c gi¶ thiÕt trªn chóng ta cã thÓ viÕt: nÕu (x0, x1) A dP = 1 nÕu (x0, x1) B dP = 0 ë ®©y ký hiÖu p biÓu thÞ cho mét mÉu cña (x0, x1) vµ dP biÓu thÞ cho ®¸p øng mong muèn cho mÉu nµy. NÕu (w0, w1) ®· biÕt th× ®¸p øng ra thùc sù y cã thÓ tÝnh tõ biÓu thøc (12.1). Sai sè cho viÖc ®äc mÉu nµy cã thÓ cho bëi 1 (d p y p ) 2 (12.4) Ep 2 259
- H×nh 12.4 C¸c phÇn tö tÝnh to¸n cña mét hÖ thèng thÇn kinh. 260
- H×nh 12.5 Mét hµm ph©n chia ®¬n gi¶n cña mét líp. VÊn ®Ò cÇn gi¶i quyÕt lµ tèi thiÓu ho¸ EP ®èi víi w0 vµ w1 cho tÊt c¶ c¸c mÉu lÊy vµo (x0,x1)P. BiÓu thøc (12.1) cung cÊp sù ph©n chia chÝnh x¸c gi÷a hai líp mµu nh trong h×nh (12.5). EP lµ hµm phi tuyÕn cña c¸c biÕn w0 vµ w1 vµ v× vËy c¸c gi¶n ®å phi tuyÕn cÇn ®îc sö dông ®Ó tèi thiÓu ho¸ nã. NÕu y cho bëi hµm xichma 1 y f ( ) 1 e vµ sau ®ã nÕu lÊy vi ph©n EP theo w0 ta ®îc: E p (d p y p ) y p (1 y p ) x 0 p 0 vµ theo w1 ta ®îc : E p (d p y p ) y p (1 y p ) x1 p 1 ThuËt to¸n rót ra gi¸ trÞ cña c¸c träng sè theo c¸c bíc sau: 1.Cho c¸c träng sè (w0, w1) vµ c¸c gi¸ trÞ ngÉu nhiªn nhá. T¹i bíc lÆp thø k: 2. Cho mét gi¸ trÞ ®Çu vµo (x0, x1) vµ chän gi¸ trÞ ®Çu ra theo ý thÝch: 1 nÕu thuéc vÒ mét líp mµu vµ 0 nÕu thuéc vÒ líp mµu cßn l¹i. 3. TÝnh tÝn hiÖu ra thùc sù y. 4. TÝnh (d y ) y (1 y ) 5. TÝnh c¸c gradient E E - x 1 ] [ x 0 E 0 1 6. Thay ®æi c¸c träng sè dïng biÓu thøc : 261
- W ( k 1) W ( k ) E ( k ) Wk = [ w0 w1](k) = c¸c träng sè t¹i bíc lÆp thø k vµ lµ mét ë ®©y ph©n sè d¬ng nhá h¬n 1. 7. Cho ®Çu vµo gi¸ trÞ míi hoÆc nÕu d÷ liÖu ®· ®îc ®äc tÊt c¶, ®äc l¹i tËp c¸c gi¸ trÞ cña d÷ liÖu. Quay l¹i bíc 2 vµ lÆp l¹i cho ®Õn khi hµm träng sè tho¶ m·n, cô thÓ lµ ik 1 Wi ( k ) i= 0 ,1. Héi tô trong mét sè trêng hîp sÏ nhanh h¬n nÕu xung lîng (moment) ®îc céng thªm vµo vµ träng sè ®îc lµm gi¶m ®i bëi: W ( k 1) W ( k ) E ( k ) (E ( k ) E ( k 1) ë ®©y 0 <
- #include #include #define eta 0.8 #define alpha 0.2 void main() { unsigned int d[200]; unsigned int N,ind,iter,i; float w[2],x[2],x1[200],x2[200],net,E; float dEp[2],sum,y,theta,dEp_old[2],delta; FILE *fptr; char file_name[14]; clrscr(); N=0; iter=0; gotoxy(1,1); printf("Enter file name containing data -->"); scanf("%s", file_name); fptr=fopen(file_name,"r"); if(fptr==NULL) { printf("file %s does not exist.",file_name); exit(1); } while((fscanf(fptr,"%f %f %d ",&x1[N], &x2[N],&d[N])!=EOF)) N++; fclose(fptr); srand(1); w[0]=(float)rand()/32768.00; srand(2); w[1]=(float)rand()/32768.00; theta=0.1; i=0; sum=0.0; ind=1; 263
- gotoxy(1,10); printf("Press ESC to exit before convergence."); while(ind) { x[0]=x1[i]; x[1]=x2[i]; gotoxy(1,3); printf("Iteration # %5d ",iter); net=w[0]*x[0]+w[1]*x[1]+theta; if(net>=20) E=0.0; else E=exp(-(double)net); y=1.0/(1.0+E); delta=(d[i]-y)*y*(1.0-y); dEp[0]=x[0]*delta; dEp[1]=x[1]*delta; if(i==0) { w[0]+=eta*dEp[0]; w[1]+=eta*dEp[1]; dEp_old[0]=dEp[0]; dEp_old[1]=dEp[1]; } else { w[0]+=eta*dEp[0]+alpha*(dEp[0]-dEp_old[0]); w[1]+=eta*dEp[1]+alpha*(dEp[1]-dEp_old[1]); dEp_old[0]=dEp[0]; dEp_old[1]=dEp[1]; } sum+=fabs((double)(d[i]-y)); i++; if(i>=N) { gotoxy(1,6); printf(" Square error= %f",sum); i=0; sum=0; iter++; } if(d[i]==1) 264
- gotoxy(1,4); else gotoxy(1,5); printf("%d %f", d[i],y); if((i==N)&&(sum
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Những yếu tố tạo nên tính hiệu quả cho website.
2 p | 242 | 16
-
Mạng thần kinh nhân tạo cho phân lớp màu sắc part 2
11 p | 66 | 9
-
Các dịch vụ miễn phí tạo cảm nhận tốt hơn cho mạng xã hội
3 p | 99 | 9
-
Mạng thần kinh nhân tạo cho phân lớp màu sắc part 3
11 p | 71 | 8
-
Mạng thần kinh nhân tạo cho phân lớp màu sắc part 4
11 p | 49 | 8
-
Bài giảng Trí tuệ nhân tạo: Bài 13 - Trương Xuân Nam
19 p | 30 | 6
-
Mạng thần kinh nhân tạo cho phân lớp màu sắc part 5
11 p | 52 | 5
-
Mạng thần kinh nhân tạo cho phân lớp màu sắc part 7
7 p | 52 | 5
-
Bài giảng Trí tuệ nhân tạo: Bài 15 - Trương Xuân Nam
27 p | 20 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn