Ê×Ò³
ѧϰ
»î¶¯
רÇø
¹¤¾ß
TVP
·¢²¼
¾«Ñ¡ÄÚÈÝ/¼¼ÊõÉçȺ/ÓŻݲúÆ·,¾¡ÔÚС³ÌÐò
Á¢¼´Ç°Íù

10±¶£¡Î¢Èí¿ªÔ´Ê·ÉÏ×î´óNLGÄ£ÐÍ£¬¿ÉѵÁ·1000ÒÚ²ÎÊýµÄÄ£ÐÍ

È˹¤ÖÇÄܵÄ×îÐÂÇ÷ÊÆÊÇ£¬¸ü´óµÄ×ÔÈ»ÓïÑÔÄ£ÐÍ¿ÉÒÔÌṩ¸üºÃµÄ׼ȷÐÔ£¬µ«ÊÇÓÉÓڳɱ¾¡¢Ê±¼äºÍ´úÂ뼯³ÉµÄÕÏ°­£¬½Ï´óµÄÄ£ÐÍÄÑÒÔѵÁ·¡£

΢ÈíÈÕÇ°¿ªÔ´ÁËÒ»¸öÉî¶ÈѧϰÓÅ»¯¿â DeepSpeed£¬Í¨¹ýÌá¸ß¹æÄ£¡¢Ëٶȡ¢¿ÉÓÃÐÔ²¢½µµÍ³É±¾£¬¿ÉÒÔÔÚµ±Ç°Ò»´úµÄ GPU ¼¯ÈºÉÏѵÁ·¾ßÓг¬¹ý 1000 ÒÚ¸ö²ÎÊýµÄÉî¶ÈѧϰģÐÍ£¬¼«´ó´Ù½ø´óÐÍÄ£Ð͵ÄѵÁ·¡£Í¬Ê±£¬Óë×îм¼ÊõÏà±È£¬ÆäϵͳÐÔÄÜ¿ÉÒÔÌá¸ß 5 ±¶ÒÔÉÏ¡£

¸ù¾Ý΢ÈíµÄ½éÉÜ£¬DeepSpeed ¿âÖÐÓÐÒ»¸öÃûΪ ZeRO£¨ÁãÈßÓàÓÅ»¯Æ÷£¬Zero Redundancy Optimizer£©µÄ×é¼þ£¬ÕâÊÇÒ»ÖÖеIJ¢ÐÐÓÅ»¯Æ÷£¬Ëü¿ÉÒÔ´ó´ó¼õÉÙÄ£ÐͺÍÊý¾Ý²¢ÐÐËùÐèµÄ×ÊÔ´£¬Í¬Ê±¿ÉÒÔ´óÁ¿Ôö¼Ó¿ÉѵÁ·µÄ²ÎÊýÊýÁ¿¡£

Ñо¿ÈËÔ±ÀûÓÃÕâЩͻÆÆ´´½¨ÁËͼÁé×ÔÈ»ÓïÑÔÉú³ÉÄ£ÐÍ£¨Turing-NLG£©£¬ÕâÊÇ×î´óµÄ¹«¿ªÓïÑÔÄ£ÐÍ£¬²ÎÊýΪ 170 ÒÚ¡£

ZeRO ×÷Ϊ DeepSpeed µÄÒ»²¿·Ö£¬ÊÇÒ»ÖÖÓÃÓÚ´ó¹æÄ£·Ö²¼Ê½Éî¶ÈѧϰµÄÐÂÄÚ´æÓÅ»¯¼¼Êõ£¬Ëü¿ÉÒÔÔÚµ±Ç°µÄ GPU ¼¯ÈºÉÏѵÁ·¾ßÓÐ 1000 ÒÚ¸ö²ÎÊýµÄÉî¶ÈѧϰģÐÍ£¬ÆäÍÌÍÂÁ¿Êǵ±Ç°×î¼ÑϵͳµÄ 3 µ½ 5 ±¶¡£Ëü»¹ÎªÑµÁ·¾ßÓÐÊýÍòÒÚ¸ö²ÎÊýµÄÄ£ÐÍÌṩÁËÒ»ÌõÇåÎúµÄ˼·¡£

ZeRO ¾ßÓÐÈý¸öÖ÷ÒªµÄÓÅ»¯½×¶Î£¬·Ö±ð¶ÔÓ¦ÓÚÓÅ»¯Æ÷״̬¡¢ÌݶȺͲÎÊý·ÖÇø¡£

