An open API service indexing awesome lists of open source software.

https://github.com/eonurk/sinkaf

Türkçe küfürlü içerikleri bulan bir yapay zeka kütüphanesi / An ML library for profanity detection in Turkish sentences
https://github.com/eonurk/sinkaf

acikhack acikhack2021 kufur profanity-detection turkce-kufur turkish turkish-language turkish-nlp

Last synced: 3 months ago
JSON representation

Türkçe küfürlü içerikleri bulan bir yapay zeka kütüphanesi / An ML library for profanity detection in Turkish sentences

Awesome Lists containing this project

README

        

> _"Kötü söz sahibine aittir."_
>
> -Anonim

## Nedir?

`sinkaf` uygunsuz yorumların bulunmasını sağlayan bir python kütüphanesidir.

## Farkı nedir?

Diğer algoritmalardan en büyük farkı, önceden belirlenmiş bir kelime listesinden cümlerlerdeki sözcükleri tek tek kontrol etmek yerine, makine öğrenmesi metodları kullanarak cümlenin genel anlamına bakabilmesidir. Aynı zamanda `sinkaf` baya bi hızlı!

## Nasıl çalışıyor?

Arka planda modelimizi eğitmek için [A corpus of Turkish offensive language](https://coltekin.github.io/offensive-turkish/guidelines.html) verisetini kullanıyoruz. Bu veriseti 36,000+ twitter yorumunun hakaret içerip içermediğini gösteren, Türkçe ile makine öğrenmesi denemeleri yapmak isteyenler için fevkaledenin fevkinde bir kaynak! Kendilerine teşekkür ediyoruz. Velhasıl...

## Nasıl yüklerim?

[![PyPI version](https://badge.fury.io/py/sinkaf.svg)](https://badge.fury.io/py/sinkaf)
[![Downloads](https://static.pepy.tech/personalized-badge/sinkaf?period=total&units=international_system&left_color=grey&right_color=orange&left_text=downloads)](https://pepy.tech/project/sinkaf)

```properties
pip3 install sinkaf
```

#### Gerekli paketler için:
```
pip3 install -r requirements.txt
```

## Nasıl kullanırım?

```python
from sinkaf import Sinkaf

snf = Sinkaf()

snf.tahmin(["çok tatlı çocuk", "çok şerefsiz çocuk"])
# array([False, True])

snf.tahminlik(["çok tatlı çocuk", "çok şerefsiz çocuk"])
# array([0.09811712, 0.86237484])
```

### Alternatif model

[BERT](https://github.com/stefan-it/turkish-bert) kullanılarak vektörize edilmiş veri üzerinde eğitilmiş modeller:
- `bert_pre`: Küfürlü cümlelerin saptanmasında düşük duyarlılık yüksek kesinlik
- `bert_rec`: Küfürlü cümlelerin saptanmasında yüksek duyarlılık az kesinlik

```python
snf = Sinkaf(model = "bert_pre")

snf.tahmin(["çok tatlı çocuk", "çok şerefsiz çocuk"])
# array([False, True])

snf.tahminlik(["çok tatlı çocuk", "çok şerefsiz çocuk"])
# array([0.26865139 0.85412345])

```

## İyi çalışıyor mu?
Fena değil gibi ama tabi daha iyi kesinlikle olabilir.

Detaylar için:
- [`sinkaf()`](sinkaf.ipynb)
- [`sinkaf(model = "bert_pre")`](sinkaf_alternatif.ipynb)

---
image

***sinkaf**, Açık Hack 2021\*'e katılmak amacıyla [Kara](https://github.com/eonurk)[Göz](https://github.com/ogozuacik) ekibi tarafından geliştirilmiştir.*




\
*
*[sunum linki](https://docs.google.com/presentation/d/1J-S4mvhWRyGiFDLexv_-rvtS9EFcBDnqq6tmECWR9Q0/edit?usp=sharing), [video linki](https://www.youtube.com/watch?v=TNSMcQxTe2U&t=1s)
*