I am doing a network architecture search (NAS).
I have two directories, train_data_npy and valid_data_npy where there are 3013 and 1506 *.npy files, respectively.
Each *.npy file has 11 columns of float types, of which the first eight columns are features and the last three columns are one-hot-encoded labels (characters) of three classes.
----------------------------------------------------------------------
f1 f2 f3 f4 f5 f6 f7 f8 ---classes---
----------------------------------------------------------------------
0.0 0.0 0.0 1.0 1.0 1.0 1.0 1.0 0.0 0.0 1.0
6.559 9.22 0.0 1.0 1.0 1.0 1.0 1.0 0.0 0.0 1.0
5.512 6.891 10.589 0.0 0.0 0.0 0.0 1.0 0.0 0.0 1.0
7.082 8.71 7.227 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
6.352 9.883 12.492 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
6.711 10.422 13.44 0.0 0.0 0.0 0.0 1.0 0.0 0.0 1.0
7.12 9.283 12.723 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
6.408 9.277 12.542 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
6.608 9.686 12.793 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
6.723 8.602 12.168 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0
... ... ... ... ...
Given the format of the data, I have written two scripts.
cnn_autokeras_by_chunk_with_ohe.py uses OHE labels as they are, and cnn_autokeras_by_chunk_without_ohe.py converts OHE data into integers. I.e., I use eight columns for features and only one column for the labels, and OHE is converted into numbers $1$, $2$, $3$. I want to predict $1$, $2$, $3$.
The first one achieves an accuracy of 0.40, and the second one achieves an accuracy of 0.97.
Should I consider this a normal phenomenon, or should I consider it an anomaly?
Two scripts are using the same features and classes and looking for the best architecture to solve a classification problem. One is representing the classes as OHE, and the other is representing the classes as integers. My expectation was that they would produce similar accuracy, as the only practical difference between these specifications was the representation of the labels. However, since the accuracies are different, I am curious what might have caused this issue.