±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½²½âÁË ¾í»ýÉñ¾ÍøÂçÊÇʲô?¾í»ýÉñ¾ÍøÂçµÄ½á¹¹,¾í»ýÉñ¾ÍøÂçµÄÓ¦ÓõÈÄÚÈÝ¡£
±¾ÎÄÀ´×Ôcsdn£¬ÓÉ»ðÁú¹ûÈí¼þAnna±à¼¡¢ÍƼö¡£
|
|
Ò»£¬Ç°ÑÔ
¾í»ýÉñ¾ÍøÂ磨Constitutional Neural Networks, CNN£©ÊÇÔÚ¶à²ãÉñ¾ÍøÂçµÄ»ù´¡ÉÏ·¢Õ¹ÆðÀ´µÄÕë¶ÔͼÏñ·ÖÀàºÍʶ±ð¶øÌرðÉè¼ÆµÄÒ»ÖÖÉî¶Èѧϰ·½·¨¡£ÏȻعËһ϶à²ãÉñ¾ÍøÂç:

¶à²ãÉñ¾ÍøÂç°üÀ¨Ò»¸öÊäÈë²ãºÍÒ»¸öÊä³ö²ã£¬ÖмäÓжà¸öÒþ²Ø²ã¡£Ã¿Ò»²ãÓÐÈô¸É¸öÉñ¾Ôª£¬ÏàÁÚµÄÁ½²ãÖ®¼äµÄºóÒ»²ãµÄÿһ¸öÉñ¾Ôª¶¼·Ö±ðÓëǰһ²ãµÄÿһ¸öÉñ¾ÔªÁ¬½Ó¡£ÔÚÒ»°ãµÄʶ±ðÎÊÌâÖУ¬ÊäÈë²ã´ú±íÌØÕ÷ÏòÁ¿£¬ÊäÈë²ãµÄÿһ¸öÉñ¾Ôª´ú±íÒ»¸öÌØÕ÷Öµ¡£
ÔÚͼÏñʶ±ðÎÊÌâÖУ¬ÊäÈë²ãµÄÿһ¸öÉñ¾Ôª¿ÉÄÜ´ú±íÒ»¸öÏñËØµÄ»Ò¶ÈÖµ¡£µ«ÕâÖÖÉñ¾ÍøÂçÓÃÓÚͼÏñʶ±ðÓм¸¸öÎÊÌ⣬һÊÇûÓп¼ÂÇͼÏñµÄ¿Õ¼ä½á¹¹£¬Ê¶±ðÐÔÄÜ»áÊܵ½ÏÞÖÆ£»¶þÊÇÿÏàÁÚÁ½²ãµÄÉñ¾Ôª¶¼ÊÇÈ«ÏàÁ¬£¬²ÎÊýÌ«¶à£¬ÑµÁ·ËÙ¶ÈÊܵ½ÏÞÖÆ¡£
¶ø¾í»ýÉñ¾ÍøÂç¾Í¿ÉÒÔ½â¾öÕâЩÎÊÌâ¡£¾í»ýÉñ¾ÍøÂçʹÓÃÁËÕë¶ÔͼÏñʶ±ðµÄÌØÊâ½á¹¹£¬¿ÉÒÔ¿ìËÙѵÁ·¡£ÒòΪËٶȿ죬ʹµÃ²ÉÓöà²ãÉñ¾ÍøÂç±äµÃÈÝÒ×£¬¶ø¶à²ã½á¹¹ÔÚʶ±ð׼ȷÂÊÉÏÓֺܴóÓÅÊÆ¡£
¶þ£¬¾í»ýÉñ¾ÍøÂçµÄ½á¹¹
¾í»ýÉñ¾ÍøÂçÓÐÈý¸ö»ù±¾¸ÅÄ¾Ö²¿¸ÐÖªÓò£¨local receptive fields£©£¬¹²ÏíÈ¨ÖØ(shared
weights)ºÍ³Ø»¯£¨pooling£©¡£
¾Ö²¿¸ÐÖªÓò: ÔÚÉÏͼÖеÄÉñ¾ÍøÂçÖÐÊäÈë²ãÊÇÓÃÒ»ÁеÄÉñ¾ÔªÀ´±íʾµÄ£¬ÔÚCNNÖУ¬²»·Á½«ÊäÈë²ãµ±×ö¶þά¾ØÕóÅÅÁеÄÉñ¾Ôª¡£
Óë³£¹æÉñ¾ÍøÂçÒ»Ñù£¬ÊäÈë²ãµÄÉñ¾ÔªÐèÒªºÍÒþ²Ø²ãµÄÉñ¾ÔªÁ¬½Ó¡£µ«ÊÇÕâÀï²»Êǽ«Ã¿Ò»¸öÊäÈëÉñ¾Ôª¶¼Óëÿһ¸öÒþ²ØÉñ¾ÔªÁ¬½Ó£¬¶øÊǽö½öÔÚÒ»¸öͼÏñµÄ¾Ö²¿ÇøÓò´´½¨Á¬½Ó¡£ÒÔ´óСΪ28X28µÄͼÏñΪÀý£¬¼ÙÈçµÚÒ»¸öÒþ²Ø²ãµÄÉñ¾ÔªÓëÊäÈë²ãµÄÒ»¸ö5X5µÄÇøÓòÁ¬½Ó£¬ÈçÏÂͼËùʾ£º

