Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Éî¶ÈѧϰģÐÍѹËõÓë¼ÓËÙ×ÛÊö
 
×÷ÕߣºÀ×Ã÷Öø
  3424  次浏览      28
 2021-2-2  
 
±à¼­ÍƼö:
±¾ÎÄÖ÷Òª½éÉÜÉî¶ÈѧϰģÐÍѹËõºÍ¼ÓËÙËã·¨µÄÈý¸ö·½Ïò£¬·Ö±ðΪ¼ÓËÙÍøÂç½á¹¹Éè¼Æ¡¢Ä£ÐͲüôÓëÏ¡Ê軯¡¢Á¿»¯¼ÓËÙ¡£
±¾ÎÄÀ´×ÔÓÚSIGAI¹«Öںţ¬ÓÉ»ðÁú¹ûÈí¼þAnna±à¼­¡¢ÍƼö¡£

ÕªÒª

ĿǰÔÚÉî¶ÈѧϰÁìÓò·ÖÀàÁ½¸öÅɱð£¬Ò»ÅÉΪѧԺÅÉ£¬Ñо¿Ç¿´ó¡¢¸´ÔÓµÄÄ£ÐÍÍøÂçºÍʵÑé·½·¨£¬ÎªÁË×·Çó¸ü¸ßµÄÐÔÄÜ£»ÁíÒ»ÅÉΪ¹¤³ÌÅÉ£¬Ö¼ÔÚ½«Ëã·¨¸üÎȶ¨¡¢¸ßЧµÄÂ䵨ÔÚÓ²¼þƽ̨ÉÏ£¬Ð§ÂÊÊÇÆä×·ÇóµÄÄ¿±ê¡£¸´ÔÓµÄÄ£Ð͹ÌÈ»¾ßÓиüºÃµÄÐÔÄÜ£¬µ«ÊǸ߶îµÄ´æ´¢¿Õ¼ä¡¢¼ÆËã×ÊÔ´ÏûºÄÊÇʹÆäÄÑÒÔÓÐЧµÄÓ¦ÓÃÔÚ¸÷Ó²¼þƽ̨ÉϵÄÖØÒªÔ­Òò¡£ËùÒÔ£¬¾í»ýÉñ¾­ÍøÂçÈÕÒæÔö³¤µÄÉî¶ÈºÍ³ß´çΪÉî¶ÈѧϰÔÚÒÆ¶¯¶ËµÄ²¿Êð´øÀ´Á˾޴óµÄÌôÕ½£¬Éî¶ÈѧϰģÐÍѹËõÓë¼ÓËÙ³ÉΪÁËѧÊõ½çºÍ¹¤Òµ½ç¶¼ÖØµã¹Ø×¢µÄÑо¿ÁìÓòÖ®Ò»¡£

I. ¼ÓËÙÍøÂçÉè¼Æ

·Ö×é¾í»ý

·Ö×é¾í»ý¼´½«ÊäÈëµÄfeature maps·Ö³É²»Í¬µÄ×é£¨ÑØchannelά¶È½øÐзÖ×飩£¬È»ºó¶Ô²»Í¬µÄ×é·Ö±ð½øÐоí»ý²Ù×÷£¬¼´Ã¿Ò»¸ö¾í»ýºËÖÁÓÚÊäÈëµÄfeature mapsµÄÆäÖÐÒ»×é½øÐÐÁ¬½Ó£¬¶øÆÕͨµÄ¾í»ý²Ù×÷ÊÇÓëËùÓеÄfeature maps½øÐÐÁ¬½Ó¼ÆËã¡£·Ö×éÊýkÔ½¶à£¬¾í»ý²Ù×÷µÄ×ܲÎÊýÁ¿ºÍ×ܼÆËãÁ¿¾ÍÔ½ÉÙ£¨¼õÉÙk±¶£©¡£È»¶ø·Ö×é¾í»ýÓÐÒ»¸öÖÂÃüµÄȱµã¾ÍÊDz»Í¬·Ö×éµÄͨµÀ¼ä¼õÉÙÁËÐÅÏ¢Á÷ͨ£¬¼´Êä³öµÄfeature mapsÖ»¿¼ÂÇÁËÊäÈëÌØÕ÷µÄ²¿·ÖÐÅÏ¢£¬Òò´ËÔÚʵ¼ÊÓ¦ÓõÄʱºò»áÔÚ·Ö×é¾í»ýÖ®ºó½øÐÐÐÅÏ¢ÈںϲÙ×÷£¬½ÓÏÂÀ´Ö÷Òª½²Á½¸ö±È½Ï¾­µäµÄ½á¹¹£¬ShuffleNet[1]ºÍMobileNet[2]½á¹¹¡£

1) ShuffleNet½á¹¹£º

ÈçÉÏͼËùʾ£¬Í¼aÊÇÒ»°ãµÄgroup convolutionµÄʵÏÖЧ¹û£¬ÆäÔì³ÉµÄÎÊÌâÊÇ£¬Êä³öͨµÀÖ»ºÍÊäÈëµÄijЩͨµÀÓйأ¬µ¼ÖÂÈ«¾ÖÐÅÏ¢ Á÷ͨ²»³©£¬ÍøÂç±í´ïÄÜÁ¦²»×㡣ͼb¾ÍÊÇshufflenet½á¹¹£¬¼´Í¨¹ý¾ùÔÈÅÅÁУ¬°Ñgroup convolutionºóµÄfeature map°´Í¨µÀ½øÐоùÔÈ»ìºÏ£¬ÕâÑù¾Í¿ÉÒÔ¸üºÃµÄ»ñȡȫ¾ÖÐÅÏ¢ÁË¡£ ͼcÊDzÙ×÷ºóµÄµÈ¼ÛЧ¹ûͼ¡£ÔÚ·Ö×é¾í»ýµÄʱºò£¬Ã¿Ò»¸ö¾í»ýºË²Ù×÷µÄͨµÀÊý¼õÉÙ£¬ËùÒÔ¿ÉÒÔ´óÁ¿¼õÉÙ¼ÆËãÁ¿¡£

2) MobileNet½á¹¹£º

