Doğal Dil İşleme Yöntemiyle Aşağılayıcı Söylem Tespiti

Teknofest 2023 #acikhack2023

$${\color{blue}TrendMiner Takımı }$$

Modeli Kullanmak Yüklenmesi Gereken Bağımlılıklar pip install gradio !pip install transformers pip install simpletransformers pip install zemberek-python !pip install git+https://github.com/emres/turkish-deasciifier. git !pip install TurkishStemmer Hugginface bağlantısı için Install Hugging Face Hub !python -m pip install huggingface_hub !python -m pip install evaluate from fast_ml.model_development import train_valid_test_split

Gradio kodları gradio_calisan_son.ipynb 'dır

Model Oluşturma

Veri Setinin Ön İşleme Basamakları

Veri Seti incelendi. Kısa metinlerden oluştuğu gözlemlendi. Kısa metin clustering üzerine bilimsel makaleler tarandı. Yayınlanan makalede Short Text Clustering modellerinin performans verileri incelendi. Kısa metinlerde performansı en yüksek olan Soft Cluster Assignment for Text Clustering - Auto Encoder yöntemi üzerine modelimizi kurup performans verilerini kaydettik.

Yine performansı yüksek olan Bert üzerine modelimizi kurup performans verilerini kaydettik.

Türkçe metinler üzerinde fine-tune edilmiş Bert modelinin daha yüksek performans gösterdiği için modelimizi Bert üzerine kurduk.

Kısa metinler üzerinde clustering işlemi için güncel bilimsel makaleleri taradığımızda öne çıkan yaklaşımları temel alarak modellerimizi kurup performanslarını kıyasladık.

En başarılı yöntem olarak geçen Soft Cluster Assignment for Text Clustering - Auto Encoder yönteminden istediğimiz performansı alamadık.

Bunda Türkçe’nin sondan eklemeli bir dil oluşunun , alfabede ki bazı harflerin İngilizce de olmamasının , veri setinin az olmasının ve bazı deyim ve atasözlerinin model tarafından algılanamamasından kaynaklandığını düşünüyoruz.

Diğerlerine göre daha iyi performans gösteren https://huggingface.co/dbmdz/bert-base-turkish-cased modelini veri setimizle fine-tune edip hazırladık.

Veri setimizle fine tüne ettiğimiz modelin hugginface modelinden daha iyi performans sağladığını gözlemledik

Proje İş Akışı

image

image

image

Çalışma Basamaklarının Açıklaması

Dijital ortamda yazıların genelde resmi yazı formuna uymadığı için önce cümleler ve kelimeler için normal formuna getirme olan normalizasyon yaptık.

Bu kelimeler sayısal değerlere çevrilme olan tokenizasyonu Bert Model yapılıyor.

Çıkarıldığı zaman anlam bütünlüğünü bozmayan dolgu kelimeleri (stop words)’ler çıkarılır.

Kelimelerin köklerinin bulunması (lematization)

Feature Selection (Özellik belirleme)’de text değerleri ve etiket değerleri (INSULT,PROFANITY VB) seçilir

Oluşturduğumuz model aracılığıyla önce önce classification(sınıflandırma) daha sonra clustering yapılır.

#Gradio kodları gradio_calisan_son.ipynb 'dır

image

Program Örnek Çalışma Videosu büyük boyutlu olduğu için buraya yüklenememiştir. https://drive.google.com/file/d/1XvFApcxOozgnQ_QyUDGYnR1ih9rrd73Q/view?usp=sharing ve
https://drive.google.com/file/d/1ziO_eeNKFmmtnwG77vOVXGVnPq6Iq1UK/view?usp=sharing linklerinden ulaşabilirsiniz