Titanic: Machine Learning from Disaster
https://www.kaggle.com/c/titanic
なぜリベンジなのかというと、以前やった時にスコア0.74、1万人中9千位くらいでやる気をなくしてしまったからです。
【前処理】
trainデータに欠損値が多いので埋めてあげる必要があります。
今回はとりあえずmedianで埋めました。
【久しぶりの1回目】
使ったのはxgboost。普通に何も考えずに全データセットを利用
結果:スコア0.79425
順位 2,537
→まずまず上がりました。逆に前回のスコアはなんだったんだろう(もはや忘れてしまいましたが。。)
【2回目】
名前とかTicket numberとか生き死にに関係ないでしょう。というわけで特徴量をPclass、Sex、Age、Parchだけに絞りました。
同じくxgboost。
結果:スコア0.75598
→ちょっと間引きすぎたかも・・・
【3回目】
名前は関係無いでしょう。Cabinカラムも歯抜けが多く、Ticketも正規化されていない(ように見える)ので外しますが、その他は入れました。
しつこくxgboostです。
結果:スコア0.78947・・うまくいきませんね。。
【4回目】
パラメータチューニングを少々。
結果:スコア0.77511 うう、、どんどん悪くなっていく。。。泣
【5回目】
全891のtrainデータのうち、年齢が空白の178人を間引いてみました。
結果:スコア0.77511 ??? なんで4回目と全く同じ値????
【6回目】
Random Forrestに浮気
結果:これだけでなんとスコア0.80861 ! 811位と一気1700位くらい上がりました!!
シンプルなデータセットにおいては昔ながらのアルゴリズムが奏功するんですかね。。なんて一人で盛り上がってたら朝になってしまった。
念のためsubmitしたデータを以下に置いておきます。試しにkaggleに提出する際は縦横変換下さい。
892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309
0,1,0,0,1,0,1,0,1,0,0,0,1,0,1,1,0,0,0,1,0,0,1,0,1,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,1,1,0,0,0,0,0,1,0,0,0,1,1,1,1,0,0,1,1,0,1,0,1,0,0,1,0,1,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,1,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0,0,1,0,0,0,0,0,0,1,1,0,1,1,0,0,1,0,1,0,1,0,0,0,0,0,0,0,1,0,1,1,0,1,1,0,0,1,0,0,1,0,1,0,0,0,0,1,0,0,1,0,1,0,1,0,1,0,1,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,1,1,1,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,1,1,0,0,0,1,1,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,0,1,1,0,0,0,1,0,0,1,1,0,1,0,0,0,0,0,1,1,0,0,1,0,1,0,0,1,0,1,0,0,0,0,0,1,1,1,1,1,0,1,0,0,0
なお、私が参考にしているのは以下の本「機械学習のための前処理入門」です。
とりあえずこの一冊があれば、私のようなpythonド素人であってもとコンペで戦うことだけはできます。
更にランクを上げていくには修行が必要ですが、入門編としておすすめ。
書籍での独学が苦手という方は、千円ちょっとで学習できるUdemyのオンライン講座が安くて高品質です。
kaggleやSIGNATE挑戦記など、その他AI・機械学習関連の記事をまとめたものはこちら。
-
機械学習関連の記事まとめ
続きを見る