Skip to main content

Tunga Kütüphane Kullanımı

Kurulum

Tunga'nın sahip olduğu tüm özellikler tek bir python kütüphanesinde toplanmış ve PyPI'da kullanıma sunulmuştur. Web uygulaması kullanmadan özelliklere erişmek için bu kütüphaneyi kullanabilirsiniz. Kütüphaneyi aşağıdaki komutu çalıştırarak kurabilrsiniz.

CFLAGS="-Wno-narrowing" pip3 install tunga

Kullanım

Tunga kütüphanesi kendi içerisinde 4 temel alt modüle sahiptir. Bu modüllerin kullanım detayları aşağıdaki gibidir. Kullanım hakkında daha fazla bilgi için birim testlerini inceleyebilirsiniz.

Veri Temizleme Modülü

>>> from tunga.preprocessing import normalization

>>> normalization.correct_typo("şen büyüyünce doktoy mı olçan")
'sen büyüyünce doktor mı olacaksın'

>>> normalization.lemmatization("Bizler aslında yolcuyuz bu dünyada")
'biz aslında yolcu bu dünya'

>>> normalization.stem("Gül senin tenin ben de güller içinde kafesteyim")
'Gül sen ten ben de gül iç kafes'

>>> normalization.syllable("Gözümde nursun başımda tacım muhtacım")
'Gö züm de nur sun ba şım da ta cım muh ta cım'

>>> normalization.remove_stopwords("Bu ve bunun gibi projeler desteklenirse Türkiye 5 yıl içerisinde insansız hava araçları kategorisinde dünyada bir numara olur")
'projeler desteklenirse Türkiye 5 yıl içerisinde insansız hava araçları kategorisinde dünyada numara'

>>> normalization.remove_digits("Yıldız Teknik Üniversitesi 100 yıl önce eğitim hayatına başlamıştır.")
'Yıldız Teknik Üniversitesi yıl önce eğitim hayatına başlamıştır.'

>>> normalization.remove_punctuations("Kim bu gözlerindeki yabancı? Yaralar beni yüreğimden. Hani sen olacaktın yalancı!")
'Kim bu gözlerindeki yabancı Yaralar beni yüreğimden Hani sen olacaktın yalancı'

>>> normalization.remove_hashtag("Sevdiklerimle gün batışını izliyorum #kankalarla #haftasonu #myfriends")
'Sevdiklerimle gün batışını izliyorum'

>>> normalization.remove_mentions("Dostumla güzel bir gün @btahtaci")
'Dostumla güzel bir gün'

>>> normalization.remove_html_tags("<html><body>Heştiemel gövdesine koydular beni.</body></html>")
'Heştiemel gövdesine koydular beni.'

>>> normalization.remove_email("Bana mail atmak istersen burak@burak.com adresine yaz")
'Bana mail atmak istersen  adresine yaz'

>>> normalization.remove_url("Tunga diye mükemmel bir doğal dil işleme ürünü var daha önce hiç duymadıysan hemen http://tunga.ml adresine bir göz at")
'Tunga diye mükemmel bir doğal dil işleme ürünü var daha önce hiç duymadıysan hemen  adresine bir göz at'

Makine Öğrenmesi Modülleri

Duygu Durum Analizi

from tunga.machine_learning.sentiment_analysis import bert_sentiment

>>> bert_sentiment.get_sentiment("mükemmel bir ürün çok hoşuma gitti")
('positive', 0.9904009699821472)
>>> 

Konu Modelleme

Anahtar Kelime Tespiti

Varlık Adı Tanımlama

Metin Özetleme

from tunga.machine_learning.summarization.summarizer import summarize
from nltk.tokenize import word_tokenize, sent_tokenize

