TensorFlow рдореЗрдВ рд╕реЗрдВрд╕рд░

рдЫрд╡рд┐


Tensorflow рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХреА рдЧрдИ рдореБрдЦреНрдп рд╡рд╕реНрддреБ рджрд╣рд╛рдИ рд╣реИред рдЯреЗрдВрд╕рд░реНрд╕ рдХреНрдпрд╛ рд╣реИрдВ, рдЯреЗрдВрд╕рд░реНрд╕ рдХреНрдпрд╛ рд╣реИрдВ, рдЙрдирдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ рдЧреБрдг рд╣реИрдВ рдФрд░ рдЙрдирдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЯреЗрдВрд╕реЛрд░рдлреНрд▓реЛ рд╕реЗ рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди рдЧрд╛рдЗрдб рдкрдврд╝реЗрдВред


TensorFlow, рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рдЯреЗрдирд╕рд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрдгрдирд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдордВрдЪ рд╣реИред рдПрдХ рдЯреЗрдВрд╕рд░ рд╡реИрдХреНрдЯрд░ рдФрд░ рдореИрдЯреНрд░рд┐рд╕реЗрдЬрд╝ рд╕реЗ рдЙрдЪреНрдЪ рдЖрдпрд╛рдореЛрдВ рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рд╣реИред TensorFlow рдХреЗ рдЕрдВрджрд░, рджрд╕рд┐рдпреЛрдВ рдХреЛ рдореВрд▓ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ n- рдЖрдпрд╛рдореА рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдПрдХ TensorFlow рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрддреЗ рд╕рдордп, рдореБрдЦреНрдп рд╡рд╕реНрддреБ рдЬрд┐рд╕реЗ рдЖрдк рд╣реЗрд░рдлреЗрд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкрд╛рд╕ рд╣реИ tf.Tensor ред TensorFlow рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкрд╣рд▓реЗ tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ tf.Tensor рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЯреЗрдВрд╕рд░ рдХреА рдЧрдгрдирд╛ рдЕрдиреНрдп рдЙрдкрд▓рдмреНрдз tf.Tensor рдЖрдзрд╛рд░ рдкрд░ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдлрд┐рд░ рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЧреНрд░рд╛рдлрд╝ рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


tf.Tensor рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ:


  • рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ ( float32 , float32 , рдпрд╛ string )
  • рдЖрдХрд╛рд░ (рдЖрдХрд╛рд░)

рд╕рднреА рдЯреЗрдВрд╕рд░ рддрддреНрд╡реЛрдВ рдореЗрдВ рд╕рдорд╛рди рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рдЬреНрдЮрд╛рдд рд╣реЛрддрд╛ рд╣реИред рдЖрдпрд╛рдо (рдорд╛рдк рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдк рдХрд╛ рдЖрдХрд╛рд░) рдХреЗрд╡рд▓ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЬреНрдЮрд╛рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЬреНрдЮрд╛рдд рдЖрдпрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЯреЗрдиреНрд╕рд░реНрд╕ рд╣реИрдВ, рдпрджрд┐ рдЗрдирдкреБрдЯ рдкрд░ рдЖрдпрд╛рдо рднреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЬреНрдЮрд╛рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЧреНрд░рд╛рдл рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рдЯреЗрдВрд╕рд░ рдХреЗ рдЖрдпрд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред


рджрд╕рд┐рдпреЛрдВ рдХреЗ рдореБрдЦреНрдп рдкреНрд░рдХрд╛рд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:


  • tf.Variable
  • tf.constant
  • tf.placeholder
  • tf.SparseTensor

tf.Variable рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде, рдЯреЗрдВрд╕рд░ рдорд╛рди рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реИ, рдЕрд░реНрдерд╛рдд рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдПрдХ рдЯреЗрдирд╕рд░ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдореВрд▓реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╣реА рдЯреЗрдВрд╕рд░ рдХреА рдЧрдгрдирд╛ рджреЛ рдмрд╛рд░ рд╡рд┐рднрд┐рдиреНрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддреА рд╣реИ; рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд╣реА рдЯреЗрдВрд╕рд░ рдПрдХ рдбрд┐рд╕реНрдХ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ, рдпрд╛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред


рдкрдж


tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд░реИрдВрдХ рдЗрд╕рдХреЗ рдЖрдпрд╛рдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред рдХрд┐рд╕реА рдкрдж рдХреЗ рдкрд░реНрдпрд╛рдпрд╡рд╛рдЪреА рдХреНрд░рдо , рдбрд┐рдЧреНрд░реА , рдЖрдпрд╛рдо рд╣реИрдВ ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ TensorFlow рдореЗрдВ рдПрдХ рд░реИрдВрдХ рдЧрдгрд┐рдд рдореЗрдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд░реИрдВрдХ рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИред рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, Tensorflow рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд░реИрдВрдХ рдХреБрдЫ рдЧрдгрд┐рддреАрдп рдЗрдХрд╛рдИ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ:


рдкрджрдЧрдгрд┐рддреАрдп рдЗрдХрд╛рдИ
0рд╕реНрдХреЗрд▓рд░ (рдХреЗрд╡рд▓ рдореВрд▓реНрдп)
1рд╡реЗрдХреНрдЯрд░ (рдкрд░рд┐рдорд╛рдг рдФрд░ рджрд┐рд╢рд╛)
2рдореИрдЯреНрд░рд┐рдХреНрд╕ (рд╕рдВрдЦреНрдпрд╛ рдХреА рддрд╛рд▓рд┐рдХрд╛)
33-рд╕реЗрдВрд╕рд░ (рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдШрди)
nрдПрди-рдЯреЗрдВрд╕рд░ (рдареАрдХ рд╣реИ, рдЖрдкрдХреЛ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓рддрд╛ рд╣реИ)

рд░реИрдВрдХ 0


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдирд┐рдкреЗрдЯ рд░реИрдВрдХ 0 рдХреЗ рдХрдИ рдЪрд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ:


 mammal = tf.Variable("Elephant", tf.string) ignition = tf.Variable(451, tf.int16) floating = tf.Variable(3.14159265359, tf.float64) its_complicated = tf.Variable(12.3 - 4.85j, tf.complex64) 

рдиреЛрдЯ: рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ TensorFlow рдореЗрдВ рдПрдХрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рди рдХрд┐ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдПрдХ рдХреНрд░рдоред рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрдХреЗрд▓рд░, рдкрдВрдХреНрддрд┐ рд╡реИрдХреНрдЯрд░ рдЖрджрд┐ рд╣реЛрдирд╛ рд╕рдВрднрд╡ рд╣реИред

рд░реИрдВрдХ 1


рд░реИрдВрдХ 1 рдХрд╛ tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:


 mystr = tf.Variable(["Hello"], tf.string) cool_numbers = tf.Variable([3.14159, 2.71828], tf.float32) first_primes = tf.Variable([2, 3, 5, 7, 11], tf.int32) its_very_complicated = tf.Variable([12.3 - 4.85j, 7.5 - 6.23j], tf.complex64) 

рдЙрдЪреНрдЪ рд░реИрдВрдХ


tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд░реИрдВрдХ 2 рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдкрдВрдХреНрддрд┐ рдФрд░ рдПрдХ рдХреЙрд▓рдо рд╣реЛрддрд╛ рд╣реИ:


 mymat = tf.Variable([[7],[11]], tf.int16) myxor = tf.Variable([[False, True],[True, False]], tf.bool) linear_squares = tf.Variable([[4], [9], [16], [25]], tf.int32) squarish_squares = tf.Variable([ [4, 9], [16, 25] ], tf.int32) rank_of_squares = tf.rank(squarish_squares) mymatC = tf.Variable([[7],[11]], tf.int32) 

рдЙрдЪреНрдЪ рд╢реНрд░реЗрдгреА рдХреЗ рдЯреЗрдирд░реНрд╕, рдЗрд╕реА рддрд░рд╣, рдПрди-рдЖрдпрд╛рдореА рд╕рд░рдгрд┐рдпреЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░ рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдХрдИ рд░реИрдВрдХ 4 рдЯреЗрдирд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдкреИрдХреЗрдЯ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛, рдЫрд╡рд┐ рдКрдВрдЪрд╛рдИ, рдЫрд╡рд┐ рдЪреМрдбрд╝рд╛рдИ рдФрд░ рд░рдВрдЧ рдЪреИрдирд▓ рдХреЗ рдЕрдиреБрд░реВрдк рдЖрдпрд╛рдо рд╣реЛрддреЗ рд╣реИрдВред


 my_image = tf.zeros([10, 299, 299, 3]) #   x  x  x    

tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ tf.Tensor


tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд░реИрдВрдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, tf.rank рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рд╡рд┐рдзрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдКрдкрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ tf.Tensor рдХреА рд░реИрдВрдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ:


 r = tf.rank(my_image) #   , r   4. 

рд╕реНрд▓рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдВрдХ tf.Tensor


рдЪреВрдВрдХрд┐ tf.Tensor рдХрд╛ рдПрдХ n- рдЖрдпрд╛рдореА рд╕рд░рдгреА рд╣реИ, tf.Tensor рдореЗрдВ рдХрд┐рд╕реА рдПрдХрд▓ рдХрдХреНрд╖ рддрдХ tf.Tensor рдЖрдкрдХреЛ рдЗрди рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред


рд░реИрдВрдХ 0 рдЯреЗрдирд░реНрд╕ (рд╕реНрдХреЗрд▓рд░реНрд╕) рдХреЗ рд▓рд┐рдП, рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд╣реИред


рдПрдХ рд░реИрдВрдХ 1 рдЯреЗрдВрд╕рд░ (рд╡реЗрдХреНрдЯрд░) рдХреЗ рд▓рд┐рдП, рдПрдХрд▓ рдЗрдВрдбреЗрдХреНрд╕ рдкрд╛рд╕ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рд╕рдВрдЦреНрдпрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдорд┐рд▓реЗрдЧреА:


 my_scalar = my_vector[2] 

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЕрдЧрд░ [] рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЗрдВрдбреЗрдХреНрд╕ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдПрдХ tf.Tensor рд╕реНрдХреЗрд▓рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдЧрд░ рдЖрдк рдбрд╛рдпрдиреЗрдорд┐рдХ рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рд╡реЗрдХреНрдЯрд░ рд╕реЗ рдПрдХ рддрддреНрд╡ рдЪреБрдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред


рд░реИрдВрдХ 2 рдпрд╛ рдЙрдЪреНрдЪрддрд░ рдХреЗ рджрд╕рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╕реНрдерд┐рддрд┐ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред tf.Tensor рд░реИрдВрдХ 2 рдХреЗ рд▓рд┐рдП, рдПрдХ рдЕрджрд┐рд╢ рдХреА рдЙрдореНрдореАрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рджреЛ рдирдВрдмрд░ рд░рд┐рдЯрд░реНрди рдкрд╛рд╕ рдХрд░рдирд╛:


 my_scalar = my_matrix[1, 2] 

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдкрд╛рд╕ рдХрд░рдирд╛, рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рдПрдХ рдЙрдк-рдЯреНрд░реИрдХреНрдЯрд░ рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓реМрдЯрд╛рддрд╛ рд╣реИ:


 my_row_vector = my_matrix[2] my_column_vector = my_matrix[:, 3] 

рд╕рдВрдХреЗрддрди : рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ, рдЕрдЬрдЧрд░ рдореЗрдВ рд╕рдмрд░реНрд░реЗ рдЖрд╡рдВрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ "рдЗрд╕ рдЖрдпрд╛рдо рдХреЛ рдЕрдХреЗрд▓рд╛ рдЫреЛрдбрд╝ рджреЗрдВ" рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЙрдЪреНрдЪ рд╢реНрд░реЗрдгреА рдХреЗ рдЯреЗрдирд░реНрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдмрд╡реЗрдХреНрдЯрд░реНрд╕, рд╕рдмрдореИрдЯреНрд░рд┐рд╕реЗрд╕ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдиреНрдп рд╕рдмрдЯреЗрдВрд╕рд░реНрд╕ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред


рдЖрдпрд╛рдо


рджрд╢рд╛рдВрд╢ рдЖрдпрд╛рдо рдкреНрд░рддреНрдпреЗрдХ рдЖрдпрд╛рдо рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред TensorFlow рдкреНрд░рд▓реЗрдЦрди рдПрдХ рдЯреЗрдВрд╕рд░ рдХреЗ рдЖрдпрд╛рдо рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреАрди рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ: рд░реИрдВрдХ, рдЖрдпрд╛рдо рдФрд░ рдЖрдпрд╛рдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ:


рдкрджрдЖрдпрд╛рдордорд╛рдк рдХреА рд╕рдВрдЦреНрдпрд╛рдЙрджрд╛рд╣рд░рдг
0[]0 рдбреА0-рдбреА рдЯреЗрдВрд╕рд░ред рдЕрджрд┐рд╢ред
1[D0]1-рдбреА1-рдбреА рдЖрдХрд╛рд░ рдЯреЗрдВрд╕рд░ [5]ред
2[рдбреА реж, рдбреА рез]2-рдбреА2-рдбреА рдЖрдХрд╛рд░ рдЯреЗрдВрд╕рд░ [3, 4]ред
3[рдбреА реж, рдбреА рез, рдбреА реи]3-рдбреА3-рдбреА рдЖрдХрд╛рд░ рдЯреЗрдВрд╕рд░ [1, 4, 3]ред
n[D0, D1, ... Dn-1]рдПрди рдбреАрдЖрдХрд╛рд░ рдЯреЗрдВрд╕рд░ [D0, D1, ... Dn-1]ред

рдЖрдХрд╛рд░ рдХреЛ рдкрд╛рдпрдерди рд╕реВрдЪрд┐рдпреЛрдВ / рдкреВрд░реНрдгрд╛рдВрдХ рдХреЗ рдЯреНрдпреВрдкрд▓реНрд╕ рдпрд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
tf.TensorShape


tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛


tf.Tensor рдЖрдпрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВред рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп, рдпрд╣ рдкреВрдЫрдирд╛ рдЕрдХреНрд╕рд░ рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЯреЗрдВрд╕рд░ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрдпрд╛ рдЬреНрдЮрд╛рдд рд╣реИред рдпрд╣ tf.Tensor рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА shape рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдкрдврд╝рдХрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рдзрд┐ TensorShape рдСрдмреНрдЬреЗрдХреНрдЯ TensorShape рд╣реИ, рдЬреЛ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛ рд╣реИред
рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЖрдХрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ (рдЬрдм рдПрдХ рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп, рд╕рднреА рдЖрдХрд╛рд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ)ред


рдЖрдк tf.Tensor рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд░рдирдЯрд╛рдЗрдо рдХреЗ рджреМрд░рд╛рди рджреВрд╕рд░реЗ tf.Tensor рдХреЗ рдкреВрд░реНрдг-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЖрдпрд╛рдореЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред рдпрд╣ tf.shape рдСрдкрд░реЗрд╢рди рдХреЛ tf.shape рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣, рдЖрдк рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЗрдирдкреБрдЯ tf.Tensor рдХреЗ рдЧрддрд┐рд╢реАрд▓ рдЖрдХрд╛рд░реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдиреНрдп tf.Tensor рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ tf.Tensor рдЖрдХрд╛рд░ рдореЗрдВ tf.Tensor ред


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рдХреЙрд▓рдо рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рдорд╛рди рдЖрдХрд╛рд░ рдХреЗ рд╢реВрдиреНрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:


 zeros = tf.zeros(my_matrix.shape[1]) 

tf.Tensor рдЖрдХрд╛рд░ рдмрджрд▓реЗрдВ


рдЯреЗрдВрд╕рд░ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЗрд╕рдХреЗ рд╕рднреА рдорд╛рдкреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рдж рд╣реИред рдЕрджрд┐рд╢ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣рдореЗрд╢рд╛ 1 ред рдЪреВрдВрдХрд┐ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрдХрд╛рд░ рд╕рдорд╛рди рддрддреНрд╡реЛрдВ рдХреЛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдХреНрд╕рд░ рдЕрдкрдиреЗ рддрддреНрд╡реЛрдВ рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ tf.Tensor рдХрд╛ рдЖрдХрд╛рд░ рдмрджрд▓рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ tf.reshape рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдЯреЗрдВрд╕рд░ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдмрджрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ:


 rank_three_tensor = tf.ones([3, 4, 5]) matrix = tf.reshape(rank_three_tensor, [6, 10]) #    #   6x10 matrixB = tf.reshape(matrix, [3, -1]) #     #  3x20. -1  reshape   #    . matrixAlt = tf.reshape(matrixB, [4, 3, -1]) #     #  4x3x5 # ,         #   .     #         #     . yet_another = tf.reshape(matrixAlt, [13, 2, -1]) # ERROR! 

рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░


рдЖрдпрд╛рдо рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЯреЗрдВрд╕рд░реЛрдВ рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реЛрддрд╛ рд╣реИред рдПрдХ рд╡рд┐рд╢реЗрд╖ tf.Tensor рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдордирдорд╛рдиреА рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдПрдХ string рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ tf.Tensor рдореЗрдВ рд╕реНрдЯреЛрд░ рдХрд░рдирд╛ tf.Tensor ред