ZeRO ¿Ë·þÁËÊý¾Ý²¢ÐкÍÄ£ÐͲ¢ÐеľÖÏÞÐÔ£¬Í¬Ê±ÊµÏÖÁ½ÕßµÄÓŵ㣬Ëüͨ¹ý¿çÊý¾Ý²¢Ðнø³Ì½«Ä£ÐÍ״̬»®·ÖΪÉÏͼËùʾµÄ²ÎÊý¡¢ÌݶȺÍÓÅ»¯Æ÷״̬·ÖÇø£¬¶ø²»ÊǸ´ÖÆËüÃÇ£¬´Ó¶øÏû³ýÁËÊý¾Ý²¢Ðнø³ÌÖ®¼äµÄÄÚ´æÈßÓà¡£

ÔÚѵÁ·ÆÚ¼äʹÓö¯Ì¬Í¨ÐŹ滮£¨dynamic communication schedule£©£¬ÔÚ·Ö²¼Ê½É豸֮¼ä¹²Ïí±ØÒªµÄ״̬£¬ÒÔ±£³ÖÊý¾Ý²¢ÐеļÆËãÁ£¶ÈºÍͨÐÅÁ¿¡£

ĿǰʵʩÁË ZeRO µÄµÚÒ»½×¶Î£¬¼´ÓÅ»¯Æ÷״̬·ÖÇø£¨¼ò³Æ ZeRO-OS£©£¬¾ßÓÐÖ§³Ö 1000 ÒÚ²ÎÊýÄ£Ð͵ÄÇ¿´óÄÜÁ¦£¬´Ë½×¶ÎÓë DeepSpeed Ò»Æð·¢²¼¡£

DeepSpeed Óë PyTorch ¼æÈÝ£¬DeepSpeed API ÊÇÔÚ PyTorch ÉϽøÐеÄÇáÁ¿¼¶·â×°£¬ÕâÒâζ×Å¿ª·¢Õß¿ÉÒÔʹÓà PyTorch ÖеÄÒ»ÇУ¬¶øÎÞÐèѧϰÐÂƽ̨¡£´ËÍ⣬DeepSpeed ¹ÜÀí×ÅËùÓÐÑù°å»¯µÄ SOTA ѵÁ·¼¼Êõ£¬ÀýÈç·Ö²¼Ê½ÑµÁ·¡¢»ìºÏ¾«¶È¡¢ÌݶÈÀÛ»ýºÍ¼ì²éµã£¬¿ª·¢Õß¿ÉÒÔרעÓÚÄ£ÐÍ¿ª·¢¡£

ͬʱ£¬¿ª·¢Õß½öÐè¶Ô PyTorch Ä£ÐͽøÐм¸ÐдúÂëµÄ¸ü¸Ä£¬¾Í¿ÉÒÔÀûÓà DeepSpeed ¶ÀÌصÄЧÂʺÍЧÒæÓÅÊÆÀ´Ìá¸ßËٶȺ͹æÄ£¡£

DeepSpeed ÔÚÒÔÏÂËĸö·½Ã涼±íÏÖ³öÉ«£º

¹æÄ££ºÄ¿Ç°×îÏȽøµÄ´óÐÍÄ£ÐÍ£¬ÀýÈç OpenAI GPT-2¡¢NVIDIA Megatron-LM ºÍ Google T5£¬·Ö±ð¾ßÓÐ 15 ÒÚ¡¢83 ÒÚºÍ 110 ÒÚ¸ö²ÎÊý£¬¶ø DeepSpeed µÄ ZeRO µÚÒ»½×¶ÎÌṩϵͳ֧³Ö£¬ÒÔÔËÐжà´ï 1000 ÒÚ¸ö²ÎÊýµÄÄ£ÐÍ£¬ÕâÊDZȵ±Ç°×îÏȽøµÄÄ£ÐÍ´ó 10 ±¶¡£

δÀ´¼Æ»®Ôö¼Ó¶Ô ZeRO µÚ¶þºÍµÚÈý½×¶ÎµÄÖ§³Ö£¬´Ó¶øÌṩ¸ß´ï 2000 ÒÚ¸öÄËÖÁÊýÍòÒÚ¸ö²ÎÊýµÄÄ£Ð͵ÄÄÜÁ¦¡£