ÈçÉÏͼËùʾ£¬mobilenet²ÉÓÃÁËdepthwise separable convolutionsµÄ˼Ï룬²ÉÓÃdepthwise (»ò½Ðchannelwise)ºÍ1x1 pointwiseµÄ·½·¨½øÐзֽâ¾í»ý¡£ÆäÖÐdepthwise separable convolutions¼´¶Ôÿһ¸öͨµÀ½øÐоí»ý²Ù×÷£¬¿ÉÒÔ¿´³ÉÊÇÿ×éÖ»ÓÐÒ»¸öͨµÀµÄ·Ö×é¾í»ý£¬×îºóʹÓÿªÏú½ÏСµÄ1x1¾í»ý½øÐÐͨµÀÈںϣ¬¿ÉÒÔ´ó´ó¼õÉÙ¼ÆËãÁ¿¡£

·Ö½â¾í»ý

·Ö½â¾í»ý£¬¼´½«ÆÕͨµÄkxk¾í»ý·Ö½âΪkx1ºÍ1xk¾í»ý£¬Í¨¹ýÕâÖÖ·½Ê½¿ÉÒÔÔÚ¸ÐÊÜÒ°ÏàͬµÄʱºò´óÁ¿¼õÉÙ¼ÆËãÁ¿£¬Í¬Ê±Ò²¼õÉÙÁ˲ÎÊýÁ¿£¬ÔÚijÖ̶ֳÈÉÏ¿ÉÒÔ¿´³ÉÊÇʹÓÃ2k¸ö²ÎÊýÄ£Äâk*k¸ö²ÎÊýµÄ¾í»ýЧ¹û£¬´Ó¶øÔì³ÉÍøÂçµÄÈÝÁ¿¼õС£¬µ«ÊÇ¿ÉÒÔÔÚ½ÏÉÙËðʧ¾«¶ÈµÄǰÌáÏ£¬´ïµ½ÍøÂç¼ÓËÙµÄЧ¹û¡£

ÓÒͼÊÇÔÚͼÏñÓïÒå·Ö¸îÈÎÎñÉÏÈ¡µÃ·Ç³£ºÃµÄЧ¹ûµÄERFNet[3]µÄÖ÷Ҫģ¿é£¬³ÆÎªNonBottleNeck½á¹¹½è¼ø×ÔResNet[4]ÖеÄNon-Bottleneck½á¹¹£¬ÏàÓ¦¸Ä½øÎªÊ¹Ó÷ֽâ¾í»ýÌæ»»±ê×¼¾í»ý£¬ÕâÑù¿ÉÒÔ¼õÉÙÒ»¶¨µÄ²ÎÊýºÍ¼ÆËãÁ¿£¬Ê¹ÍøÂç¸üÇ÷½üÓÚefficiency¡£

Bottleneck½á¹¹

ÓÒͼΪENet[5]ÖеÄBottleneck½á¹¹£¬½è¼ø×ÔResNetÖеÄBottleneck½á¹¹£¬Ö÷ÒªÊÇͨ¹ý1x1¾í»ý½øÐнµÎ¬ºÍÉýά£¬ÄÜÔÚÒ»¶¨³Ì¶ÈÉÏÄܹ»¼õÉÙ¼ÆËãÁ¿ºÍ²ÎÊýÁ¿¡£ÆäÖÐ1x1¾í»ý²Ù×÷µÄ²ÎÊýÁ¿ºÍ¼ÆËãÁ¿ÉÙ£¬Ê¹ÓÃÆä½øÐÐÍøÂçµÄ½µÎ¬ºÍÉýά²Ù×÷£¨¼õÉÙ»òÕßÔö¼ÓͨµÀÊý£©µÄ¿ªÏú±È½ÏС£¬´Ó¶øÄܹ»´ïµ½ÍøÂç¼ÓËÙµÄÄ¿µÄ¡£

C.ReLU[7]½á¹¹

C.ReLUÀ´Ô´ÓÚCNNsÖм伤»îģʽÒý·¢µÄ¡£Êä³ö½ÚµãÇãÏòÓÚÊÇ"Åä¶ÔµÄ"£¬Ò»¸ö½Úµã¼¤»îÊÇÁíÒ»¸ö½ÚµãµÄÏà·´Ãæ£¬¼´ÆäÖÐÒ»°ëͨµÀµÄÌØÕ÷ÊÇ¿ÉÒÔͨ¹ýÁíÍâÒ»°ëͨµÀµÄÌØÕ÷Éú³ÉµÄ¡£¸ù¾ÝÕâ¸ö¹Û²ì£¬C.ReLU¼õÉÙÒ»°ëÊä³öͨµÀ(output channels)µÄÊýÁ¿£¬È»ºóͨ¹ýÆäÖÐÒ»°ëͨµÀµÄÌØÕ÷Éú³ÉÁíÒ»°ëÌØÕ÷£¬ÕâÀïʹÓà negationʹÆä±ä³ÉË«±¶£¬×îºóͨ¹ýscale²Ù×÷ʹµÃÿ¸öchannel(ͨµÀ)µÄбÂʺͼ¤»îãÐÖµÓëÆäÏà·´µÄchannel²»Í¬¡£

SqueezeNet[8]½á¹¹

SqueezeNet˼Ïë·Ç³£¼òµ¥£¬¾ÍÊǽ«Ô­À´¼òµ¥µÄÒ»²ãconv²ã±ä³ÉÁ½²ã:squeeze²ã+expand²ã£¬¸÷×Ô´øÉÏRelu¼¤»î²ã¡£ÔÚsqueeze²ãÀïÃæÈ«ÊÇ1x1µÄ¾í»ýkernel£¬ÊýÁ¿¼ÇΪS11;ÔÚexpand²ãÀïÃæÓÐ1x1ºÍ3x3µÄ¾í»ýkernel£¬ÊýÁ¿·Ö±ð¼ÇΪE11ºÍE33£¬ÒªÇóS11 < input map number¡£expand²ãÖ®ºó½« 1x1ºÍ3x3µÄ¾í»ýoutput feature mapsÔÚchannelά¶ÈÆ´½ÓÆðÀ´¡£

Éñ¾­ÍøÂçËÑË÷[18]

