Перетасовывание двух массивов NNPI для NN - PullRequest
0 голосов
/ 18 мая 2018

У меня есть два массива для входных данных X и выходных данных y.

X = np.array(([2, 3],                    # sample 1 x
              [16, 4]), dtype=float)     # sample 2 x
y = np.array(([1, 0],                    # sample 1 y
              [0, 1]), dtype=float)      # sample 2 y

Я хочу использовать мини-пакеты для обучения NN, как я могу перетасовать оба массива, зная, что соответствующий вывод все еще выровнен?

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

С помощью sklearn это просто:

X, null, y, null = train_test_split(X, y, test_size=0, random_state=42)

Сохраняет выравнивание по X и y

0 голосов
/ 18 мая 2018

Вы можете иметь массив индексов такой же формы, что и соответствующие массивы, и каждый раз перемешивать индексный массив.В этом случае вы можете использовать перетасованные индексы для одинакового выравнивания обоих массивов.

In [122]: indices = np.indices((2, 2))

In [125]: np.random.shuffle(indices)

In [126]: indices
Out[126]: 
array([[[0, 0],
        [1, 1]],

       [[0, 1],
        [0, 1]]])

In [127]: x[indices[0], indices[1]]
Out[127]: 
array([[ 2.,  3.],
       [16.,  4.]])

In [128]: y[indices[0], indices[1]]
Out[128]: 
array([[1., 0.],
       [0., 1.]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...