ËٶȣºÔÚ¸÷ÖÖÓ²¼þÉÏ£¬Ä¿Ç°¹Û²ìµ½µÄÍÌÍÂÁ¿±Èµ±Ç°×îÏȽø¼¼Êõ¸ß³ö 5 ±¶¡£ÀýÈ磬ΪÁËÔÚ GPT ϵÁй¤×÷¸ºÔØÉÏѵÁ·´óÐÍÄ£ÐÍ£¬DeepSpeed ½«»ùÓÚ ZeRO µÄÊý¾Ý²¢ÐÐÓë NVIDIA Megatron-LM Ä£ÐͲ¢ÐÐÏà½áºÏ£¬ÔÚ¾ßÓеʹø¿í»¥Á¬µÄ NVIDIA GPU ¼¯ÈºÉÏ£¨Ã»ÓÐ NVIDIA NVLink »ò Infiniband£©£¬Óë½ö¶Ô¾ßÓÐ 15 ÒÚ²ÎÊýµÄ±ê×¼ GPT-2 Ä£ÐÍʹÓà Megatron-LM Ïà±È£¬DeepSpeed ½«ÍÌÍÂÁ¿Ìá¸ßÁË 3.75 ±¶¡£

ÔÚ¾ßÓиߴø¿í»¥Á¬µÄ NVIDIA DGX-2 ¼¯ÈºÉÏ£¬¶ÔÓÚ 20?ÖÁ 800 ÒÚ¸ö²ÎÊýµÄÄ£ÐÍ£¬ËÙ¶ÈÒª¿ì 3 µ½ 5 ±¶¡£ÕâЩÍÌÍÂÁ¿µÄÌá¸ßÀ´×Ô DeepSpeed ¸ü¸ßµÄÄÚ´æЧÂÊÒÔ¼°Ê¹Óýϵͳ̶ȵÄÄ£ÐͲ¢ÐкͽϴóµÄÅú´¦ÀíÁ¿À´ÄâºÏÕâЩģÐ͵ÄÄÜÁ¦¡£

³É±¾£ºÌá¸ßÍÌÍÂÁ¿Òâζ×Å´ó´ó½µµÍѵÁ·³É±¾£¬ÀýÈ磬ҪѵÁ·¾ßÓÐ 200 ÒÚ¸ö²ÎÊýµÄÄ£ÐÍ£¬DeepSpeed ÐèÒªµÄ×ÊÔ´ÊÇÔ­À´µÄ 3/4¡£

Ò×ÓÃÐÔ£ºÖ»Ðè¸ü¸Ä¼¸ÐдúÂë¼´¿Éʹ PyTorch Ä£ÐÍʹÓà DeepSpeed ºÍ ZeRO¡£Ó뵱ǰµÄÄ£ÐͲ¢ÐпâÏà±È£¬DeepSpeed ²»ÐèÒªÖØÐÂÉè¼Æ´úÂë»òÖع¹Ä£ÐÍ£¬ËüҲûÓжÔÄ£Ðͳߴ硢Åú´¦Àí´óС»òÈκÎÆäËüѵÁ·²ÎÊý¼ÓÒÔÏÞÖÆ¡£

¶ÔÓÚ²ÎÊý¶à´ï 60 ÒÚµÄÄ£ÐÍ£¬¿ÉÒÔ·½±ãµØʹÓÃÓÉ ZeRO ÌṩµÄÊý¾Ý²¢ÐÐÄÜÁ¦£¬¶øÎÞÐèÄ£ÐͲ¢ÐС£¶øÏà±È֮ϣ¬¶ÔÓÚ²ÎÊý³¬¹ý 13 ÒÚµÄÄ£ÐÍ£¬±ê×¼Êý¾Ý²¢Ðн«ºÄ¾¡ÄÚ´æ¡£ZeRO µÚ¶þºÍµÚÈý½×¶Î½«½øÒ»²½Ôö¼Ó½öͨ¹ýÊý¾Ý²¢Ðм´¿ÉѵÁ·µÄÄ£ÐÍ´óС¡£´ËÍ⣬DeepSpeed Ö§³Ö ZeRO Ö§³ÖµÄÊý¾Ý²¢ÐÐÓëÄ£ÐͲ¢ÐеÄÁé»î×éºÏ¡£

×îºó¸½ÉÏGitHubµØÖ·£ºhttps://github.com/microsoft/DeepSpeed

  • ·¢±íÓÚ:
  • Ô­ÎÄÁ´½Ó£ºhttp://news.51cto.com/art/202002/611139.htm
  • ÈçÓÐÇÖȨ£¬ÇëÁªÏµ cloudcommunity@tencent.com ɾ³ý¡£

Ïà¹Ø¿ìѶ

ɨÂë

Ìí¼ÓÕ¾³¤ ½ø½»Á÷Ⱥ

ÁìȡרÊô 10ÔªÎÞÃż÷ȯ

˽Ïí×îР¼¼Êõ¸É»õ

ɨÂë¼ÓÈ뿪·¢ÕßÉçȺ
Áìȯ
http://www.vxiaotou.com