Zum Inhalt springen
CASOON

Warum in KI alle über Tensoren sprechen

Vektor, Matrix, Tensor – ein Einstieg ohne Mathematik

8 Minuten
Warum in KI alle über Tensoren sprechen
#Tensoren #KI #Machine Learning #Mathematik
SerieTensoren verstehen
Teil 1 von 8

Bilderkennung, Chatbots, Spracherkennung, autonomes Fahren — hinter all dem steht meistens ein Tensor. Nicht als abstraktes Konzept aus der Physik, sondern als ganz konkrete Datenstruktur: ein mehrdimensionales Array mit Zahlen.

Tensoren sind heute allgegenwärtig, weil sie ein Problem elegant lösen: Sie abstrahieren fast alle Datenarten — Bilder, Text, Zeitreihen, Audio — in eine gemeinsame Struktur. Eine Struktur, die GPUs und Deep-Learning-Frameworks direkt verarbeiten können. Ohne diese Vereinheitlichung wäre modernes Machine Learning nicht möglich.

Vom Skalar zum Tensor — Schritt für Schritt

Die gute Nachricht: Wenn man Zahlen, Listen und Tabellen versteht, versteht man auch Tensoren. Es ist nur eine Erweiterung in mehr Dimensionen.

Skalar: eine einzelne Zahl (0D)

Ein Skalar ist ein einzelner Wert. Die Temperatur in einem Raum: 21,5 Grad. Der Preis eines Produkts: 49,99 Euro. In KI-Frameworks ist selbst das ein Tensor — nur eben einer mit null Dimensionen.

Vektor: eine Reihe von Zahlen (1D)

Ein Vektor ist eine geordnete Liste von Zahlen. Die Merkmale eines Kunden — Alter, Einkommen, Anzahl Bestellungen — als Zahlentripel:

kunde = [34, 52000, 17]

Das ist ein 1D-Tensor mit drei Elementen. In Machine Learning ist fast jeder Datenpunkt zunächst ein Vektor: eine Reihe von Features, die das Modell verarbeitet.

Matrix: Zeilen und Spalten (2D)

Eine Matrix ist ein Raster aus Zahlen — Zeilen und Spalten. Ein Graustufenbild mit 28 mal 28 Pixeln ist eine Matrix: jede Zelle enthält einen Helligkeitswert zwischen 0 und 255.

# Graustufenbild als 2D-Tensor
bild = [[0, 128, 255, ...],   # Zeile 1 (28 Werte)
        [64, 192, 32, ...],    # Zeile 2
        ...]                    # ... 28 Zeilen

Auch eine Tabelle mit Kundendaten — 1000 Kunden, je 5 Merkmale — ist eine 1000-mal-5-Matrix. Ein 2D-Tensor.

Tensor: mehrere Dimensionen (3D und mehr)

Und hier wird es interessant. Ein Farbbild hat nicht nur Höhe und Breite, sondern drei Farbkanäle: Rot, Grün, Blau. Das ergibt einen 3D-Tensor:

# RGB-Farbbild: Höhe × Breite × 3 Kanäle
farbbild.shape = (224, 224, 3)  # 150.528 Zahlen

Ein Video? Eine Sequenz von Farbbildern über die Zeit — ein 4D-Tensor:

# Video: Frames × Höhe × Breite × Kanäle
video.shape = (300, 224, 224, 3)  # 300 Frames

Ein Batch von Videos für das Training? 5D. Die Dimension wächst mit der Komplexität der Daten — aber das Prinzip bleibt dasselbe: ein mehrdimensionales Array mit Zahlen.

Warum KI mehrdimensionale Daten braucht

Tensoren sind keine mathematische Spielerei. Sie lösen ein handfestes Problem: Die reale Welt produziert Daten in mehreren Dimensionen gleichzeitig, und KI-Modelle müssen diese Dimensionen erhalten, um Muster erkennen zu können.

Ein Farbbild als flache Liste von 150.528 Zahlen zu speichern wäre technisch möglich — aber die räumliche Struktur (welcher Pixel liegt neben welchem?) ginge verloren. Ein CNN (Convolutional Neural Network) braucht genau diese Struktur, um Kanten, Formen und Objekte zu erkennen.

Dazu kommt Effizienz: Tensor-Operationen lassen sich massiv parallelisieren. Statt Schleife für Schleife durch einzelne Pixel zu iterieren, multipliziert die GPU ganze Tensoren in einem Schritt. Das ist der Grund, warum Nvidia Tensor Cores in ihre GPUs baut — spezialisierte Hardware für Tensor-Multiplikation.

Bilder, Sprache, Zeitreihen — alles ist ein Tensor

Bilder

Ein typisches Eingabebild für ein CNN wie ResNet ist ein 3D-Tensor der Form 224 x 224 x 3 — 224 Pixel hoch, 224 breit, 3 Farbkanäle. Das sind 150.528 Zahlen, jede ein Farbwert zwischen 0 und 255 (oder normalisiert zwischen 0 und 1).

