Допустим, у меня есть два numpy массива, откуда они взяты из разных источников данных.
a = [[ 1.8197615 -0.01468265 0.17163841 -0.9930855 ]
[ 1.798096 -0.02111746 0.1812105 -0.98222315]
...
[ 1.7764299 -0.02755368 0.19078472 -0.9713614 ]]
и
b = [[ 1.9301827 0.17697458 0.04637402 -0.8358894 ]
[ 1.8746643 0.16342099 0.1166909 -0.8200554 ]
...
[ 1.8161207 0.11282791 0.19081318 -0.8027226 ]]
, которые имеют форму (1000,4)
каждый .
Но я хочу кодировать эти два массива, используя one hot encoding
(не integer encoding
), чтобы указать их различные источники данных при обучении модели MLP.
Я знаю, что integer encoding
работает путем добавления 0
для a
, 1
для b
в последнем столбце, как показано ниже.
a = [[ 1.8197615 -0.01468265 0.17163841 -0.9930855 0]
[ 1.798096 -0.02111746 0.1812105 -0.98222315 0]
...
[ 1.7764299 -0.02755368 0.19078472 -0.9713614 0]]
Однако как я могу переделать a
и b
, используя one hot encoding
, чтобы эффективно обучить модель MLP? (Я хочу, чтобы модель изучала категориальные особенности, а не только исходные значения.)
Поскольку я использую Keras для модели, для меня было бы лучше использовать Keras API.