Π’ΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΠ» ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ. Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ.
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Mac Yosemite, Π·Π°Π³ΡΡΠΆΠ΅Π½ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pip3 ΡΠ΅ΡΠ΅Π· anaconda, Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ python 3.5.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
ΠΡΠ°ΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ anaconda Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠ°ΠΊ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² SSE4.1, SSE4.2 ΠΈ AVX ΡΠ΅ΡΠ΅Π· ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄ anaconda? Π― Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ.
ΠΡΠΎ Π½Π΅ ΠΎΡΠΈΠ±ΠΊΠ°, Π° ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, Π³ΠΎΠ²ΠΎΡΡΡΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ TensorFlow ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
Π’ΠΠ Π²ΠΎΠΏΡΠΎΡ ΠΎΠ± ΡΡΠΎΠΌ: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ TensorFlow ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°: https://www.tensorflow.org/install/install_sources
ΠΠ°ΠΊ Π·Π°ΡΠ²ΠΈΠ» @Carmezim, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π²Π°ΡΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΡ
ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·.
Π, ΠΊΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡ
, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ TF Ρ ΡΡΠΈΠΌΠΈ ΡΠ»Π°Π³Π°ΠΌΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ TF Π±ΡΡΡΡΠ΅Π΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π½Π°ΡΠ΅ΠΌΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ TensorFlow ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ TF Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π½Π°Π±ΠΎΡΠΎΠ² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ SIMD.
Π₯ΠΎΡΠΎΡΠΎ ΡΠΏΠ°ΡΠΈΠ±ΠΎ. Π― ΠΏΠΎΠ½ΡΠ».
ΠΡΡΡ Π»ΠΈ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎ Π·Π°ΠΌΠΎΠ»ΡΠ°ΡΡ?
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°Π³Π»ΡΡΠΈΡΡ ΡΡΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ - ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΠΊΠΎΠ΄ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° --config opt
.
Π§ΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Β«ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈΒ» (Ρ
ΠΎΡΡ ΠΈ Π½Π΅ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² Unix / Linux / OSX:
python myscript.py 2> / dev / null
@CGTheLegend @ocampesato Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ TF TF_CPP_MIN_LOG_LEVEL
ΠΈ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
INFO
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΄Π»Ρ Π½Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1WARNINGS
Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ, 2ERROR
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 3Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ:
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
import tensorflow as tf
@gunan @mrry Π― Π²ΠΈΠ΄Π΅Π» ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΠ΄Π΅ΠΉ, Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Π½ΡΡ Π² ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ, Π΅ΡΡΡ Π»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ?
Π― ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ ΠΈΠ· ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ tensorflow, ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ» ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.
pip3 install --upgrade tensorflow
@jadeydi ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, "pip" ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ», ΡΡΠΎΠ±Ρ Π²Ρ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΈ ΡΡΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ.
Π― ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π» ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ SSE4.1 SSE4.2 AVX AVX2 ΠΈ FMA. Π‘Π±ΠΎΡΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½Π° Π·Π΄Π΅ΡΡ: https://github.com/lakshayg/tensorflow-build . ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ.
ΠΡΠΈΠ²Π΅Ρ @lakshayg , ΡΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ https://github.com/yaroslavvb/tensorflow-community-wheels
ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΡΠ±ΠΎΡΠΊΠ° ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ pip install tensorflow-gpu
Π½Π° Ubuntu? ΠΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π±ΡΡΡΡΠ΅Π΅ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ CPU ΠΈΠ»ΠΈ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π½Π° GPU?
http://www.anandtech.com/show/2362/5
ΠΡΠΎ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ Π² Google ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ»ΠΈΡΠ½ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ.
test - ΡΡΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ DivX Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ VirtualDub 1.7.6 ΠΈ DivX 6.7. SSE4 ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ Π½ΠΎΠ²ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π»Ρ ΠΎΡΠ΅Π½ΠΊΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΊΠΎΡΡΠ΅ΡΡΡ Π΄Π²ΡΠΌΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ SSE4:
MPSADBW
ΠΈPHMINPOSUW
. ΠΠ΄Π΅Ρ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΡΠ΅Π½ΠΊΠ° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ (Π²ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΊΠ°Π΄ΡΠ°Ρ Π²ΠΈΠ΄Π΅ΠΎ) ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΡΡΠΌΠΌ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΡ ΡΠ°Π·Π½ΠΎΡΡΠ΅ΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΡΡΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ. ΠΠ½ΡΡΡΡΠΊΡΠΈΡ SSE2PSADBW
ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΡ Π΄Π²Π΅ ΡΡΠΌΠΌΡ ΡΠ°Π·Π½ΠΎΡΡΠ΅ΠΉ ΠΈΠ· ΠΏΠ°ΡΡ 16B ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°; ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ SSE4MPSADBW
ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΠΎΡΠ΅ΠΌΡ.
...
ΠΠ° Π½Π°ΡΠ΅ΠΌ QX9650 ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌ SSE4 Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π° 45% Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ Ρ SSE2.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ tensorflow, Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠ½ΠΈ ΡΠΎΠ³ΠΎ ΡΡΠΎΡΡ.
ΠΠ·Π²ΠΈΠ½ΠΈΡΠ΅, Π½ΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅Ρ ΡΡΠ΅Π½Π°ΡΠΈΡΡ TF - ΡΡΠΎ Π½Π΅Π»Π΅ΠΏΠΎ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡ TF ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΠΈ Π½Π΅ Ρ ΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ Π΄Π΅Π»Π°ΡΡ.
@ TomAshley303 , ΡΡΠΎ
Π― ΠΏΡΠΎΡΠ΅Π» ΡΠ΅ΡΠ΅Π· Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ... ΠΡΠ» ΠΏΡΡΠΌΠΎΠ»ΠΈΠ½Π΅ΠΉΠ½ΡΠΌ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π» Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΡΠΎ Π½Π΅ ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΊΠΎΡΠΌΠ°Ρ Π΄Π»Ρ cmake C ++.
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ bash Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ TF ΠΏΠΎΠ΄ MacOS / Linux. ΠΠ½ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π¦Π ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠ±ΠΎΡΠΊΠΈ. ΠΡΠΌΠ°Π» ΡΠΎΠ·Π΄Π°ΡΡ PR, Π½ΠΎ ΠΏΠ°ΠΏΠΊΠΈ ΡΠΎ ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ (Ρ Π΅Π»ΠΏΠ΅ΡΠ°ΠΌΠΈ) Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΎΠΊ Π½Π΅ Π½Π°ΡΠ΅Π», ΡΠΎΠ»ΡΠΊΠΎ ci_build. ΠΡΠ»ΠΈ Π΅ΡΡΡ ΡΠΌΡΡΠ», Ρ ΡΠ΄Π΅Π»Π°Ρ ΡΡΠΎ
ΡΡΡΡ
https://gist.github.com/venik/9ba962c8b301b0e21f99884cbd35082f
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Π΄Π»Ρ @gunan
Π― ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π» TensorFlow. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ½ΠΎΠ²Π° Π²ΡΡΡΠ½ΠΈΡΡ, ΠΊΠ°ΠΊ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ TensorFlow Π½Π° Π½ΠΎΠ²ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΡΠΎ Π³ΠΎΠ»ΠΎΠ²Π½Π°Ρ Π±ΠΎΠ»Ρ, Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ Π²Π°ΠΌΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΡΡΠ½Π°.
Π’ΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΠΌΠ½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΠΌΠ΅ΡΠΎΠ½ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ Π² Π±Π΅ΡΠ΅Π½ΡΡΠ²ΠΎ. ΠΠ΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΠΈΠ· pip / pip3, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ΄Π°Π΅Ρ Π²Π°ΠΌ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ Π΄Π½Ρ.
ΠΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ https://www.tensorflow.org/install/install_sources ΠΈ ΡΠ²Π½ΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ, ΠΊΠ°ΠΊ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ SSE / AVX.
Π Π΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π΄Π»Ρ ΠΌΠ΅Π½Ρ: Π²Π²Π΅Π΄ΠΈΡΠ΅ Β«-mavx -msse4.1 -msse4.2Β» ΠΏΡΠΈ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ (ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ./configure).
ΠΠ΅ΡΠΆΠ΅Π»ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΎ Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅?
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΎΡΠ²Π΅ΡΡ @Carmezim , Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ avx ΠΈ sse. Π― ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π» fast-rcnn (resnet-101) Π½Π° Intel. Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π° 30%, ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ.
ΠΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΠΈ ΠΊΠΎΠ΄Ρ Π²Π²Π΅ΡΡ
Ρ.
ΠΈΠΌΠΏΠΎΡΡ ΠΠ‘
os.environ ['TF_CPP_MIN_LOG_LEVEL'] = '2'
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ ΠΊΠ°ΠΊ tf
ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ Π·Π΄Π΅ΡΡ: https://stackoverflow.com/a/44984610
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΡΠ΅Π΄Ρ:
TF_CPP_MIN_LOG_LEVEL, value = 2. ΠΠ°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ IDE.
ΠΠ΅Π»ΡΠ·Ρ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ
ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠ°Π²Π½ΠΈΡΠ΅ Π΄Π²Π° ΠΊΠΎΠ΄Π°, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ (Π² ΠΈΠ΄Π΅Π°Π»Π΅) Π½Π° 100% Π½Π° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°Ρ
, ΠΎΠ΄ΠΈΠ½ Π½Π° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ Tensorflow, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ SIMD, Π° Π΄ΡΡΠ³ΠΎΠΉ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ (ΠΈ, Π½Π°Π΄Π΅ΡΡΡ, ΠΈ Π² ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ).
IC: \ tf_jenkinshome \ workspace \ rel-win \ M \ windows \ PY \ 36 \ tensorflow \ core \ platform \ cpu_feature_guard.cc: 137] ΠΠ°Ρ Π¦Π ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΡΡΠΎΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» TensorFlow Π½Π΅ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½: AVX AVX2
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΌΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π½ΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ ΠΏΠΎΠ½ΡΡΡ Β«Π―Β» Π² Π½Π°ΡΠ°Π»Π΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΡΠΎ-ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ½Π΅ ΠΏΠΎΠΌΠΎΡΡ.
Β«IΒ» - ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Β«INFOΒ». ΠΡΡΠ³ΠΈΠ΅ Π±ΡΠΊΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ E Π΄Π»Ρ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ F Π΄Π»Ρ ΡΠ°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ.
ΠΡΠ°ΠΊ, Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Ρ ΠΏΠΎΠΌΠΎΡΡΡ conda. ΠΡΠ»ΠΈ Ρ Ρ ΠΎΡΡ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° Π½Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΊΠΎΡΠΎΡΡΠΈ, Π½ΡΠΆΠ½ΠΎ Π»ΠΈ ΠΌΠ½Π΅ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΌΠΎΡ conda install tenorflow? ΠΠ»ΠΈ ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅, ΠΈ Ρ ΠΌΠΎΠ³Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°?
Π― ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» DeepSpeech, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΡΠ²Π΅Ρ DeepSpeech. ΠΠΎΡΠ΅Π», ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ, ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ - Β«2018-01-17 08: 21: 49.120154: F tensorflow / core / platform / cpu_feature_guard.cc: 35] ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° TensorFlow Π±ΡΠ»Π° ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ AVX2, Π½ΠΎ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ. t Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π½Π° Π²Π°ΡΠ΅ΠΉ ΠΌΠ°ΡΠΈΠ½Π΅.
ΠΡΠ΅ΡΠ²Π°Π½ΠΎ (ΡΠ΄ΡΠΎ ΡΠ±ΡΠΎΡΠ΅Π½ΠΎ) "
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ TensorFlow Π½Π° ΡΠΎΠΌ ΠΆΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΡΡΡ Π»ΠΈ ΡΠΏΠΈΡΠΎΠΊ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ, ΡΡΠΎΠ±Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Kubuntu 17.10.1 ΠΈ HP Probook 4330S, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°?
ΠΠΎΡΠ΅ΠΌΡ Π½Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² windows? Π£ ΠΌΠ΅Π½Ρ ΡΠ΅ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Ρ Ρ ΠΎΡΠ΅Π» Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠ° ΠΈ, Π° Π½Π΅ Nvidia. Π§ΡΠΎ ΠΌΠ½Π΅ Π΄Π΅Π»Π°ΡΡ?
* Π£ ΠΌΠ΅Π½Ρ Π½Π΅Ρ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΡ Nvidia, Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΠΈ ΠΎΠ΄Π½Π°, ΡΡΠΎ ΠΌΠ½Π΅ Π΄Π΅Π»Π°ΡΡ?
* ΠΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠ° AMD .. Π°Π²ΡΠΎΠ·Π°ΠΌΠ΅Π½Π°
ΠΡΠΎ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ±ΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π° ΠΌΠΎΠΈΡ ΡΠ΅ΡΡΠΎΠ²ΡΡ Π±Π»ΠΎΠΊΠ°Ρ . ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ AMD, Ρ ΡΠΎΠ·Π΄Π°Π» ΠΊΠΎΡΠΎΠ±ΠΊΡ Tenorflow Digital Ocean, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ, Π½ΠΎ, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΠ°ΠΌ ΡΠΎΠΆΠ΅ Π½Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ², ΠΈ ΡΡΠΎ Ρ ΡΡΠ΅ΡΠΊΠΎΠΌ ΠΏΡΠΎΠ²Π°Π»ΠΈΠ²Π°Π΅ΡΡΡ.
`# Job id 0
ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ hparams Π² / home / science / tf-demo / models / nmt-chatbot / model / hparams
ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ hparams Π² / home / science / tf-demo / models / nmt-chatbot / model / best_bleu / hparams
Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ = scaled_luong
Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅_Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ° = ΡΡΠ°Π½Π΄Π°ΡΡ
batch_size = 128
beam_width = 10
best_bleu = 0
best_bleu_dir = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / models / nmt-chatbot / model / best_bleu
check_special_token = ΠΡΠ°Π²Π΄Π°
colocate_gradients_with_ops = ΠΠ΅ΡΠ½ΠΎ
decay_factor = 1.0
decay_steps = 10000
dev_prefix = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / data / tst2012
Π²ΡΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ = 0,2
encoder_type = bi
eos =
epoch_step = 0
Forgot_bias = 1.0
infer_batch_size = 32
init_op = ΡΠ½ΠΈΡΠΎΡΠΌΠ°
init_weight = 0,1
learning_rate = 0,001
learning_rate_decay_scheme =
length_penalty_weight = 1.0
log_device_placement = ΠΠΎΠΆΡ
max_gradient_norm = 5.0
max_train = 0
ΠΌΠ΅ΡΡΠΈΠΊΠΈ = ['bleu']
num_buckets = 5
num_embeddings_partitions = 0
num_gpus = 1
num_layers = 2
num_residual_layers = 0
num_train_steps = 500000
num_translations_per_input = 10
num_units = 512
ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ = Π°Π΄Π°ΠΌ
out_dir = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / ΠΌΠΎΠ΄Π΅Π»Ρ
output_attention = ΠΡΠ°Π²Π΄Π°
override_loaded_hparams = ΠΠ΅ΡΠ½ΠΎ
pass_hidden_state = ΠΠ΅ΡΠ½ΠΎ
random_seed = ΠΠ΅Ρ
ΠΎΡΡΠ°ΡΠΎΠΊ = ΠΠΎΠΆΡ
share_vocab = ΠΠΎΠΆΡ
sos =
source_reverse = ΠΠΎΠΆΡ
src = ΠΎΡ
src_max_len = 50
src_max_len_infer = ΠΠ΅Ρ
src_vocab_file = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / data / vocab.from
src_vocab_size = 15003
start_decay_step = 0
steps_per_external_eval = ΠΠ΅Ρ
steps_per_stats = 100
subword_option =
test_prefix = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / data / tst2013
tgt = to
tgt_max_len = 50
tgt_max_len_infer = ΠΠ΅Ρ
tgt_vocab_file = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / data / vocab.to
tgt_vocab_size = 15003
time_major = ΠΠ΅ΡΠ½ΠΎ
train_prefix = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-demo / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-chatbot / data / train
unit_type = lstm
Dictionary_prefix = / Π³Π»Π°Π²Π½Π°Ρ / Π½Π°ΡΠΊΠ° / tf-Π΄Π΅ΠΌΠΎ / ΠΌΠΎΠ΄Π΅Π»ΠΈ / nmt-ΡΠ°Ρ-Π±ΠΎΡ / Π΄Π°Π½Π½ΡΠ΅ / ΡΠ»ΠΎΠ²Π°ΡΡ
Warmup_scheme = t2t
Warmup_steps = 0
num_bi_layers = 1, num_bi_residual_layers = 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DropoutWrapper, dropout = 0.2 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DropoutWrapper, dropout = 0.2 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DropoutWrapper, dropout = 0.2 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 1 LSTM, Forgot_bias = 1 DropoutWrapper, dropout = 0.2 DeviceWrapper, device = / gpu: 0
ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ = 0,001, ΡΠ°Π³ΠΈ_ΡΠ°Π·ΠΌΠΈΠ½ΠΊΠΈ = 0, ΡΡ
Π΅ΠΌΠ°_ΡΠ°Π·ΠΌΠΈΠ½ΠΊΠΈ = t2t
decay_scheme =, start_decay_step = 0, decay_steps 10000, decay_factor 1
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ_Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠΉ: 0 , (15003, 512),
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅_ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ: 0 , (15003, 512),
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ_rnn / bw / basic_lstm_cell / ΡΠ΄ΡΠΎ: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / encoder / twoirectional_rnn / bw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / memory_layer / kernel: 0 , (1024, 512),
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / kernel: 0 , (1536, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / bias: 0 , (2048,), / device: GPU : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / luong_attention / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅_g: 0, (), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / ΡΡΠΎΠ²Π΅Π½Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ / ΡΠ΄ΡΠΎ: 0 , (1536, 512), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / decoder / output_projection / kernel: 0 , (512, 15003), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
num_bi_layers = 1, num_bi_residual_layers = 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 1 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ_Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠΉ: 0 , (15003, 512),
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅_ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ: 0 , (15003, 512),
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ_rnn / bw / basic_lstm_cell / ΡΠ΄ΡΠΎ: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / encoder / twoirectional_rnn / bw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / memory_layer / kernel: 0 , (1024, 512),
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / kernel: 0 , (1536, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / bias: 0 , (2048,), / device: GPU : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / luong_attention / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅_g: 0, (), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / ΡΡΠΎΠ²Π΅Π½Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ / ΡΠ΄ΡΠΎ: 0 , (1536, 512), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / decoder / output_projection / kernel: 0 , (512, 15003), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
num_bi_layers = 1, num_bi_residual_layers = 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 0 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
ΡΡΠ΅ΠΉΠΊΠ° 1 LSTM, Forgot_bias = 1 DeviceWrapper, device = / gpu: 0
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ_Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠΉ: 0 , (15003, 512),
Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅_ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ: 0 , (15003, 512),
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / encoder / twoirectional_rnn / fw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ / Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ_rnn / bw / basic_lstm_cell / ΡΠ΄ΡΠΎ: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / encoder / twoirectional_rnn / bw / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / memory_layer / kernel: 0 , (1024, 512),
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / kernel: 0 , (1536, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_0 / basic_lstm_cell / bias: 0 , (2048,), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / kernel: 0 , (1024, 2048), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: GPU : 0
dynamic_seq2seq / decoder / ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ / multi_rnn_cell / cell_1 / basic_lstm_cell / bias: 0 , (2048,), / device: GPU : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / luong_attention / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅_g: 0, (), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ_seq2seq / Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ / Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ / ΡΡΠΎΠ²Π΅Π½Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ / ΡΠ΄ΡΠΎ: 0 , (1536, 512), / ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ : 0
dynamic_seq2seq / decoder / output_projection / ΡΠ΄ΡΠΎ: 0 , (512, 15003),
2018-02-26 18: 19: 44.862736: I tensorflow / core / platform / cpu_feature_guard.cc: 137] ΠΠ°Ρ Π¦Π ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ
ΡΡΠΎΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» TensorFlow Π½Π΅ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½: SSE4.1 SSE4.2 AVX AVX2 FMA
Π£Π±ΠΈΡ
ΠΊΠ°ΠΊΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ Π³Π΄Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΊΠ°ΠΊ ΡΠΊΠ°ΠΆΠΈΡΠ΅, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°. ΠΠ½Π΅ ΠΎΡΡΠ°ΡΠ½Π½ΠΎ Π½ΡΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡΡ.
ΠΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π»ΠΈ ΡΡΠΎ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°?
Π§ΡΠΎ ΠΆ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Π² ΡΡΠ΅Π΄Π΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ k-fold Π² KerasClassifier.
Π§ΡΠΎΠ±Ρ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΊ Π²ΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡΡ.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ
ΠΡΠΎΡΡΠΎ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π½Π° ΡΠΊΡΠ°Π½Π΅, ΡΡΠΎΠ±Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ tenorflow.
Π― Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²Π°ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ tenorflow
sudo apt-get update
Π£Π΄Π°ΡΠΈ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°ΠΉΡΠ΅ΡΡ ...
ΠΡΠΎΡΡΠΎ Π½Π°ΠΏΠΎΠΌΠ½Ρ Π² ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅, ΡΡΠΎ Π²Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°Π³Π»ΡΡΠ°ΡΡ ΡΡΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ - Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π° 43% ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ², Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠΈΡ.
ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ tenorflow Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° "tensorflow-1.6.0-cp36-cp36m-win_amd64.whl"
@anozele pip3 install --upgrade *path to wheel file*
@gunan --config = opt Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, --copt = "- msse4.2", ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ TensorFlow ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ Intel, https://software.intel.com/en-us/articles/intel-optimization-for-tensorflow-installation-guide , Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Intel Tensorflow, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΡΡ MKL. ΠΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠ· Tensorflow ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ?
ΠΡΠΎ Π½Π΅ ΠΎΡΠΈΠ±ΠΊΠ°, Π° ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, Π³ΠΎΠ²ΠΎΡΡΡΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ TensorFlow ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
Π’ΠΠ Π²ΠΎΠΏΡΠΎΡ ΠΎΠ± ΡΡΠΎΠΌ: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ TensorFlow ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°: https://www.tensorflow.org/install/install_sources
ΠΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎ Π½Π΅ Π±ΡΡΡΡΠ΅Π΅ , ΡΠ΅ΠΌ Ρ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ -FMA -AVX -sse https://stackoverflow.com/questions/57197854/fma-avx-sse-flags-did-not-bring-me-good-performance
ΠΡΠΈΠ²Π΅Ρ. ΠΠ·Π²ΠΈΠ½ΠΈΡΠ΅, Π΅ΡΠ»ΠΈ Ρ Π±ΡΡ ΠΌΠ΅ΡΡΠ²ΡΡ Π»ΠΎΡΠ°Π΄Ρ. ΠΡΠΎΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΊΠΎΠ»Π΅ΡΠΎ ΠΏΠΈΠΏΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ?
ΠΡΠΈΠ²Π΅Ρ. ΠΠ·Π²ΠΈΠ½ΠΈΡΠ΅, Π΅ΡΠ»ΠΈ Ρ Π±ΡΡ ΠΌΠ΅ΡΡΠ²ΡΡ Π»ΠΎΡΠ°Π΄Ρ. ΠΡΠΎΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΊΠΎΠ»Π΅ΡΠΎ ΠΏΠΈΠΏΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ?
ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΡΠ°ΡΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ. Π‘ΠΌ. ΠΠΈΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ AVX, AVX2 ΠΈΠ»ΠΈ AVX512. ΠΡΠ»ΠΈ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» pip ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ Ρ ΡΡΠΈΠΌΠΈ Π½Π°Π±ΠΎΡΠ°ΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΡΠ°ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°Ρ .
ΠΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π»ΠΈ ΡΡΠΎ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°?
ΠΠ΅Ρ, ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΎΡΠΊΠ»ΡΡΠΈΠ»ΠΈ Π·Π²ΡΠΊ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ Tensorflor Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Ρ ΡΡΠΈΠΌ ΡΠ΅ΠΏΠΎ:
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΊΠΎΠ΄ Π½ΠΈΠΆΠ΅:
https://github.com/fo40225/tensorflow-windows-wheel
ΠΠ½ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π» ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ TF Ρ SSE ΠΈ AVX.
ΠΠ½ ΡΠΎΠ±ΡΠ°Π» ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ TF!
ΠΡΠ° ΡΡΠ°ΡΡΡ Π±ΡΠ»Π° Ρ
ΠΎΡΠΎΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ»Π°Π³ΠΈ.
https://medium.com/@pierreontech/setup -a-high-performance-conda-tensorflow-environment-976995158cb1
ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±Π°Π·Π΅Π»Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
--copt=-mavx --copt=-msse4.1 --copt=-msse4.2
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΡΠΎ Π½Π΅ ΠΎΡΠΈΠ±ΠΊΠ°, Π° ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, Π³ΠΎΠ²ΠΎΡΡΡΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ TensorFlow ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
Π’ΠΠ Π²ΠΎΠΏΡΠΎΡ ΠΎΠ± ΡΡΠΎΠΌ: http://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ TensorFlow ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°: https://www.tensorflow.org/install/install_sources