Opérations de base

Introduction à TensorFlow en Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Qu'est-ce qu'une opération TensorFlow ?

L'image montre des opérations et des tenseurs dans un graphe TensorFlow, tel qu'affiché par TensorBoard. Deux paires de matrices sont combinées avec l'opération add. Les sommes obtenues sont ensuite multipliées.

Introduction à TensorFlow en Python

Qu'est-ce qu'une opération TensorFlow ?

L'image montre des opérations et des tenseurs dans un graphe TensorFlow, tel qu'affiché par TensorBoard. Une opération add est illustrée.

Introduction à TensorFlow en Python

Qu'est-ce qu'une opération TensorFlow ?

L'image montre des opérations et des tenseurs dans un graphe TensorFlow, tel qu'affiché par TensorBoard. Deux opérations add sont illustrées.

Introduction à TensorFlow en Python

Qu'est-ce qu'une opération TensorFlow ?

L'image montre des opérations et des tenseurs dans un graphe TensorFlow, tel qu'affiché par TensorBoard. Deux paires de matrices sont combinées avec l'opération add. Les sommes obtenues sont ensuite multipliées.

Introduction à TensorFlow en Python

Appliquer l'opérateur d'addition

#Import constant and add from tensorflow
from tensorflow import constant, add

# Define 0-dimensional tensors
A0 = constant([1])
B0 = constant([2])
# Define 1-dimensional tensors
A1 = constant([1, 2])
B1 = constant([3, 4])
# Define 2-dimensional tensors
A2 = constant([[1, 2], [3, 4]])
B2 = constant([[5, 6], [7, 8]])
Introduction à TensorFlow en Python

Appliquer l'opérateur d'addition

# Perform tensor addition with add()
C0 = add(A0, B0)
C1 = add(A1, B1)
C2 = add(A2, B2)
Introduction à TensorFlow en Python

Effectuer l'addition de tenseurs

  • L'opération add() effectue une addition élément par élément entre deux tenseurs

  • Cette addition exige des tenseurs de même forme :

    • Addition scalaire : $1+2=3$
    • Addition de vecteurs : $[1,2]+[3,4]=[4,6]$
    • Addition de matrices : $\begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} + \begin{bmatrix} 5 & 6 \\ 7 & 8 \end{bmatrix} = \begin{bmatrix} 6 & 8 \\ 10 & 12 \end{bmatrix}$
  • L'opérateur add() est surchargé

Introduction à TensorFlow en Python

Comment effectuer la multiplication dans TensorFlow

  • Multiplication élément par élément avec l'opération multiply()

    • Les tenseurs doivent avoir la même forme
    • P. ex. [1,2,3] et [3,4,5] ou [1,2] et [3,4]
  • Multiplication matricielle avec l'opérateur matmul()

    • matmul(A,B) calcule A multiplié par B
    • Le nombre de colonnes de A doit égaler le nombre de lignes de B
Introduction à TensorFlow en Python

Appliquer les opérateurs de multiplication

# Import operators from tensorflow
from tensorflow import ones, matmul, multiply

# Define tensors
A0 = ones(1)
A31 = ones([3, 1])
A34 = ones([3, 4])
A43 = ones([4, 3])

  • Quelles opérations sont valides ?
    • multiply(A0, A0), multiply(A31, A31) et multiply(A34, A34)
    • matmul(A43, A34) mais pas matmul(A43, A43)
Introduction à TensorFlow en Python

Additionner sur les dimensions d'un tenseur

  • L'opérateur reduce_sum() additionne sur les dimensions d'un tenseur
    • reduce_sum(A) additionne sur toutes les dimensions de A
    • reduce_sum(A, i) additionne sur la dimension i
# Import operations from tensorflow
from tensorflow import ones, reduce_sum

# Define a 2x3x4 tensor of ones
A = ones([2, 3, 4])
Introduction à TensorFlow en Python

Additionner sur les dimensions d'un tenseur

# Sum over all dimensions
B = reduce_sum(A)

# Sum over dimensions 0, 1, and 2
B0 = reduce_sum(A, 0)
B1 = reduce_sum(A, 1)
B2 = reduce_sum(A, 2)
Introduction à TensorFlow en Python

Passons à la pratique !

Introduction à TensorFlow en Python

Preparing Video For Download...