Éñ¾­½á¹¹ËÑË÷£¨Neural Architecture Search£¬¼ò³ÆNAS£©ÊÇÒ»ÖÖ×Ô¶¯Éè¼ÆÉñ¾­ÍøÂçµÄ¼¼Êõ£¬¿ÉÒÔͨ¹ýËã·¨¸ù¾ÝÑù±¾¼¯×Ô¶¯Éè¼Æ³ö¸ßÐÔÄܵÄÍøÂç½á¹¹£¬ÔÚijЩÈÎÎñÉÏÉõÖÁ¿ÉÒÔæÇÃÀÈËÀàר¼ÒµÄË®×¼£¬ÉõÖÁ·¢ÏÖijЩÈËÀàÖ®Ç°Î´ÔøÌá³öµÄÍøÂç½á¹¹£¬Õâ¿ÉÒÔÓÐЧµÄ½µµÍÉñ¾­ÍøÂçµÄʹÓúÍʵÏֳɱ¾¡£

NASµÄÔ­ÀíÊǸø¶¨Ò»¸ö³ÆÎªËÑË÷¿Õ¼äµÄºòÑ¡Éñ¾­ÍøÂç½á¹¹¼¯ºÏ£¬ÓÃijÖÖ²ßÂÔ´ÓÖÐËÑË÷³ö×îÓÅÍøÂç½á¹¹¡£Éñ¾­ÍøÂç½á¹¹µÄÓÅÁÓ¼´ÐÔÄÜÓÃijЩָ±êÈ羫¶È¡¢ËÙ¶ÈÀ´¶ÈÁ¿£¬³ÆÎªÐÔÄÜÆÀ¹À£¬¿ÉÒÔͨ¹ýNAS×Ô¶¯ËÑË÷³ö¸ßЧÂʵÄÍøÂç½á¹¹¡£

×ܽá

±¾½ÚÖ÷Òª½éÉÜÁËÄ£ÐÍÄ£ÐÍÉè¼ÆµÄ˼·£¬Í¬Ê±¶ÔÄ£Ð͵ļÓËÙÉè¼ÆÒÔ¼°Ïà¹ØÈ±ÏݽøÐзÖÎö¡£×ܵÄÀ´Ëµ£¬¼ÓËÙÍøÂçÄ£ÐÍÉè¼ÆÖ÷ÒªÊÇ̽Ë÷×îÓŵÄÍøÂç½á¹¹£¬Ê¹µÃ½ÏÉٵIJÎÊýÁ¿ºÍ¼ÆËãÁ¿¾ÍÄÜ´ïµ½ÀàËÆµÄЧ¹û¡£

II. Winograd¡¢Ä£ÐͲüôÓëÏ¡Ê軯

FFT / WinogradµÄ¾í»ýËã·¨[19]

FFT / WinogradµÄ¾í»ýËã·¨¼´Í¨¹ýijÖÖÏßÐԱ任½«feature mapºÍ¾í»ýºË±ä»»µ½ÁíÍâÒ»¸öÓò£¬¿Õ¼äÓòϵľí»ýÔÚÕâ¸öÓòϱäΪÖðµãÏà³Ë£¬ÔÙͨ¹ýÁíÒ»¸öÏßÐԱ任½«½á¹û±ä»»µ½¿Õ¼äÓò¡£FFT¾í»ý²ÉÓøµÀïÒ¶±ä»»´¦Àífeature mapºÍ¾í»ýºË£¬¸µÀïÒ¶Äæ±ä»»´¦Àí½á¹û£»Winograd¾í»ýʹÓÃÁËÆäËûµÄÏßÐԱ任¡£

¾ßÌå¶øÑÔFFT½«¿Õ¼äÒâÒåÉϵÄʵÊý±ä»»µ½ÆµÓòÉϵĸ´Êý£¬×îºóÔÚ¸´ÊýÉÏ×öÖðµãÏà³Ë£¬È»ºóÔÙ°ÑÕâ¸öƵÂʵĸ´Êý±ä»¯ÎªÕâ¸ö¿Õ¼äÓòµÄʵÊý¡£WinogradÔòÊÇÒ»Ö±ÔÚʵÊýÓòÉϽøÐб任¡£ÊÂʵÉÏÓÉÓÚFFTÐèÒª¸´Êý³Ë·¨£¬Èç¹ûûÓÐÌØÊâÖ¸ÁîÖ§³ÖµÄ»°ÐèÒªÓÃʵÊý³Ë·¨À´Ä£Ä⣬ʵÊýµÄ¸¡µã¼ÆËãÁ¿¿ÉÄÜϽµµÄ²»¶à¡£Òò´ËFFTҲûÓÐWinogradʵÓá£FFTºÍWinograd±ä»¯Êµ¼ÊÉÏÊÇ¿ÉÒÔʵÏÖ¼«¸ßµÄÒ»¸ö¼ÓËٱȣ¬¾Ù¸öÀý×Ó£¬Winograd±ä»»¶ÔÓÚ3¡Á3¾í»ý£¬×î¸ß¿ÉÒÔʵÏÖ9±¶µÄ¼ÓËٱȣ¬µ«¾«¶ÈËðʧÑÏÖØ¡£µ±È»ÎÒÃÇʵ¼ÊÉϲ»»áÓÃÄÇô´ó£¬¿ÉÄÜ»áÓõ½6±¶£¬ÄÇôÕâʱºò¾«¶ÈËðʧ»¹ÊÇ¿ÉÒÔ½ÓÊܵġ£

Ä£ÐͼôÖ¦

½á¹¹¸´ÔÓµÄÍøÂç¾ßÓзdz£ºÃµÄÐÔÄÜ£¬Æä²ÎÊýÒ²´æÔÚÈßÓ࣬Òò´Ë¶ÔÓÚÒÑѵÁ·ºÃµÄÄ£ÐÍÍøÂ磬¿ÉÒÔѰÕÒÒ»ÖÖÓÐЧµÄÆÀÅÐÊֶΣ¬½«²»ÖØÒªµÄconnection»òÕßfilter½øÐвüôÀ´¼õÉÙÄ£Ð͵ÄÈßÓà¡£

¼ôÖ¦·½·¨»ù±¾Á÷³ÌÈçÏÂ[9]£º

1. Õý³£Á÷³ÌѵÁ·Ò»¸öÉñ¾­ÍøÂ磬µÃµ½ÑµÁ·ºÃµÄmodel£»