Õâ¸ö5X5µÄÇøÓò¾Í½Ð×ö¾Ö²¿¸ÐÖªÓò¡£¸Ã¾Ö²¿¸ÐÖªÓòµÄ25¸öÉñ¾ÔªÓëµÚÒ»¸öÒþ²Ø²ãµÄͬһ¸öÉñ¾ÔªÁ¬½Ó£¬Ã¿¸öÁ¬½ÓÉÏÓÐÒ»¸öÈ¨ÖØ²ÎÊý£¬Òò´Ë¾Ö²¿¸ÐÖªÓò¹²ÓÐ5X5¸öÈ¨ÖØ¡£Èç¹û½«¾Ö²¿¸ÐÖªÓòÑØ×Å´Ó×óÍùÓÒ£¬´ÓÉÏÍùϵÄ˳Ðò»¬¶¯£¬¾Í»áµÃ¶ÔÓ¦Òþ²Ø²ãÖв»Í¬µÄÉñ¾Ôª£¬ÈçÏÂͼ·Ö±ðչʾÁ˵ÚÒ»¸öÒþ²Ø²ãµÄǰÁ½¸öÉñ¾ÔªÓëÊäÈë²ãµÄÁ¬½ÓÇé¿ö¡£


Èç¹ûÊäÈë²ãÊdzߴçΪ28X28µÄͼÏñ£¬¾Ö²¿¸ÐÖªÓò´óСΪ5X5,ÄÇôµÃµ½µÄµÚÒ»¸öÒþ²Ø²ãµÄ´óСÊÇ24X24¡£
¹²ÏíÈ¨ÖØ£º ÉÏÃæµÃµ½µÄµÚÒ»Òþ²Ø²ãÖеÄ24X24¸öÉñ¾Ôª¶¼Ê¹ÓÃͬÑùµÄ5X5¸öÈ¨ÖØ¡£µÚ¸öÒþ²Ø²ãÖеڸöÉñ¾ÔªµÄÊä³öΪ£º
ÕâÀïÊÇÉñ¾ÔªµÄ¼¤Àøº¯Êý£¨¿ÉÒÔÊÇsigmoidº¯Êý¡¢thanhº¯Êý»òÕßrectified linear
unitº¯ÊýµÈ£©¡£ÊǸøÐÖªÓòÁ¬½ÓµÄ¹²ÏíÆ«²î¡£ÊǸö5X5¹²ÏíÈ¨ÖØ¾ØÕó¡£Òò´ËÕâÀïÓÐ26¸ö²ÎÊý¡£ ´ú±íÔÚÊäÈë²ãµÄ´¦µÄÊäÈ뼤Àø¡£
Õâ¾ÍÒâζ×ŵÚÒ»¸öÒþ²Ø²ãÖеÄËùÓÐÉñ¾Ôª¶¼¼ì²âÔÚͼÏñµÄ²»Í¬Î»Öô¦µÄͬһ¸öÌØÕ÷¡£Òò´ËÒ²½«´ÓÊäÈë²ãµ½Òþ²Ø²ãµÄÕâÖÖÓ³Éä³ÆÎªÌØÕ÷Ó³Éä¡£¸ÃÌØÕ÷Ó³ÉäµÄÈ¨ÖØ³ÆÎª¹²ÏíÈ¨ÖØ£¬ÆäÆ«²î³ÆÎª¹²ÏíÆ«²î¡£
ΪÁË×öͼÏñʶ±ð£¬Í¨³£ÐèÒª²»Ö¹Ò»¸öµÄÌØÕ÷Ó³É䣬Òò´ËÒ»¸öÍêÕûµÄ¾í»ý²ã°üº¬Èô¸É¸ö²»Í¬µÄÌØÕ÷Ó³Éä¡£ÏÂͼÖÐÊǸöÈý¸öÌØÕ÷Ó³ÉäµÄÀý×Ó¡£

