commited on
Commit
25e471b
·
verified ·
1 Parent(s): 6203647

Upload 4 files

Browse files
Files changed (4) hide show
  1. README.md +59 -2
  2. app.py +32 -0
  3. requirements.txt +4 -0
  4. tfidf_model.pkl +3 -0
README.md CHANGED
@@ -1,3 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
- license: mit
3
- ---
 
 
 
 
 
 
 
 
 
1
+ # 🔑 Anahtar Kelime Çıkarıcı (TF-IDF ile)
2
+
3
+ Bu projede, kullanıcıdan alınan metin üzerinde **TF-IDF algoritması** kullanılarak en anlamlı anahtar kelimeler çıkarılmaktadır.
4
+
5
+ ## 📦 Kullanılan Kütüphaneler
6
+
7
+ - `scikit-learn`
8
+ - `nltk`
9
+ - `pandas`
10
+ - `streamlit`
11
+
12
+ ## 🚀 Uygulama Nasıl Çalışır?
13
+
14
+ Kullanıcı metnini girer → TF-IDF uygulanır → En yüksek skora sahip 10 kelime gösterilir.
15
+
16
+ ## 🧪 Örnek Giriş
17
+
18
+ ```text
19
+ Yapay zeka ve doğal dil işleme teknolojileri günümüzde birçok sektörde kullanılmaktadır.
20
+
21
+ 📌 Çıktı
22
+ the 0.44014589420436356
23
+ and 0.34233569549228277
24
+ python 0.326033995706936
25
+ to 0.2934305961362424
26
+ of 0.24452549678020197
27
+ in 0.22822379699485518
28
+ is 0.2119220972095084
29
+ data 0.19562039742416157
30
+ you 0.1467152980681212
31
+ that 0.13041359828277438
32
+
33
+
34
+
35
+
36
+ 🖥 Uygulamayı Başlatmak
37
+
38
+
39
+
40
+ Eğitimli TF-IDF vektörizer modeli paylaşılabilir:
41
+ 👉 https://huggingface.co/yazodi/keyword-tfidf
42
+
43
+
44
+
45
+
46
+
47
+
48
+ 🪪 Lisans
49
+ MIT Lisansı
50
  ---
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
app.py ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from sklearn.feature_extraction.text import TfidfVectorizer
3
+ from nltk.corpus import stopwords
4
+ import nltk
5
+ import pandas as pd
6
+
7
+ # NLTK stopwords indir (ilk çalıştırmada bir kez çalışır)
8
+ nltk.download('stopwords')
9
+ turkish_stopwords = stopwords.words('turkish')
10
+
11
+ # Başlık
12
+ st.title("🔑 Anahtar Kelime Çıkarıcı (TF-IDF ile)")
13
+ st.markdown("Bu uygulama, girdiğiniz metindeki en anlamlı kelimeleri TF-IDF algoritması ile çıkarır.")
14
+
15
+ # Kullanıcıdan metin al
16
+ text_input = st.text_area("Lütfen metninizi buraya girin:")
17
+
18
+ if st.button("Anahtar Kelimeleri Çıkar"):
19
+ if text_input.strip() == "":
20
+ st.warning("⚠️ Lütfen bir metin girin.")
21
+ else:
22
+ # TF-IDF hesapla
23
+ vectorizer = TfidfVectorizer(stop_words=turkish_stopwords)
24
+ X = vectorizer.fit_transform([text_input])
25
+
26
+ # Skorları DataFrame olarak düzenle
27
+ df_keywords = pd.DataFrame(X.T.toarray(), index=vectorizer.get_feature_names_out(), columns=["Skor"])
28
+ df_keywords = df_keywords.sort_values("Skor", ascending=False)
29
+
30
+ # Sonuçları göster
31
+ st.subheader("📌 En Anlamlı Anahtar Kelimeler")
32
+ st.dataframe(df_keywords.head(10))
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ streamlit
2
+ scikit-learn
3
+ nltk
4
+ pandas
tfidf_model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8ff4b19233df457442272bdfb68c2a87a473badfeacf8c31047624686b143d6e
3
+ size 1523