2. È·¶¨Ò»¸öÐèÒª¼ôÖ¦µÄ²ã£¬Ò»°ãΪȫÁ¬½Ó²ã£¬É趨һ¸ö²Ã¼ôãÐÖµ»òÕß±ÈÀý¡£ÊµÏÖÉÏ£¬Í¨¹ýÐ޸ĴúÂë¼ÓÈëÒ»¸öÓë²ÎÊý¾ØÕó³ß´çÒ»ÖµÄmask¾ØÕó¡£mask¾ØÕóÖÐÖ»ÓÐ0ºÍ1£¬Êµ¼ÊÉÏÊÇÓÃÓÚÖØÐÂѵÁ·µÄÍøÂç¡£

3. ÖØÐÂѵÁ·Î¢µ÷£¬²ÎÊýÔÚ¼ÆËãµÄʱºòÏȳËÒÔ¸Ãmask£¬ÔòmaskλΪ1µÄ²ÎÊýÖµ½«¼ÌÐøÑµÁ·Í¨¹ýBPµ÷Õû£¬¶ømaskλΪ0µÄ²¿·ÖÒòΪÊä³öʼÖÕΪ0Ôò²»¶ÔºóÐø²¿·Ö²úÉúÓ°Ïì¡£

4. Êä³öÄ£ÐͲÎÊý´¢´æµÄʱºò£¬ÒòΪÓдóÁ¿µÄÏ¡Ê裬ËùÒÔÐèÒªÖØÐ¶¨Òå´¢´æµÄÊý¾Ý½á¹¹£¬½ö´¢´æ·ÇÁãÖµÒÔ¼°Æä¾ØÕóλÖá£ÖØÐ¶ÁȡģÐͲÎÊýµÄʱºò£¬¾Í¿ÉÒÔ»¹Ô­¾ØÕó¡£

Éñ¾­ÍøÂçµÄ²ÎÊýÁ¿ÍùÍù·Ç³£¶à£¬¶øÆäÖд󲿷ֵIJÎÊýÔÚѵÁ·ºÃÖ®ºó¶¼»áÇ÷½üÓÚÁ㣬¶ÔÕû¸öÍøÂçµÄ¹±Ï׿ÉÒÔºöÂÔ²»¼Æ¡£Í¨¹ý¼ôÖ¦²Ù×÷¿ÉÒÔÊ¹ÍøÂç±äµÃÏ¡Ê裬ÐèÒª´æ´¢µÄ²ÎÊýÁ¿¼õÉÙ£¬µ«ÊǼôÖ¦²Ù×÷ͬÑù»á½µµÍÕû¸öÄ£Ð͵ÄÈÝÁ¿£¨²ÎÊýÁ¿¼õÉÙ£©£¬ÔÚʵ¼ÊѵÁ·Ê±£¬ÓÐʱºò»áͨ¹ýµ÷ÕûÓÅ»¯º¯Êý£¬ÓÕµ¼ÍøÂçÈ¥ÀûÓÃÄ£Ð͵ÄËùÓвÎÊý£¬ÊµÖÊÉϾÍÊǼõÉÙ½Ó½üÓÚÁãµÄ²ÎÊýÁ¿¡£×îºó£¬¶ÔÓÚÈçºÎ×Ô¶¯É趨¼ôÖ¦ÂÊ£¬ÈçºÎ×ÔÊÊÓ¦É趨¼ôÖ¦ãÐÖµ£¬ÔÚÕâÀï²»×ö¹ý¶àÌÖÂÛ¡£

ºËµÄÏ¡Ê軯

ºËµÄÏ¡Ê軯£¬ÊÇÔÚѵÁ·¹ý³ÌÖУ¬¶ÔÈ¨ÖØµÄ¸üмÓÒÔÕýÔòÏî½øÐÐÓÕµ¼£¬Ê¹Æä¸ü¼ÓÏ¡Ê裬ʹ´ó²¿·ÖµÄȨֵ¶¼Îª0¡£ºËµÄÏ¡Ê軯·½·¨·ÖΪregularºÍirregular£¬regularµÄÏ¡Ê軯ºó£¬²Ã¼ôÆðÀ´¸ü¼ÓÈÝÒ×£¬ÓÈÆäÊǶÔim2colµÄ¾ØÕó²Ù×÷£¬Ð§Âʸü¸ß£»¶øirregularµÄÏ¡Ê軯»á´øÀ´²»¹æÔòµÄÄÚ´æ·ÃÎÊ£¬²ÎÊýÐèÒªÌØ¶¨µÄ´æ´¢·½Ê½£¬»òÕßÐèҪƽ̨ÉÏÏ¡Êè¾ØÕó²Ù×÷¿âµÄÖ§³Ö£¬ÈÝÒ×Êܵ½´ø¿íµÄÓ°Ï죬ÔÚGPUµÈÓ²¼þÉϼÓËÙ²¢²»Ã÷ÏÔ¡£

ÂÛÎÄ[10]Ìá³öÁËStructured Sparsity LearningµÄѧϰ·½Ê½£¬Äܹ»Ñ§Ï°Ò»¸öÏ¡ÊèµÄ½á¹¹À´½µµÍ¼ÆËãÏûºÄ£¬Ëùѧµ½µÄ½á¹¹ÐÔÏ¡Ê軯Äܹ»ÓÐЧµÄÔÚÓ²¼þÉϽøÐмÓËÙ¡£ÓÉÓÚÔÚGEMMÖн«weight tensorÀ­³ÉmatrixµÄ½á¹¹£¨¼´im2col²Ù×÷£©£¬Òò´Ë¿ÉÒÔͨ¹ý½«filter¼¶Óëshape¼¶µÄÏ¡Ê軯½øÐнáºÏÀ´½«2D¾ØÕóµÄÐкÍÁÐÏ¡Ê軯£¬ÔÙ·Ö±ðÔÚ¾ØÕóµÄÐкÍÁÐÉϲüôµôÌÞ³ýȫΪ0µÄÖµ¿ÉÒÔÀ´½µµÍ¾ØÕóµÄά¶È´Ó¶øÌáÉýÄ£Ð͵ÄÔËËãЧÂÊ¡£¸Ã·½·¨ÊÇregularµÄ·½·¨£¬Ñ¹ËõÁ£¶È½Ï´Ö£¬¿ÉÒÔÊÊÓÃÓÚ¸÷ÖÖÏֳɵÄËã·¨¿â£¬µ«ÊÇѵÁ·µÄÊÕÁ²ÐÔºÍÓÅ»¯ÄѶȲ»È·¶¨¡£

