1. Learn
  2. /
  3. Cursuri
  4. /
  5. Proiectarea fluxurilor de lucru pentru Machine Learning în Python

Connected

exercițiu

Levenshtein restricționat

Observi că pachetul stringdist implementează și o variantă a distanței Levenshtein numită distanța Damerau-Levenshtein restricționată și vrei să o testezi. Vei urma logica din lecție, învelind-o într-o funcție personalizată și precalculând matricea de distanțe înainte de a antrena un detector de anomalii bazat pe factorul local de dispersie. Vei măsura performanța cu accuracy_score(), disponibil ca accuracy(). Ai acces la pachetele stringdist, numpy ca np, la pdist() și squareform() din scipy.spatial.distance, și la LocalOutlierFactor ca lof. Datele au fost preîncărcate ca un dataframe pandas cu două coloane, label și sequence, și conțin două clase: IMMUNE SYSTEM și VIRUS.

Instrucțiuni

100 XP
  • Scrie o funcție cu parametrii u și v, fiecare reprezentând un array ce conține un șir de caractere, care aplică funcția rdlevenshtein() pe cele două șiruri.
  • Remodeleazǎ coloana sequence din proteins convertind-o mai întâi într-un array numpy cu np.array(), apoi folosind .reshape().
  • Calculează o matrice pătratică de distanțe pentru sequences folosind my_rdlevenshtein() și antrenează lof pe aceasta.
  • Calculează acuratețea convertind preds și proteins['label'] în valori booleene care indică dacă o proteină este un virus.