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, dessinés par TensorBoard. Deux paires de matrices sont additionnées. 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, dessinés par TensorBoard. Une opération d'addition est affiché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, dessinés par TensorBoard. Deux opérations d'addition sont affiché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, dessinés par TensorBoard. Deux paires de matrices sont additionnées. 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

Réaliser une addition de tenseurs

  • L'opération add() effectue une addition élément par élément avec 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 des multiplications dans TensorFlow

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

    • Les tenseurs multipliés doivent avoir la même forme
    • Ex. : [1,2,3] et [3,4,5] ou [1,2] et [3,4]
  • Multiplication de matrices avec l'opérateur matmul()

    • matmul(A,B) multiplie A 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

Sommer sur les dimensions d'un tenseur

  • L'opérateur reduce_sum() additionne sur les dimensions d'un tenseur
    • reduce_sum(A) somme sur toutes les dimensions de A
    • reduce_sum(A, i) somme 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

Sommer 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...