Esempio n. 1
0
        # No labels, use only features.
        inputs = features
    else:
        inputs = (features, labels)

    # Convert the inputs to a Dataset.
    dataset = tf.data.Dataset.from_tensor_slices(inputs)

    # Batch the examples
    dataset = dataset.batch(batch_size)

    # Return the dataset.
    return dataset


train = import_and_clean("UNSW-NB15_1.csv")
test = import_and_clean("UNSW-NB15_2.csv")

input_features = []
for key in train.iloc[:, [9, 36]].keys():
    input_features.append(tf.feature_column.numeric_column(key=key))

classifier = tf.estimator.DNNClassifier(feature_columns=input_features,
                                        hidden_units=[10, 10],
                                        n_classes=2)

print("Training...")
start = time.time()
classifier.train(input_fn=lambda: train_input_fn(train.iloc[:, [9, 36]], train.
                                                 iloc[:, -1], 100),
                 steps=1000)
import numpy as np
import matplotlib.pyplot as plt
from sklearn.ensemble import ExtraTreesClassifier
from data_preprocessing_unsw import import_and_clean

ds = import_and_clean("UNSW-NB15_3.csv")

model = ExtraTreesClassifier()

model.fit(ds.iloc[:, :-2], ds.iloc[:, -1])

plt.bar(np.arange(47), model.feature_importances_)
plt.xlabel("Features")
plt.ylabel("Importance")
plt.show()