b99548fc6477e8f2b46f571248147aab27d5766b lrnassar Tue Jun 30 17:57:20 2026 -0700 Add popEVE proteome-wide missense deleteriousness track for hg38. refs #37791 New heatmap bigBed track under the Deleteriousness Predictions superTrack, built from the UKBB-trained popEVE v1.1 GRCh38 VCF. One heatmap entry per protein (columns = amino acid positions at codon coordinates, rows = 20 amino acids), colored on a global, cross-gene gradient keyed to the raw popEVE score. Adds the conversion scripts (extractPopEve.py, vcfToPopEveHeatmap.py, popEve_heatmap.as), the makedoc, the trackDb stanza and description page, and gates the track alpha via an include in predictionScoresSuper.ra. diff --git src/hg/makeDb/trackDb/human/popEve.html src/hg/makeDb/trackDb/human/popEve.html new file mode 100644 index 00000000000..0cca151b73c --- /dev/null +++ src/hg/makeDb/trackDb/human/popEve.html @@ -0,0 +1,181 @@ +<h2>Description</h2> +<p> +Missense mutations change a single amino acid in a protein and make up a large fraction +of the variants observed in human populations, yet most have no established clinical +significance. <a href="https://pop.evemodel.org/" target="_blank">popEVE</a> places missense +variants on a single, proteome-wide spectrum of +deleteriousness, so that variants in different genes can be compared directly. It is a deep +generative model that combines cross-species evolutionary scores with human population +variation: scores from EVE (an evolutionary variational autoencoder) and the ESM-1v protein +language model are calibrated against allele observations in the UK Biobank using a Gaussian +process, yielding a continuous, human-specific measure of variant impact. This track shows +popEVE scores for single-nucleotide missense substitutions across roughly 18,000 human proteins. +</p> + +<h2>Display Conventions</h2> +<p> +Each entry spans one protein at its genomic locus. The heatmap columns correspond to +individual amino acid positions in the protein, placed at the codon's genomic coordinate. +The rows correspond to the 20 standard amino acids (A–Y, alphabetical). Each cell +shows the popEVE score for substituting the wildtype amino acid at that position with the +row amino acid. Because popEVE is distributed as a list of genomic single-nucleotide +variants, only amino acid substitutions reachable by a single-nucleotide change are scored; +cells for substitutions requiring more than one nucleotide change, for the wildtype amino +acid, or for positions without a score (for example start codons) are left empty. +</p> + +<p> +Unlike per-gene scores, popEVE is calibrated across the whole proteome, so cells are colored +on a single global gradient keyed to the raw popEVE score (lower, more negative scores are +more deleterious). The color is interpolated between the five anchors below: the published +severe and moderate thresholds are fixed anchors, and the extremes saturate at the 0.5th and +99.5th percentiles of the proteome-wide score distribution. +</p> +<table style="border-collapse: collapse; border: 1px solid #ccc;"> +<tr><th style="border:1px solid #ccc;padding:6px 12px;background:#f2f2f2;">Color</th> + <th style="border:1px solid #ccc;padding:6px 12px;background:#f2f2f2;">popEVE score</th> + <th style="border:1px solid #ccc;padding:6px 12px;background:#f2f2f2;">Interpretation</th></tr> +<tr><td style="border:1px solid #ccc;background:#b2182b;width:50px;"> </td> + <td style="border:1px solid #ccc;padding:4px 10px;">≤ −5.74</td> + <td style="border:1px solid #ccc;padding:4px 10px;">Most deleterious (color saturates here)</td></tr> +<tr><td style="border:1px solid #ccc;background:#d6604d;width:50px;"> </td> + <td style="border:1px solid #ccc;padding:4px 10px;">≈ −5.056</td> + <td style="border:1px solid #ccc;padding:4px 10px;">Severe threshold: high-confidence deleterious (99.99% likelihood of falling in the more deleterious distribution)</td></tr> +<tr><td style="border:1px solid #ccc;background:#f4a582;width:50px;"> </td> + <td style="border:1px solid #ccc;padding:4px 10px;">≈ −4.617</td> + <td style="border:1px solid #ccc;padding:4px 10px;">Moderate threshold</td></tr> +<tr><td style="border:1px solid #ccc;background:#f7f7f7;width:50px;"> </td> + <td style="border:1px solid #ccc;padding:4px 10px;">≈ −3.5</td> + <td style="border:1px solid #ccc;padding:4px 10px;">Near the proteome-wide median</td></tr> +<tr><td style="border:1px solid #ccc;background:#2166ac;width:50px;"> </td> + <td style="border:1px solid #ccc;padding:4px 10px;">≥ −2.29</td> + <td style="border:1px solid #ccc;padding:4px 10px;">Most tolerated (color saturates here)</td></tr> +</table> +<p> +<b>Note:</b> popEVE ranks deleteriousness to organismal fitness, weighted toward severe, +often early-onset phenotypes, rather than classic clinical pathogenicity. Some well-known +disease genes whose variants act mainly through loss of function or cause adult-onset +conditions (for example BRCA1) may therefore show few or no cells in the severe range. +</p> + +<p> +Hovering over a cell shows a summary of that substitution and the scores behind it, for +example: +</p> +<p style="border:1px solid #ccc; padding:6px 12px; display:inline-block;"> +G1042→A<br> +<b>popEVE:</b> -3.652 (tolerated)<br> +<b>EVE:</b> 6.75<br> +<b>ESM1v:</b> -8.779<br> +<b>popAdj:</b> EVE -3.537 / ESM1v -3.767<br> +<b>gap:</b> 0.277 +</p> +<table style="border-collapse: collapse; border: 1px solid #ccc;"> +<tr><th style="border:1px solid #ccc;padding:6px 12px;background:#f2f2f2;">Field</th> + <th style="border:1px solid #ccc;padding:6px 12px;background:#f2f2f2;">Meaning</th></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>G1042→A</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The substitution: the wildtype amino acid (G) at the protein position (1042) changed to the variant amino acid (A) represented by this row.</td></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>popEVE</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The popEVE score and its severity class (severe / moderate / tolerated). This is the calibrated, proteome-wide score — comparable across genes, with lower (more negative) values more deleterious — and it determines the cell color.</td></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>EVE</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The raw EVE evolutionary index used as an input to popEVE (a log-likelihood-ratio scale on which higher values are more deleterious). This is not the same as the 0–1 score shown in the separate EVE track.</td></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>ESM1v</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The raw ESM-1v protein language model score used as the other input to popEVE, on which more negative values are more deleterious.</td></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>popAdj</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The EVE and ESM-1v scores after popEVE's population-based recalibration onto the proteome-wide scale; the popEVE score is the combination of these two.</td></tr> +<tr><td style="border:1px solid #ccc;padding:4px 10px;"><tt>gap</tt></td> + <td style="border:1px solid #ccc;padding:4px 10px;">The fraction of sequences with a gap at this position in the multiple sequence alignment (a per-position value; higher means sparser alignment coverage and a weaker evolutionary signal).</td></tr> +</table> + +<p> +For reverse-strand genes, protein positions are displayed left to right in genomic +order (C-terminus to N-terminus on the screen), consistent with the standard genome +browser orientation. +</p> + +<p> +popEVE scores are computed per protein isoform, so a gene with more than one RefSeq isoform +appears as several overlapping entries (one per protein accession) that may stack in the +display. The track item name is the gene symbol; the specific RefSeq protein accession is +available as a field in the Table Browser and details page. +</p> + +<h2>Methods</h2> +<p> +popEVE is built on top of two unsupervised variant effect models: EVE, a Bayesian +variational autoencoder trained per protein on multiple sequence alignments of evolutionary +variation, and ESM-1v, a protein language model trained on the UniRef database. For each +protein, the evolutionary scores from these models are treated as a prior, and a Gaussian +process is used to model how the probability of observing a variant in the human population +(the UK Biobank, ~500,000 exomes) depends on its evolutionary score. Population data are +used only as a coarse "seen / not seen" signal rather than by allele frequency, which lets +the resulting score rank the deleteriousness of variants across different proteins while +leaving the within-gene ranking essentially unchanged. The inferred function rescales the +evolutionary score per protein to account for the degree of constraint acting on that +protein in the population, producing a calibrated, proteome-wide score. Low (more negative) +scores indicate greater predicted deleteriousness. Following the authors, a high-confidence +severe threshold is set at −5.056 and a moderate threshold at −4.617, each +derived from a two-component Gaussian mixture fit. See Orenbuch et al. 2025 for full details. +</p> + +<p> +The data were downloaded as a complete GRCh38 VCF (UKBB-trained popEVE, version 1.1) from +<a href="https://pop.evemodel.org" target="_blank">https://pop.evemodel.org</a>. +The VCF lists, for every possible missense substitution, its genomic coordinates, the RefSeq +protein accession and gene symbol, the popEVE score and component scores. Multiple codon +changes encoding the same amino acid substitution carry identical popEVE scores and were +deduplicated to one record per substitution. Records were converted to heatmap bigBed format +with a custom Python script; full processing instructions are in the +<a href="https://github.com/ucscGenomeBrowser/kent/blob/master/src/hg/makeDb/doc/hg38/popEve.txt" +target="_blank">makedoc file</a>, and the conversion scripts are available in +<a href="https://github.com/ucscGenomeBrowser/kent/tree/master/src/hg/makeDb/scripts/popEve" +target="_blank">our GitHub repository</a>. The strand of each protein was taken from NCBI +RefSeq. The global color gradient saturates at the 0.5th and 99.5th percentiles of the +proteome-wide score distribution. +</p> + +<h2>Data Access</h2> +<p>The data can be explored interactively in table format with the +<a href="../cgi-bin/hgTables">Table Browser</a> or the +<a href="../cgi-bin/hgIntegrator">Data Integrator</a> and exported from there to +spreadsheet or tab-separated tables. From scripts, the data can be accessed through our +<a href="https://api.genome.ucsc.edu" target="_blank">API</a>, track=<i>popEve</i>.</p> +<p>For automated download and analysis, the genome annotation is stored in a bigBed file +that can be downloaded from +<a href="http://hgdownload.soe.ucsc.edu/gbdb/$db/popEve" target="_blank">our download +server</a>. The file for this track is called <tt>popEve.bb</tt>. Individual regions or the +whole genome annotation can be obtained using our tool <tt>bigBedToBed</tt>, which can be +compiled from the source code or downloaded as a precompiled binary for your system. +Instructions for downloading source code and binaries can be found +<a href="http://hgdownload.soe.ucsc.edu/downloads.html#utilities_downloads" target="_blank">here</a>. +The tool can also be used to obtain features within a given range, e.g. +<tt>bigBedToBed http://hgdownload.soe.ucsc.edu/gbdb/$db/popEve/popEve.bb -chrom=chr17 +-start=43000000 -end=43200000 stdout</tt></p> +<p>The original annotation source data can be downloaded from +<a href="https://pop.evemodel.org" target="_blank">https://pop.evemodel.org</a>.</p> + +<h2>Credits</h2> +<p> +Thanks to Rose Orenbuch, Mafalda Dias, Jonathan Frazer, Debora S. Marks, and colleagues at +Harvard Medical School, the Centre for Genomic Regulation, and collaborating institutions for +developing popEVE and making the scores publicly available at +<a href="https://pop.evemodel.org" target="_blank">pop.evemodel.org</a>. +</p> + +<h2>References</h2> +<p> +Orenbuch R, Shearer CA, Kollasch AW, Spinner AD, Hopf TA, van Niekerk L, Franceschi D, +Dias M, Frazer J, Marks DS. +<a href="https://doi.org/10.1038/s41588-025-02400-1" target="_blank"> +Proteome-wide model for human disease genetics</a>. +<em>Nat Genet</em>. 2025 Dec;57(12):3165-3174. +PMID: <a href="https://www.ncbi.nlm.nih.gov/pubmed/41286104" target="_blank">41286104</a> +</p> + +<p> +Frazer J, Notin P, Dias M, Gomez A, Min JK, Brock K, Gal Y, Marks DS. +<a href="https://doi.org/10.1038/s41586-021-04043-8" target="_blank"> +Disease variant prediction with deep generative models of evolutionary data</a>. +<em>Nature</em>. 2021 Nov;599(7883):91-95. +PMID: <a href="https://www.ncbi.nlm.nih.gov/pubmed/34707284" target="_blank">34707284</a> +</p>