ÔÚʵ¼ÊÓ¦ÓÃÖÐCNN¿ÉÄÜʹÓøü¶àµÄÉõÖÁ¼¸Ê®¸öÌØÕ÷Ó³Éä¡£ÒÔMNISTÊÖдÊý×Öʶ±ðΪÀý£¬Ñ§Ï°µ½µÄÒ»Ð©ÌØÕ÷ÈçÏ£º

Õâ20·ùͼÏñ·Ö±ð¶ÔÓ¦20¸ö²»Í¬µÄÌØÕ÷Ó³É䣨»ò³Æ×÷filters, kernels£©¡£Ã¿Ò»¸öÌØÕ÷Ó³ÉäÓÉ5X5µÄͼÏñ±íʾ£¬´ú±íÁ˾ֲ¿¸ÐÖªÓòÖеÄ5X5¸öÈ¨ÖØ¡£ÁÁµÄÏñËØµã´ú±íСµÄÈ¨ÖØ£¬ÓëÖ®¶ÔÓ¦µÄͼÏñÖеÄÏñËØ²úÉúµÄÓ°ÏìҪСһЩ¡£°µµÄÏñËØµã´ú±íµÄ´óµÄÈ¨ÖØ£¬Ò²Òâζ×ŶÔÓ¦µÄͼÏñÖеÄÏñËØµÄÓ°ÏìÒª´óһЩ¡£¿ÉÒÔ¿´³öÕâÐ©ÌØÕ÷Ó³Éä·´Ó¦ÁËÄ³Ð©ÌØÊâµÄ¿Õ¼ä½á¹¹£¬Òò´ËCNNѧϰµ½ÁËһЩÓë¿Õ¼ä½á¹¹ÓйصÄÐÅÏ¢ÓÃÓÚʶ±ð¡£
³Ø»¯²ã£¨pooling layers£© ³Ø»¯²ãͨ³£½ôËæ¾í»ý²ãÖ®ºóʹÓã¬Æä×÷ÓÃÊǼò»¯¾í»ý²ãµÄÊä³ö¡£ÀýÈ磬³Ø»¯²ãÖеÄÿһ¸öÉñ¾Ôª¿ÉÄܽ«Ç°Ò»²ãµÄÒ»¸ö2X2ÇøÓòÄÚµÄÉñ¾ÔªÇóºÍ¡£¶øÁíÒ»¸ö¾³£Ê¹ÓõÄmax-pooling£¬¸Ã³Ø»¯µ¥Ôª¼òµ¥µØ½«Ò»¸ö2X2µÄÊäÈëÓòÖеÄ×î´ó¼¤ÀøÊä³ö£¬ÈçÏÂͼËùʾ£º

Èç¹û¾í»ý²ãµÄÊä³ö°üº¬24X24¸öÉñ¾Ôª£¬ÄÇôÔڳػ¯ºó¿ÉµÃµ½12X12¸öÉñ¾Ôª¡£Ã¿Ò»¸öÌØÕ÷Ó³Éäºó·Ö±ðÓÐÒ»¸ö³Ø»¯´¦Àí£¬Ç°ÃæËùÊöµÄ¾í»ý²ã³Ø»¯ºóµÄ½á¹¹Îª£º

