Hugging Face Filter() Yöntemi

Hugging Face Filter Yontemi



Hugging Face'in çeşitli doğal dil işleme (NLP) modelleri ve veri kümeleri vardır. Bu muazzam veri kümeleri, modelin doğru bir şekilde eğitilmesine yardımcı olan birçok bilgi içerir. Ancak bazen veri setinin tamamına ihtiyacımız olmaz çünkü mevcut ihtiyaçlarımızı karşılamak için sadece küçük bir kısmına ihtiyaç duyarız. Tüm bilgilerle birlikte her zamanki gibi aynı veri kümesini kullanmak istersek, model eğitimi ve optimizasyonu çok zaman alır ve bu da zaman kaybıdır.

Bu nedenle, ilgili bilgileri veri kümelerinden çıkarabilecek bir tür yönteme veya pakete ihtiyacımız var. Basit dille veri setlerini gereksinimlerimize göre filtrelemek için ek bir filtre seçeneğine ihtiyacımız olduğunu söyleyebiliriz.

Hugging Face, veri kümelerini filtrelemek için farklı seçenekler sunarak kullanıcıların yalnızca belirli koşulları karşılayan örnekleri veya bilgileri içeren özelleştirilmiş veri kümeleri oluşturmasına yardımcı olur.







Select() Yöntemi

Bu yöntem bir endeks listesi üzerinde çalışır, bu da bir liste tanımlamamız gerektiği anlamına gelir. Bu listenin içinde, çıkarmak istediğimiz tüm satırların indeks değerlerinden bahsetmemiz gerekiyor. Ancak bu yöntem yalnızca küçük veri kümeleri için işe yarar ve büyük veri kümeleri için işe yaramaz; çünkü veri kümesinin GB (giga bayt) veya TB (tera bayt) cinsinden olup olmadığını göremiyoruz.



Örnek :

yeni_veri kümesi = veri kümesi. seçme ( [ 0 , on bir , yirmi bir , Dört beş , elli , 55 ] )

Yazdır ( sadece ( yeni_veri kümesi ) )

Bu örnekte gerekli bilgileri veri kümesinden filtrelemek için “select” yöntemini kullandık.



Filter() Yöntemi

Filter() yöntemi, belirli bir koşul olmadığından select() işlemi sorunlarının üstesinden gelir. Filter() yöntemi, belirli bir durum veya koşulla eşleşen tüm satırları döndürür.





Örnek: Bu Python programını “test.py” ismiyle kaydediyoruz.

itibaren veri kümeleri içe aktarmak load_dataset

# Adım 1: Veri kümesini yükleyin
veri kümesi = load_dataset ( 'imdb' )

# Adım 2: Filtreleme fonksiyonunu tanımlayın
kesinlikle özel_filtre ( örnek ) :
'''
Olumlu örnekleri korumak için özel bir filtreleme işlevi
duyarlılık (etiket == 1).
'''

geri dönmek örnek [ 'etiket' ] == 1

# Adım 3: Filtrelenmiş yeni bir veri kümesi oluşturmak için filtreyi uygulayın
filtrelenmiş_veri kümesi = veri kümesi. filtre ( özel_filtre )

# Adım 4: Filtrelenen veri kümesindeki mevcut sütun adlarını kontrol edin
Yazdır ( 'Filtrelenen veri kümesindeki mevcut sütunlar:' ,
filtered_dataset. sütun_adları )

# Adım 5: Filtrelenen veri kümesinden bilgilere erişin
filtrelenmiş_örnekler = filtrelenmiş_veri kümesi [ 'tren' ]
num_filtered_examples = sadece ( filtrelenmiş_örnekler )

# Adım 6: Filtrelenen örneklerin toplam sayısını yazdırın
Yazdır ( 'Toplam filtrelenen örnekler:' , num_filtered_examples )

Çıktı:



Açıklama:

Satır 1: Gerekli load_dataset paketini veri kümelerinden içe aktarıyoruz.

4. Satır: “imdb” veri setini load_dataset kullanarak yüklüyoruz.

7'den 12'ye kadar olan satırlar: Özel filtreleme fonksiyonunu tanımlıyoruz özel_filtre örnekleri olumlu duygularla tutmak için (etiket == 1). Bu işlev yalnızca etiket değeri 1 olan satırları döndürür.

15. Satır: Bu satır veri setinin “imdb” film inceleme verilerine sahip olduğunu gösterir. Artık olumlu değerlendirmeleri 'filtered_dataset'te saklanan veritabanından ayırmak için bu veritabanına filtre fonksiyonunu uyguluyoruz.

Satır 18 ve 19: Şimdi, filtered_dataset'te hangi sütun adlarının mevcut olduğunu kontrol ediyoruz. Yani “filtered_dataset.column_names” kodu ihtiyaçlarımızın detaylarını veriyor.

22 ve 23. satırlar: Bu satırlarda filtered_dataset'in 'train' sütununu filtreleyip train sütununun toplam sayısını (uzunluğunu) yazdırıyoruz.

Satır 26: Bu son satırda 23 numaralı satırın sonucunu yazdırıyoruz.

Endeksli Filter()

Filter() yöntemi, select() modunda görüldüğü gibi indekslerle de kullanılabilir. Ancak bunun için aşağıdaki örnekte de görüldüğü gibi “with_indices=true” anahtar sözcüğünün filter() metodunun dışında belirtilmesi gerektiğini belirtmeliyiz:

tek_veri kümesi = veri kümesi. filtre ( lambda örnek , kimlikx: kimlikx % 2 != 0 , with_indeksler = Doğru )

Yazdır ( sadece ( tek_veri kümesi ) )

Bu örnekte, yalnızca tek satırlar dahil olmak üzere veri kümesindeki gerekli bilgileri filtrelemek için filter() yöntemini kullandık.

Filter() yönteminin her parametresinin tüm ayrıntılarını burada bulabilirsiniz. bağlantı .

Çözüm

Hugging Face veri kümesi kitaplığı, özellikle Doğal Dil İşleme (NLP) ve makine öğrenimi görevleri bağlamında çeşitli veri kümeleriyle verimli bir şekilde çalışmak için güçlü ve kullanıcı dostu bir araç seti sağlar. Programda sunulan filter() işlevi, araştırmacıların ve uygulayıcıların, kullanıcı tanımlı filtreleme kriterlerini tanımlayarak ilgili veri alt kümelerini çıkarmasına olanak tanır. Kullanıcılar bu işlevselliği kullanarak, film incelemelerinde olumlu yaklaşımı sürdürmek veya belirli metin verilerini çıkarmak gibi belirli koşulları karşılayan yeni veri kümelerini zahmetsizce oluşturabilir.

Bu adım adım gösterim, bir veri kümesini yüklemenin, özel filtre işlevlerini uygulamanın ve filtrelenmiş verilere erişmenin ne kadar kolay olduğunu gösterir. Ek olarak, işlev parametrelerinin esnekliği, büyük veri kümeleri için çoklu işleme desteği de dahil olmak üzere özel filtreleme işlemlerine olanak tanır. Hugging Face veri kümesi kitaplığıyla kullanıcılar verilerini düzenleyebilir.