ИздаванС Π½Π° систСма Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ TensorFlow 2.0

Π˜Π·ΠΏΡ€Π°Ρ‚Π΅Π½ΠΎ ΠΎΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ TensorFlow 2.0, ΠΊΠΎΠΉΡ‚ΠΎ прСдоставя Π³ΠΎΡ‚ΠΎΠ²ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π·Π° дълбоко машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅, прост ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ интСрфСйс Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Python ΠΈ интСрфСйс ΠΎΡ‚ ниско Π½ΠΈΠ²ΠΎ Π·Π° Π΅Π·ΠΈΠΊΠ° C++, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Ρ‚Π΅ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° изчислитСлни Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. БистСмният ΠΊΠΎΠ΄ Π΅ написан Π½Π° C++ ΠΈ Python ΠΈ разпространява сС ΠΎΡ‚ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·Π° Π½Π° Apache.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π° ΠΎΡ‚ Π΅ΠΊΠΈΠΏΠ° Π½Π° Google Brain ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² услугитС Π½Π° Google Π·Π° Ρ€Π°Π·ΠΏΠΎΠ·Π½Π°Π²Π°Π½Π΅ Π½Π° Ρ€Π΅Ρ‡, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° Π»ΠΈΡ†Π° Π² снимки, опрСдСлянС Π½Π° ΠΏΡ€ΠΈΠ»ΠΈΠΊΠ°Ρ‚Π° Π½Π° изобраТСния, Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° спам Π² Gmail, ΠΈΠ·Π±ΠΎΡ€ Π½ΠΎΠ²ΠΈΠ½ΠΈ Π² Google News ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€Π΅Π²ΠΎΠ΄Π°, ΠΊΠ°Ρ‚ΠΎ сС Π²Π·Π΅ΠΌΠ΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ ΡΠΌΠΈΡΡŠΠ»ΡŠΡ‚. Π Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ‚Π΅ систСми Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ създадСни Π½Π° стандартСн Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€, Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° TensorFlow Π·Π° разпрСдСлянС Π½Π° изчислСния ΠΌΠ΅ΠΆΠ΄Ρƒ мноТСство CPU ΠΈΠ»ΠΈ GPU.

TensorFlow прСдоставя Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΡ‚ Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π·Π° числСни изчислСния, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Ρ‡Ρ€Π΅Π· Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ. Π’ΡŠΠ·Π»ΠΈΡ‚Π΅ Π² Ρ‚Π°ΠΊΠΈΠ²Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ матСматичСски ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Π²Ρ…ΠΎΠ΄Π½ΠΈ/ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ ΠΊΡ€Π°ΠΈΡ‰Π°Ρ‚Π° Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π° прСдставляват ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΈ масиви ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ (Ρ‚Π΅Π½Π·ΠΎΡ€ΠΈ), ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Ρ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΡŠΠ·Π»ΠΈΡ‚Π΅.
Π’ΡŠΠ·Π»ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ присвоСни Π½Π° изчислитСлни устройства ΠΈ Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ асинхронно, ΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ всички подходящи Π·Π° тях Ρ‚Π΅Π·ΠΎΡ€ΠΈ навСднъТ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈ възмоТно ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Π²ΡŠΠ·Π»ΠΈΡ‚Π΅ Π² Π½Π΅Π²Ρ€ΠΎΠ½Π½Π° ΠΌΡ€Π΅ΠΆΠ° ΠΏΠΎ аналогия с Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΡ‚ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π΅Π²Ρ€ΠΎΠ½ΠΈ Π² мозъка.

ΠžΡΠ½ΠΎΠ²Π½ΠΈΡΡ‚ фокус ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°Ρ‚Π° Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° вСрсия бСшС Π²ΡŠΡ€Ρ…Ρƒ опростяванСто ΠΈ Π»Π΅ΠΊΠΎΡ‚Π°Ρ‚Π° Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅. Малко ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ:

  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² API Π½Π° високо Π½ΠΈΠ²ΠΎ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Keras, ΠΊΠΎΠΉΡ‚ΠΎ прСдоставя няколко ΠΎΠΏΡ†ΠΈΠΈ Π·Π° интСрфСйс Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ (послСдоватСлни, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΈ, подкласовС) с Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ изпълнСниС (Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½Π° компилация) ΠΈ с прост ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ API tf.distribute.Strategy Π·Π° организация Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ ΠΊΠΎΠ΄. Π’ допълнСниС към Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° разпространСниС Π½Π° изчислСнията мноТСство GPU, Π½Π°Π»ΠΈΡ‡Π½Π° Π΅ СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° раздСлянС Π½Π° процСса Π½Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° няколко нСзависими процСсора ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Π»Π°ΠΊ TPU (Π’Π΅Π½Π·ΠΎΡ€Π΅Π½ процСсор);
  • ВмСсто Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΌΠΎΠ΄Π΅Π» Π·Π° конструиранС Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° с изпълнСниС Ρ‡Ρ€Π΅Π· tf.Session Π΅ възмоТно Π΄Π° сС Π½Π°ΠΏΠΈΡˆΠ°Ρ‚ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Python, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‡Ρ€Π΅Π· ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° tf.function ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½ΠΈ Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ слСд Ρ‚ΠΎΠ²Π° дистанционно изпълнСни, сСриализирани ΠΈΠ»ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° производитСлност;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ ΠΏΡ€Π΅Π²ΠΎΠ΄Π°Ρ‡ Автограф, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π° ΠΏΠΎΡ‚ΠΎΠΊ ΠΎΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Python Π² ΠΈΠ·Ρ€Π°Π·ΠΈ Π½Π° TensorFlow, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΊΠΎΠ΄ Π½Π° Python във Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ tf.function-decorated, tf.data, tf.distribute ΠΈ tf.keras;
  • SavedModel обСдинява Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ добавя ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΡΡ‚Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»Π°. Π’Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½ΠΈ Π·Π° TensorFlow TensorFlow Lite (Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ устройства), TensorFlow JS (Π² Π±Ρ€Π°ΡƒΠ·ΡŠΡ€ ΠΈΠ»ΠΈ Node.js), ΠžΠ±ΡΠ»ΡƒΠΆΠ²Π°Π½Π΅ Π½Π° TensorFlow ΠΈ TensorFlow Hub;
  • API Π½Π° tf.train.Optimizers ΠΈ tf.keras.Optimizers са ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈ; вмСсто compute_gradients Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ² клас Π·Π° изчисляванС Π½Π° Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΈ Π“Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½Π° Π»Π΅Π½Ρ‚Π°;
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ повишСна производитСлност ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° GPU.
    Бкоростта Π½Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° систСми с Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ процСсори NVIDIA Volta ΠΈ Turing сС ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈ Π΄ΠΎ Ρ‚Ρ€ΠΈ ΠΏΡŠΡ‚ΠΈ;

  • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΎ Основно почистванС Π½Π° API, ΠΌΠ½ΠΎΠ³ΠΎ извиквания са ΠΏΡ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π² ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π΅ спряна. ВмСсто tf.app, tf.flags, tf.logging сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π½ΠΎΠ² API Π·Π° absl-py. Π—Π° Π΄Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ стария API, Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŠΡ‚ compat.v1.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€