intTypePromotion=3

Mạng thần kinh nhân tạo cho phân lớp màu sắc part 1

Chia sẻ: Asg Ahsva | Ngày: | Loại File: PDF | Số trang:11

0
57
lượt xem
6
download

Mạng thần kinh nhân tạo cho phân lớp màu sắc part 1

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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....

Chủ đề:
Lưu

Nội dung Text: Mạng thần kinh nhân tạo cho phân lớp màu sắc part 1

  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 ch­a ®¹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 ch­a 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
  2. 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
  3. ®­î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
  4. 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 ch­a ®­î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
  5. 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
  6. H×nh 12.4 C¸c phÇn tö tÝnh to¸n cña mét hÖ thèng thÇn kinh. 260
  7. 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
  8. 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 < 
  9. #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
  10. 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
  11. gotoxy(1,4); else gotoxy(1,5); printf("%d %f", d[i],y); if((i==N)&&(sum
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản