{"id":193601,"date":"2024-04-01T07:40:26","date_gmt":"2024-04-01T06:40:26","guid":{"rendered":"https:\/\/liora.io\/de\/?p=193601"},"modified":"2026-02-06T05:58:02","modified_gmt":"2026-02-06T04:58:02","slug":"entdecke-die-5-scikit-learn-functions-die-du-gerne-schon-frueher-gewusst-haettest","status":"publish","type":"post","link":"https:\/\/liora.io\/de\/entdecke-die-5-scikit-learn-functions-die-du-gerne-schon-frueher-gewusst-haettest","title":{"rendered":"Entdecke die 5 Scikit Learn Functions, die du gerne schon fr\u00fcher gekannt h\u00e4ttest!"},"content":{"rendered":"<style>\n.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}<\/style><p><strong>Bevor wir dir ihre n\u00fctzlichen Funktionen zeigen, wollen wir uns daran erinnern, was Scikit-Learn ist und wof\u00fcr es verwendet werden kann. Scikit-Learn ist eine Python-Bibliothek f\u00fcr Machine Learning, sowohl f\u00fcr \u00fcberwachtes als auch f\u00fcr un\u00fcberwachtes Lernen. Sie bietet auch die M\u00f6glichkeit, Modelle mit statistischen Mitteln zu analysieren.<\/strong><\/p>\t\t\n\t\t<p>Die Installation erfolgt mi<strong>t conda :<\/strong><\/p><pre style=\"padding-left: 40px;\">conda install scikit-learn<\/pre><p>Oder mit pip :<\/p><pre style=\"padding-left: 40px;\">pip install -U scikit-learn<\/pre><p>In diesem Artikel untersuchen wir f\u00fcnf Funktionen von Scikit-learn (oft abgek\u00fcrzt als &#8222;Scikit&#8220; oder einfach &#8222;sklearn&#8220;), die deinen Ansatz zum Lernen von Daten ver\u00e4ndern k\u00f6nnten.<\/p>\t\t\n\t\t\t<h3>1. Erhalte Datens\u00e4tze<\/h3>\t\t\n\t\t<p>Eine sehr n\u00fctzliche Funktion (vor allem f\u00fcr Anf\u00e4nger) ist die M\u00f6glichkeit, mit mehreren Datens\u00e4tzen zu arbeiten, die automatisch in <strong>Scikit-learn<\/strong> integriert sind.<\/p><p>Zu den am h\u00e4ufigsten verwendeten <a href=\"https:\/\/liora.io\/de\/welche-datenbanken-gibt-es-und-welche-ist-die-richtige\">Datenbanken<\/a> geh\u00f6ren: der Iris-Datensatz, der <strong>Hauspreis-Datensatz, der Diabetes-Datensatz.<\/strong> Diese Datens\u00e4tze sind so konzipiert, dass sie leicht verst\u00e4ndlich sind, was eine direkte Umsetzung von Modellen des maschinellen Lernens erm\u00f6glicht.<\/p><p>Du kannst den <strong>iris-Datensatz mit dem folgenden Code importieren:<\/strong><\/p><pre style=\"padding-left: 40px;\">from sklearn.datasets import load_iris<\/pre><p>Auf \u00e4hnliche Weise kannst du auch andere Datens\u00e4tze importieren, die in der Scikit-learn-Bibliothek verf\u00fcgbar sind.<\/p>\t\t\n\t\t\t<h3>2. Teile deine Daten auf<\/h3>\t\t\n\t\t<p>Der erste Schritt vor dem Training eines<a href=\"https:\/\/liora.io\/de\/sarsa-machine-learning-mit-verstaerkendem-lernen\"> maschinellen Lernalgorithmus<\/a> besteht darin, den Datensatz in zwei Teile aufzuteilen: die Daten zum Trainieren des Modells und die Daten zum Testen des Modells (80% vs. 20% in den meisten F\u00e4llen).<\/p><p>Diese Aufteilung ist f\u00fcr den weiteren Verlauf der Arbeit entscheidend, denn sie erm\u00f6glicht es, :<\/p><ul><li>Eine Sch\u00e4tzung der <strong>Leistung des Modells bei neuen Daten zu erhalten;<\/strong><\/li><li>Erkennung von <a href=\"https:\/\/liora.io\/de\/overfitting-was-ist-das-wie-kann-man-es-vermeiden\">Overfitting<\/a> &#8211; wenn ein Modell zu genau auf die Trainingsdaten abgestimmt ist, kann es m\u00f6glicherweise nicht richtig auf neue Daten verallgemeinern;<\/li><li><strong>Optimierung der Hyperparameter<\/strong> &#8211; durch Anpassung der Modellparameter und Bewertung der Leistung im Testsatz;<\/li><li><strong>\u00dcberpr\u00fcfen der Robustheit des Modells<\/strong> gegen\u00fcber unbekannten Daten in Situationen der realen Welt.<\/li><\/ul>\t\t\n\t\t\t\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\">Das SARIMAX-Modell beherrschen<\/a><\/div><\/div>\n\n\t\t<p>Die Funktion von <strong>Scikit-learn<\/strong>, die den Trainingssatz und den Testsatz in einer Zeile Code erstellt, hei\u00dft train_test_split :<\/p><pre style=\"padding-left: 40px;\">from sklearn.model_selection import train_test_split<\/pre>\t\t\n\t\t\t\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/weiterbildung-data-scientist\">Alles \u00fcber die Funktionen von Scikit-learn lernen<\/a><\/div><\/div>\n\n\t\t\t<h3>3. Verwende fortgeschrittene Techniken<\/h3>\t\t\n\t\t<p>Es ist m\u00f6glich, das<strong> Niveau des Datenlernens zu erh\u00f6hen,<\/strong> indem man den Ansatz verwendet, bei dem mehrere Modelle zur Vorhersage der Zielvariable eingesetzt werden (anstatt sich auf ein einziges Modell zu verlassen). Das Hauptziel dieser Ensembletechnik ist es, den Kompromiss zwischen Varianz und Bias zu mildern.<\/p><p>Wir teilen den<a href=\"https:\/\/liora.io\/de\/datasets-top-5-websites-fuer-qualitativ-hochwertige-datensaetze\"> Datensatz<\/a> nach dem Zufallsprinzip in Teilmengen auf, die dann verschiedenen Modellen zum Training vorgelegt werden. Wenn es an der Zeit ist, eine Vorhersage zu treffen, wird der Durchschnitt aller Vorhersagen, die von diesen Modellen erzeugt wurden, betrachtet.<\/p><p>Es gibt zwei Haupttechniken: Bagging (oder Bootstrap Aggregating) und Boosting.<\/p><p>Das Besondere am Bagging ist, dass die Eingaben f\u00fcr die verschiedenen Modelle unabh\u00e4ngig voneinander sind, wodurch eine \u00dcberanpassung vermieden wird.<\/p><p>In Scikit-learn kann die Klasse <a href=\"https:\/\/liora.io\/de\/bagging-im-machine-learning-was-ist-das\">BaggingClassifier<\/a> verwendet werden, um die Bagging-Technik auf verschiedene Algorithmen des maschinellen Lernens anzuwenden:<\/p><pre style=\"padding-left: 40px;\">from sklearn.ensemble import BaggingClassifier<\/pre><p>Diese Technik war eine Inspiration f\u00fcr die Schaffung von <a href=\"https:\/\/liora.io\/de\/random-forest-definition\">Random Forest<\/a> (Zufallswald), denn eines der h\u00e4ufigsten Beispiele f\u00fcr Bagging ist die Verwendung mehrerer Entscheidungsb\u00e4ume f\u00fcr die Vorhersage.<\/p><p><a href=\"https:\/\/liora.io\/de\/gradient-boosting-algorithmen\">Boosting<\/a> ist ein Ansatz, bei dem mehrere Modelle so trainiert werden, dass die Ausgabe eines Modells die Eingabe des n\u00e4chsten Modells beeinflusst, wobei besonderes Augenmerk auf Daten gelegt wird, die falsch vorhergesagt wurden.<\/p><p>Um diese Technik nutzen zu k\u00f6nnen, kannst du die Klasse GradientBoostingClassifier f\u00fcr <a href=\"https:\/\/liora.io\/de\/umgang-mit-problemen-bei-unausgewogener-klassifizierung-teil-i\">Klassifikationsprobleme<\/a> importieren :<\/p><pre style=\"padding-left: 40px;\">from sklearn.ensemble import GradientBoostingClassifier<\/pre><p>oder GradientBoostingRegressor f\u00fcr Regressionsprobleme :<\/p><pre style=\"padding-left: 40px;\">from sklearn.ensemble import GradientBoostingRegressor<\/pre>\t\t\n\t\t\t<h3>4. Bewerte die Leistung deines Modells<\/h3>\t\t\n\t\t<p>Nach der Anwendung des <strong>Machine-Learning-Algorithmus<\/strong> ist es unerl\u00e4sslich, die Leistung eines Modells zu bewerten. Die Funktion, um dies auf robustere und zuverl\u00e4ssigere Weise zu tun, hei\u00dft cross_val_score.<\/p><p>Der Hauptzweck dieser Funktion ist es, eine <a href=\"https:\/\/liora.io\/de\/kreuzvalidierungsverfahren-definition-und-bedeutung-fur-machine-learning\">Kreuzvalidierung<\/a> durchzuf\u00fchren. Dabei wird die Nutzung der Trainingsdaten maximiert, indem sie in mehrere Teilmengen (Plis) aufgeteilt werden. Jedes dieser Falten wird dann abwechselnd als Validierungsset verwendet, w\u00e4hrend die anderen f\u00fcr das Training \u00fcbrig bleiben.<\/p><p>Dies hilft, Verzerrungen durch eine einzelne Datenteilung zu vermeiden und erm\u00f6glicht (durch die durchschnittlichen Leistungswerte) eine realistischere Einsch\u00e4tzung der Robustheit des Modells \u00fcber verschiedene Datenuntergruppen hinweg.<\/p><p>Hier ist der Code, um diese Funktion aus Scikit-learn zu importieren:<\/p><pre style=\"padding-left: 40px;\">from sklearn.model_selection import cross_val_score<\/pre>\t\t\n\t\t\t\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/weiterbildung-data-scientist\">Alles \u00fcber die Funktionen von Scikit-learn<\/a><\/div><\/div>\n\n\t\t\t<h3>5. Bereinige deinen Code, indem du ihn eleganter und weniger verbraucherorientiert machst.<\/h3>\t\t\n\t\t<p>Die <strong>Pipeline-Funktion<\/strong> erm\u00f6glicht es, mehrere Vorverarbeitungs- und Modellierungsschritte in einer einzigen Sequenz zu kombinieren.<\/p><p>Dies erleichtert die Wiederholbarkeit des Prozesses und die konsistente Anwendung von Transformationen auf Trainings- und Testsets.<\/p><p>Hier ist ein Beispielcode, in dem wir die Daten standardisieren, die <strong>Dimensionsreduktion<\/strong> durchf\u00fchren und ein Modell trainieren:<\/p><p>#Wir importieren die ben\u00f6tigten Funktionen.<\/p><p>from sklearn.ensemble import GradientBoostingRegressor<br>from sklearn.model_selection import train_test_split<br>from sklearn.preprocessing import StandardScaler<br>from sklearn.decomposition import PCA<br>from sklearn.metrics import mean_squared_error<\/p><p>#Wir f\u00fchren das Splitting der Daten durch.<\/p><p>X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)<\/p><p>#Wir normalisieren die Daten.<\/p><p>scaler = StandardScaler()<br>X_train_scaled = scaler.fit_transform(X_train)<br>X_test_scaled = scaler.transform(X_test)<\/p><p>#Wir verkleinern die Dimension.<\/p><p>pca = PCA(n_components=3)<br>X_train_pca = pca.fit_transform(X_train_scaled)<br>X_test_pca = pca.transform(X_test_scaled)<\/p><p>#Wir trainieren das Modell.<\/p><p>regressor = GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, max_depth=3, random_state=42)<br>regressor.fit(X_train_pca, y_train)<\/p><p>#Schlie\u00dflich bewerten wir das Modell.<\/p><p>predictions = regressor.predict(X_test_pca)<br>mse = mean_squared_error(y_test, predictions)<\/p>\t\t\n\t\t\t\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/weiterbildung-data-scientist\">Die 5 Funktionen von Scikit-Learn kennen lernen<\/a><\/div><\/div>\n\n\t\t<p>Wir k\u00f6nnen denselben Code mit Pipeline wiederholen:<\/p><p>#Wir importieren die ben\u00f6tigten Funktionen.<\/p><p>from sklearn.pipeline import Pipeline<br>from sklearn.ensemble import GradientBoostingRegressor<br>from sklearn.model_selection import train_test_split<br>from sklearn.preprocessing import StandardScaler<br>from sklearn.decomposition import PCA<br>from sklearn.metrics import mean_squared_error<\/p><p>#Wir f\u00fchren das Splitting der Daten durch.<\/p><p>X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42).<\/p><p>#Wir erstellen eine Pipeline.<\/p><p>pipeline = Pipeline([<br>(&#8217;scaler&#8216;, StandardScaler()), #Wir normalisieren die Daten.<br>(&#8218;pca&#8216;, PCA(n_components=3)), #Wir reduzieren die Gr\u00f6\u00dfe.<br>(&#8218;regressor&#8216;, GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, max_depth=3, random_state=42)) <br>#Wir trainieren das Modell.<br>])<\/p><p>#Wir trainieren das Modell mithilfe der Pipeline.<\/p><p>pipeline.fit(X_train, y_train)<\/p><p>#Schlie\u00dflich sch\u00e4tzen wir das Modell ab.<\/p><p>predictions = pipeline.predict(X_test)<br>mse = mean_squared_error(y_test, predictions)<br>print(&#8222;Mittlerer quadratischer Fehler:&#8220;, mse)<\/p><p>Die Verwendung von Pipeline, erm\u00f6glicht es uns, jeden Schritt mit einem spezifischen Namen zu definieren (z. B. &#8217;scaler&#8216;, &#8218;pca&#8216;, &#8218;regressor&#8216;), wodurch der Trainings- und Auswertungsprozess f\u00fcr das Modell vereinfacht wird.<\/p><p>Sie verringert die Notwendigkeit, \u00e4hnliche Schritte mehrmals zu wiederholen, was die Lesbarkeit des Codes verbessert. Im oberen Beispiel ist die Version mit Pipeline um etwa 4 Zeilen k\u00fcrzer, was eine deutliche Reduzierung darstellt, vor allem, wenn die Anzahl der Vorverarbeitungs- und <strong>Modellierungsschritte zunimmt.<\/strong><\/p>\t\t\n\t\t\t<h3>Fazit<\/h3>\t\t\n\t\t<p>Scikit-learn bietet eine Reihe von leistungsstarken Funktionen, die die Entwicklung deiner Modelle f\u00fcr <a href=\"https:\/\/liora.io\/de\/machine-learning-modelle-so-geht-diemodellierung-eines-machine-learning-projekts\">maschinelles Lernen<\/a> erheblich vereinfachen k\u00f6nnen.<\/p><p>Wenn du dich mit diesen f\u00fcnf Funktionen besch\u00e4ftigst, kannst du deine Effizienz steigern und robustere Ergebnisse erzielen. Du solltest diese Funktionen also noch heute in deine<strong> Machine-Learning-Toolbox aufnehmen!<\/strong><\/p>\t\t\n\t\t\t\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/weiterbildung-data-scientist\">Die f\u00fcnf Funktionen von Scikit-learn beherrschen<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bevor wir dir ihre n\u00fctzlichen Funktionen zeigen, wollen wir uns daran erinnern, was Scikit-Learn ist und wof\u00fcr es verwendet werden kann. Scikit-Learn ist eine Python-Bibliothek f\u00fcr Machine Learning, sowohl f\u00fcr \u00fcberwachtes als auch f\u00fcr un\u00fcberwachtes Lernen. Sie bietet auch die M\u00f6glichkeit, Modelle mit statistischen Mitteln zu analysieren. Die Installation erfolgt mit conda : conda install [&hellip;]<\/p>\n","protected":false},"author":78,"featured_media":193604,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_theme","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2472],"class_list":["post-193601","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-ki"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/193601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/users\/78"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/comments?post=193601"}],"version-history":[{"count":1,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/193601\/revisions"}],"predecessor-version":[{"id":216928,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/193601\/revisions\/216928"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media\/193604"}],"wp:attachment":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media?parent=193601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/categories?post=193601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}