0Pricing
Deep Learning Academy · Leçon

Les tenseurs communiquent avec NumPy

Convertissez des tenseurs torch en tableaux NumPy, et inversement.

Les tenseurs communiquent avec NumPy est une leçon Deep Learning Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Deep Learning Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Deep Learning Academy comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Two Worlds, One Bridge

Lots of data starts life as a NumPy array. PyTorch makes it easy to move between arrays and tensors in both directions.

NumPy Arrays Are Like Tensors

A NumPy array also stores numbers in a shape, just without GPU support or autograd. Tensors add those superpowers.

import numpy as np
a = np.array([1, 2, 3])
print(a.shape)  # (3,)

From NumPy with from_numpy

Turn an array into a tensor with torch.from_numpy. It is the standard entry point for existing NumPy data.

a = np.array([1, 2, 3])
t = torch.from_numpy(a)
print(t)  # tensor([1, 2, 3])

Back to NumPy with .numpy

Going the other way, call .numpy on a tensor. Great for plotting or handing data to other libraries.

t = torch.tensor([1, 2, 3])
a = t.numpy()
print(type(a))  # numpy.ndarray

They Share the Same Memory

By default the array and tensor share one block of memory. Changing one quietly changes the other.

a = np.array([1, 2, 3])
t = torch.from_numpy(a)
a[0] = 99
print(t[0])  # tensor(99)

Copy to Break the Link

Want independent data? Call .clone on the tensor so edits stay separate from the original array.

a = np.array([1, 2, 3])
t = torch.from_numpy(a).clone()
a[0] = 99
print(t[0])  # tensor(1)

Dtypes Carry Across

The dtype follows the data over the bridge. A float64 array becomes a float64 tensor unless you cast it.

a = np.array([1.0, 2.0])
t = torch.from_numpy(a)
print(t.dtype)  # torch.float64

Watch the Float64 Trap

NumPy defaults to float64, but models want float32. Cast after conversion to avoid mismatched dtype errors.

a = np.array([1.0, 2.0])
t = torch.from_numpy(a).float()
print(t.dtype)  # torch.float32

GPU Tensors Need a Trip Home

You can't call .numpy on a GPU tensor directly. Move it back with .cpu() first, then convert.

t = torch.tensor([1, 2, 3])
a = t.cpu().numpy()
print(a)  # [1 2 3]

Detach Before Converting Grads

If a tensor tracks gradients, call .detach before .numpy so you grab the values without the autograd graph.

t = torch.tensor([1.0], requires_grad=True)
a = t.detach().numpy()
print(a)  # [1.]

A Clean Conversion Recipe

The safe pattern for any tensor is detach then cpu then numpy. It works whether or not grads or GPUs are involved.

t = torch.tensor([1.0, 2.0])
a = t.detach().cpu().numpy()
print(a)  # [1. 2.]

Quick Check

One question about the array and tensor connection.

Recap: Tensors Talk to NumPy

You can bridge both ways with from_numpy and .numpy, watch the shared-memory trap, and use detach-cpu-numpy for a safe export. 🌉

Questions Fréquemment Posées

La leçon « Les tenseurs communiquent avec NumPy » est-elle gratuite ?

Oui — le texte complet de « Les tenseurs communiquent avec NumPy » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Deep Learning Academy, passe à CoddyKit PRO. Le cours Deep Learning Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Les tenseurs communiquent avec NumPy » ?

Convertissez des tenseurs torch en tableaux NumPy, et inversement. Tu pratiques Deep Learning Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Deep Learning Academy ?

Aucune expérience préalable n'est requise. Deep Learning Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Les tenseurs communiquent avec NumPy » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Deep Learning Academy ?

Oui. Chaque leçon Deep Learning Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Formes, types et indexation
  2. Redimensionner, afficher, supprimer et ajouter des dimensions
  3. Les règles de diffusion qui vous évitent les boucles
  4. Les tenseurs communiquent avec NumPy
← Retour à Deep Learning Academy