Im Modell wandert dieser Tensor durch Dutzende Schichten. Jede Schicht transformiert ihn in einen neuen Tensor — Feature-Maps, die zunehmend abstrakte Muster repräsentieren: erst Kanten, dann Formen, dann Objekte.

Bei Objekterkennung (YOLO, SSD) kommt am Ende ein weiterer Tensor heraus: Bounding-Box-Koordinaten und Klassenwahrscheinlichkeiten. Bei Bildgenerierung (Stable Diffusion) ist der Ausgabe-Tensor selbst wieder ein Bild.

Sprache

Ein Satz mit 10 Wörtern wird in KI-Modellen nicht als Text verarbeitet, sondern als Tensor. Jedes Wort wird in einen Embedding-Vektor umgewandelt — eine Liste von Zahlen, die die Bedeutung des Wortes kodiert. Bei einem typischen Transformer-Modell hat jedes Embedding 768 Dimensionen.

Ein Satz mit 10 Wörtern ergibt einen 2D-Tensor:

# Satz-Tensor: Anzahl Wörter × Embedding-Dimension
satz.shape = (10, 768)  # 7.680 Zahlen

Ein ganzer Batch von 32 Sätzen für das Training? Ein 3D-Tensor mit der Form 32 x 10 x 768.

Zeitreihen

Sensordaten, Börsenkurse, Servermetriken — alles Zeitreihen, und alles Tensoren. Ein Tag mit Minutenwerten von 5 Sensoren ergibt:

# Zeitreihe: Zeitpunkte × Features
tag.shape = (1440, 5)  # 7.200 Zahlen

Eine Woche? (10080, 5). Mehrere Geräte gleichzeitig? Eine dritte Dimension kommt dazu. Das Prinzip ist immer dasselbe.

Tensoren in der Praxis: Was man im Code sieht

In PyTorch und TensorFlow sind fast alle Datenobjekte Tensor-Objekte — auch wenn es nur ein einzelner Vektor ist. Das Framework unterscheidet nicht zwischen Vektor, Matrix und Tensor: alles ist ein Tensor mit einer bestimmten Anzahl Dimensionen.

import torch

# Skalar
s = torch.tensor(42.0)           # shape: ()

# Vektor
v = torch.tensor([1.0, 2.0, 3.0])  # shape: (3,)

# Matrix
m = torch.randn(28, 28)           # shape: (28, 28)

# 3D-Tensor (Farbbild)
img = torch.randn(3, 224, 224)     # shape: (3, 224, 224)

# 4D-Tensor (Batch von Bildern)
batch = torch.randn(32, 3, 224, 224)  # shape: (32, 3, 224, 224)

Der Code zeigt: Ein Tensor ist kein exotisches Konzept. Es ist die Grundeinheit, in der KI-Frameworks denken.

Wie KI Tensoren in der realen Welt nutzt

Ein paar konkrete Anwendungen, um die Abstraktion greifbar zu machen:

Bildklassifikation: Ein Foto wird als 224 x 224 x 3-Tensor eingelesen, durch ein CNN geschickt und am Ende steht ein 1D-Tensor mit Wahrscheinlichkeiten — 0,92 Katze, 0,05 Hund, 0,03 Auto.

Medizinische Bildanalyse: Röntgenbilder werden als 2D- oder 3D-Tensoren verarbeitet. Die Ausgabe ist entweder ein Segmentierungs-Tensor (jeder Pixel bekommt eine Klasse) oder ein 1D-Tensor mit Diagnosewahrscheinlichkeiten.

Bildsuche: Ein Foto wird durch ein vortrainiertes CNN zu einem Embedding-Tensor verdichtet — etwa 1 x 2048 Zahlen. Diese Embeddings werden verglichen, um ähnliche Bilder zu finden. Google Fotos funktioniert im Kern genau so.

Textgenerierung: Der Prompt wird als Tensor kodiert, durch den Transformer geschickt, und der Ausgabe-Tensor enthält Wahrscheinlichkeiten für das nächste Wort. Token für Token entsteht die Antwort.

Die Kiste mit den Schubladen

Wer sich Tensoren vorstellen will, ohne an Mathematik zu denken, kann diese Metapher nutzen:

  • Skalar: Ein einzelner Zettel mit einer Zahl.
  • Vektor: Eine Schublade mit mehreren Fächern nebeneinander. Jedes Fach enthält eine Zahl.
  • Matrix: Ein Regal mit Reihen und Spalten. Jedes Fach enthält eine Zahl.
  • 3D-Tensor: Mehrere Regale hintereinander — wie ein Aktenschrank mit Tiefe.
  • 4D-Tensor: Ein Raum voller Aktenschränke.

Die Dimensionen wachsen, das Prinzip bleibt: strukturierte Zahlen in einer klar definierten Anordnung.

In der Physik ist ein Tensor ein mathematisch streng definiertes Objekt mit bestimmten Transformationseigenschaften. In Machine Learning ist er pragmatischer: ein mehrdimensionales Array. Beide Bedeutungen sind korrekt — sie betonen nur unterschiedliche Aspekte.