Max-pooling²¢²»ÊÇΨһµÄ³Ø»¯·½·¨£¬ÁíÒ»Öֳػ¯·½·¨ÊÇ,¸Ã·½·¨Êǽ«¾í»ý²ã2X2ÇøÓòÖеÄÉñ¾ÔªµÄÊä³öÇ󯽷½ºÍµÄƽ·½¸ù¡£¾¡¹Üϸ½ÚÓëMax-pooling²»Ò»Ñù£¬µ«ÆäЧ¹ûÒ²ÊǼò»¯¾í»ý²ãÊä³öµÄÐÅÏ¢¡£
½«ÉÏÊö½á¹¹Á¬½ÓÔÚÒ»Æð£¬ÔÙ¼ÓÉÏÒ»¸öÊä³ö²ã£¬µÃµ½Ò»¸öÍêÕûµÄ¾í»ýÉñ¾ÍøÂç¡£ÔÚÊÖдÊý×Öʶ±ðµÄÀý×ÓÖÐÊä³ö²ãÓÐÊ®¸öÉñ¾Ôª£¬·Ö±ð¶ÔÓ¦0£¬1£¬
¡ ,9µÄÊä³ö¡£

ÍøÂçÖеÄ×îºóÒ»²ãÊÇÒ»¸öÈ«Á¬½Ó²ã£¬¼´¸Ã²ãµÄÿ¸öÉñ¾Ôª¶¼Óë×îºóÒ»¸öMax-pooling²ãµÄÿ¸öÉñ¾ÔªÁ¬½Ó¡£
Õâ¸ö½á¹¹ÕâÊÇÒ»¸öÌØÊâµÄÀý×Ó£¬Êµ¼ÊCNNÖÐÒ²¿ÉÔÚ¾í»ý²ãºÍ³Ø»¯²ãÖ®ºó¿ÉÔÙ¼ÓÉÏÒ»¸ö»ò¶à¸öÈ«Á¬½Ó²ã¡£
Èý£¬¾í»ýÉñ¾ÍøÂçµÄÓ¦ÓÃ
3.1 ÊÖдÊý×Öʶ±ð
Michael NielsenÌṩÁËÒ»¸ö¹ØÓÚÉî¶ÈѧϰºÍCNNµÄÔÚÏßµç×ÓÊ飬²¢ÇÒÌṩÁËÊÖдÊý×Öʶ±ðµÄÀý×Ó³ÌÐò£¬¿ÉÒÔÔÚGitHubÉÏÏÂÔØµ½¡£¸Ã³ÌÐòʹÓÃPythonºÍNumpy,
¿ÉÒԺܷ½±ãµØÉè¼Æ²»Í¬½á¹¹µÄCNNÓÃÓÚÊÖдÊý×Öʶ±ð£¬²¢ÇÒʹÓÃÁËÒ»¸ö½Ð×öTheanoµÄ»úÆ÷ѧϰ¿âÀ´ÊµÏÖºóÏò´«²¥Ëã·¨ºÍËæ»úÌݶÈϽµ·¨£¬ÒÔÇó½âCNNµÄ¸÷¸ö²ÎÊý¡£Theano¿ÉÒÔÔÚGPUÉÏÔËÐУ¬Òò´Ë¿É´ó´óËõ¶ÌѵÁ·¹ý³ÌËùÐèÒªµÄʱ¼ä¡£CNNµÄ´úÂëÔÚnetwork3.pyÎļþÖС£
×÷Ϊһ¸ö¿ªÊ¼µÄÀý×Ó£¬¿ÉÒÔÊÔ×Å´´½¨Ò»¸ö½ö°üº¬Ò»¸öÒþ²Ø²ãµÄÉñ¾ÍøÂ磬´úÂëÈçÏ£º
>>>
import network3
>>> from network3 import Network
>>> from network3 import ConvPoolLayer,
FullyConnectedLayer, SoftmaxLayer
>>> training_data, validation_data, test_data
= network3.load_data_shared()
>>> mini_batch_size = 10
>>> net = Network([
FullyConnectedLayer(n_in=784, n_out=100),
SoftmaxLayer(n_in=100, n_out=10)], mini_batch_size)
>>> net.SGD(training_data, 60, mini_batch_size,
0.1,
validation_data, test_data) |
¸ÃÍøÂçÓÐ784¸öÊäÈëÉñ¾Ôª£¬Òþ²Ø²ãÓÐ100¸öÉñ¾Ôª£¬Êä³ö²ãÓÐ10¸öÉñ¾Ôª¡£ÔÚ²âÊÔÊý¾ÝÉÏ´ïµ½ÁË97.80%µÄ׼ȷÂÊ¡£
Èç¹ûʹÓþí»ýÉñ¾ÍøÂç»á²»»á±ÈËüЧ¹ûºÃÄØ£¿¿ÉÒÔÊÔһϰüº¬Ò»¸ö¾í»ý²ã£¬Ò»¸ö³Ø»¯²ã£¬ºÍÒ»¸ö¶îÍâÈ«Á¬½Ó²ãµÄ½á¹¹£¬ÈçÏÂͼ