ÂÛÎÄ[11]Ìá³öÁËÒ»ÖÖ¶¯Ì¬µÄÄ£ÐͲüô·½·¨£¬°üÀ¨ÒÔÏÂÁ½¸ö¹ý³Ì£ºpruningºÍsplicing£¬ÆäÖÐpruning¾ÍÊǽ«ÈÏΪ²»ÖÐÒªµÄweight²Ãµô£¬µ«ÊÇÍùÍùÎÞ·¨Ö±¹ÛµÄÅжÏÄÄЩweightÊÇ·ñÖØÒª£¬Òò´ËÔÚÕâÀïÔö¼ÓÁËÒ»¸ösplicingµÄ¹ý³Ì£¬½«ÄÄÐ©ÖØÒªµÄ±»²ÃµôµÄweightÔÙ»Ö¸´»ØÀ´¡£¸ÃËã·¨²ÉÈ¡Á˼ôÖ¦Óë¼Þ½ÓÏà½áºÏ¡¢ÑµÁ·ÓëѹËõÏàͬ²½µÄ²ßÂÔÍê³ÉÍøÂçѹËõÈÎÎñ¡£Í¨¹ýÍøÂç¼Þ½Ó²Ù×÷µÄÒýÈ룬±ÜÃâÁË´íÎó¼ôÖ¦ËùÔì³ÉµÄÐÔÄÜËðʧ£¬´Ó¶øÔÚʵ¼Ê²Ù×÷ÖиüºÃµØ±Æ½üÍøÂçѹËõµÄÀíÂÛ¼«ÏÞ¡£ÊôÓÚirregularµÄ·½Ê½£¬µ«ÊÇȨֵ£¨ÍøÂçÁ¬½Ó£©ÖØÒªÐÔÆÀ¹ÀÔÚ²»Í¬µÄÄ£ÐÍÒÔ¼°²»Í¬µÄ²ãÖÐÎÞ·¨È·¶¨£¬²¢ÇÒÈÝÒ×Êܵ½Ï¡Êè¾ØÕóËã·¨¿âÒÔ¼°´ø¿íµÄÏÞÖÆ£¬ÔÚÏà¹ØGPUµÈÓ²¼þ»·¾³Ï¼ÓËÙ²»Ã÷ÏÔ¡£

III. Á¿»¯¼ÓËÙ

¶þÖµÈ¨ÖØÍøÂç[12]

¶þÖµÈ¨ÖØÍøÂç(BWN)ÊÇÒ»ÖÖÖ»Õë¶ÔÉñ¾­ÍøÂçϵÊý¶þÖµ»¯µÄ¶þÖµÍøÂçËã·¨¡£BWNÖ»¹ØÐÄϵÊýµÄ¶þÖµ»¯£¬²¢²ÉÈ¡ÁËÒ»ÖÖ»ìºÍµÄ²ßÂÔ£¬¹¹½¨ÁËÒ»¸ö»ìÓе¥¾«¶È¸¡µãÐÍÖмäÖµÓë¶þÖµÈ¨ÖØµÄÉñ¾­ÍøÂç--BinaryConnect¡£BinaryConnectÔÚѵÁ·¹ý³ÌÖÐÕë¶ÔÌØ¶¨²ãµÄÈ¨ÖØ½øÐÐÊýÖµÉϵĶþÖµ»¯£¬¼´°Ñԭʼȫ¾«¶È¸¡µãÈ¨ÖØÇ¿ÐÐÖÃΪ-1¡¢+1Á½¸ö¸¡µãÊý£¬Í¬Ê±²»¸Ä±äÍøÂçµÄÊäÈëºÍ²ãÖ®¼äµÄÖмäÖµ£¬±£Áôԭʼ¾«¶È¡£¶øÕæÕýÔÚʹÓÃѵÁ·ºÃµÄÄ£ÐÍʱ£¬ÓÉÓÚÈ¨ÖØµÄȡֵ¿ÉÒÔ³éÏóΪ-1¡¢+1£¬Òò´Ë¿ÉÒÔ²ÉÓøüÉÙµÄλÊý½øÐдæ·Å£¬¸üÖØÒªµÄÊÇ£¬ºÜÏÔÈ»È¨ÖØÈ¡ÖµµÄÌØµãʹµÃÔ­±¾ÔÚÉñ¾­ÍøÂçÖеij˷¨ÔËËã¿ÉÒÔ±»¼Ó·¨´úÌæ¡£

³Ë·¨ÔËËãת±äΪ¼Ó·¨µÄºÃ´¦ÔÚÓÚ£º¼ÆËã»úµ×²ãÓ²¼þÔÚʵÏÖÁ½¸önλ¿íÊý¾ÝµÄ³Ë·¨ÔËËãʱ±ØÐëÍê³É2*nλ¿í¶ÈµÄÂß¼­µ¥Ôª´¦Àí£¬¶øÍ¬ÑùÊý¾ÝÔÚÖ´Ðмӷ¨Ê±Ö»ÐèÒªn¸öλ¿íµÄÂß¼­µ¥Ôª´¦Àí£¬Òò´ËÀíÂÛÉÏ¿ÉÒԵõ½2±¶µÄ¼ÓËٱȡ£

¶þÖµÉñ¾­ÍøÂç[13]

ÓÉÓÚBWNÈ¡µÃµÄ³É¹¦£¬ÈËÃÇ¿ªÊ¼³¢ÊÔ¶Ô¶þÖµÍøÂç½øÐиü¼ÓÉîÈëµÄÑо¿¸ÄÔ죬²¢ÊÔͼ´ÓÖлñµÃ¸ü´óµÄÐÔÄÜÌáÉý¡£ÆäÖУ¬×îÖØÒªµÄ»ù´¡¹¤×÷ÊÇMatthieu Courbariaux µÈÈËÔÚ¼¸¸öÔºóÌá³öµÄ¶þÖµÉñ¾­ÍøÂç(BNN)¡£ÕâÒ»·½·¨ÔÚBWNµÄ»ù ´¡ÉϽøÒ»²½¼Ó´ó¶þÖµ»¯Á¦¶È£¬½ø¶øÍêÈ«¸Ä±äÁËÕû¸öÉñ¾­ÍøÂçÖеļÆË㷽ʽ£¬½«ËùÐèµÄ¼ÆËãÁ¿Ñ¹Ëõµ½¼«µÍµÄˮƽ¡£