text = "Olayın intikal şekli ve zamanı, tarafsız tanık K3’nin iş yerinde gördüğü sanığın babacan bir tavırla hareket ettiğine dair ifadesi ortadadır. Diğer tanık beyanları, CD içeriği ile tüm dosya kapsamı nazara alındığında sanığın aynı yerde birlikte çalıştığı mağdurenin vücuduna dokunması şeklindeki eyleminin cinsel amaçla gerçekleştirildiği hususunun şüphede kaldığı ve mevcut haliyle cezalandırılmasına yeter başkaca delil bulunmadığı anlaşıldığından, müsnet suçtan beraatı yerine yazılı şekilde mahkumiyetine karar verilmesi kanuna aykırıdır. Sanık avukatının temyiz itirazları bu itibarla yerinde görüldüğünden, hükmün bozulmasına oy çokluğu ile karar verildi.Ceza yargılamasının esas amacı maddi gerçeğin ortaya çıkarılmasıdır. Bu bakımdan hakim davayı muhakeme kuralları gereğince huzurunda görecek, olayı ilk günkü haline götürecek bu konuda yüz yüzelik ilkeleri gereğince sanık ile mağduru dinleyecek ve gözlemleyecek, elde ettiği delillerle vicdani kanaati ile hüküm kuracaktır. Delil tüm davalarda hükme ulaştıracak kurucu unsurdur. Bu bakımdan en hassas suçlar cinsel istismar ve cinsel saldırı suçlarıdır. Bu suçlarda mağdur ile sanık arasında geçen eylem genellikle yapısı gereği tanık olmadan ve bariz delil bırakılmadan işlenen suçlardır. Bu açıdan Yargıtayca davanın temelini oluşturan delillerden en önemlileri, mağdur beyanı, doktor raporları, psikolojik inceleme evrakları, sanık ve mağdurun bulundukları çevre, aralarındaki yakınlık ve husumet incelemeleri olarak kabul edilmiştir. Öte yandan tanıdık kişiler (akraba, komşu, öğretmen, iş arkadaşı, amir v.b) tarafından gerçekleştirilen cinsel istismar ve saldırı vakalarında mağdurların bu kişilerle olan geçmiş ilişkileri, yakınlık düzeyleri olay öncesi ilişkilenme biçimleri ve daha sonra mağdur ile aynı çevrede kalmaya devam etmeleri sebebiyle ivedi biçimde şikayette bulunmamaları mağdurun aleyhine yorumlanmamalıdır.Çünkü bu kişiler hakkında yasal müracaatta bulunma konusunda tereddüt yaşadıkları ve yabancı failler konusunda gösterdikleri kararlılıkları kimi zaman gösteremedikleri bilinen bir gerçeklik olarak kabul edilmiştir. Sanığın bir kamu kurumu şubesinde müdür, katılanın da aynı şubede memur olarak çalıştıkları, o sebeple sürekli bir araya geldikleri, katılanın iddiasına göre sanığın zaman zaman 'Maşallah, çok güzelsin, fıstık gibisin' şeklinde kendisine laf attığı, olayın olduğu gün iş yeri kapısında karşılaştıkları sırada sanığın katılanın kalçasını ellediği ve katılanın karşı çıkması üzerine sanığın 'Sen benim kızım gibisin' diyerek olayı geçiştirmeye çalıştığı ancak bu olay sonrası katılanın ağlamaya başladığı ve olayı diğer arkadaşlarına anlattığı ortadadır. Son olayın oluş şeklinin dinlenen tanıklara mağdur tarafından hemen aktarıldığı, tanıklar K6, K5 ve K4 tarafından benzer şekilde doğrulandığı gibi o sırada şifre almak için şubede bulunduğu anlaşılan tanık K3'ın da olayı doğruladığı anlaşılmakla katılanın sanığı suçlaması için aralarında başkaca geçmişe dayalı bir husumetin bulunmaması da dikkate alındığında, sanığın olay günü katılana yönelik sarkıntılık suretiyle cinsel saldırı suçunu işlediği sabit olduğundan mahkeme kararının onanması gerektiği düşüncesiyle sayın çoğunluğun görüşüne iştirak edilmemiştir."
>>>  summarize(word_tokenize(text),sent_tokenize(text))
(['Bu bakımdan en hassas suçlar cinsel istismar ve cinsel saldırı suçlarıdır. '
    'Delil tüm davalarda hükme ulaştıracak kurucu unsurdur.'])
>>> 

Türkçe-İngilizce Çeviri

Veri Erişim Modülü

from tunga.retrieval import Twitter

API_KEY = "<YOUR_TWITTER_API_KEY>"
API_SECRET = "<YOUR_TWITTER_API_SECRET>"
ACCESS_TOKEN = "<YOUR_TWITTER_ACCESS_TOKEN>"
TOKEN_SECRET = "<YOUR_TWITTER_TOKEN_SECRET>"
USERNAME = ""
HASHTAG = ""

tweets_uname = Twitter.read_tweets_from_user(API_KEY, API_SECRET, ACCESS_TOKEN, TOKEN_SECRET, USERNAME, 200)

tweets_hashtag = Twitter.read_tweets_from_hashtag(API_KEY, API_SECRET, ACCESS_TOKEN, TOKEN_SECRET, HASHTAG, 200)

Release files for tunga 1.0.88

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tunga 1.0.88
File Size Uploaded
tunga-1.0.88.tar.gz 16.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tunga 1.0.88
File Interpreter ABI Platform
tunga-1.0.88-py3-none-any.whl Python 3 none any Details

Total release size: 32.0 kB

Release files / tunga-1.0.88.tar.gz

Download URL tunga-1.0.88.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e8008acbd6d3ed355a9b099a39b34ea8f0592287ebff0da4cbd867ae80489dec
BLAKE2b-256 checksum
How to use checksums
d1ca9afa3cc62dd6ecb89ef69eeb137c3c2a8f536c036ca0feffca9525b71109
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.7

Release files / tunga-1.0.88-py3-none-any.whl

Download URL tunga-1.0.88-py3-none-any.whl
Size 15.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ccf3a196d5166ff09c8966c2d12367c072842db2fc8d040a4c1b8e4cd127f0fb
BLAKE2b-256 checksum
How to use checksums
43745596c3b93f11d9ddc33feac852ad8e2902750e4f97a7035284dcca62dc15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.7

Release history Release notifications | RSS feed

This release

1.0.88 This release

2 release files

1.0.87

2 release files

1.0.86

2 release files

1.0.85

2 release files

1.0.84

2 release files

1.0.83

2 release files

1.0.82

2 release files

1.0.81

2 release files

1.0.80

2 release files

1.0.79

2 release files

1.0.78

2 release files

1.0.77

2 release files

1.0.76

2 release files

1.0.75

2 release files

1.0.74

2 release files

1.0.73

2 release files

1.0.72

2 release files

1.0.71

2 release files

1.0.70

2 release files

1.0.69

2 release files

1.0.68

2 release files

1.0.67

2 release files

1.0.66

2 release files

1.0.65

2 release files

1.0.64

2 release files

1.0.63

2 release files

1.0.62

2 release files

1.0.61

2 release files

1.0.57

2 release files

1.0.55

2 release files

1.0.54

2 release files

1.0.53

2 release files

1.0.52

2 release files

1.0.51

2 release files

1.0.50

2 release files

1.0.49

2 release files

1.0.48

2 release files

1.0.47

2 release files

1.0.46

2 release files

1.0.45

2 release files

1.0.44

2 release files

1.0.41

2 release files

1.0.40

2 release files

1.0.39

2 release files

1.0.38

2 release files

1.0.37

2 release files

1.0.36

2 release files

1.0.35

2 release files

1.0.34

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page