BaşlayınÜcretsiz Başlayın

Kısıtlı Levenshtein

stringdist paketinin, Kısıtlı Damerau-Levenshtein uzaklığı olarak adlandırılan Levenshtein uzaklığının bir varyasyonunu da sunduğunu fark ediyorsun ve denemek istiyorsun. Dersteki mantığı takip ederek bunu özel bir fonksiyonun içine saracak ve yerel aykırı değer faktörü anomali algılayıcısını eğitmeden önce uzaklık matrisini önceden hesaplayacaksın. Performansı accuracy() olarak sana sunulan accuracy_score() ile ölçeceksin. Ayrıca stringdist, numpy (np olarak), scipy.spatial.distance içinden pdist() ve squareform(), ve LocalOutlierFactor (lof olarak) paketlerine erişimin var. Veri, iki sütunu (label ve sequence) olan bir pandas veri çerçevesi olarak önceden yüklendi ve iki sınıf içeriyor: IMMUNE SYSTEM ve VIRUS.

Bu egzersiz

Python'da Machine Learning İş Akışları Tasarlama

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Her biri birer dize içeren birer dizi olan u ve v girdilerini alan ve iki dize üzerinde rdlevenshtein() fonksiyonunu uygulayan bir fonksiyon yaz.
  • proteins içindeki sequence sütununu önce bir numpy dizisine dönüştürerek, ardından .reshape() kullanarak yeniden şekillendir.
  • sequences için my_rdlevenshtein() kullanarak kare bir uzaklık matrisi hesapla ve bunun üzerinde lof modelini eğit.
  • Doğruluğu, bir proteinin virüs olup olmadığını belirten boole değerlere dönüştürülmüş preds ve proteins['label'] üzerinden hesapla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Wrap the RD-Levenshtein metric in a custom function
def my_rdlevenshtein(u, v):
    return ____.rdlevenshtein(____, ____)

# Reshape the array into a numpy matrix
sequences = ____(proteins['seq']).____(-1, 1)

# Compute the pairwise distance matrix in square form
M = ____

# Run a LoF algorithm on the precomputed distance matrix
preds = lof(metric=____).____(M)

# Compute the accuracy of the outlier predictions
print(accuracy(____, ____))
Kodu Düzenle ve Çalıştır