CH NEO-ZÜRICH AUSGABE
WETTER · NEBEL / SMOG 11°C
BLEND DES TAGES · 07/ROGUE
EST. 2027
DIE AEC CYBER MORGENZEITUNG

PAZ Kaffi

DESIGN · ABBRUCH · KOFFEIN · DEPESCHE
AUSGABE 1015 · 15 October 2026
SENDUNG 04:42 MEZ
2'400 BOGEN GEDRUCKT
LESEZEIT · 47 MIN
Python für Architekten: Wo anfangen, wo die Münze Stopp sagt
Code
FRAME · 06:55
15-10-2026

Python für Architekten: Wo anfangen, wo die Münze Stopp sagt

Ein Tesla-Aktien-Tutorial erreicht 0.573 ROC-AUC—nah am Münzwurf. Was Architekten über Python, scikit-learn und ehrliche Grenzen lernen.

Im August 2026 veröffentlichten Zongqian Li, Yaoyiran Li, Nigel Collier und Eugene Ie AutoScientist-Quant (arXiv 2608.28632). Darin beschrieben sie offen: zwei „Lookahead-Probleme” in der Evaluierungs-Pipeline mussten weg. Ein Satz lehrt mehr als Kurse. Forscher mit vollem Stack lassen trotzdem morgen in heute durchsickern—und sagen es laut. PAZ hat das bereits behandelt in Your backtest is lying to you. Dieses Stück fängt von der anderen Seite an: ein Architekt öffnet Python erstmals. Die Frage, die die meisten Lehrpläne überspringen. Warum es lernen, wo anfangen, wo stoppen?

Das Lehrmaterial kam per Inbox. Ein GeeksforGeeks-Tutorial zu Aktienkursprognosen mit Machine Learning in Python, Code-Überarbeitungen von Susobhan Akhuli. Es lädt acht Jahre Tesla-OHLC-Daten, vom 1. Januar 2010 bis 31. Dezember 2017: 1.692 Zeilen und 7 Spalten, löscht die redundante Adj Close-Spalte, baut drei Features auf (open-close, low-high, ein is_quarter_end-Flag), teilt die Zeilen 90/10 mit random_state=2022, trainiert drei Klassifizierer. Dann tut es etwas Seltenes. GeeksforGeeks’ Fazit: „nicht besser als raten mit 50% Wahrscheinlichkeit”. Ein Tutorial, das an einem Münzwurf endet und es sagt, ist ein besserer Lehrer als zehn, die auf einer aufsteigenden Kurve enden.

Was die Zahlen wirklich sagen

GeeksforGeeks berichtet XGBClassifier mit Training-ROC-AUC von 0.964 gegen Validierungs-Score 0.573. Logistische Regression: 0.519 im Training, 0.544 in der Validierung. Polynomial-Kernel-SVC: 0.472 im Training, 0.447 in der Validierung—unter der Münze auf beiden Seiten. Das Tutorial flaggt die XGBoost-Lücke als Überanpassung, was ehrlich ist. Das Modell memoriert die Vergangenheit, liest den nächsten Tag nicht. Sechsundneunzig Prozent im Training ist der Render. Validierung ist die Baustelle.

Der Mechanismus zählt auch. train_test_split vermischt Zeilen standardmässig, mit test_size=0.1 kommen die 1.522 Trainingszeilen und 170 Validierungszeilen aus denselben acht Jahren, durcheinander. Das Ziel nutzt Close.shift(-1), richtige Richtung. Die Aufteilung lässt trotzdem zu, dass das Modell von Donnerstag lernt und am Mittwoch getestet wird. Der Trade-off: ein vermischter Split funktioniert bei unabhängigen Proben, ist irreführend für alles mit Kalender. Mit Datumsangaben in den Daten sieht der Score besser aus als das Modell ist.

←HEUTE: Python mit pandas und scikit-learn ist kostenlos, Rhino 8s ScriptEditor liefert CPython 3, die gleiche Sprache läuft in Grasshopper und im Büro-Stundenzettel.
→3012: Die Büros, die überstanden, hielten Datensätze in einfachem CSV und Modelle bescheiden.
Drehpunkt: Ein Werkzeug gut lernen heisst auch, zu wissen, wann „Stopp hier” die ehrliche Antwort ist.

Warum ein Architekt es trotzdem ausführen sollte

Ersetze Tesla mit deinem Büro. Statt Open, High, Low und Close: Stunden pro SIA-112-Phase, Gebühren pro m², Änderungsaufträge pro Monat. Die Schritte gleich: read_csv, Datum trennen, pro Jahr gruppieren, Spalte bauen die einen Schritt voraus blickt. pandas, das Wes McKinney 2008 startete, macht die Reinigung. scikit-learn die Modellierung—mit stiller Origin-Story. 2007 als David Cournapeau’s Google-Summer-Code-Projekt. Forscher am INRIA in Frankreich, darunter Gaël Varoquaux, Fabian Pedregosa, Alexandre Gramfort und Vincent Michel, trugen es in die Bibliothek, die jetzt Millionen importieren ohne nachzudenken. Diese Betreuer sind der Grund, dass ein zwölf-Köpfiges Zürich-Studio einen Klassifizierer über Mittag laufen lässt.

