{"id":1115,"date":"2021-02-06T01:49:46","date_gmt":"2021-02-06T00:49:46","guid":{"rendered":"https:\/\/www.lucaamore.com\/?p=1115"},"modified":"2024-02-09T21:12:52","modified_gmt":"2024-02-09T19:12:52","slug":"kaggle-competition-titanic-machine-learning-from-disaster-predict-survival-on-the-titanic","status":"publish","type":"post","link":"https:\/\/www.lucaamore.com\/?p=1115","title":{"rendered":"Kaggle Competition &#8211; Titanic &#8211; Machine Learning from Disaster &#8211; Predict survival on the Titanic"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">L&#8217;<strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Titanic\" data-type=\"URL\" data-id=\"https:\/\/en.wikipedia.org\/wiki\/Titanic\">RMS&nbsp;Titanic<\/a>&nbsp;\u00e8 stato un&nbsp;transatlantico&nbsp;britannico<\/strong>&nbsp;della&nbsp;classe Olympic <strong>naufragato&nbsp;nelle prime ore del tragico 15 aprile 1912<\/strong>, durante il suo viaggio inaugurale, a causa della <strong>collisione con un&nbsp;iceberg<\/strong>&nbsp;avvenuta nella notte.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c-1024x1024.png\" alt=\"\" class=\"wp-image-1550\" srcset=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c.png 1024w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c-300x300.png 300w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c-150x150.png 150w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2023\/01\/lukelv_cyberpunk_advanced_data_science_laboratory_with_a_titani_e3932e87-05a7-4772-a073-2e84f082a85c-768x768.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">La <strong><a href=\"https:\/\/www.kaggle.com\/c\/titanic\" data-type=\"URL\" data-id=\"https:\/\/www.kaggle.com\/c\/titanic\">sfida proposta da Kaggle: Titanic &#8211; Machine Learning from Disaster<\/a><\/strong> alla quale ho aderito, richiede l&#8217;analisi di un dataset contenente informazioni relative ad un sottoinsieme di <strong>passeggeri imbarcati sul Titanic<\/strong> con lo scopo di realizzare un <strong>modello predittivo<\/strong> che sia in grado di <strong>classificare al meglio se un determinato passeggero si salver\u00e0 dal naufragio.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic.png\"><img loading=\"lazy\" decoding=\"async\" width=\"909\" height=\"560\" src=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic.png\" alt=\"\" class=\"wp-image-1136\" srcset=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic.png 909w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic-300x185.png 300w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic-768x473.png 768w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/class_titanic-487x300.png 487w\" sizes=\"auto, (max-width: 909px) 100vw, 909px\" \/><\/a><figcaption class=\"wp-element-caption\">tassi di sopravvivenza per classe<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Alcune delle <strong>informazioni disponibili per l&#8217;analisi<\/strong>, di cui occorre individuare il livello di correlazione con la probabilit\u00e0 di salvezza, sono: sesso, et\u00e0, cabina, classe, ponte, numero di parenti a bordo, porto di imbarco, tariffa pagata; moltissime <strong>altre informazioni possono essere derivate da elaborazioni pi\u00f9 o meno complesse ed implicite tra i dati disponibili<\/strong> come ad esempio dai nomi completi \u00e8 possibile risalire ai titoli, ad alcune professioni o anche spingersi al raggruppamento delle famiglie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La grande sfida \u00e8 quella di <strong>spingere al massimo l&#8217;accuratezza del modello predittivo<\/strong> al fine di classificare al meglio un insieme di passeggeri di test di cui non \u00e8 nota la sorte; solo dopo la sottomissione a Kaggle si scoprir\u00e0 il livello di accuratezza raggiunto.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il modello predittivo di base che occorre superare e contro il quale ci si deve confrontare, che ho definito come <strong>modello baseline<\/strong>, <strong>assume semplicemente che tutte le donne si salveranno<\/strong>; applicando questa condizione elementare, si raggiunge un&#8217;accuratezza dell&#8217;insieme di passeggeri da classificare di poco superiore al 76%.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/results___29_0.png\"><img loading=\"lazy\" decoding=\"async\" width=\"606\" height=\"480\" src=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/results___29_0.png\" alt=\"\" class=\"wp-image-1131\" srcset=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/results___29_0.png 606w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/results___29_0-300x238.png 300w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/results___29_0-379x300.png 379w\" sizes=\"auto, (max-width: 606px) 100vw, 606px\" \/><\/a><figcaption class=\"wp-element-caption\">modello baseline: tutte le donne si salvano raggiunge un&#8217;accuratezza dello 0.76555<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Questa competizione \u00e8 un&#8217;<strong>ottima introduzione alla piattaforma Kaggle<\/strong> e <strong>richiede lo sviluppo di tutte le fasi di costruzione di un modello predittivo<\/strong>: analisi dei dati, preparazione e raffinamento dei dati, visualizzazione dei dati, costruzione del modello, validazione del modello e della sua accuratezza, comprensione della piattaforma Kaggle.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553-1024x1024.png\" alt=\"\" class=\"wp-image-1533\" srcset=\"https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553.png 1024w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553-300x300.png 300w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553-150x150.png 150w, https:\/\/www.lucaamore.com\/wp-content\/uploads\/2021\/02\/lukelv_cyberpunk_titanic_analized_into_a_steampunk_monitor_07fab2e7-61bf-4eb2-8438-308554801553-768x768.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Nel mio notebook ho deciso di affrontare la sfida in <strong>Python<\/strong> costruendo un modello tramite la libreria <strong><a href=\"https:\/\/xgboost.ai\" data-type=\"URL\" data-id=\"https:\/\/xgboost.ai\">XGBoost <\/a><\/strong>nota sia per essere alla base delle <strong>migliori implementazioni all&#8217;avanguardia del settore <\/strong>ma anche perch\u00e9 <strong>alla base dei modelli vincenti delle competizioni Kaggle<\/strong>. Tale libreria implementa il framework <a href=\"https:\/\/en.wikipedia.org\/wiki\/Gradient_boosting\" data-type=\"URL\" data-id=\"https:\/\/en.wikipedia.org\/wiki\/Gradient_boosting\"><strong>Gradient Boost<\/strong> <\/a>in modalit\u00e0 <strong>estremamente scalabile, efficiente e portabile<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>La mia implementazione, gi\u00e0 completamente funzionante, \u00e8 ancora in evoluzione \u00e8 raggiungibile a questo indirizzo:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.kaggle.com\/lucaamore\/predict-survival-the-titanic-xgboost\" data-type=\"URL\" data-id=\"https:\/\/www.kaggle.com\/lucaamore\/predict-survival-the-titanic-xgboost\"> <strong>Kaggle Competition &#8211; Titanic &#8211; Machine Learning from Disaster &#8211; Predict survival on the Titanic &#8211; Luca Amore<\/strong><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L&#8217;RMS&nbsp;Titanic&nbsp;\u00e8 stato un&nbsp;transatlantico&nbsp;britannico&nbsp;della&nbsp;classe Olympic naufragato&nbsp;nelle prime ore del tragico 15 aprile 1912, durante il suo viaggio inaugurale, a causa della collisione con un&nbsp;iceberg&nbsp;avvenuta nella notte. La sfida proposta da Kaggle: Titanic &#8211; Machine Learning from Disaster alla quale ho aderito, &hellip; <a href=\"https:\/\/www.lucaamore.com\/?p=1115\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":1551,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[105,103,43,69,11,106,104],"tags":[75,101,97,96,102,95,100,98,94,65,99],"class_list":["post-1115","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-competition","category-kaggle","category-machine-learning","category-modeling","category-python","category-titanic","category-xgboost","tag-artificial-intelligence","tag-classification","tag-competition","tag-kaggle","tag-kernel","tag-machine-learning","tag-model","tag-notebook","tag-pandas","tag-python","tag-xgboost"],"_links":{"self":[{"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/posts\/1115","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1115"}],"version-history":[{"count":22,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/posts\/1115\/revisions"}],"predecessor-version":[{"id":1611,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/posts\/1115\/revisions\/1611"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=\/wp\/v2\/media\/1551"}],"wp:attachment":[{"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lucaamore.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}