BNNÒªÇó²»½ö¶ÔÈ¨ÖØ×ö¶þÖµ»¯£¬Í¬Ê±Ò²Òª¶ÔÍøÂçÖмäÿ²ãµÄÊäÈëÖµ½øÐжþÖµ»¯£¬ÕâÒ»²Ù×÷ʹµÃËùÓвÎÓë³Ë·¨ÔËËãµÄÊý¾Ý¶¼±»Ç¿ÖÆ×ª»»Îª¡°-1¡±¡¢¡°+1¡±¶þÖµ¡£ÎÒÃÇÖªµÀ¼ÆËã»úµÄÓ²¼þʵÏÖ²ÉÓÃÁ˶þ½øÖÆ·½Ê½£¬¶øÉñ¾­ÍøÂçÖд¦Àí¹ýµÄ¶þÖµÊý¾Ý Ç¡ºÃÓëÆäÒ»Ö£¬ÕâÑùÒ»À´¾Í¿ÉÒÔ¿¼ÂÇ´Ó±ÈÌØÎ»µÄ½Ç¶ÈÈëÊÖÓÅ»¯¼ÆË㸴ÔÓ¶È¡£

BNNÒ²ÕýÊÇÕâÑù×öµÄ£º½«¶þÖµ¸¡µãÊý¡°-1¡±¡¢¡°+1¡±·Ö±ðÓÃÒ»¸ö±ÈÌØ¡°0¡±¡¢¡°1¡±À´±íʾ£¬ÕâÑù£¬Ô­±¾Õ¼ÓÃ32¸ö±ÈÌØÎ»µÄ¸¡µãÊýÏÖÔÚÖ»Ðè1¸ö±ÈÌØÎ»¾Í¿É´æ·Å£¬ÉÔ¼Ó´¦Àí¾Í¿ÉÒÔʵÏÖ½µµÍÉñ¾­ÍøÂçǰÏò¹ý³ÌÖÐÄÚ´æÕ¼ÓõÄЧ¹û¡£Í¬Ê±£¬Ò»¶Ô¡°-1¡±¡¢¡°+1¡±½øÐг˷¨ÔËË㣬µÃµ½µÄ½á¹ûÒÀÈ»ÊÇ¡°-1¡±¡¢¡°+1¡±£¬Í¨¹ýÕâÒ»ÌØÐԾͿɽ«Ô­±¾µÄ¸¡µãÊý³Ë·¨ÓÃÒ»¸ö±ÈÌØµÄλÔËËã´úÌæ£¬¼«´óµÄѹËõÁ˼ÆËãÁ¿£¬½ø¶ø´ïµ½Ìá¸ßËÙ¶È¡¢½µµÍÄܺĵÄÄ¿µÄ¡£È»¶ø£¬´óÁ¿µÄʵÑé½á¹û±íÃ÷£¬BNNÖ»ÔÚС¹æÄ£Êý¾Ý¼¯ÉÏÈ¡µÃÁ˽ϺõÄ׼ȷÐÔ£¬ÔÚ´ó¹æÄ£Êý¾Ý¼¯ÉÏÔòЧ¹ûºÜ²î¡£

ͬ»òÍøÂç[14](XNOR-net)

XNOR-netÊÇÒ»ÖÖÕë¶ÔCNNµÄ¼òµ¥¡¢¸ßЧ¡¢×¼È·½üËÆ·½·¨£¬ËüµÄºËÐÄ˼ÏëÊÇ£ºÔÚBNNµÄ»ù´¡ÉÏ£¬Õë¶Ô¶þÖµ»¯²Ù×÷¸øÃ¿Ò»²ãÊý¾ÝÔì³ÉµÄÎó²î£¬ÒýÈë×î¼ÑµÄ½üËÆÒò×Ó£¬ÒÔ´ËÀ´ÃÖ²¹¶þÖµ»¯´øÀ´µÄ¾«¶ÈËðʧ£¬Ìá¸ßѵÁ·¾«¶ÈµÄͬʱ»¹Äܱ£³ÖBNNÔÚËٶȺÍÄܺķ½ÃæµÄÓÅÊÆ¡£

ÔÚBNNÖУ¬ÎÞÂÛ¶ÔÈ¨ÖØ¶þÖµ»¯»¹ÊǶÔÖмäÖµ¶þÖµ»¯£¬¶¼»á¸ø±¾ÉíµÄÈ«¾«¶ÈÊý¾ÝÔì³ÉÑÏÖØµÄ¾«¶ÈËðʧ¡£¶øÎÒÃÇÖªµÀÈ«¾«¶ÈÊý¾Ý±¾ÉíÊÇ¿ÉÒԵõ½½ÏºÃµÄѵÁ·Ð§¹ûµÄ£¬Òò´Ë£¬¼õС¶þÖµ»¯´øÀ´µÄ¾«¶ÈËðʧÒԴﵽȫ¾«¶ÈʱÄܹ»ÊµÏÖµÄÁ¼ºÃЧ¹ûÊÇ×îÖ±½ÓµÄ˼·¡£XNOR-netµÄ½â¾ö°ì·¨ÊÇÒýÈë½üËÆÒò×Ó£¬²¢ÇÒÕë¶ÔÈ¨ÖØºÍÖмäÖµ·Ö±ðÒýÈë½üËÆÒò×Ó£¬ÔÚÒ»´Î¼ÆËãºó½«½üËÆÒò×ÓÌí¼Óµ½¼ÆËã½á¹ûÖÐÈ¥£¬Í¨¹ýÉÙÁ¿µÄ¶îÍâ¼ÆËãÀ´ÃÖ²¹¾¡¿ÉÄܶàµÄ¾«¶ÈËðʧ¡£

ͬʱ£¬Èç¹û¾í»ýµÄËùÓвÙ×÷Êý¶¼ÊǶþÖµµÄ£¬Ôò¿ÉÒÔͨXNORºÍλ¼ÆÊý²Ù×÷¹À¼Æ¾í»ý£¬ÈçÏÂͼËùʾ£º