Das Werkzeug: scikit-learn, open-source Python-Machine-Learning-Bibliothek von einer weltweiten Freiwilligen- und institutionellen Gemeinschaft. Es lohnt einen Architekten-Nachmittag: es stellt die ehrliche Basis (DummyClassifier) und die ehrliche Aufteilung (TimeSeriesSplit) direkt neben die beeindruckenden Modelle.

Einrichtung:

python -m venv .venv
.venvScriptsactivate          # macOS/Linux: source .venv/bin/activate
pip install pandas scikit-learn matplotlib
python -c "import sklearn, pandas; print(sklearn.__version__, pandas.__version__)"

Erste Schritte:

  1. Exportiere eine CSV aus deinem Stundenzettel mit einer Zeile pro Projekt-Monat: Datum, Projekt, Phase, Stunden. Lade sie mit pd.read_csv("hours.csv", parse_dates=["date"]).sort_values("date"). Sortieren ist der erste Schutz.
  2. Baue ein Vorhersage-Ziel wie GeeksforGeeks: y = (df["hours"].shift(-1) > df["hours"]).astype(int). Die letzte Zeile löschen—sie hat keine Zukunft.
  3. Messe einen DummyClassifier und LogisticRegression auf einer zeitlich geordneten Aufteilung (siehe Hack unten). Landen beide nahe 0,5, hast du die Antwort—Nachmittag statt Quartal.

Wo stoppen

Hier ist der Stoppunkt, der gefordert war. Starten mit Daten, die das Büro besitzt—Pläne aus Archicad, Stundenzettel, Rechnungslogs. Stopp in dem Moment, wo dein Modell nicht gegen die Münze gewinnt auf zeitlich sortierter Aufteilung. Von da ist Python nicht dein Problem. Das Signal sitzt einfach nicht in den Spalten, mehr Schichten memorieren bloss besser. Der Markt, wie der Client, behält sich Änderung vor. Python’s echter Nutzen im Büro ist die langweilige 80 Prozent: Bereinigung, Verknüpfung, Kontrolle. PAZ Academy lehrt genau diesen Weg, von GhPython in Grasshopper zum Büro-Skript, das vier Stunden pro Monat spart.

Atelier: Ein Büro, das KI einführt, wird einen Kollegen treffen mit Dashboard, das Überschreitungen „vorhersagt”. Die Abwehr ist eine geschriebene Regel, nicht Skepsis. Nächster Schritt: eine Zeile zur BIM/IT-Richtlinie hinzufügen: ein internes Modell darf einen Gebührenvorschlag nur beeinflussen, wenn es DummyClassifier schlägt auf TimeSeriesSplit in allen fünf Folds.

Hack: Lass das Modell gegen eine Münze antreten, Zeit läuft in eine Richtung. TimeSeriesSplit trainiert immer auf Vergangenheit und testet auf den späteren Block, nichts aus der Zukunft sickert durch. Der Dummy ist der Boden: ROC-AUC 0.5. Alles, das nicht klar drüber liegt, zurück in die Schublade.

from sklearn.model_selection import TimeSeriesSplit, cross_val_score
from sklearn.dummy import DummyClassifier
from sklearn.linear_model import LogisticRegression
cv = TimeSeriesSplit(n_splits=5)  # past trains, future tests
for m in (DummyClassifier(), LogisticRegression()): print(type(m).__name__, cross_val_score(m, X, y, cv=cv, scoring="roc_auc").mean())

Von hier aus waren es die schlichten Datensätze, die überstanden. Eine CSV, die jeder 25-Jährige in Notepad öffnet, überlebte jedes proprietäre Dashboard. Halte Trainingsdaten langweilig.

Learn-it:

Öffne deinen Stundenzettel-Export heute Abend, führe die fünf Hack-Zeilen darauf aus, schreib die Zahl auf—bevor du entscheidest.

GEMELDET AUS
MIT-UNTERZEICHNER
PAZ Academy
VERTRAUEN
HIGH
NACHDRUCKE
© PAZ - PARAMETRIC ACADEMY ZURICH · ALLE RECHTE VORBEHALTEN

QUELLE · ↗

PAZ Kaffi · interdisziplinäre Redaktionsarbeit, geleitet von der PAZ Academy

⚑ FEHLER MELDEN · KORREKTUR EINSENDEN
◂ ZURÜCK ZUR TITELSEITE · PAZ KAFFI

© 2026 PAZ Academy.