kaggle新手第三场比赛——Instant-Gratification( 二 )


plt.figure(figsize=(25,25))sns.heatmap(train_corr, vmin=-0.016, vmax=0.016, cmap="RdYlBu_r");sns.heatmap(test_corr,vmin=-0.016,vmax=0.016,cmap="RdYlBu_r")

kaggle新手第三场比赛——Instant-Gratification

文章插图
仔细观察能够发现,一些相邻的特征之间可能存在一些相关性,这可能对后续的研究有一些影响 。同时在train特征图的右下角能够看到后两个特征之间有一定的相关性,但是在test图中这种相关性就不存在了 。也就是说,在相关性分析来看,训练集和测试集的特征分布有一定的差异 。
下面我们将对列名进行一些研究,看能否得到一些的结论 。
names=list(train.drop(['id','target'],axis=1).columns.values)first_name=[]second_name=[]third_name=[]fourth_name=[]for name in names:words=name.split('-')first_name.append(words[0])second_name.append(words[1])third_name.append(words[2])fourth_name.append(words[3])print(len(first_name),len(np.unique(first_name)))print(len(second_name), len(np.unique(second_name)))print(len(third_name), len(np.unique(third_name)))print(len(fourth_name), len(np.unique(fourth_name)))
feature_names=pd.DataFrame(index=train.drop(["target", "id"], axis=1).columns.values, data=http://www.kingceram.com/post/first_name, columns=["kind"])feature_names["color"] = second_namefeature_names["animal"] = third_namefeature_names["goal"] = fourth_namefeature_names.head()
plt.figure(figsize=(20,5))sns.countplot(x="kind", data=http://www.kingceram.com/post/feature_names, order=feature_names.kind.value_counts().index, palette="Greens_r")plt.xticks(rotation=90);
plt.figure(figsize=(20,5))sns.countplot(x="animal", data=http://www.kingceram.com/post/feature_names, order=feature_names.animal.value_counts().index, palette="Oranges_r")plt.xticks(rotation=90);
plt.figure(figsize=(20,5))sns.countplot(x="goal", data=http://www.kingceram.com/post/feature_names, order=feature_names.goal.value_counts().index, palette="Reds_r")plt.xticks(rotation=90);
plt.figure(figsize=(20,5))sns.countplot(x="color", data=http://www.kingceram.com/post/feature_names, order=feature_names.color.value_counts().index, palette="Purples_r")plt.xticks(rotation=90);
当时因为四句藏头诗对产生无限对遐想,就像猜灯谜一样 。做了一些图和分析,大概就是找到了一个magic特征,找到了数据分布的一些特点 。另外就是数据可能是来自于人工合成,里面有一个数据合成方法() 。以往有大神找到了合成数据的随机种子,造出了同分布数据 。但对于一个新手来说,虽然我有很多的想法,但大多时间都在调参选模型跟高分,希望以后有时间能够在做比赛的过程一一实现自己的想法吧 。