def test_lp_to_simple_rdd_not_categorical(spark_context): features = np.ones((2, 10)) labels = np.asarray([[2.0], [1.0]]).reshape((2, )) lp_rdd = rdd_utils.to_labeled_point(spark_context, features, labels, False) rdd = rdd_utils.lp_to_simple_rdd(lp_rdd, categorical=False, nb_classes=3) assert rdd.first()[0].shape == (10, ) assert rdd.first()[1] == 2.0
def test_lp_to_simple_rdd_categorical(spark_context): features = np.ones((2, 10)) labels = np.asarray([[0, 0, 1.0], [0, 1.0, 0]]) lp_rdd = rdd_utils.to_labeled_point(spark_context, features, labels, True) rdd = rdd_utils.lp_to_simple_rdd(lp_rdd, categorical=True, nb_classes=3) assert rdd.first()[0].shape == (10, ) assert rdd.first()[1].shape == (3, )
model.add(Dropout(0.2)) model.add(Dense(128)) model.add(Activation('relu')) model.add(Dropout(0.2)) model.add(Dense(10)) model.add(Activation('softmax')) # Compile model model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=["accuracy"]) # Create Spark context conf = SparkConf().setAppName('Mnist_Spark_MLP').setMaster('local[8]') #sc = SparkContext(conf=conf) # Build RDD from numpy features and labels lp_rdd = to_labeled_point(sc, x_train, y_train, categorical=True) rdd = lp_to_simple_rdd(lp_rdd, True, nb_classes) # Initialize SparkModel from Keras model and Spark context adagrad = elephas_optimizers.Adagrad() spark_model = SparkMLlibModel(sc, model, optimizer=adagrad, frequency='batch', mode='asynchronous', num_workers=4) # Train Spark model spark_model.train(lp_rdd, nb_epoch=nb_epoch, batch_size=batch_size, verbose=0, validation_split=0.1, categorical=True, nb_classes=nb_classes) # Evaluate Spark model by evaluating the underlying model loss, acc = spark_model.master_network.evaluate(x_test, y_test, verbose=2) print('Test accuracy:', acc)
model.add(Dense(128)) model.add(Activation('relu')) model.add(Dropout(0.2)) model.add(Dense(10)) model.add(Activation('softmax')) # Compile model rms = RMSprop() # Create Spark context conf = SparkConf().setAppName('Mnist_Spark_MLP').setMaster('local[8]') sc = SparkContext(conf=conf) # Build RDD from numpy features and labels lp_rdd = to_labeled_point(sc, x_train, y_train, categorical=True) rdd = lp_to_simple_rdd(lp_rdd, True, nb_classes) # Initialize SparkModel from Keras model and Spark context adadelta = elephas_optimizers.Adadelta() spark_model = SparkMLlibModel(sc, model, optimizer=adadelta, frequency='batch', mode='asynchronous', num_workers=2, master_optimizer=rms) # Train Spark model spark_model.train(lp_rdd, nb_epoch=20, batch_size=32,