изменение входов и выходов нейронной сети - PullRequest
0 голосов
/ 20 июня 2019

В настоящее время я работаю с числовыми данными, используя DL Neural Networks.Для этой цели я использую библиотеку Keras, CSV содержит 912 Кб, как показано ниже:

    p   u   d    ms          action B   x    y-c pre    area       finger 
0   0   36  3   1334893336790   0   1   262 262 262     0.044444    0.0
1   0   36  3   1334893336790   2   1   262 271 0.32    0.044444    0.0
2   0   36  3   1334893336795   2   1   123 327 0.28    0.044444    0.0
3   0   36  3   1334893336800   1   1   123 327 0.28    0.044444    0.0
4   0   36  3   1334893336885   0   1   216 298 0.34    0.044444    0.0
5   0   36  3   1334893336907   2   1   216 298 0.38    0.044444    0.0
6   0   36  3   1334893336926   2   1   147 312 0.60    0.088889    0.0
7   0   36  3   1334893336949   2   1   115 328 0.63    0.044444    0.0
8   0   36  3   1334893336952   2   1   98  336 0.17    0.133333    0.0
9   0   36  3   1334893336971   1   1   98  336 0.17    0.133333    0.0
1   0   36  3   1334893337798   0   1   108 339 0.48    0.044444    0.0

, как я понимаю, входы нейронной сети располагаются построчно, здесь я пытаюсь сделать ввод и вывод на основе столбец действия , например, когда он начинается с 0 и заканчивается 1 , затем включается первый вход для нейронной сети из строки [0–3] 3 и второй вход[4–9] 9 включен и т. д., я пробовал это много раз, но он не работает со мной

#o = no_of_click
o=0
lenf=len(dataset)
for h in dataset.index[dataset.iloc[:, 4] == 0]:
    if dataset.iloc[h+1,4]==1 :
        dataset.iloc[h+1,4]=-1
        dataset.iloc[h , 4] = -1
        o=o+1
dataset=dataset.drop(dataset[dataset.iloc[:, 4] == -1].index)
lenf=(o*2)
X = dataset.iloc[:, 2:].values #here 3to 11 for x
y = dataset.iloc[:, 1].values #here user id 2 only y

binariz = LabelBinarizer()
s = binariz.fit_transform(X[:, 0])
X = np.delete(X, [0], axis=1)
X = np.hstack([s,X])
y = binariz.fit_transform(y)
# X Features scaling
sc_X = StandardScaler()
X = sc_X.fit_transform(X)

# Splitting Data
X_train, X_test,y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)

classifier = Sequential()
# Adding the input layer and the first hidden layer
classifier.add(Dense(units = 50, activation = 'relu', input_dim = X_train.shape[1]))
# Adding the second hidden layer

classifier.add(Dense(units = 50, activation = 'relu'))
# Adding the output layer
classifier.add(Dense(units = y.shape[1], activation = 'softmax'))
# Compiling the ANN
classifier.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics = ['accuracy'])
# Fitting the ANN to the Training set
classifier.fit(X_train, y_train, batch_size = 100, epochs = 10)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...