Für die Vorverarbeitung von Input-Daten in TensorFlow/Keras gibt es mehrere hilfreiche Python-Bibliotheken. Hier sind einige der wichtigsten:
1. NumPy
- Einsatzbereich: Mathematische Operationen, Array-Manipulation
- Installation: pip install numpy
- Beispiel: Normalisierung
import numpy as np
x = np.array([[1, 2, 3], [4, 5, 6]])
x_normalized = x / np.max(x) # Normalisierung
2. Pandas
- Einsatzbereich: Verarbeitung von tabellarischen Daten
- Installation: pip install pandas
- Beispiel: Ersetzen von fehlenden Werten
import pandas as pd
df = pd.read_csv("daten.csv")
df.fillna(df.mean(), inplace=True) # Fehlende Werte ersetzen
3. Scikit-learn (sklearn)
- Einsatzbereich: Skalierung, Encoding, Feature Selection
- Installation: pip install scikit-learn
- Beispiel (Min-Max-Scaling):
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
x_scaled = scaler.fit_transform(x)
4. TensorFlow Data API
- Einsatzbereich: Effiziente Verarbeitung großer Datensätze
- Installation: Bereits in TensorFlow enthalten
- Beispiel: Durchmischen von Daten und Prefetching für Leistungsoptimierung
import tensorflow as tf
dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train))
dataset = dataset.shuffle(10000).batch(32).prefetch(tf.data.experimental.AUTOTUNE)
5. OpenCV
- Einsatzbereich: Verarbeitung von Bilddaten
- Installation: pip install opencv-python
- Beispiel (Bild laden und skalieren):
import cv2
img = cv2.imread("image.jpg")
img_resized = cv2.resize(img, (224, 224))
6. NLTK & spaCy
- Einsatzbereich: Verarbeitung von Textdaten (Natural Language Processing)
- Installation: pip install nltk spacy
- Beispiel (Tokenisierung mit spaCy):
import spacy
nlp = spacy.load("en_core_web_sm")
text = "TensorFlow is great!"
tokens = [token.text for token in nlp(text)]
7. PIL (Pillow)
- Einsatzbereich: Verarbeitung von Bildern
- Installation: pip install pillow
- Beispiel:
from PIL import Image
img = Image.open("image.jpg")
img = img.resize((224, 224))