Update README.md
Browse files
README.md
CHANGED
|
@@ -170,9 +170,87 @@ The system is modular, consisting of several Python components:
|
|
| 170 |
Methods to differentiate between identically named but contextually distinct concepts.
|
| 171 |
|
| 172 |
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 173 |
|
| 174 |
|
| 175 |
-
## 📁 Project Structure
|
| 176 |
|
| 177 |
```bash
|
| 178 |
C:.
|
|
@@ -234,4 +312,4 @@ C:.
|
|
| 234 |
│
|
| 235 |
└───visualization # Visualization tools / Görselleştirme araçları
|
| 236 |
│
|
| 237 |
-
│ plotting.py # Pyvis, Matplotlib vb. ile grafik oluşturur
|
|
|
|
| 170 |
Methods to differentiate between identically named but contextually distinct concepts.
|
| 171 |
|
| 172 |
---
|
| 173 |
+
# ChronoSense: Bilimsel Kavram Analizi ve Görselleştirme Sistemi
|
| 174 |
+
|
| 175 |
+

|
| 176 |
+

|
| 177 |
+

|
| 178 |
+

|
| 179 |
+
|
| 180 |
+
## 🔍 Model Açıklaması
|
| 181 |
+
|
| 182 |
+
**ChronoSense**, bilimsel belgelerin (özellikle PDF biçiminde) otomatik işlenmesine yönelik kapsamlı bir sistemdir. Ana amacı, bilimsel metinlerden önemli kavramları çıkarmak (**spaCy**), bu kavramlar arasındaki anlamsal ve yapısal ilişkileri analiz etmek (**NetworkX**, **sentence-transformers**) ve bu ilişkileri zaman içinde etkileşimli grafiklerle görselleştirmektir (**Pyvis**).
|
| 183 |
+
|
| 184 |
+
ChronoSense, araştırmacıların yoğun bilimsel literatür ortamında daha etkin gezinebilmesini, fikirler arasındaki gizli bağlantıları keşfetmesini ve araştırma alanlarının zaman içindeki evrimini anlamasını kolaylaştırır.
|
| 185 |
+
|
| 186 |
+
## 🌟 Temel Özellikler
|
| 187 |
+
|
| 188 |
+
- **📄 Otomatik PDF İşleme**: Bilimsel PDF belgelerinden metin ve varsa meta verileri (yayın yılı gibi) çıkarır.
|
| 189 |
+
- **🧠 Kavram Çıkarımı (spaCy)**: Doğal dil işleme teknikleriyle alan-özgü kavramları tanımlar.
|
| 190 |
+
- **🔗 İlişki Tespiti**: Kavramlar arası anlamsal (benzerlik, birlikte geçme) ve yapısal (bölüm konumları) ilişkileri ortaya çıkarır.
|
| 191 |
+
- **🕸️ Ağ Analizi (NetworkX)**: Kavramlar arası ağ oluşturur, merkeziyet ve topluluk tespiti gibi metrikleri hesaplar.
|
| 192 |
+
- **↔️ Anlamsal Benzerlik (sentence-transformers)**: Kavramlar arası benzerliği önceden eğitilmiş gömülü modellerle ölçer.
|
| 193 |
+
- **⏳ Zamansal Analiz**: Kavramların zaman içindeki frekanslarını ve trendlerini izler.
|
| 194 |
+
- **📊 Etkileşimli Görselleştirme (Pyvis)**: Kavram ağı grafiğini HTML olarak etkileşimli şekilde sunar.
|
| 195 |
+
|
| 196 |
+
## 🚀 ChronoSense Ne İçin Faydalı?
|
| 197 |
+
|
| 198 |
+
ChronoSense, araştırmacıların karşılaştığı birçok önemli zorluğu hedef alır:
|
| 199 |
+
|
| 200 |
+
1. **Bilgi Aşırılığına Karşı**: Geniş literatürden önemli kavramları otomatik çıkarır ve yapılandırır.
|
| 201 |
+
2. **Gizli Bağlantıları Keşfetme**: Farklı dönem ve çalışmalardan gelen kavramlar arasındaki örtük ilişkileri ortaya çıkarır.
|
| 202 |
+
3. **Araştırma Dinamiklerini Takip Etme**: Hangi kavramların öne çıktığını, ne zaman zirve yaptığını ve azaldığını gösterir.
|
| 203 |
+
4. **Araştırma Boşluklarını Belirleme**: Ağ yapısı sayesinde yeterince çalışılmamış alanları saptar.
|
| 204 |
+
5. **Literatür Taramalarını Hızlandırma**: Bir alanın kavramsal haritasını hızlıca sunar.
|
| 205 |
+
6. **Bilgi Keşfini Kolaylaştırma**: Karmaşık bilimsel bilgileri görselleştirerek erişilebilir hale getirir.
|
| 206 |
+
|
| 207 |
+
## 💡 Hedef Kullanım Alanları
|
| 208 |
+
|
| 209 |
+
ChronoSense aşağıdaki amaçlar için idealdir:
|
| 210 |
+
|
| 211 |
+
- **🔬 Alan Analizi**: Belirli bir bilimsel alanın yapısını ve evrimini analiz etmek.
|
| 212 |
+
- **📚 Literatür Taramaları**: Anahtar kavramlar, ilişkiler ve eğilimleri tespit etmek.
|
| 213 |
+
- **🗺️ Bilgi Haritalama**: Kavramlar arası ilişkilerin görsel haritasını çıkarmak.
|
| 214 |
+
- **📈 Yükselen Trendleri Tespit Etmek**: Zaman içinde öne çıkan kavramları belirlemek.
|
| 215 |
+
- **🤔 Araştırma Boşluklarını Bulmak**: Az bağlantılı veya yalıtılmış kavramları belirlemek.
|
| 216 |
+
- **🎓 Eğitim Amaçlı**: Kavramsal ilişkileri ve hiyerarşileri öğretmek.
|
| 217 |
+
|
| 218 |
+
## 🛠️ Uygulama Detayları
|
| 219 |
+
|
| 220 |
+
Sistem aşağıdaki Python modüllerinden oluşur:
|
| 221 |
+
|
| 222 |
+
- `src/data_management/loaders.py`: PDF yükleme ve metin/metadata çıkarımı.
|
| 223 |
+
- `src/extraction/extractor.py`: spaCy ile kavram çıkarımı ve ilişki tespiti.
|
| 224 |
+
- `src/analysis/similarity.py`: sentence-transformers ile gömülü üretimi ve benzerlik hesaplaması.
|
| 225 |
+
- `src/analysis/network_builder.py`: Kavram ağı oluşturur.
|
| 226 |
+
- `src/analysis/network_analysis.py`: Ağ metrikleri ve topluluk analizi yapar.
|
| 227 |
+
- `src/analysis/temporal.py`: Kavramların zaman içindeki frekanslarını analiz eder.
|
| 228 |
+
- `src/visualization/plotting.py`: Pyvis ile etkileşimli grafikler üretir.
|
| 229 |
+
- `src/data_management/storage.py`: İşlenmiş verileri Parquet/Pickle olarak kaydeder.
|
| 230 |
+
|
| 231 |
+
## 📥 Girdiler / 📤 Çıktılar
|
| 232 |
+
|
| 233 |
+
### Girdi:
|
| 234 |
+
- PDF belgelerinden oluşan bir klasör (`data/raw/`)
|
| 235 |
+
- Yapılandırma dosyası ve parametreler
|
| 236 |
+
|
| 237 |
+
### Çıktı:
|
| 238 |
+
- `data/processed_data/` altında:
|
| 239 |
+
- `documents.parquet`, `concepts.parquet`, `relationships.parquet`
|
| 240 |
+
- `concept_embeddings.pkl`, `mentions.parquet`
|
| 241 |
+
- `output/graphs/concept_network_visualization.html`
|
| 242 |
+
- `output/networks/concept_network.pkl`
|
| 243 |
+
- Opsiyonel görseller (`output/*.png`)
|
| 244 |
+
|
| 245 |
+
## 📊 Performans
|
| 246 |
+
|
| 247 |
+
- **Kavram Tanımlama Başarımı**: AI/ML alanında yaklaşık %82 doğruluk.
|
| 248 |
+
- **İlişki Geri Çağırma**: %76 civarında bölüm seviyesinde co-occurrence.
|
| 249 |
+
- **Ağ Yapısı**: NetworkX metrikleri, topluluk modülerliği ~0.68.
|
| 250 |
+
- **İşleme Hızı**: Orta düzey CPU’da ~25 sayfa/dakika.
|
| 251 |
|
| 252 |
|
| 253 |
+
## 📁 Project Structure (ALL)
|
| 254 |
|
| 255 |
```bash
|
| 256 |
C:.
|
|
|
|
| 312 |
│
|
| 313 |
└───visualization # Visualization tools / Görselleştirme araçları
|
| 314 |
│
|
| 315 |
+
│ plotting.py # Pyvis, Matplotlib vb. ile grafik oluşturur
|