def test_run(self): # part 1 imputer = MeanImputation(hyperparams=hp) imputer.set_training_data(inputs=X) imputer.fit(timeout=self.enough_time) # print(imputer.get_params()) self.assertEqual(imputer._has_finished, True) self.assertEqual(imputer._iterations_done, True) result = imputer.produce(inputs=X, timeout=self.enough_time).value self.helper_impute_result_check(X, result) # part2: test set_params() imputer2 = MeanImputation(hyperparams=hp) imputer2.set_params(params=imputer.get_params()) self.assertEqual(imputer2._has_finished, True) self.assertEqual(imputer2._iterations_done, True) result2 = imputer2.produce(inputs=X, timeout=self.enough_time).value self.assertEqual(result2.equals(result), True) # two imputers' results should be same self.assertEqual(imputer2._has_finished, True) self.assertEqual(imputer2._iterations_done, True)
enc = Encoder(hyperparams=hp) enc.set_training_data(inputs=trainData) enc.fit() encodedData = enc.produce(inputs=trainData).value encodedTestData = enc.produce(inputs=testData).value # Initialize the DSBox imputer hp = MeanHyperparameter.sample() imputer = MeanImputation(hyperparams=hp) imputer.set_training_data(inputs=encodedData) # unsupervised imputer.fit(timeout=100) # give 100 seconds to fit print("\nParams:") print(imputer.get_params()) imputer2 = MeanImputation(hyperparams=hp) imputer2.set_params(params=imputer.get_params()) imputedData = imputer2.produce(inputs=encodedData, timeout=100).value model = BaggingClassifier() trainedModel = model.fit(imputedData, np.asarray(trainTargets['Class'])) predictedTargets = trainedModel.predict( imputer.produce(inputs=encodedTestData).value) # Append the d3mindex column to the predicted targets predictedTargets = pd.DataFrame({ 'd3mIndex': d3mIndex['d3mIndex'], 'Class': predictedTargets }) print(predictedTargets.head())
print(trainData.head()) print(trainTargets.head()) print(np.asarray(trainTargets['Class'])) print(testData.head()) enc = Encoder() enc.set_training_data(inputs=trainData) enc.set_params(params=Params(n_limit=10, text2int=True)) enc.fit() encodedData = enc.produce(inputs=trainData) encodedTestData = enc.produce(inputs=testData) # Initialize the DSBox imputer imputer = MeanImputation() imputer.set_params(verbose=0) imputer.set_training_data(inputs=encodedData) # unsupervised imputer.fit(timeout=10) # give 10 seconds to fit print(imputer.get_call_metadata()) # to see wether fit worked imputedData = imputer.produce(inputs=encodedData, timeout=10) print(imputer.get_call_metadata()) # to see wether produce worked model = BaggingClassifier() trainedModel = model.fit(imputedData, np.asarray(trainTargets['Class'])) predictedTargets = trainedModel.predict( imputer.produce(inputs=encodedTestData)) print(predictedTargets) # Outputs the predicted targets in the location specified in the JSON configuration file with open(jsonCall['output_file'], 'w') as outputFile: