{"id":1175,"date":"2023-07-27T09:44:39","date_gmt":"2023-07-27T09:44:39","guid":{"rendered":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/"},"modified":"2023-07-27T09:44:39","modified_gmt":"2023-07-27T09:44:39","slug":"k-fache-kreuzvalidierung-in-r","status":"publish","type":"post","link":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/","title":{"rendered":"K-fold-kreuzvalidierung in r (schritt f\u00fcr schritt)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Um die Leistung eines Modells anhand eines Datensatzes zu bewerten, m\u00fcssen wir messen, wie gut die vom Modell gemachten Vorhersagen mit den beobachteten Daten \u00fcbereinstimmen.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Eine hierf\u00fcr h\u00e4ufig verwendete Methode ist die <a href=\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung\/\" target=\"_blank\" rel=\"noopener noreferrer\">k-fache Kreuzvalidierung<\/a> , die den folgenden Ansatz verwendet:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>1.<\/strong> Teilen Sie einen Datensatz zuf\u00e4llig in <em>k<\/em> Gruppen oder \u201eFaltungen\u201c von ungef\u00e4hr gleicher Gr\u00f6\u00dfe auf.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>2.<\/strong> W\u00e4hlen Sie eine der Falten als R\u00fcckhalteset. Passen Sie die Schablone an die verbleibenden K-1-Falten an. Berechnen Sie den MSE-Test anhand der Beobachtungen in der gespannten Lage.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>3.<\/strong> Wiederholen Sie diesen Vorgang <em>k<\/em> -mal, wobei Sie jedes Mal einen anderen Satz als Ausschlusssatz verwenden.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>4.<\/strong> Berechnen Sie den Gesamttest-MSE als Durchschnitt der <em>k<\/em> Test-MSEs.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Der einfachste Weg, eine k-fache Kreuzvalidierung in R durchzuf\u00fchren, ist die Verwendung der <a href=\"https:\/\/www.rdocumentation.org\/packages\/caret\/versions\/6.0-86\/topics\/trainControl\" target=\"_blank\" rel=\"noopener noreferrer\">trainControl()-<\/a> Funktion aus der <strong>Caret-<\/strong> Bibliothek in R.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Dieses Tutorial bietet ein kurzes Beispiel f\u00fcr die Verwendung dieser Funktion zur Durchf\u00fchrung einer k-fachen Kreuzvalidierung f\u00fcr ein bestimmtes Modell in R.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Beispiel: K-Fold-Kreuzvalidierung in R<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Angenommen, wir haben den folgenden Datensatz in R:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#create data frame<\/span>\ndf &lt;- data.frame(y=c(6, 8, 12, 14, 14, 15, 17, 22, 24, 23),\n                 x1=c(2, 5, 4, 3, 4, 6, 7, 5, 8, 9),\n                 x2=c(14, 12, 12, 13, 7, 8, 7, 4, 6, 5))\n\n<span style=\"color: #008080;\">#view data frame\n<\/span>df\n\ny x1 x2\n6 2 14\n8 5 12\n12 4 12\n14 3 13\n14 4 7\n15 6 8\n17 7 7\n22 5 4\n24 8 6\n23 9 5\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Der folgende Code zeigt, wie man ein <a href=\"https:\/\/statorials.org\/de\/multiple-lineare-regression-r\/\" target=\"_blank\" rel=\"noopener noreferrer\">multiples lineares Regressionsmodell<\/a> an diesen Datensatz in R anpasst und eine k-fache Kreuzvalidierung mit k = 5 Mal durchf\u00fchrt, um die Leistung des Modells zu bewerten:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #993300;\">library<\/span> (caret)<\/span>\n\n#specify the cross-validation method<\/span>\nctrl &lt;- trainControl(method = \" <span style=\"color: #008000;\">cv<\/span> \", number = 5)\n\n<span style=\"color: #008080;\">#fit a regression model and use k-fold CV to evaluate performance\n<\/span>model &lt;- train(y ~ x1 + x2, data = df, method = \" <span style=\"color: #008000;\">lm<\/span> \", trControl = ctrl)\n\n<span style=\"color: #008080;\">#view summary of k-fold CV               \n<\/span>print(model)\n\nLinear Regression \n\n10 samples\n 2 predictors\n\nNo pre-processing\nResampling: Cross-Validated (5 fold) \nSummary of sample sizes: 8, 8, 8, 8, 8 \nResampling results:\n\n  RMSE Rsquared MAE     \n  3.018979 1 2.882348\n\nTuning parameter 'intercept' was held constant at a value of TRUE\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">So interpretieren Sie das Ergebnis:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">Es fand keine Vorverarbeitung statt. Das hei\u00dft, wir haben <a href=\"https:\/\/statorials.org\/de\/wie-man-daten-in-r-normalisiert\/\" target=\"_blank\" rel=\"noopener noreferrer\">die Daten vor der Anpassung der Modelle in keiner Weise skaliert<\/a> .<\/span><\/li>\n<li> <span style=\"color: #000000;\">Die Resampling-Methode, die wir zur Bewertung des Modells verwendeten, war eine 5-fache Kreuzvalidierung.<\/span><\/li>\n<li> <span style=\"color: #000000;\">Die Stichprobengr\u00f6\u00dfe f\u00fcr jeden Trainingssatz betrug 8.<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>RMSE:<\/strong> quadratischer Mittelwertfehler. Dies misst den durchschnittlichen Unterschied zwischen den Vorhersagen des Modells und den tats\u00e4chlichen Beobachtungen. Je niedriger der RMSE, desto genauer kann ein Modell tats\u00e4chliche Beobachtungen vorhersagen.<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>Rsquared:<\/strong> Dies ist ein Ma\u00df f\u00fcr die Korrelation zwischen Vorhersagen des Modells und tats\u00e4chlichen Beobachtungen. Je h\u00f6her das R-Quadrat, desto genauer kann ein Modell tats\u00e4chliche Beobachtungen vorhersagen.<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>MAE:<\/strong> Der durchschnittliche absolute Fehler. Dies ist die durchschnittliche absolute Differenz zwischen den Vorhersagen des Modells und den tats\u00e4chlichen Beobachtungen. Je niedriger der MAE, desto genauer kann ein Modell tats\u00e4chliche Beobachtungen vorhersagen.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Jede der drei im Ergebnis bereitgestellten Messungen (RMSE, R-Quadrat und MAE) gibt uns eine Vorstellung von der Leistung des Modells bei unver\u00f6ffentlichten Daten.<\/span><\/p>\n<p> <span style=\"color: #000000;\">In der Praxis passen wir in der Regel mehrere unterschiedliche Modelle an und vergleichen die drei Metriken, die sich aus den hier vorgestellten Ergebnissen ergeben, um zu entscheiden, welches Modell die niedrigsten Testfehlerraten erzeugt und daher das beste zu verwendende Modell ist.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Wir k\u00f6nnen den folgenden Code verwenden, um die endg\u00fcltige Modellanpassung zu untersuchen:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view final model<\/span>\nmodel$finalModel\n\nCall:\nlm(formula = .outcome ~ ., data = dat)\n\nCoefficients:\n(Intercept) x1 x2  \n    21.2672 0.7803 -1.1253  \n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Das endg\u00fcltige Modell sieht wie folgt aus:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>y = 21,2672 + 0,7803*(x <sub>1<\/sub> ) \u2013 1,12538(x <sub>2<\/sub> )<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Wir k\u00f6nnen den folgenden Code verwenden, um die f\u00fcr jede Falte getroffenen Modellvorhersagen anzuzeigen:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view predictions for each fold<\/span>\nmodel$resample\n\n      RMSE Rsquared MAE Resample\n1 4.808773 1 3.544494 Fold1\n2 3.464675 1 3.366812 Fold2\n3 6.281255 1 6.280702 Fold3\n4 3.759222 1 3.573883 Fold4\n5 1.741127 1 1.679767 Fold5<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Beachten Sie, dass wir in diesem Beispiel die Verwendung von k=5 Falten w\u00e4hlen, Sie k\u00f6nnen jedoch eine beliebige Anzahl von Falten ausw\u00e4hlen. In der Praxis w\u00e4hlen wir typischerweise zwischen 5 und 10 Lagen, da sich dies als die optimale Lagenzahl erweist, die zu zuverl\u00e4ssigen Testfehlerraten f\u00fchrt.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Um die Leistung eines Modells anhand eines Datensatzes zu bewerten, m\u00fcssen wir messen, wie gut die vom Modell gemachten Vorhersagen mit den beobachteten Daten \u00fcbereinstimmen. Eine hierf\u00fcr h\u00e4ufig verwendete Methode ist die k-fache Kreuzvalidierung , die den folgenden Ansatz verwendet: 1. Teilen Sie einen Datensatz zuf\u00e4llig in k Gruppen oder \u201eFaltungen\u201c von ungef\u00e4hr gleicher Gr\u00f6\u00dfe [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)<\/title>\n<meta name=\"description\" content=\"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)\" \/>\n<meta property=\"og:description\" content=\"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-27T09:44:39+00:00\" \/>\n<meta name=\"author\" content=\"Dr. Benjamin Anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dr. Benjamin Anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/\",\"url\":\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/\",\"name\":\"K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/de\/#website\"},\"datePublished\":\"2023-07-27T09:44:39+00:00\",\"dateModified\":\"2023-07-27T09:44:39+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/de\/#\/schema\/person\/ec75c4d6365f2708f8a0ad3a42121aa0\"},\"description\":\"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Heim\",\"item\":\"https:\/\/statorials.org\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"K-fold-kreuzvalidierung in r (schritt f\u00fcr schritt)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/de\/#website\",\"url\":\"https:\/\/statorials.org\/de\/\",\"name\":\"Statorials\",\"description\":\"Ihr Leitfaden f\u00fcr statistische Kompetenz !\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/de\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/de\/#\/schema\/person\/ec75c4d6365f2708f8a0ad3a42121aa0\",\"name\":\"Dr. Benjamin Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/statorials.org\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/statorials.org\/de\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"https:\/\/statorials.org\/de\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg\",\"caption\":\"Dr. Benjamin Anderson\"},\"description\":\"Hallo, ich bin Benjamin, ein pensionierter Statistikprofessor, der sich zum engagierten Statorials-Lehrer entwickelt hat. Mit umfassender Erfahrung und Fachwissen auf dem Gebiet der Statistik bin ich bestrebt, mein Wissen zu teilen, um Studenten durch Statorials zu bef\u00e4higen. Mehr wissen\",\"sameAs\":[\"https:\/\/statorials.org\/de\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)","description":"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/","og_locale":"de_DE","og_type":"article","og_title":"K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)","og_description":"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.","og_url":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/","og_site_name":"Statorials","article_published_time":"2023-07-27T09:44:39+00:00","author":"Dr. Benjamin Anderson","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Dr. Benjamin Anderson","Gesch\u00e4tzte Lesezeit":"3 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/","url":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/","name":"K-Fold-Kreuzvalidierung in R (Schritt f\u00fcr Schritt)","isPartOf":{"@id":"https:\/\/statorials.org\/de\/#website"},"datePublished":"2023-07-27T09:44:39+00:00","dateModified":"2023-07-27T09:44:39+00:00","author":{"@id":"https:\/\/statorials.org\/de\/#\/schema\/person\/ec75c4d6365f2708f8a0ad3a42121aa0"},"description":"In diesem Tutorial wird erl\u00e4utert, wie eine k-fache Kreuzvalidierung in R durchgef\u00fchrt wird, einschlie\u00dflich eines Schritt-f\u00fcr-Schritt-Beispiels.","breadcrumb":{"@id":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/de\/k-fache-kreuzvalidierung-in-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Heim","item":"https:\/\/statorials.org\/de\/"},{"@type":"ListItem","position":2,"name":"K-fold-kreuzvalidierung in r (schritt f\u00fcr schritt)"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/de\/#website","url":"https:\/\/statorials.org\/de\/","name":"Statorials","description":"Ihr Leitfaden f\u00fcr statistische Kompetenz !","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/de\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"Person","@id":"https:\/\/statorials.org\/de\/#\/schema\/person\/ec75c4d6365f2708f8a0ad3a42121aa0","name":"Dr. Benjamin Anderson","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/statorials.org\/de\/#\/schema\/person\/image\/","url":"https:\/\/statorials.org\/de\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg","contentUrl":"https:\/\/statorials.org\/de\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg","caption":"Dr. Benjamin Anderson"},"description":"Hallo, ich bin Benjamin, ein pensionierter Statistikprofessor, der sich zum engagierten Statorials-Lehrer entwickelt hat. Mit umfassender Erfahrung und Fachwissen auf dem Gebiet der Statistik bin ich bestrebt, mein Wissen zu teilen, um Studenten durch Statorials zu bef\u00e4higen. Mehr wissen","sameAs":["https:\/\/statorials.org\/de"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/posts\/1175"}],"collection":[{"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/comments?post=1175"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/posts\/1175\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/media?parent=1175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/categories?post=1175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/de\/wp-json\/wp\/v2\/tags?post=1175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}