Learning ML - danifilho/Evo2_BASF GitHub Wiki

O que significa X.npy, Y.npy e y_genes.npy?

arquivo conteúdo forma & tipo para que serve
X.npy Matriz com todos os vetores de embeddings Evo2 (um por janela de 128 bp). (N, 4096) – float32 (N ≈ 1 854 864).Gravado via memmap, ocupa ~30 GB. Entrada (features) do modelo de ML. Cada linha representa 128 bp codificados pelo Evo2-7B.
y.npy Vetor de rótulos 0/1 obtidos da primeira abordagem (picos ReMap). (N,) – uint8. Alvo (label) para treinar/testar o modelo contra evidência experimental de CRE.
y_gene.npy Novo vetor de rótulos 0/1 baseado na segunda abordagem (“a janela 128 bp está dentro de uma janela 150 kb que contém um gene”). (N,) – uint8. Alternativa de alvo, solicitada pelo seu chefe. Permite comparar desempenho do mesmo X contra rótulos “gene-based”.

Como eles se inter-relacionam?


           ┌───────────────┐
           │   X.npy       │  ← características fixas (embeddings)
           └───────────────┘
             ↑           ↑
             │           │
         rótulo 1     rótulo 2
         (ReMap)       (genes)
             │           │
        ┌────┴────┐  ┌────┴───────┐
        │ y.npy   │  │ y_gene.npy │
        └─────────┘  └────────────┘
  • X.npy é único (não muda).
  • y.npy e y_gene.npy são dois vetores de rótulo diferentes para o mesmo conjunto de entradas — você escolhe qual usar ao treinar.

Por que manter ambos?

  • Comparar desempenho do modelo sob dois critérios de verdade:
    1. CREs suportados por ChIP-seq (alta precisão, cobertura limitada).
    2. Janelas contendo genes (cobertura alta, precisão menor).
  • Permite experimentar fusões de critérios depois (ex.: rotular 1 apenas se satisfaz ambos, ou usar estratégia multi-task).