ÈçÉÏͼµÚÈýºÍµÚËÄÐÐËùʾ£¬Õý³£Á½¸ö¾ØÕóÖ®¼äµÄµã³ËÈç¹ûÓÃÔÚÁ½¸ö¶þÖµ¾ØÕóÖ®¼ä£¬ÄÇô¾Í¿ÉÒÔ½«µã³Ë»»³ÉXNOR-Bitcounting operation£¬´Ó32λ¸¡µãÊýÖ®¼äµÄ²Ù×÷Ö±½Ó±ä³É1λµÄXNORÃŲÙ×÷£¬Õâ¾ÍÊǼÓËٵĺËÐÄ¡£

ͬ»òÍøÂçÔÚ´ó¹æÄ£Êý¾Ý¼¯ÉϵÄЧ¹ûÈ¡µÃÁË¾Þ´ó½ø²½£¬ÆäÖÐÔÚImageNetÉϵÄÕýÈ·ÐÔÖ»±ÈÈ«¾«¶ÈµÄÏàÍ¬ÍøÂçµÍÊ®¸ö°Ù·Öµã¡£µ«ÊÇ£¬ÔںܶิÔÓÈÎÎñÖУ¬ÕâÒ»½á¹ûÒÀÈ»²»ÄÜÂú×ãÉú²úÉú»îµÄÐèÒª¡£

ÈýÖµÈ¨ÖØÍøÂç[15]

ÈýÖµÍøÂçÖ÷ÒªÊÇÖ¸ÈýÖµÈ¨ÖØÍøÂç(TWN)¡£¶þÖµÍøÂçÖо«¶ÈµÄËðʧÖ÷ÒªÀ´×ÔÓÚ ¶ÔÊý¾ÝÇ¿ÖÃΪ(-1, +1)ʱÓë±¾ÉíÈ«¾«¶ÈÖ®¼ä²úÉúµÄÎó²î£¬¶øÉñ¾­ÍøÂçÖÐѵÁ·µÃµ½µÄ È¨ÖØ·þ´Ó¾ùֵΪ 0 µÄÕý̬·Ö²¼£¬Õâ¾ÍÒâζמø´ó²¿·ÖÈ¨ÖØÔÚ¶þÖµºó»á²úÉú½«½ü1µÄÎó²î£¬Õâ¶Ô¼ÆËã½á¹ûÔì³ÉµÄÓ°Ï콫ÊÇÊ®·Ö¾Þ´óµÄ¡£ÎªÁ˽â¾öÕâÒ»ÎÊÌ⣬Ìá¸ß¶þÖµÍøÂçµÄÕýÈ·ÂÊ£¬Fengfu LiºÍ Bo ZhangµÈÈËÔÚ¶þÖµµÄ»ù´¡ÉÏÌá³öÁËTWN¡£

TWNµÄºËÐÄÔÚÓÚ¼ÆËã³öÁ¿»¯ãÐÖµ¦¤£¬½«ÊýÖµ´óС´¦ÓÚãÐÖµÄÚµÄÊý¾ÝÇ¿ÖÃΪ0£¬ÆäËûÖµÒÀȻǿÖÃΪ-1»ò+1£¬¶ÔÓÚãÐÖµµÄ¼ÆË㣬×÷ÕßÒ²¸øÁËÂÛÖ¤£¬Äܹ»×îСÈýÖµ»¯Îó²îËù´øÀ´µÄ¾«¶ÈËðʧ£¬»¹Äܹ»Ê¹Éñ¾­ÍøÂçÈ¨ÖØÏ¡Ê軯£¬¼õС¼ÆË㸴ÔӶȵÄͬʱҲÄܵõ½¸üºÃµÄ׼ȷÂʺͷº»¯ÄÜÁ¦¡£ÔÚÔËÐÐЧÂÊÉÏ£¬TWNÓëBWNÏ൱£¬µ«ÊÇ׼ȷÂÊÈ´ÓÐ×ÅÃ÷ÏÔµÄÌáÉý¡£

Á¿»¯Éñ¾­ÍøÂç[16]

Song HanµÈÈËÔÚÁ¿»¯Éñ¾­ÍøÂç(QNN)·½Ãæ×öÁË´óÁ¿Ñо¿¹¤×÷¡£ÕâÒ»ÍøÂçµÄÖ÷ҪĿµÄÊDzüôµôÊý¾ÝµÄÈßÓྫ¶È£¬Ô­±¾32λ¾«¶ÈµÄ¸¡µãÊýÓÉ¡°1 8 23¡±µÄ½á¹¹¹¹³É£¬²Ã¼ôµÄ·½·¨ÊǸù¾ÝԤѵÁ·µÃµ½µÄÈ«¾«¶ÈÉñ¾­ÍøÂçÄ£ÐÍÖеÄÊý¾Ý·Ö²¼£¬·Ö±ð¶Ô½×ÂëºÍλÊýµÄ³¤¶È½øÐÐÊʵ±µÄ¼õÉÙ¡£ÊµÑéÖ¤Ã÷£¬¶ÔÓڴ󲿷ֵÄÈÎÎñÀ´Ëµ£¬6λ±ÈÌØ»òÕß8λ±ÈÌØµÄÊý¾ÝÒѾ­Äܹ»±£Ö¤×ã¹»ºÃµÄ²âÊÔ׼ȷÂÊ¡£

QNNÔÚʵ¼ÊµÄ²Ù×÷ÖÐͨ³£ÓÐÁ½ÖÖÓ¦Ó÷½Ê½£¬Ò»ÖÖÊÇÖ±½ÓÔÚÈí¼þ²ãÃæÊµÏÖÕûÐεÄÁ¿»¯£¬Í¨¹ý¸üÉÙµÄÊý¾ÝλÊýÀ´½µµÍÉñ¾­ÍøÂçÔÚʹÓÃʱ¼ÆËãµÄ¸´ÔÓ¶È£»ÁíÒ»ÖÖÖØÒªµÄÓ¦ÓÃÊÇÕë¶ÔÓÚAIרÓÃоƬµÄ¿ª·¢¡£