рдЖрдк tf.Tensor ред tf.cast рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╕реЗ рджреВрд╕рд░реЗ рдореЗрдВ tf.cast рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд░ tf.cast :


 #         . float_tensor = tf.cast(tf.constant([1, 2, 3]), dtype=tf.float32) 

tf.Tensor рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, Tensor.dtype рдЧреБрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред


рдЕрдЬрдЧрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ tf.Tensor рдмрдирд╛рддреЗ tf.Tensor , рдЖрдк рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ TensorFlow рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЪрдпрди рдХрд░реЗрдЧрд╛ рдЬреЛ рдЖрдкрдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реИред TensorFlow Python рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреЛ tf.int32 , рдФрд░ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреЛ tf.float32 ред рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ, TensorFlow рдПрд░реЗ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╕рдордп рд╕рдорд╛рди рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред


рдЯреЗрдВрд╕рд░ рдореВрд▓реНрдпрд╛рдВрдХрди


рдПрдХ рдмрд╛рд░ рдПрдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЧреНрд░рд╛рдл рдмрди рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдПрдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рди рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ tf.Tensor рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ рдФрд░ рдЙрд╕реЗ рд╕реМрдВрдкреЗ рдЧрдП рдореВрд▓реНрдп рдХреЛ tf.Tensor ред рдпрд╣ рдЕрдХреНрд╕рд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде TensorFlow рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреАред


Tensor рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ Tensor.eval рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:


 constant = tf.constant([1, 2, 3]) tensor = constant * constant print(tensor.eval()) 

tf.Session рдореЗрдердб рддрднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ tf.Session ред Tensor.eval рдЯреЗрдВрд╕рд░ рдХреЗ рд╕рдорд╛рди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╕рд░рдгреА рджреЗрддрд╛ рд╣реИред


рдХрднреА-рдХрднреА рд╕рдВрджрд░реНрдн рдХреЗ рдмрд┐рдирд╛ tf.Tensor рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдореВрд▓реНрдп рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЧрддрд┐рд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, placeholder рдирд┐рд░реНрднрд░ рдЯреЗрдирд░реНрд╕ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди placeholder рд▓рд┐рдП рдХреЛрдИ рдореВрд▓реНрдп рдкреНрд░рджрд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


 p = tf.placeholder(tf.float32) t = p + 1.0 t.eval() #   ,   placeholder   . t.eval(feed_dict={p:2.0}) #  ,     #   placeholder. 

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рднреА tf.Tensor рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рди рдХрд┐ рдХреЗрд╡рд▓ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ред


рдЕрдиреНрдп рдореЙрдбрд▓ рдбрд┐рдЬрд╛рдЗрди tf.Tensor рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рдХрдард┐рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред TensorFlow рд╕реАрдзреЗ tf.Tensor рдХреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЕрдВрджрд░ рдпрд╛ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╡рд╛рд╣ рдирд┐рд░реНрдорд╛рдг рдХреЗ рднреАрддрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ tf.Tensor рдХрддрд╛рд░ рд╕реЗ рдореВрд▓реНрдп рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рддреЛ tf.Tensor рд╕реНрдХреЛрд░ рдХреЗрд╡рд▓ рддрднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрдм рдХреБрдЫ рдХрддрд╛рд░ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдП; рдЕрдиреНрдпрдерд╛, рджрд╣рд╛рдИ рдХрд╛ рдЕрдиреБрдорд╛рди рд╕реНрдерд┐рд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдХрддрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдХрд┐рд╕реА рднреА tf.Tensor рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ tf.train.start_queue_runners рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ tf.train.start_queue_runners tf.Tensor ред


рд╕рддреНрдпрд╛рдкрди рдХреЗ рдмрд╛рдж, рдЕрдиреБрд╡рд╛рдж Tensorflow.org рдкрд░ рднреА рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рд░реВрд╕реА рдореЗрдВ Tensorflow.org рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдЕрдиреБрд╡рд╛рдж рдореЗрдВ рднрд╛рдЧ рд▓реЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВред рдХрд┐рд╕реА рднреА рд╕реБрдзрд╛рд░ рдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред

Source: https://habr.com/ru/post/hi484214/


All Articles