diff --git a/mmdet/datasets/loader/sampler.py b/mmdet/datasets/loader/sampler.py
index c6109388d13bfad0c20b102b8d4735ba401de848..5bf2a7060d77c6cf70541dac5efa91532196eea4 100644
--- a/mmdet/datasets/loader/sampler.py
+++ b/mmdet/datasets/loader/sampler.py
@@ -57,7 +57,8 @@ class GroupSampler(Sampler):
             np.random.shuffle(indice)
             num_extra = int(np.ceil(size / self.samples_per_gpu)
                             ) * self.samples_per_gpu - len(indice)
-            indice = np.concatenate([indice, indice[:num_extra]])
+            indice = np.concatenate(
+                [indice, np.random.choice(indice, num_extra)])
             indices.append(indice)
         indices = np.concatenate(indices)
         indices = [