ÓÉÓÚоƬ¿ª·¢¿ÉÒÔÉè¼Æ¸÷ÖÖλ¿íµÄ³Ë·¨Æ÷£¬Òò´Ë½«Éñ¾­ÍøÂçÖÐ32λµÄÈ«¾«¶ÈÊý¾Ý¿ÉÒÔ±»´¦Àí³É6λ»ò8λµÄ¸¡µãÊý£¬Í¬Ê±½áºÏÓ²¼þÖ¸¶¨µÄ³Ë·¨¹æÔò£¬¾Í¿ÉÒÔÔÚÓ²¼þÉÏʵÏÖ¸ü¸ßµÄÔËËãЧÂÊ£¬´ïµ½ÊµÊ±ÔËÐÐÉî¶ÈÉñ¾­ÍøÂçµÄÄ¿µÄ¡£ÕâÒ²ÊÇQNN×î´óµÄÀíÂÛÒâÒå¡£µ«ÊÇÈç¹û´ÓÈí¼þ½Ç¶È¶ø·ÇÓ²¼þ½Ç¶È³ö·¢£¬Ö»Êǽ«¸¡µãÊýÁ¿»¯³ÉÕûÐÎÊý£¬¾ÍûÓа취ÏÔÖøµØ½µµÍ¼ÆË㸴ÔÓ¶È£¨³ý·Ç¶ÔÕûÐÎÔÙ½øÐÐÁ¿»¯£©£¬Ò²¾ÍÎÞ·¨´ïµ½ÔÚµÍÅäÓ²¼þ»·¾³ÉÏʵʱÔËÐÐÉî¶ÈÉñ¾­ÍøÂçµÄÄ¿µÄ¡£Òò´Ë£¬ÔÚÈí¼þÉè¼ÆµÄ²ãÃæÉÏ£¬QNNÏà±ÈBNN²¢Ã»ÓÐÌØ±ðÃ÷ÏÔµÄÓÅÊÆ¡£

×ܽá

±¾½ÚÖ÷Òª½éÉÜÁ¿»¯¼ÓËÙÔÚÉî¶ÈѧϰģÐÍѹËõºÍ¼ÓËÙ·½ÏòµÄÓ¦Óã¬Éæ¼°µ½µÄÖ÷Òª¼¼Êõ°üÀ¨£º¶þÖµÈ¨ÖØÍøÂç¡¢¶þÖµÉñ¾­ÍøÂ硢ͬ»òÍøÂç¡¢ÈýÖµÈ¨ÖØÍøÂç¡¢Á¿»¯Éñ¾­ÍøÂçµÈ¡£ÔÚ¶ÔÍøÂç½øÐмÓËÙµÄͬʱ£¬Í¨¹ý²»Í¬µÄÓÅ»¯²ßÂÔÀ´½µµÍ¾«¶ÈµÄËðʧ¡£

×ܽá

±¾ÎÄÖ÷Òª½éÉÜÁËÈýÖÖÖ÷Á÷µÄÉî¶ÈѧϰģÐÍѹËõºÍÄ£ÐͼÓËٵķ½Ïò£¬·Ö±ðΪ£º¼ÓËÙÍøÂç½á¹¹Éè¼Æ£¬¼´Í¨¹ýÓÅ»¯ÍøÂç½á¹¹µÄÉè¼ÆÈ¥¼õÉÙÄ£Ð͵ÄÈßÓàºÍ¼ÆËãÁ¿£»Ä£ÐͲüôºÍÏ¡Ê軯£¬¼´Í¨¹ý¶Ô²»ÖØÒªµÄÍøÂçÁ¬½Ó½øÐвüô£¬Ä£ÐͲüôÖ÷ÒªÕë¶ÔÒѾ­ÑµÁ·ºÃµÄÄ£ÐÍ£¬¶øºËµÄÏ¡Ê軯Ö÷ÒªÊÇÔÚѵÁ·µÄ¹ý³ÌÖнøÐÐÓÕµ¼ÑµÁ·£»Á¿»¯¼ÓËÙ£¬¼´Í¨¹ý¶ÔÍøÂçÖеĸ¡µãÖµ½øÐÐÁ¿»¯´¦Àí£¬Ê¹µÃ¸¡µãÊý¼ÆËãת»»ÎªÎ»²Ù×÷£¨»òÕßСÕûÊý¼ÆË㣩£¬²»½öÄܹ»¼õÉÙÍøÂçµÄ´æ´¢£¬¶øÇÒÄܹ»´ó·ù¶È½øÐмÓËÙ£¬Ê¹µÃÉñ¾­ÍøÂçÔÚCPUÉϵÄÔËÐгÉΪ¿ÉÄÜ£¡µ±È»£¬Éî¶ÈѧϰģÐÍѹËõºÍ¼ÓËٵķ½·¨²»¾ÖÏÞÓÚÎÒÔÚ±¾ÎÄÖеĽéÉÜ£¬»¹ÓÐÆäËûºÜ¶àÀàËÆµÄѹËõºÍ¼ÓËÙËã·¨£¬ÈçµÝ¹é¶þÖµÍøÂçµÈ

   
3424 ´Îä¯ÀÀ       28
Ïà¹ØÎÄÕÂ

»ùÓÚͼ¾í»ýÍøÂçµÄͼÉî¶Èѧϰ
×Ô¶¯¼ÝÊ»ÖеÄ3DÄ¿±ê¼ì²â
¹¤Òµ»úÆ÷ÈË¿ØÖÆÏµÍ³¼Ü¹¹½éÉÜ
ÏîĿʵս£ºÈçºÎ¹¹½¨ÖªÊ¶Í¼Æ×
 
Ïà¹ØÎĵµ

5GÈ˹¤ÖÇÄÜÎïÁªÍøµÄµäÐÍÓ¦ÓÃ
Éî¶ÈѧϰÔÚ×Ô¶¯¼ÝÊ»ÖеÄÓ¦ÓÃ
ͼÉñ¾­ÍøÂçÔÚ½»²æÑ§¿ÆÁìÓòµÄÓ¦ÓÃÑо¿
ÎÞÈË»úϵͳԭÀí
Ïà¹Ø¿Î³Ì

È˹¤ÖÇÄÜ¡¢»úÆ÷ѧϰ&TensorFlow
»úÆ÷ÈËÈí¼þ¿ª·¢¼¼Êõ
È˹¤ÖÇÄÜ£¬»úÆ÷ѧϰºÍÉî¶Èѧϰ
ͼÏñ´¦ÀíËã·¨·½·¨Óëʵ¼ù