Proje akışı
PeptiProp deposundaki uçtan uca pipeline: PROPEDIA ham verisinden kanonik tablolara, sızıntısız sekans-küme split'lerine, negatif çift üretimine, ESM-2 embedding çıkarımına, rezidü-seviye graf inşasına, GATv2 dual-encoder eğitimine ve son olarak 2D/3D raporlama ile bu statik siteye.
Amac ve gorev tanimi
Protein-peptid etkilesimleri ilac tasarimi, sinyal yolagi analizi ve biyomalzeme muhendisliginde merkezi rol oynar. PeptiProp, deneysel ko-kristal yapilarindan yola cikarak bir protein yuzeyine hangi peptidin gercekten baglandigini ayirt edebilen bir skorlama ve siralama (reranking) modeli sunar.
Model yalnizca "bu cift baglanir mi?" sorusunu yanitmaz; her protein icin bir aday kumesi (1 native pozitif + 5 negatif dekoy) icinde gercek baglayiciyi ust siralara tasir. Bu yaklasim, gercek dunyada binlerce aday peptit arasından dogru olani bulmaya yonelik pratik bir kullanim senaryosunu yansitir.
Degerlendirme metrikleri
| Metrik | Tur | Aciklama |
|---|---|---|
| MRR | Siralama | Dogru adayin ortalama ters sirasi. 1.0 = her zaman 1. sirada |
| Hit@k | Siralama | Ilk k aday icinde native peptit var mi? Pratik kisa liste basarisi |
| AUROC | Siniflandirma | Esik-bagimsiz ikili ayirilabilirlik gucu |
| AUPRC | Siniflandirma | Dengesiz sinif senaryolarinda precision-recall dengesi |
| F1 / MCC | Siniflandirma | Secilen esikte kesin siniflandirma performansi |
Yontem — uctan uca akis
Asagida PeptiProp v0.2 pipeline'inin her adimi, kullandigi araclar ve ciktilariyla aciklanmistir. Her adimin ciktisi bir sonrakinin girdisidir; tum ara urunler Parquet / JSON / NPZ formatinda saklanarak tekrarlanabilirlik ve denetlenebilirlik saglanir.
complexes.parquet (18.7k), chains.parquet (48k zincir), residues.parquet (3.5M rezidu).npz dosyasi → toplam ∼35k dosya, ∼3.2 GB.pt olarak saklanirVeri katmani
| Bilesen | Konum | Aciklama |
|---|---|---|
| Kanonik kompleksler | data/canonical/complexes.parquet | Protein-peptid ciftlerinin ana tablosu |
| Zincir bilgileri | data/canonical/chains.parquet | Sekans, uzunluk, zincir turu (protein/peptit) |
| Rezidu detaylari | data/canonical/residues.parquet | Koordinat, is_interface, is_pocket, local_density |
| Sekans-kume split | data/canonical/splits/*.txt | Kume-bazli train/val/test PDB ayirimi |
| Ciftler + negatifler | data/canonical/pairs/*.parquet | Pozitif + easy / hard negatif ciftler |
| ESM-2 embedding'ler | data/embeddings/esm2_residue/*.npz | Per-rezidu 320-d ESM-2 vektorleri (float16) |
| Embedding lookup | data/embeddings/esm2_chain_lookup.json | chain_id → npz dosya adi eslestirmesi |
| PyG graflar | data/graphs/*.pt | Onceden insa edilmis rezidu-seviye graf nesneleri (326-d dugum, 4-d kenar) |
| Veri raporlari | pair_data_report.json | Dagilim ve butunluk kontrol raporlari |
Test metrikleri
En iyi modelin test kumesi uzerindeki performansi.
Kartlarda — gorunuyorsa build sirasinda metrics.json bulunamadi.
| Metrik | Ne olcer? | Neden onemli? |
|---|---|---|
| MRR | Dogru adayin siralamadaki ters ortalamasidir | Reranking performansinin ana gostergesi |
| Hit@k | Ilk k aday icinde pozitif var mi? | Pratik kisa liste basarisi |
| AUROC | Skor ile ikili ayirilabilirlik (esik bagimsiz) | Genel siniflandirma gucu |
| AUPRC | Precision-recall egrisi altindaki alan | Dengesiz sinif senaryolari icin tamamlayici |
| F1 / MCC | Secilen esikte kesin siniflandirma | Operasyonel karar esigi basarisi |
Ablation: MLP Baseline vs GNN+ESM-2
| Metrik | MLP v0.1 (68 ep) | GNN+ESM-2 v0.2 (80 ep) | Fark |
|---|---|---|---|
| AUROC | 0.8388 | 0.8813 | +0.0425 |
| AUPRC | 0.4348 | 0.5566 | +0.1218 |
| F1 | 0.5074 | 0.5884 | +0.0810 |
| MCC | 0.4134 | 0.5037 | +0.0903 |
| MRR | 0.7120 | 0.7776 | +0.0656 |
| Hit@1 | 0.5121 | 0.6210 | +0.1089 |
| Hit@3 | 0.9275 | 0.9469 | +0.0194 |
| Hit@5 | 0.9952 | 0.9965 | +0.0013 |
Top ranked tahmin ornekleri
Test kumesinden aday gruplarin ilk siralamadaki ornekleri. Pozitif = native kristal cifti, Negatif = dekoy ornegi. Skor: model uretimi baglanti olasiligi (0-1).
| PDB | Protein | Peptit | Uzunluk | Skor | Etiket | Sira |
|---|---|---|---|---|---|---|
1A37 | A | A | — | 0.0638 | Negatif | 1 |
1A37 | B | C | — | 0.1352 | Negatif | 1 |
1A3R | H | P | — | 0.4716 | Pozitif | 1 |
1A9B | A | C | — | 0.4003 | Negatif | 1 |
1A9B | A | F | — | 0.3447 | Pozitif | 1 |
1A9B | D | C | — | 0.3416 | Pozitif | 1 |
1A9B | D | R | — | 0.4063 | Negatif | 1 |
1A9E | A | C | — | 0.3607 | Pozitif | 1 |
1AB9 | C | A | — | 0.4247 | Negatif | 1 |
1AB9 | C | J | — | 0.5596 | Negatif | 1 |
Tam liste: top_ranked_examples.json dosyasindaki top_ranked_candidates_preview alani.
Eğitim ve değerlendirme görselleri
Görseller mümkünse eğitim çıktı klasöründen (metrics.json ile aynı dizin) kopyalanır; GitHub Actions’ta klasör yoksa
yer tutucu PNG üretilir (kırık resim ve boş URL görünmez). Gerçek eğriler için yerelde eğitim sonrası yeniden derleyin.
Model karsilastirmasi: MLP vs GNN+ESM-2
v0.1 MLP baseline (131-d ozet vektor, 68 epoch) ile v0.2 GATv2+ESM-2 (rezidu-seviye graf, 80 epoch) test seti uzerinde karsilastirilmistir. GNN+ESM-2 tum metriklerde MLP'yi gecer; en buyuk fark AUPRC (+12.2pp) ve Hit@1 (+10.9pp).
2D peptit gorselleri
RDKit ile tek harf aminoasit dizisinden turetilen 2D bag yapisi. Her gorselde peptidin PDB kodu, zincir kimligi, sekans, model skoru ve etiket bilgisi yer alir.
Amac
- Peptidin kimyasal bag baglamini hizlica gostermek
- 3D yapi dosyasi acilmadan hangi zincirin analiz edildigini hatirlatmak
- Farkli uzunluk ve skorlardaki peptitleri karsilastirmak
Gorsel icerigi
- pair_id: Benzersiz cift tanimlayicisi
- PDB + zincir: Kaynak yapisal veri
- Skor: Model uretimi baglanti olasiligi (0–1)
- Etiket: Pozitif (native) veya negatif (decoy)
Test örnekleri: farklı skor, etiket ve uzunlukta 2D peptitler

1JJ2_X_G_pos · PDB · peptit G · uzunluk 29 · model skoru 0.9997 · etiket 1 (yapısal pozitif) · IPEWKQEEVDAIVEMIESRNTLLERALDD
1LJ2_A_D_pos · PDB · peptit D · uzunluk 27 · model skoru 0.0001 · etiket 1 (yapısal pozitif) · PKRERKTIRIRDPNQGGKDITEEIMSG
test_neg_hard_430_1G1E_B_A_1S5R_B_A · PDB · peptit A · uzunluk 23 · model skoru 0.9114 · etiket 0 (negatif) · DFTPMDSSAVYVLSSMARQRRAS
test_neg_easy_9585_1A37_A_P_5OCX_L_A · PDB · peptit A · uzunluk 9 · model skoru 0.0638 · etiket 0 (negatif) · GEEGKGARG
test_neg_hard_291_1AQD_A_F_1AQD_A_L · PDB · peptit L · uzunluk 14 · model skoru 0.3946 · etiket 0 (negatif) · GSDWRFLRGYHQYA3D yapi goruntuleme
3Dmol.js ile tarayici icinde canli 3D molekuler goruntuleme. Fare ile dondurme, yakınlastirma ve farkli gorunum modlari arasinda gecis yapabilirsiniz.
Pipeline cikti dosyalari
viewer.html | Tam ekran gorsel; cartoon/stick/sphere kontrolleri |
viewer_state.json | Kompleks kimlik, zincir bilgisi, etkilesim listesi |
interaction_provenance.json | Temas kaynağı ve geometric fallback özeti |
report.html | Ozet rapor: 2D gorsel + gomulu 3D viewer |
Gorunum kontrolleri
- Cartoon: Ikincil yapi seridi (helix, sheet, loop)
- Stick: Atom baglari; detay icin
- Sphere: Atom merkezleri; VDW yaricapi
- Yuzey: Van der Waals yuzey kaplamasiyla
- Arka plan: Beyaz, siyah veya lacivert
Tipik egitim ciktilari
Metrikler & raporlar
metrics.json— tum test/val metrikleriranking_metrics.json— MRR, Hit@k detaylaricalibration_metrics.json— Brier skoruselection_summary.json— secim politikasi
Gorseller & tablolar
roc_curve.png,pr_curve.pngconfusion_matrix.png,calibration_curve.pngscore_histogram_pos_neg.pngtrain_log.csv,top_ranked_examples.json
Dogrudan indirilebilir sonuc dosyalari
Asagidaki dosyalar GitHub Pages uzerinden dogrudan indirilebilir. Yayin yuzeyi yalniz statik site/ altindaki kopyalari sunar.
| Dosya | Baslik | Aciklama | Indir |
|---|---|---|---|
metrics.json | Genel metrik özeti | Validation/test metrikleri ve grup bütünlüğü | indir |
ranking_metrics.json | Ranking metrikleri | MRR ve Hit@k detayları | indir |
best_thresholds.json | En iyi eşikler | F1 ve MCC için validation threshold seçimi | indir |
calibration_metrics.json | Calibration özeti | Brier ve skor dağılım özeti | indir |
pair_data_report.json | Pair veri raporu | Split/pair dağılımı ve duplicate kontrolü | indir |
candidate_set_report.json | Candidate-set raporu | Negatif karışımı ve grup bütünlüğü | indir |
test_summary.txt | Test özet raporu | Metin tabanlı final çıktı özeti | indir |
threshold_vs_f1_table.csv | Threshold sweep tablosu | Eşik taraması ve F1 davranışı | indir |
test_topk_candidates.csv | Top-k aday listesi | Protein başına skorlanmış test adayları | indir |
test_topk_positive_hits.csv | Pozitif hit listesi | Top-k içinde yakalanan pozitif örnekler | indir |
top_ranked_examples.json | Top-ranked örnekler | Önizleme tablosunun JSON kaynağı | indir |
Sik sorulanlar
manifest.json
{
"project": "PeptiProp",
"version": "0.1",
"dataset": "PROPEDIA canonical (leakage-free splits)",
"training_dir": "publish/github_pages_training_bundle",
"metrics": {
"test_auroc": 0.8812662466753981,
"test_auprc": 0.5565987337643044,
"test_f1": 0.5886805146749643,
"test_mcc": 0.5048546232827292,
"test_brier": 0.10296415537595749,
"test_mrr": 0.7776369913324519,
"test_hit1": 0.6209784045835169,
"test_hit3": 0.9468929043631555,
"test_hit5": 0.996474217717056,
"epochs": 80,
"threshold": 0.2,
"train_groups": 19542,
"val_groups": 3985,
"test_groups": 4538
},
"visualization": {
"reported_interaction_source": "geometric residue-contact fallback",
"external_tool_extractors_used_in_reported_results": false,
"gnn_batch_modes": []
},
"pages": {
"viewer_demo": "embed/viewer-demo.html",
"manifest": "data/manifest.json"
},
"training_figure_assets": [
"assets/img/roc_curve.png",
"assets/img/pr_curve.png",
"assets/img/calibration_curve.png",
"assets/img/confusion_matrix.png",
"assets/img/validation_threshold_sweep.png",
"assets/img/validation_score_histogram.png",
"assets/img/test_score_histogram.png"
],
"download_assets": [
"downloads/metrics.json",
"downloads/ranking_metrics.json",
"downloads/best_thresholds.json",
"downloads/calibration_metrics.json",
"downloads/pair_data_report.json",
"downloads/candidate_set_report.json",
"downloads/test_summary.txt",
"downloads/threshold_vs_f1_table.csv",
"downloads/test_topk_candidates.csv",
"downloads/test_topk_positive_hits.csv",
"downloads/top_ranked_examples.json"
],
"site_extra_figures": [
"assets/img/interaction_summary_panel.png",
"assets/img/peptide_2d_example.png",
"assets/img/peptide_2d_v1.png",
"assets/img/peptide_2d_v2.png",
"assets/img/peptide_2d_v3.png",
"assets/img/peptide_2d_v4.png",
"assets/img/peptide_2d_v5.png",
"assets/img/peptide_length_histogram.png"
],
"site_extra_pages": []
}