Master's Thesis in Bioinformatics at the University of Tübingen
Python
0
4 commits
updated Aug 10, 2026
This repository contains the source code for my Master's thesis in Bioinformatics at the University of Tübingen.
[!NOTE] Due to file size constraints, the input datasets and intermediate files are not included in this repository.
They are available on the IBMI cluster at
/ceph/ibmi/ab/projects/grafjul/ProteinClustering/.

As comprehensive databases like the NCBI nr protein database expand rapidly, exhaustive homologous sequence searching is becoming more and more computationally infeasible. This search complexity can be mitigated by clustering massive databases and aligning queries exclusively against cluster representatives. The traditional sequence-based clustering approach struggles to identify distant evolutionary relationships. Although computationally far more expensive, structure-based similarity provides a much higher sensitivity for detecting distant evolutionary relationships, as structure evolves much more slowly than sequence. Protein language models have emerged as a powerful tool to combine the high sensitivity of structural search with the efficiency of sequence search. This study develops a multistage clustering workflow to investigate how embeddings from protein language models can be used to cluster the NCBI nr protein database into structurally conserved communities. Ultimately, this framework yields high-purity clusters, successfully uniting even remote homologs into cohesive communities.
ProteinClustering/
├── clustering/ # Main scripts
│ ├── evaluation/ # Scripts for cluster evaluation
│ └── graph_based_clustering/ # Scripts for the graph-based clustering workflow
│ └── hdbscan/ # Scripts for HDBSCAN clustering
│ └── sequence_based/ # Scripts for DIAMOND clustering
├── data/ # Input datasets and intermediate files
├── models/ # PLM model scripts
├── slurm/ # Slurm scripts for running computations on BinAC2
└── README.md # Project description
Master's Thesis in Bioinformatics at the University of Tübingen
Python
0
4 commits
updated Aug 10, 2026
This repository contains the source code for my Master's thesis in Bioinformatics at the University of Tübingen.
[!NOTE] Due to file size constraints, the input datasets and intermediate files are not included in this repository.
They are available on the IBMI cluster at
/ceph/ibmi/ab/projects/grafjul/ProteinClustering/.

As comprehensive databases like the NCBI nr protein database expand rapidly, exhaustive homologous sequence searching is becoming more and more computationally infeasible. This search complexity can be mitigated by clustering massive databases and aligning queries exclusively against cluster representatives. The traditional sequence-based clustering approach struggles to identify distant evolutionary relationships. Although computationally far more expensive, structure-based similarity provides a much higher sensitivity for detecting distant evolutionary relationships, as structure evolves much more slowly than sequence. Protein language models have emerged as a powerful tool to combine the high sensitivity of structural search with the efficiency of sequence search. This study develops a multistage clustering workflow to investigate how embeddings from protein language models can be used to cluster the NCBI nr protein database into structurally conserved communities. Ultimately, this framework yields high-purity clusters, successfully uniting even remote homologs into cohesive communities.
ProteinClustering/
├── clustering/ # Main scripts
│ ├── evaluation/ # Scripts for cluster evaluation
│ └── graph_based_clustering/ # Scripts for the graph-based clustering workflow
│ └── hdbscan/ # Scripts for HDBSCAN clustering
│ └── sequence_based/ # Scripts for DIAMOND clustering
├── data/ # Input datasets and intermediate files
├── models/ # PLM model scripts
├── slurm/ # Slurm scripts for running computations on BinAC2
└── README.md # Project description