{"id":25070,"date":"2026-09-16T19:10:16","date_gmt":"2026-09-16T19:10:16","guid":{"rendered":"https:\/\/www.mailgun.com\/blog\/maschinelles-lernen-fur-alltagliche-aufgaben\/"},"modified":"2026-09-16T19:10:16","modified_gmt":"2026-09-16T19:10:16","slug":"maschinelles-lernen-fur-alltagliche-aufgaben","status":"publish","type":"blog","link":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/","title":{"rendered":"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir assoziieren es oft mit Dingen wie Big Data, Data Mining, Data Science und k\u00fcnstlicher Intelligenz. Manchmal f\u00fchlt es sich etwa so an:<\/p>\n\n\n\r\n    <nav data-content-type=\"longform\" class=\"toc-block longform-spacings px-5 py-6 px-md-6 px-lg-7 py-md-7 bg-light fs-sm rounded-lg\" aria-labelledby=\"toc-title-1604\"><p class=\"h5 m-0\" id=\"toc-title-1604\">Inhaltsverzeichnis<\/p><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">01<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#maschinelles-lernen-ist-schwer\">Maschinelles Lernen ist schwer<\/a><a class=\"scrollme link-body-color\" href=\"#ein-praxisbeispiel\">Ein Praxisbeispiel<\/a><a class=\"scrollme link-body-color\" href=\"#parsen-von-html-aus-dem-oeffentlichen-internet\">Parsen von HTML aus dem \u00f6ffentlichen Internet<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">02<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#cluster-analyse-als-rettung\">Cluster-Analyse als Rettung<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">03<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#datensatz-sammeln\">Datensatz sammeln<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">04<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#anzahl-der-cluster-bestimmen\">Anzahl der Cluster bestimmen<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">05<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#clustering\">Clustering<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">06<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#klassifizierung\">Klassifizierung<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">07<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#validierung\">Validierung<\/a><a class=\"scrollme link-body-color\" href=\"#erkenntnisse\">Erkenntnisse<\/a><a class=\"scrollme link-body-color\" href=\"#nuetzliche-links\">N\u00fctzliche Links<\/a><\/div><\/div><\/nav>\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4884\" width=\"698\" height=\"400\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/ml.jpeg\" alt=\"A brain made up of electrical points\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/ml.jpeg 698w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/ml-300x172.jpeg 300w\" sizes=\"(max-width: 698px) 100vw, 698px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Maschinelles Lernen ist schwer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ich hatte schon immer das Gef\u00fchl, dass wir vom maschinellen Lernen f\u00fcr einfache Aufgaben, die wir regelm\u00e4\u00dfig erledigen, profitieren.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ein Praxisbeispiel<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Bei Mailgun arbeiten wir mit E-Mails und als Teil unseres Angebots parsen wir HTML-Zitate. Dadurch k\u00f6nnen Nutzer die neueste Antwort anstelle der gesamten Konversation abrufen, die als Teil unserer Webhook-Antwort zur\u00fcckgegeben wird. Erfahren Sie mehr dar\u00fcber, wie wir eingehende Nachrichten verarbeiten, in unserem\u00a0<a href=\"https:\/\/documentation.mailgun.com\/en\/latest\/user_manual.html?#routes\" target=\"_tabs\" rel=\"noopener noreferrer\">Dokumentation<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr alle, die es nicht wissen: So sieht das Parsen von HTML aus dem \u00f6ffentlichen Internet aus:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4885\" width=\"370\" height=\"276\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/jeep.png\" alt=\"Dirty Jeep stuck in the mud\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/jeep.png 370w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/jeep-300x224.png 300w\" sizes=\"(max-width: 370px) 100vw, 370px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Parsen von HTML aus dem \u00f6ffentlichen Internet<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Es ist un\u00fcbersichtlich und manchmal bleiben Prozesse h\u00e4ngen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein Wechsel der Parsing-Bibliothek ist hilfreich, l\u00f6st das Problem jedoch nicht vollst\u00e4ndig, da jede Bibliothek ihre Grenzen hat. Sie m\u00fcssen das Parsen auf ein vern\u00fcnftiges Ma\u00df beschr\u00e4nken.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cluster-Analyse als Rettung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Aber was sollten die Kriterien und der Schwellenwert sein? Sollten wir nach HTML-L\u00e4nge oder Tag-Anzahl begrenzen? Vielleicht beides? Vielleicht durch etwas anderes? Das Ziel ist offensichtlich, so viele Nachrichten wie m\u00f6glich zu verarbeiten, ohne sich selbst ins Bein zu schie\u00dfen. Der Weg dorthin ist jedoch nicht ganz klar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Genau hier sind Cluster-Analyse und statistische Klassifizierung n\u00fctzlich. F\u00fcr die Untersuchung nutzte ich\u00a0<a href=\"https:\/\/www.r-project.org\/\" target=\"_tabs\" rel=\"noopener noreferrer\">R<\/a>, aber abh\u00e4ngig von Ihrer Aufgabe und Ihren pers\u00f6nlichen Einstellungen verwenden Sie vielleicht etwas anderes\u00a0\u2013\u00a0<a href=\"http:\/\/scikit-learn.org\/stable\/\" target=\"_tabs\" rel=\"noopener noreferrer\">scikit-learn<\/a>,\u00a0<a href=\"http:\/\/www.cs.waikato.ac.nz\/ml\/weka\/\" target=\"_tabs\" rel=\"noopener noreferrer\">Weka<\/a>,\u00a0<a href=\"http:\/\/moa.cms.waikato.ac.nz\/\" target=\"_tabs\" rel=\"noopener noreferrer\">MOA<\/a> usw.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Datensatz sammeln<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Zuerst haben wir HTML-L\u00e4nge, Tag-Anzahl und Verarbeitungszeit der Nachricht protokolliert und in einer CSV-Datei gespeichert:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                HTML                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-markup\">\r\n                                <code id=\"code_0_content\" class=\"language-markup\">\r\n\r\n                                    htmllen,tagscount,took rn2893762,85527,34.300139904 rn31378,518,0.0368919372559 rn19105,413,0.0545339584351 rn...\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Die \u00fcberwiegende Mehrheit der Nachrichten wird in Sekundenbruchteilen verarbeitet. Deshalb mussten wir beim Sammeln des Datensatzes sicherstellen, dass wir gen\u00fcgend \u201elangsame&#8220; Nachrichten haben.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Letztendlich hatten wir zwei CSV-Dateien, die an verschiedenen Tagen gesammelt wurden. Eine hatte 13.831 Zeilen und war f\u00fcr die Analyse und das Modell-Training reserviert (<b>der Trainingsdatensatz<\/b>). Eine andere hatte 12.149 Zeilen und war f\u00fcr die Modell-Validierung reserviert (<b>der Validierungsdatensatz<\/b>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Generell ben\u00f6tigen Sie mindestens zwei Datens\u00e4tze\u00a0\u2013 einen f\u00fcr das Training und einen f\u00fcr die Validierung. Andernfalls k\u00f6nnte das Problem des\u00a0<b>Overfittings<\/b>\u00a0auftreten, bei dem Ihr Modell zwar gut an die Trainingsdaten angepasst ist, in der Praxis jedoch versagt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Anzahl der Cluster bestimmen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Um die Daten zu visualisieren und nach Mustern zu suchen,\u00a0<a href=\"http:\/\/www.statmethods.net\/advstats\/cluster.html\" target=\"_tabs\" rel=\"noopener noreferrer\">K-Means-Clustering<\/a>\u00a0wurde zuerst ausprobiert:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                    messages &lt;- read.csv(file=&quot;messages080816.csv&quot;, sep=&quot;,&quot;, head=TRUE) rn    mydata &lt;- matrix(messages$took, ncol=1) rnrn    ## Determine the number of clusters rn    wss &lt;- (nrow(mydata)-1)*sum(apply(mydata,2,var)) rn    for (i in 2:15) wss[i] &lt;- sum(kmeans(mydata, rn        centers=i)$withinss) rn    plot(1:15, wss, type=&quot;b&quot;, xlab=&quot;Number of Clusters&quot;, rn        ylab=&quot;Within groups sum of squares&quot;)\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Wie Sie sehen, gibt es bis zu 4 Clustern eine deutliche Leistungssteigerung. Danach gibt es keinen wirklichen Schub mehr.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Clustering<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der n\u00e4chste Schritt bestand darin, herauszufinden, wie sich die Datenpunkte auf die Cluster verteilen:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                     ## K-Means Clustering with 4 clustersrn    fit &lt;- kmeans(mydata, 4) rnrn    ## Cluster Plot against 1st 2 principal components rn    ## vary parameters for most readable graph rn    library(cluster) rn        clusplot(mydata, fit$cluster, color=TRUE,rn           shade=TRUE, labels=2, lines=0)\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4886\" width=\"663\" height=\"652\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusplot.png\" alt=\"A clusplot graph\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusplot.png 663w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusplot-300x295.png 300w\" sizes=\"(max-width: 663px) 100vw, 663px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Das Problem l\u00e4sst sich bereits ein wenig erahnen: Die Cluster bilden sich durch das Abtrennen der weit entfernten Datenpunkte, w\u00e4hrend das Intervall, an dem wir interessiert sind (1\u201320 Sek.), genau in der Mitte liegt. Das Problem besteht auch bei Erh\u00f6hung der Cluster-Anzahl weiter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dar\u00fcber hinaus gibt es eine deutliche \u00dcberschneidung zwischen den Clustern in dem Intervall:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                     ## get clusters mean, min, max rn    mean &lt;- aggregate(mydata,by=list(fit$cluster),FUN=mean) rn    min &lt;- aggregate(mydata,by=list(fit$cluster),FUN=min) rn    max &lt;- aggregate(mydata,by=list(fit$cluster),FUN=max)\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4887\" width=\"251\" height=\"321\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusters.png\" alt=\"A list of clusters code\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusters.png 251w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/clusters-235x300.png 235w\" sizes=\"(max-width: 251px) 100vw, 251px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Vergleichen Sie Cluster Nummer 1 und 4. Das Problem besteht auch bei Erh\u00f6hung der Cluster-Anzahl weiter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An diesem Punkt entschieden wir uns f\u00fcr einen anderen Ansatz und betrachteten die Perzentile der Verarbeitungszeit der Nachricht:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                     percentiles &lt;- quantile(messages$took, seq(0.5, 0.99, 0.01)) rn    plot(seq(0.5, 0.99, 0.01), percentile)\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4888\" width=\"639\" height=\"621\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tookpercentiles.png\" alt=\"A graph of percentiles\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tookpercentiles.png 639w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tookpercentiles-300x292.png 300w\" sizes=\"(max-width: 639px) 100vw, 639px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Wie Sie sehen, steigt die Verarbeitungszeit nach dem 78. Perzentil schnell an. Hier war unser erster Schwellenwert\u00a0\u2013 das 78. Perzentil, das 6,5 Sekunden entsprach.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Alle Datenpunkte, die weniger als 6,5 Sek. dauerten, wurden als \u201eschnell&#8220; und andere als \u201elangsam&#8220; markiert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Klassifizierung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr die Klassifizierung probierten wir\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Support_vector_machine\" target=\"_tabs\" rel=\"noopener noreferrer\">SVM<\/a>\u00a0(Support Vector Machines),\u00a0<a href=\"http:\/\/www.statmethods.net\/advstats\/cart.html\" target=\"_tabs\" rel=\"noopener noreferrer\">Random Forests<\/a>\u00a0\u00a0genannt, und\u00a0<a href=\"http:\/\/www.statmethods.net\/advstats\/cart.html\" target=\"_tabs\" rel=\"noopener noreferrer\">CART<\/a>(Classification And Regression Tree).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CART lieferte f\u00fcr diese Aufgabe etwas bessere Ergebnisse. Der Hauptvorteil besteht jedoch darin, dass es einen Entscheidungsbaum bietet, der leicht zu verstehen, zu erkl\u00e4ren und zu implementieren ist, im Gegensatz zu SVM oder Random Forests, die wie eine Black-Box funktionieren und den Einsatz umfangreicher ML-Bibliotheken in der Produktion erfordern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So klassifizieren Sie mit CART:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                    x &lt;- subset(messages, select=-took) rnlibrary(rpart) rnrn# grow tree rnfit &lt;- rpart(x$cls ~., method=&quot;class&quot;, data=x) rnrn## display the results rnprintcp(fit)rnrn# detailed summary of splits rnsummary(fit) rnrn# plot tree rnplot(fit, uniform=TRUE, rn    main=&quot;Classification Tree for message processing time&quot;) rntext(fit, use.n=TRUE, all=TRUE, cex=.8) \r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Hier ist der Entscheidungsbaum:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4889\" width=\"617\" height=\"590\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tree.png\" alt=\"Classification tree for message processing time\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tree.png 617w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/tree-300x287.png 300w\" sizes=\"(max-width: 617px) 100vw, 617px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Und so sieht die Implementierung aus:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                    def html_too_big(s): rn    return s.count(&#039;&lt;&#039;) &gt; _MAX_TAGS_COUNT\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Ist das nicht wunderbar? Die gesamte Komplexit\u00e4t der Untersuchung in einer einzigen Zeile.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Validierung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Zur Auswertung nahmen wir den Validierungsdatensatz und versuchten, die Klassifizierung mit unserem Modell vorherzusagen:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Python                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"In die Zwischenablage kopieren\" data-clipboard-success-label=\"Kopiert\" data-clipboard-error-label=\"Kopieren nicht m\u00f6glich\" data-tooltip=\"In die Zwischenablage kopieren\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"In die Zwischenablage kopieren\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Python\">\r\n                                <code id=\"code_0_content\" class=\"language-Python\">\r\n\r\n                                     validate &lt;- read.csv(file=&quot;messages080916.csv&quot;, sep=&quot;,&quot;, head=TRUE) rn    validate &lt;- subset(validate, select=-took) rn    xv &lt;- subset(validate, select=-cls) rn    y &lt;- predict(fit, xv, type=&quot;class&quot;) rn    table(validate$cls, y)\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Hier ist die Konfusionsmatrix und einige\u00a0<a href=\"http:\/\/blog.revolutionanalytics.com\/2016\/03\/com_class_eval_metrics_r.html\" target=\"_tabs\" rel=\"noopener noreferrer\">g\u00e4ngige Klassifizierungsmetriken<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-4890\" width=\"617\" height=\"501\" src=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/evaluate.png\" alt=\"Evaluation code\" srcset=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/evaluate.png 617w, https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/evaluate-300x244.png 300w\" sizes=\"(max-width: 617px) 100vw, 617px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Erkenntnisse<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Maschinelles Lernen ist nicht nur f\u00fcr Data Scientists. Sogar bei einfachen Entscheidungen, die durch ML unterst\u00fctzt werden, profitieren Sie. Machen Sie sich mit Ihren Daten vertraut. Verlassen Sie sich nicht blind auf wissenschaftliche Algorithmen und Modelle.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">N\u00fctzliche Links<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Hervorragende Erkl\u00e4rung eines  <a href=\"http:\/\/stats.stackexchange.com\/questions\/19048\/what-is-the-difference-between-test-set-and-validation-set\" target=\"_tabs\" rel=\"noopener noreferrer\">Train-Validate-Test<\/a> -Workflows<\/li>\n\n\n\n<li>Kurzanleitung zu <a href=\"http:\/\/www.statmethods.net\/advstats\/cart.html\" target=\"_tabs\" rel=\"noopener noreferrer\">CART<\/a> und <a href=\"http:\/\/www.statmethods.net\/advstats\/cart.html\" target=\"_tabs\" rel=\"noopener noreferrer\">Random Forests<\/a> in R<\/li>\n\n\n\n<li>Kurzanleitung zu <a href=\"http:\/\/www.statmethods.net\/advstats\/cluster.html\" target=\"_tabs\" rel=\"noopener noreferrer\">Cluster-Analyse<\/a> in R<\/li>\n\n\n\n<li>Anleitung zum  <a href=\"http:\/\/www.cyclismo.org\/tutorial\/R\/plotting.html\" target=\"_tabs\" rel=\"noopener noreferrer\">Plotten<\/a> in R<\/li>\n\n\n\n<li>Die Begriffe\u00a0<a href=\"http:\/\/www.cyclismo.org\/tutorial\/R\/plotting.html\" target=\"_tabs\" rel=\"noopener noreferrer\">g\u00e4ngige Klassifizierungsmetriken<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/en.wikipedia.org\/wiki\/Precision_and_recall\" target=\"_tabs\" rel=\"noopener noreferrer\">Precision<\/a> und <a href=\"https:\/\/en.wikipedia.org\/wiki\/Precision_and_recall\" target=\"_tabs\" rel=\"noopener noreferrer\">Recall<\/a>  einfach erkl\u00e4rt<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Viel Spa\u00df beim maschinellen Lernen und Data Mining.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir assoziieren es oft mit Dingen wie Big Data, Data Mining, Data Science und k\u00fcnstlicher Intelligenz. Manchmal f\u00fchlt es sich etwa so an:<\/p>\n","protected":false},"author":47,"featured_media":4843,"menu_order":0,"template":"","meta":{"_acf_changed":true,"footnotes":""},"blog_category":[23],"class_list":["post-25070","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-it-and-engineering"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun<\/title>\n<meta name=\"description\" content=\"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:description\" content=\"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/\" \/>\n<meta property=\"og:site_name\" content=\"Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-IT-Engineering.png\" \/>\n\t<meta property=\"og:image:width\" content=\"720\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/\",\"name\":\"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-IT-Engineering.png\",\"datePublished\":\"2026-09-16T19:10:16+00:00\",\"description\":\"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-IT-Engineering.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-IT-Engineering.png\",\"width\":720,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/it-and-engineering\\\/maschinelles-lernen-fur-alltagliche-aufgaben\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#website\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"description\":\"Leistungsstarke Transaktions-E-Mail-APIs, mit denen Sie E-Mails senden, empfangen und nachverfolgen k\u00f6nnen, speziell f\u00fcr Entwickler konzipiert. Erfahren Sie noch heute mehr!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#organization\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Transactional Email API Service For Developers | Mailgun\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun","description":"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -","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:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/","og_locale":"de_DE","og_type":"article","og_title":"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun","og_description":"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -","og_url":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/","og_site_name":"Transactional Email API Service For Developers | Mailgun","og_image":[{"width":720,"height":448,"url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-IT-Engineering.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"5\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/","url":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/","name":"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben - Transactional Email API Service For Developers | Mailgun","isPartOf":{"@id":"https:\/\/www.mailgun.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/#primaryimage"},"image":{"@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-IT-Engineering.png","datePublished":"2026-09-16T19:10:16+00:00","description":"Oft wird angenommen, dass maschinelles Lernen f\u00fcr allt\u00e4gliche Entwicklungsaufgaben zu kompliziert ist. Wir sind jedoch der Meinung, dass alle auch bei einfachen Aufgaben von maschinellem Lernen profitieren. Weiterlesen -","breadcrumb":{"@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/#primaryimage","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-IT-Engineering.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-IT-Engineering.png","width":720,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/www.mailgun.com\/de\/blog\/it-and-engineering\/maschinelles-lernen-fur-alltagliche-aufgaben\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.mailgun.com\/de\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/www.mailgun.com\/de\/blog\/"},{"@type":"ListItem","position":3,"name":"Maschinelles Lernen f\u00fcr allt\u00e4gliche Aufgaben"}]},{"@type":"WebSite","@id":"https:\/\/www.mailgun.com\/de\/#website","url":"https:\/\/www.mailgun.com\/de\/","name":"Transactional Email API Service For Developers | Mailgun","description":"Leistungsstarke Transaktions-E-Mail-APIs, mit denen Sie E-Mails senden, empfangen und nachverfolgen k\u00f6nnen, speziell f\u00fcr Entwickler konzipiert. Erfahren Sie noch heute mehr!","publisher":{"@id":"https:\/\/www.mailgun.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mailgun.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/www.mailgun.com\/de\/#organization","name":"Transactional Email API Service For Developers | Mailgun","url":"https:\/\/www.mailgun.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.mailgun.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","width":512,"height":512,"caption":"Transactional Email API Service For Developers | Mailgun"},"image":{"@id":"https:\/\/www.mailgun.com\/de\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/blog\/25070","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/users\/47"}],"version-history":[{"count":0,"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/blog\/25070\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/media\/4843"}],"wp:attachment":[{"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/media?parent=25070"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.mailgun.com\/de\/wp-json\/wp\/v2\/blog_category?post=25070"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}