14 KiB
Fehlerbehebungsanleitung
Diese Anleitung hilft Ihnen, häufige Probleme beim Arbeiten mit dem Machine Learning for Beginners-Lehrplan zu lösen. Sollten Sie hier keine Lösung finden, schauen Sie in unseren Discord-Diskussionen vorbei oder eröffnen Sie ein Issue.
Inhaltsverzeichnis
- Installationsprobleme
- Probleme mit Jupyter Notebook
- Probleme mit Python-Paketen
- Probleme mit der R-Umgebung
- Probleme mit der Quiz-Anwendung
- Daten- und Dateipfadprobleme
- Häufige Fehlermeldungen
- Leistungsprobleme
- Umgebung und Konfiguration
Installationsprobleme
Python-Installation
Problem: python: command not found
Lösung:
- Installieren Sie Python 3.8 oder höher von python.org
- Überprüfen Sie die Installation:
python --versionoderpython3 --version - Unter macOS/Linux müssen Sie möglicherweise
python3anstelle vonpythonverwenden
Problem: Mehrere Python-Versionen verursachen Konflikte
Lösung:
# Use virtual environments to isolate projects
python -m venv ml-env
# Activate virtual environment
# On Windows:
ml-env\Scripts\activate
# On macOS/Linux:
source ml-env/bin/activate
Jupyter-Installation
Problem: jupyter: command not found
Lösung:
# Install Jupyter
pip install jupyter
# Or with pip3
pip3 install jupyter
# Verify installation
jupyter --version
Problem: Jupyter öffnet sich nicht im Browser
Lösung:
# Try specifying the browser
jupyter notebook --browser=chrome
# Or copy the URL with token from terminal and paste in browser manually
# Look for: http://localhost:8888/?token=...
R-Installation
Problem: R-Pakete lassen sich nicht installieren
Lösung:
# Ensure you have the latest R version
# Install packages with dependencies
install.packages(c("tidyverse", "tidymodels", "caret"), dependencies = TRUE)
# If compilation fails, try installing binary versions
install.packages("package-name", type = "binary")
Problem: IRkernel ist in Jupyter nicht verfügbar
Lösung:
# In R console
install.packages('IRkernel')
IRkernel::installspec(user = TRUE)
Probleme mit Jupyter Notebook
Kernel-Probleme
Problem: Kernel stürzt ab oder startet ständig neu
Lösung:
- Kernel neu starten:
Kernel → Restart - Ausgabe löschen und neu starten:
Kernel → Restart & Clear Output - Überprüfen Sie Speicherprobleme (siehe Leistungsprobleme)
- Führen Sie die Zellen einzeln aus, um problematischen Code zu identifizieren
Problem: Falscher Python-Kernel ausgewählt
Lösung:
- Aktuellen Kernel überprüfen:
Kernel → Change Kernel - Wählen Sie die richtige Python-Version aus
- Falls der Kernel fehlt, erstellen Sie ihn:
python -m ipykernel install --user --name=ml-env
Problem: Kernel startet nicht
Lösung:
# Reinstall ipykernel
pip uninstall ipykernel
pip install ipykernel
# Register the kernel again
python -m ipykernel install --user
Probleme mit Notebook-Zellen
Problem: Zellen laufen, zeigen aber keine Ausgabe
Lösung:
- Überprüfen Sie, ob die Zelle noch läuft (achten Sie auf den
[*]-Indikator) - Kernel neu starten und alle Zellen ausführen:
Kernel → Restart & Run All - Überprüfen Sie die Browser-Konsole auf JavaScript-Fehler (F12)
Problem: Zellen lassen sich nicht ausführen - keine Reaktion beim Klicken auf "Run"
Lösung:
- Überprüfen Sie, ob der Jupyter-Server noch im Terminal läuft
- Aktualisieren Sie die Browserseite
- Schließen und öffnen Sie das Notebook erneut
- Starten Sie den Jupyter-Server neu
Probleme mit Python-Paketen
Importfehler
Problem: ModuleNotFoundError: No module named 'sklearn'
Lösung:
pip install scikit-learn
# Common ML packages for this course
pip install scikit-learn pandas numpy matplotlib seaborn
Problem: ImportError: cannot import name 'X' from 'sklearn'
Lösung:
# Update scikit-learn to latest version
pip install --upgrade scikit-learn
# Check version
python -c "import sklearn; print(sklearn.__version__)"
Versionskonflikte
Problem: Fehler aufgrund von Paketversionsinkompatibilitäten
Lösung:
# Create a new virtual environment
python -m venv fresh-env
source fresh-env/bin/activate # or fresh-env\Scripts\activate on Windows
# Install packages fresh
pip install jupyter scikit-learn pandas numpy matplotlib seaborn
# If specific version needed
pip install scikit-learn==1.3.0
Problem: pip install schlägt mit Berechtigungsfehlern fehl
Lösung:
# Install for current user only
pip install --user package-name
# Or use virtual environment (recommended)
python -m venv venv
source venv/bin/activate
pip install package-name
Probleme beim Laden von Daten
Problem: FileNotFoundError beim Laden von CSV-Dateien
Lösung:
import os
# Check current working directory
print(os.getcwd())
# Use relative paths from notebook location
df = pd.read_csv('../../data/filename.csv')
# Or use absolute paths
df = pd.read_csv('/full/path/to/data/filename.csv')
Probleme mit der R-Umgebung
Paketinstallation
Problem: Paketinstallation schlägt mit Kompilierungsfehlern fehl
Lösung:
# Install binary version (Windows/macOS)
install.packages("package-name", type = "binary")
# Update R to latest version if packages require it
# Check R version
R.version.string
# Install system dependencies (Linux)
# For Ubuntu/Debian, in terminal:
# sudo apt-get install r-base-dev
Problem: tidyverse lässt sich nicht installieren
Lösung:
# Install dependencies first
install.packages(c("rlang", "vctrs", "pillar"))
# Then install tidyverse
install.packages("tidyverse")
# Or install components individually
install.packages(c("dplyr", "ggplot2", "tidyr", "readr"))
Probleme mit RMarkdown
Problem: RMarkdown lässt sich nicht rendern
Lösung:
# Install/update rmarkdown
install.packages("rmarkdown")
# Install pandoc if needed
install.packages("pandoc")
# For PDF output, install tinytex
install.packages("tinytex")
tinytex::install_tinytex()
Probleme mit der Quiz-Anwendung
Build und Installation
Problem: npm install schlägt fehl
Lösung:
# Clear npm cache
npm cache clean --force
# Remove node_modules and package-lock.json
rm -rf node_modules package-lock.json
# Reinstall
npm install
# If still fails, try with legacy peer deps
npm install --legacy-peer-deps
Problem: Port 8080 ist bereits belegt
Lösung:
# Use different port
npm run serve -- --port 8081
# Or find and kill process using port 8080
# On Linux/macOS:
lsof -ti:8080 | xargs kill -9
# On Windows:
netstat -ano | findstr :8080
taskkill /PID <PID> /F
Build-Fehler
Problem: npm run build schlägt fehl
Lösung:
# Check Node.js version (should be 14+)
node --version
# Update Node.js if needed
# Then clean install
rm -rf node_modules package-lock.json
npm install
npm run build
Problem: Linting-Fehler verhindern den Build
Lösung:
# Fix auto-fixable issues
npm run lint -- --fix
# Or temporarily disable linting in build
# (not recommended for production)
Daten- und Dateipfadprobleme
Pfadprobleme
Problem: Daten werden beim Ausführen von Notebooks nicht gefunden
Lösung:
-
Führen Sie Notebooks immer aus ihrem Verzeichnis aus
cd /path/to/lesson/folder jupyter notebook -
Überprüfen Sie relative Pfade im Code
# Correct path from notebook location df = pd.read_csv('../data/filename.csv') # Not from your terminal location -
Verwenden Sie bei Bedarf absolute Pfade
import os base_path = os.path.dirname(os.path.abspath(__file__)) data_path = os.path.join(base_path, 'data', 'filename.csv')
Fehlende Datendateien
Problem: Datensätze fehlen
Lösung:
- Überprüfen Sie, ob die Daten im Repository enthalten sein sollten – die meisten Datensätze sind enthalten
- Einige Lektionen erfordern das Herunterladen von Daten – überprüfen Sie die README der Lektion
- Stellen Sie sicher, dass Sie die neuesten Änderungen gezogen haben:
git pull origin main
Häufige Fehlermeldungen
Speicherfehler
Fehler: MemoryError oder Kernel stürzt beim Verarbeiten von Daten ab
Lösung:
# Load data in chunks
for chunk in pd.read_csv('large_file.csv', chunksize=10000):
process(chunk)
# Or read only needed columns
df = pd.read_csv('file.csv', usecols=['col1', 'col2'])
# Free memory when done
del large_dataframe
import gc
gc.collect()
Konvergenzwarnungen
Warnung: ConvergenceWarning: Maximum number of iterations reached
Lösung:
from sklearn.linear_model import LogisticRegression
# Increase max iterations
model = LogisticRegression(max_iter=1000)
# Or scale your features first
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
Probleme mit Diagrammen
Problem: Diagramme werden in Jupyter nicht angezeigt
Lösung:
# Enable inline plotting
%matplotlib inline
# Import pyplot
import matplotlib.pyplot as plt
# Show plot explicitly
plt.plot(data)
plt.show()
Problem: Seaborn-Diagramme sehen anders aus oder werfen Fehler
Lösung:
import warnings
warnings.filterwarnings('ignore', category=UserWarning)
# Update to compatible version
# pip install --upgrade seaborn matplotlib
Unicode-/Codierungsfehler
Problem: UnicodeDecodeError beim Lesen von Dateien
Lösung:
# Specify encoding explicitly
df = pd.read_csv('file.csv', encoding='utf-8')
# Or try different encoding
df = pd.read_csv('file.csv', encoding='latin-1')
# For errors='ignore' to skip problematic characters
df = pd.read_csv('file.csv', encoding='utf-8', errors='ignore')
Leistungsprobleme
Langsame Ausführung von Notebooks
Problem: Notebooks laufen sehr langsam
Lösung:
- Kernel neu starten, um Speicher freizugeben:
Kernel → Restart - Schließen Sie ungenutzte Notebooks, um Ressourcen freizugeben
- Verwenden Sie kleinere Datensamples zum Testen:
# Work with subset during development df_sample = df.sample(n=1000) - Profilieren Sie Ihren Code, um Engpässe zu finden:
%time operation() # Time single operation %timeit operation() # Time with multiple runs
Hoher Speicherverbrauch
Problem: System läuft aufgrund von Speichermangel langsam
Lösung:
# Check memory usage
df.info(memory_usage='deep')
# Optimize data types
df['column'] = df['column'].astype('int32') # Instead of int64
# Drop unnecessary columns
df = df[['col1', 'col2']] # Keep only needed columns
# Process in batches
for batch in np.array_split(df, 10):
process(batch)
Umgebung und Konfiguration
Probleme mit virtuellen Umgebungen
Problem: Virtuelle Umgebung wird nicht aktiviert
Lösung:
# Windows
python -m venv venv
venv\Scripts\activate.bat
# macOS/Linux
python3 -m venv venv
source venv/bin/activate
# Check if activated (should show venv name in prompt)
which python # Should point to venv python
Problem: Pakete installiert, aber im Notebook nicht gefunden
Lösung:
# Ensure notebook uses the correct kernel
# Install ipykernel in your venv
pip install ipykernel
python -m ipykernel install --user --name=ml-env --display-name="Python (ml-env)"
# In Jupyter: Kernel → Change Kernel → Python (ml-env)
Git-Probleme
Problem: Kann neueste Änderungen nicht ziehen – Merge-Konflikte
Lösung:
# Stash your changes
git stash
# Pull latest
git pull origin main
# Reapply your changes
git stash pop
# If conflicts, resolve manually or:
git checkout --theirs path/to/file # Take remote version
git checkout --ours path/to/file # Keep your version
VS Code-Integration
Problem: Jupyter-Notebooks lassen sich in VS Code nicht öffnen
Lösung:
- Installieren Sie die Python-Erweiterung in VS Code
- Installieren Sie die Jupyter-Erweiterung in VS Code
- Wählen Sie den richtigen Python-Interpreter aus:
Ctrl+Shift+P→ "Python: Select Interpreter" - Starten Sie VS Code neu
Zusätzliche Ressourcen
- Discord-Diskussionen: Stellen Sie Fragen und teilen Sie Lösungen im #ml-for-beginners-Kanal
- Microsoft Learn: ML for Beginners-Module
- Video-Tutorials: YouTube-Playlist
- Issue-Tracker: Fehler melden
Haben Sie immer noch Probleme?
Wenn Sie die oben genannten Lösungen ausprobiert haben und weiterhin Probleme auftreten:
- Suchen Sie nach bestehenden Issues: GitHub Issues
- Überprüfen Sie Diskussionen auf Discord: Discord-Diskussionen
- Eröffnen Sie ein neues Issue: Geben Sie Folgendes an:
- Ihr Betriebssystem und dessen Version
- Python-/R-Version
- Fehlermeldung (vollständiger Traceback)
- Schritte zur Reproduktion des Problems
- Was Sie bereits ausprobiert haben
Wir helfen Ihnen gerne weiter! 🚀
Haftungsausschluss:
Dieses Dokument wurde mit dem KI-Übersetzungsdienst Co-op Translator übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die sich aus der Nutzung dieser Übersetzung ergeben.