1. Nauka
  2. /
  3. Kursy
  4. /
  5. Projektowanie przepływów pracy uczenia maszynowego w Pythonie

Connected

ćwiczenie

Ograniczona odległość Levenshteina

Zauważasz, że pakiet stringdist implementuje również wariant odległości Levenshteina – odległość Restricted Damerau-Levenshtein – i chcesz go wypróbować. Zastosuj podejście z lekcji: opakuj obliczenia w funkcję własną i wstępnie oblicz macierz odległości przed dopasowaniem detektora anomalii opartego na lokalnym współczynniku wartości odstających. Do pomiaru skuteczności użyj accuracy_score(), dostępnej jako accuracy(). Masz też dostęp do pakietów stringdist i numpy (jako np), a także do pdist() i squareform() z scipy.spatial.distance oraz LocalOutlierFactor jako lof. Dane zostały wczytane jako ramka danych pandas z dwiema kolumnami: label i sequence, i zawierają dwie klasy: IMMUNE SYSTEM oraz VIRUS.

Instrukcje

100 XP
  • Napisz funkcję przyjmującą argumenty u i v, z których każdy jest tablicą zawierającą ciąg znaków, i zastosuj w niej funkcję rdlevenshtein() na tych dwóch ciągach.
  • Przekształć kolumnę sequence z proteins, najpierw konwertując ją na tablicę numpy za pomocą np.array(), a następnie korzystając z .reshape().
  • Oblicz kwadratową macierz odległości dla sequences przy użyciu my_rdlevenshtein() i dopasuj na niej lof.
  • Oblicz dokładność, konwertując preds i proteins['label'] na wartości logiczne wskazujące, czy dane białko jest wirusem.