请问kaggle比赛在什么时候可以一天提交5次,目前这个比赛还有两个月结束,每个队伍每天只能提交一次。
因为每场比赛都有其规定的提交次数
一般来说,在Kaggle的竞赛中,每个队伍每天只能提交一次是常见的限制。这有助于确保公平竞争和合理的评估。提交次数的限制可能会在比赛的不同阶段有所变化,以提供更多的机会和灵活性。
不知道你这个问题是否已经解决, 如果还没有解决的话:前面在进行纽约市出租车车程的聚类时候是直接将所有的上车及下车的经纬度全部组合在一块了,发现运行的过程是十分的缓慢。由于接触过深度学习,在模型训练的时候可以将数据划分批次然后再进行训练,这样数据量是没有发生变化的,但是训练的速度是有着显著的提高。
1) 组合数据
之前是放在列表里,现在为了进行批次的训练,需要将数据转化为所需要的数据类型
coords = np.vstack((train[['pickup_latitude', 'pickup_longitude']].values,
train[['dropoff_latitude', 'dropoff_longitude']].values,
test[['pickup_latitude', 'pickup_longitude']].values,
test[['dropoff_latitude', 'dropoff_longitude']].values))
print(coords)
–> 输出的结果为:
[[ 40.76793671, -73.98215485],
[ 40.73856354, -73.98041534],
[ 40.7639389 , -73.97902679],
...,
[ 40.74866486, -73.87660217],
[ 40.89178848, -73.85426331],
[ 40.76937866, -73.96932983]]
2) 按批次进行聚类分析
随机抽取部分数据,然后按照批次进行整理输出(np.random.permutation()
)。类似于深度学习里面的一个batch
一个batch
进行训练,这里也不再使用KMeans
,而是使用下面的一个分支 MiniBatchKMeans
,这就和深度学习里面的模型训练对应上了,这里的一个batch
的大小为10000
个数据量
sample_ind = np.random.permutation(len(coords))[:1000000]
kmeans = MiniBatchKMeans(n_clusters=8, batch_size=10000).fit(coords[sample_ind])
3) 模型预测
根据已经拟合好的聚类的模型,按照输入的上车及下车的经纬度,给出测试集和和训练集中对应上下车区域的类别判断(其中的数字并不是代表着大小,仅仅是聚类后的标号)
train.loc[:, 'pickup_cluster'] = kmeans.predict(train[['pickup_latitude', 'pickup_longitude']])
train.loc[:, 'dropoff_cluster'] = kmeans.predict(train[['dropoff_latitude', 'dropoff_longitude']])
test.loc[:, 'pickup_cluster'] = kmeans.predict(test[['pickup_latitude', 'pickup_longitude']])
test.loc[:, 'dropoff_cluster'] = kmeans.predict(test[['dropoff_latitude', 'dropoff_longitude']])
train[['pickup_latitude', 'pickup_longitude','dropoff_latitude', 'dropoff_longitude','pickup_cluster','dropoff_cluster']].head()
–> 输出的结果为:
pickup_latitude pickup_longitude dropoff_latitude dropoff_longitude pickup_cluster dropoff_cluster
0 40.767937 -73.982155 40.765602 -73.964630 5 1
1 40.738564 -73.980415 40.731152 -73.999481 5 0
2 40.763939 -73.979027 40.710087 -74.005333 5 0
3 40.719971 -74.010040 40.706718 -74.012268 0 0
4 40.793209 -73.973053 40.782520 -73.972923 1 1
4) 查看数据特征维度
print( ' train shape ',train.shape)
print( ' test shape ',test.shape)
–> 输出的结果为:
train shape (1458644, 32)
test shape (625134, 29)