ÔÚÕâ¸ö½á¹¹ÖУ¬ÕâÑùÀí½â£º¾í»ý²ãºÍ³Ø»¯²ãѧϰÊäÈëͼÏñÖеľֲ¿¿Õ¼ä½á¹¹£¬¶øºóÃæµÄÈ«Á¬½Ó²ãµÄ×÷ÓÃÊÇÔÚÒ»¸ö¸ü¼Ó³éÏóµÄ²ã´ÎÉÏѧϰ£¬°üº¬ÁËÕû¸öͼÏñÖеĸü¶àµÄÈ«¾ÖµÄÐÅÏ¢¡£
>>>
net = Network([
ConvPoolLayer(image_shape=(mini_batch_size, 1,
28, 28),
filter_shape=(20, 1, 5, 5),
poolsize=(2, 2)),
FullyConnectedLayer(n_in=20*12*12, n_out=100),
SoftmaxLayer(n_in=100, n_out=10)], mini_batch_size)
>>> net.SGD(training_data, 60, mini_batch_size,
0.1,
validation_data, test_data) |
ÕâÖÖCNNµÄ½á¹¹´ïµ½µÄʶ±ð׼ȷÂÊΪ98.78%¡£Èç¹ûÏë½øÒ»²½Ìá¸ß׼ȷÂÊ£¬»¹¿ÉÒÔ´ÓÒÔϼ¸·½Ã濼ÂÇ£º
ÔÙÌí¼ÓÒ»¸ö»ò¶à¸ö¾í»ý-³Ø»¯²ã
ÔÙÌí¼ÓÒ»¸ö»ò¶à¸öÈ«Á¬½Ó²ã
ʹÓñðµÄ¼¤Àøº¯ÊýÌæ´úsigmoidº¯Êý¡£±ÈÈçRectifed Linear Unitsº¯Êý: Rectified
Linear Unitsº¯ÊýÏà±ÈÓÚsigmoidº¯ÊýµÄÓÅÊÆÖ÷ÒªÊÇʹѵÁ·¹ý³Ì¸ü¼Ó¿ìËÙ¡£
ʹÓøü¶àµÄѵÁ·Êý¾Ý¡£Deep LearningÒòΪ²ÎÊý¶à¶øÐèÒª´óÁ¿µÄѵÁ·Êý¾Ý£¬Èç¹ûѵÁ·Êý¾ÝÉÙ¿ÉÄÜÎÞ·¨ÑµÁ·³öÓÐЧµÄÉñ¾ÍøÂ硣ͨ³£¿ÉÒÔͨ¹ýһЩËã·¨ÔÚÒÑÓеÄѵÁ·Êý¾ÝµÄ»ù´¡ÉϲúÉú´óÁ¿µÄÏàËÆµÄÊý¾ÝÓÃÓÚѵÁ·¡£ÀýÈç¿ÉÒÔ½«Ã¿Ò»¸öͼÏñÆ½ÒÆÒ»¸öÏñËØ£¬ÏòÉÏÆ½ÒÆ£¬ÏòÏÂÆ½ÒÆ£¬Ïò×óÆ½ÒÆºÍÏòÓÒÆ½Òƶ¼¿ÉÒÔ¡£
ʹÓÃÈô¸É¸öÍøÂçµÄ×éºÏ¡£´´½¨Èô¸É¸öÏàͬ½á¹¹µÄÉñ¾ÍøÂ磬²ÎÊýËæ»ú³õʼ»¯£¬ÑµÁ·ÒÔºó²âÊÔʱͨ¹ýËûÃǵÄÊä³ö×öÒ»¸öͶƱÒÔ¾ö¶¨×î¼ÑµÄ·ÖÀà¡£ÆäʵÕâÖÖEnsembleµÄ·½·¨²¢²»ÊÇÉñ¾ÍøÂçÌØÓУ¬ÆäËûµÄ»úÆ÷ѧϰËã·¨Ò²ÓÃÕâÖÖ·½·¨ÒÔÌá¸ßËã·¨µÄ³°ôÐÔ£¬±ÈÈçRandom
Forests¡£
3.2 ImageNetͼÏñ·ÖÀà
Alex KrizhevskyµÈÈË2012ÄêµÄÎÄÕ¡°ImageNet classification
with deep convolutional neural networks¡±¶ÔImageNetµÄÒ»¸ö×ÓÊý¾Ý¼¯½øÐÐÁË·ÖÀà¡£ImageNetÒ»¹²°üº¬1500ÍòÕÅÓбê¼ÇµÄ¸ß·Ö±æÂÊͼÏñ£¬°üº¬22£¬000¸öÖÖÀà¡£ÕâЩͼÏñÊÇ´ÓÍøÂçÉÏËѼ¯µÄ²¢ÇÒÓÉÈ˹¤½øÐбê¼Ç¡£´Ó2010Ä꿪ʼ£¬ÓÐÒ»¸öImageNetµÄͼÏñʶ±ð¾ºÈü½Ð×öILSVRC(ImageNet
Large-Scale Visual Recognition Challenge)¡£ ILSVRCʹÓÃÁËImageNetÖеÄ1000ÖÖͼÏñ£¬Ã¿Ò»ÖÖ´óÔ¼°üº¬1000¸öͼÏñ¡£×ܹ²ÓÐ120ÍòÕÅѵÁ·Í¼Ïñ£¬5ÍòÕÅÑé֤ͼÏñ£¨validation
images£©ºÍ15ÍòÕŲâÊÔͼÏñ£¨testing images£©¡£¸ÃÎÄÕµķ½·¨´ïµ½ÁË15.3%µÄ´íÎóÂÊ£¬¶øµÚ¶þºÃµÄ·½·¨´íÎóÂÊÊÇ26.2%¡£

