Začněte nyníZačněte zdarma

Je problémový zdrojový, nebo cílový počítač?

V předchozí lekci jsi jako sledovanou entitu používal cílový počítač. Jenže tvůj analytik kybernetické bezpečnosti tě upozornil, že závadný provoz generují infikované stroje – a ty se v datasetu flows objevují jako zdroj, nikoli jako cíl.

Data flows jsou předem načtena, stejně jako seznam bad s ID infikovaných strojů a extraktor příznaků featurizer() z předchozí lekce. K dispozici máš také numpy jako np, AdaBoostClassifier() a cross_val_score().

Toto cvičení je součástí kurzu

Designing Machine Learning Workflows in Python

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř datový rámec, kde každý řádek je vektor příznaků pro jeden source_computer. Seskup záznamy v datasetu flows podle ID zdrojového počítače a na každou skupinu aplikuj extraktor příznaků.
  • Převeď iterátor na datový rámec voláním list().
  • Vytvoř labely tak, že ověříš, zda ID každého source_computer patří do seznamu infikovaných strojů bad.
  • Vyhodnoť AdaBoostClassifier() na těchto datech pomocí cross_val_score().

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Group by source computer, and apply the feature extractor
out = flows.____('source_computer').____(featurize)

# Convert the iterator to a dataframe by calling list on it
X = pd.DataFrame(____, index=____)

# Check which sources in X.index are bad to create labels
y = [x in bads for x in ____]

# Report the average accuracy of Adaboost over 3-fold CV
print(np.mean(____(____, X, y)))
Upravit a spustit kód