title: Received a label value of 1 which is outside the valid range of [0, 1) - Python, Keras
body: <p>I am working on a simple cnn classifier using keras with tensorflow background.</p>
  
  <pre><code>def cnnKeras(training_data, training_labels, test_data, test_labels, n_dim):
    print("Initiating CNN")
    seed = 8
    numpy.random.seed(seed)
    model = Sequential()
    model.add(Convolution2D(64, 1, 1, init='glorot_uniform', 
     border_mode='valid',input_shape=(16, 1, 1), activation='relu'))
    model.add(MaxPooling2D(pool_size=(1, 1)))
    model.add(Convolution2D(32, 1, 1, init='glorot_uniform', 
     activation='relu'))
    model.add(MaxPooling2D(pool_size=(1, 1)))
    model.add(Dropout(0.25))
    model.add(Flatten())
    model.add(Dense(128, activation='relu'))
    model.add(Dropout(0.5))
    model.add(Dense(64, activation='relu'))
    model.add(Dense(1, activation='softmax'))
    # Compile model
    model.compile(loss='sparse_categorical_crossentropy',
                optimizer='adam', metrics=['accuracy'])
    model.fit(training_data, training_labels, validation_data=(
      test_data, test_labels), nb_epoch=30, batch_size=8, verbose=2)
  
    scores = model.evaluate(test_data, test_labels, verbose=1)
    print("Baseline Error: %.2f%%" % (100 - scores[1] * 100))
    # model.save('trained_CNN.h5')
    return None
  </code></pre>
  
  <p>It is a binary classification problem, but I keep getting the message <code>Received a label value of 1 which is outside the valid range of [0, 1)</code> which does not make any sense to me. Any suggesstions?</p>