ÕâÆªÎÄÕÂÖÐʹÓÃÁË7¸öÒþ²Ø²ã£¬Ç°5¸öÊǾí»ý²ã£¨ÓÐЩʹÓÃÁËmax-pooling£©£¬ºó2¸öÊÇÈ«Á¬½Ó²ã¡£Êä³ö²ãÊÇÓÐ1000¸öµ¥ÔªµÄsoftmax²ã£¬·Ö±ð¶ÔÓ¦1000¸öͼÏñÀà±ð¡£
¸ÃCNNʹÓÃÁËGPU½øÐмÆË㣬µ«ÓÉÓÚµ¥¸öGPUµÄÈÝÁ¿ÏÞÖÆ£¬ÐèҪʹÓÃ2¸öGPU £¨GTX 580£¬·Ö±ðÓÐ3GBÏԴ棩²ÅÄÜÍê³ÉѵÁ·¡£
¸ÃÎÄÕÂÖÐΪÁË·ÀÖ¹¹ý¶ÈÄâºÏ£¬²ÉÓÃÁËÁ½¸ö·½·¨¡£Ò»ÊÇÈ˹¤Éú³É¸ü¶àµÄѵÁ·Í¼Ïñ¡£±ÈÈ罫ÒÑÓеÄѵÁ·Í¼Ïñ½øÐÐÆ½ÒÆ»òÕßˮƽ·×ª£¬¸ù¾ÝÖ÷³É·Ö·ÖÎö¸Ä±äÆäRGBͨµÀµÄÖµµÈ¡£Í¨¹ýÕâÖÖ·½·¨ÊÇѵÁ·Êý¾ÝÀ©´óÁË2048±¶¡£¶þÊDzÉÓÃDropout¼¼Êõ¡£Dropout½«Òþ²Ø²ãÖÐËæ»úѡȡµÄÒ»°ëµÄÉñ¾ÔªµÄÊä³öÉèÖÃΪ0¡£Í¨¹ýÕâÖÖ·½·¨¿ÉÒÔ¼Ó¿ìѵÁ·ËÙ¶È£¬Ò²¿ÉÒÔʹ½á¹û¸üÎȶ¨¡£

