Skip to content

04.04.2024

Görkem Karamolla edited this page Apr 5, 2024 · 2 revisions

Özet

Bugün, CPU kullanımını azaltmak amacıyla duygu analizi için kullandığımız model üzerinde önemli değişiklikler yapmaya çalıştık. Kullandığımız model, özellikle trpakov/vit-face-expression kütüphanesi, yüksek oranda CPU kullanımına neden oluyordu. Bu durum, uygulamamızın performansını olumsuz yönde etkiliyordu. Sorunu çözmek için farklı yaklaşımlar denedik.

Günlük Rapor

Denemeler ve Sonuçlar:

  1. Batch Kullanımı:

    • Modeli batch boyutunda 30 olarak ayarlayıp duygu analizi yaptırmayı denedik. Ancak, bu yöntem beklenen performans iyileştirmesini sağlamadı.
  2. Asenkron Fonksiyonlar:

    • Kullanılan fonksiyonların tamamını asenkron olarak yeniden yazdık. Asenkron ve senkron fonksiyonlar arasında performans açısından önemli bir fark gözlemlenmedi. Ancak, asenkron fonksiyon kullanımı, bazı donma sorunlarını gidermiş oldu.
  3. Alternatif Model Arayışı:

    • trpakov/vit-face-expression kütüphanesinin yüksek CPU kullanımı nedeniyle alternatif modeller arayışına girdik. Hugging Face websitesindeki diğer modelleri araştırmaya başladık.
  4. dima806/facial_emotions_image_detection Kütüphanesi:

    • Emotion recognition için dima806/facial_emotions_image_detection kütüphanesinin kullanımını test ettik ve CPU performanslarını karşılaştırdık.
  5. Python Fer Kütüphanesi:

    • Python Fer kütüphanesini test amaçlı kullanmayı denedik ancak versiyon uyumsuzlukları nedeniyle bu girişim başarısız oldu.
  6. DeepFace Kütüphanesi:

    • DeepFace kütüphanesinin içinde bulunan TensorFlow Keras modeli üzerinden emotion recognition denemesi yaptık.

Sonuçlar ve Kararlar:

  • CPU kullanımını azaltma çabalarımız, özellikle batch kullanımı ve asenkron fonksiyonlarla istediğimiz sonucu vermedi.
  • trpakov/vit-face-expression kütüphanesinin yüksek CPU kullanımı, alternatif bir model arayışını zorunlu kıldı.
  • dima806/facial_emotions_image_detection kütüphanesinin kullanımı, bu soruna bir çözüm sunabilir gibi görünüyor ancak daha fazla test gerekiyor.
  • DeepFace kütüphanesi üzerinden yaptığımız deneme, potansiyel bir alternatif olabilir, ancak bu yöntemin de kapsamlı bir değerlendirilmesi gerekmektedir.

Apple Macbook M1 Pro işlemcisi üzerinde Insightface'in buffalo_sc modelinin kaynak tüketimi test edildi.

Kamera önünde 1 kişiyle Cpu benchmarkı

one person cpu benchmark

Kamera önünde 2 kişiyle Cpu benchmarkı

two person cpu benchmark

Kamera önünde 15+ kişiyle Cpu benchmarkı

15+ person cpu benchmark

Insightface ve Duygu tanıma modeli(trpakov/vit-face-expression) Birlikte çalıştırılarak test edildi.

Kamera önünde 1 kişiyle Cpu benchmarkı

1 person cpu benchmark

Kamera önünde 2 kişiyle Cpu benchmarkı

2 person cpu benchmark

Kamera önünde 15+ kişiyle Cpu benchmarkı

15+ person cpu benchmark

Testten anlaşıldığı üzere vit emotion detection librarysi cpu üzerinde %40 ila %50 arasında bir kullanıma ulaşmaktadır. Kişi sayısı 10 ve üzerinde olduğunda uygulamada donmalar ve cpu darboğazı oluşmaktadır

  • Dima806/facial_emotions_image_detection ve DeepFace kütüphaneleri üzerinde daha detaylı testler yaparak, CPU kullanımı daha düşük ve performansı yüksek bir duygu analizi modeline geçiş yapmayı planlıyoruz.
  • Alternatif modellerin performanslarını karşılaştırmaya devam edeceğiz ve en uygun çözümü bulmak için çabalarımızı sürdüreceğiz.
Clone this wiki locally