ÊäÈëͼÏñµÄ´óСÊÇ224X224X3£¬¸ÐÖªÓòµÄ´óСÊÇ11X11X3¡£µÚÒ»²ãÖÐѵÁ·µÃµ½µÄ96¸ö¾í»ýºËÈçÉÏͼËùʾ¡£Ç°48¸öÊÇÔÚµÚÒ»¸öGPUÉÏѧϰµ½µÄ£¬ºó48¸öÊÇÔÚµÚ¶þ¸öGPUÉÏѧϰµ½µÄ¡£
3.3 ҽѧͼÏñ·Ö¸î
Adhish PrasoonµÈÈËÔÚ2013ÄêµÄÎÄÕ¡°Deep feature learning for
knee cartilage segmentation using a triplanar convolutional
neural network¡±ÖУ¬ÓÃCNNÀ´×öMRIÖÐÏ¥¹Ø½ÚÈí¹ÇµÄ·Ö¸î¡£´«Í³µÄCNNÊǶþάµÄ£¬Èç¹ûÖ±½ÓÀ©Õ¹µ½ÈýάÔòÐèÒª¸ü¶àµÄ²ÎÊý£¬ÍøÂç¸ü¸´ÔÓ£¬ÐèÒª¸ü³¤µÄѵÁ·Ê±¼äºÍ¸ü¶àµÄѵÁ·Êý¾Ý¡£¶øµ¥´¿Ê¹ÓöþάÊý¾ÝÔòûÓÐÀûÓõ½ÈýÎ¬ÌØÕ÷£¬¿ÉÄܵ¼ÖÂ׼ȷÂÊϽµ¡£Îª´ËAdhish²ÉÓÃÁËÒ»¸öÕÛÖз½°¸£ºÊ¹ÓÃ,ºÍÈý¸ö2DÆ½ÃæµÄCNN²¢°ÑËüÃǽáºÏÆðÀ´¡£

Èý¸ö2D CNN·Ö±ð¸ºÔð¶Ô,ºÍÆ½ÃæµÄ´¦Àí£¬ËüÃǵÄÊä³öͨ¹ýÒ»¸ösoftmax²ãÁ¬½ÓÔÚÒ»Æð£¬²úÉú×îÖÕµÄÊä³ö¡£¸ÃÎÄÕÂÖвÉÓÃÁË25¸ö²¡È˵ÄͼÏñ×÷ΪѵÁ·Êý¾Ý£¬Ã¿¸öÈýάͼÏñÖÐѡȡ4800¸öÌåËØ£¬Ò»¹²µÃµ½12Íò¸öѵÁ·ÌåËØ¡£Ïà±ÈÓÚ´«Í³µÄ´ÓÈýάͼÏñÖÐÈ˹¤ÌáÈ¡ÌØÕ÷µÄ·Ö¸î·½·¨£¬¸Ã·½·¨ÔÚ¾«¶ÈÉÏÓÐÃ÷ÏÔµÄÌá¸ß£¬²¢ÇÒËõ¶ÌÁËѵÁ·Ê±¼ä¡£
3.4 ¹È¸èΧÆåAlphaGoսʤÈËÀà
¹È¸èÆìÏÂDeepMindÍŶÓʹÓÃÉî¶È¾í»ýÉñ¾ÍøÂçÔÚµçÄÔΧÆåÉÏÈ¡µÃÁËÖØ´óÍ»ÆÆ¡£ÔçÆÚ£¬IBMµÄÉîÀ¶³¬¼¶¼ÆËã»úͨ¹ýÇ¿´óµÄ¼ÆËãÄÜÁ¦Ê¹ÓÃÇî¾Ù·¨Õ½Ê¤ÁËÈËÀàרҵÏóÆåÑ¡ÊÖ£¬µ«ÄDz»Ëã¡°ÖÇÄÜ¡±¡£
ΧÆåÉϵļÆË㸴ÔÓ¶ÈÔ¶³¬ÏóÆå£¬¼´Ê¹Í¨¹ý×îÇ¿´óµÄ¼ÆËã»úÒ²ÎÞ·¨Çî¾ÙËùÓеĿÉÄܵÄ×ß·¨¡£¼ÆËãΧÆåÊǸö¼«Æä¸´ÔÓµÄÎÊÌ⣬±È¹ú¼ÊÏóÆåÒªÀ§ÄѵöࡣΧÆå×î´óÓÐ3^361
ÖÖ¾ÖÃæ£¬´óÖµÄÌåÁ¿ÊÇ10^170£¬¶øÒѾ¹Û²âµ½µÄÓîÖæÖУ¬Ô×ÓµÄÊýÁ¿²Å10^80¡£¹ú¼ÊÏóÆå×î´óÖ»ÓÐ2^155ÖÖ¾ÖÃæ£¬³ÆÎªÏãÅ©Êý£¬´óÖÂÊÇ10^47¡£
DeepMindËùÑо¿µÄAlphaGoʹÓÃÁ˾í»ýÉñ¾ÍøÂçÀ´Ñ§Ï°ÈËÀàÏÂÆåµÄ·½·¨£¬×îÖÕÈ¡µÃÁËÍ»ÆÆ¡£AlphaGoÔÚûÓÐÈκÎÈÃ×ÓµÄÇé¿öÏÂÒÔ5:0ÍêʤŷÖÞ¹Ú¾ü£¬Ö°ÒµÎ§Æå¶þ¶Î·®÷â¡£Ñо¿ÕßÒ²ÈÃAlphaGoºÍÆäËûµÄΧÆåAI½øÐÐÁ˽ÏÁ¿£¬ÔÚ×ܼÆ495¾ÖÖÐÖ»ÊäÁËÒ»¾Ö£¬Ê¤ÂÊÊÇ99.8%¡£ËüÉõÖÁ³¢ÊÔÁËÈÃ4×Ó¶ÔÕóCrazy
Stone£¬ZenºÍPachiÈý¸öÏȽøµÄAI£¬Ê¤ÂÊ·Ö±ðÊÇ77%£¬86%ºÍ99%¡£¿É¼ûAlphaGoÓжàÇ¿´ó¡£
ÔڹȸèÍŶӵÄÂÛÎÄÖУ¬Ìáµ½¡°ÎÒÃÇÓÃ19X19µÄͼÏñÀ´´«µÝÆåÅÌλÖá±£¬À´¡°ÑµÁ·¡±Á½ÖÖ²»Í¬µÄÉî¶ÈÉñ¾ÍøÂç¡£¡°²ßÂÔÍøÂ硱£¨policy
network£©ºÍ ¡°ÖµÍøÂ硱£¨value network£©¡£ËüÃǵÄÈÎÎñÔÚÓÚºÏ×÷¡°ÌôÑ¡¡±³öÄÇЩ±È½ÏÓÐǰ;µÄÆå²½£¬ÅׯúÃ÷ÏԵIJîÆå£¬´Ó¶ø½«¼ÆËãÁ¿¿ØÖÆÔÚ¼ÆËã»ú¿ÉÒÔÍê³ÉµÄ·¶Î§À±¾ÖÊÉϺÍÈËÀàÆåÊÖËù×öµÄÒ»Ñù¡£
ÆäÖУ¬¡°ÖµÍøÂ硱¸ºÔð¼õÉÙËÑË÷µÄÉî¶È¡ª¡ªAI»áÒ»±ßÍÆËãÒ»±ßÅжϾÖÃæ£¬¾ÖÃæÃ÷ÏÔÁÓÊÆµÄʱºò£¬¾ÍÖ±½ÓÅׯúijЩ·Ïߣ¬²»ÓÃÒ»ÌõµÀËãµ½ºÚ£»¶ø¡°²ßÂÔÍøÂ硱¸ºÔð¼õÉÙËÑË÷µÄ¿í¶È¡ª¡ªÃæ¶ÔÑÛǰµÄÒ»ÅÌÆå£¬ÓÐЩÆå²½ÊÇÃ÷ÏÔ²»¸Ã×ߵ쬱ÈÈç²»¸ÃËæ±ãËÍ×Ó¸ø±ðÈ˳ԡ£ÀûÓÃÃÉÌØ¿¨ÂåÄâºÏ£¬½«ÕâЩÐÅÏ¢·ÅÈëÒ»¸ö¸ÅÂʺ¯Êý£¬AI¾Í²»ÓøøÃ¿Ò»²½ÒÔͬÑùµÄÖØÊӳ̶ȣ¬¶ø¿ÉÒÔÖØµã·ÖÎöÄÇЩÓÐÏ·µÄÆå×Å¡£

|