AgeML: a Python package for Age Modelling with Machine Learning made easy
Creators
Contributors
Project leader:
Project member:
Supervisors:
Description
Background
Age Modelling consists of trying to predict the chronological age of an organism with a set of features that capture information about its aging status and dynamics. With a rich feature set one can accurately predict the chronological age of a normative (healthy) population using relatively simple machine learning models. When the feature set is sufficiently rich and the model can capture the complexity of the data, performing inference on non-normative populations leads to prediction errors in their chronological age. The mismatch between the chronological vs. predicted age (known as age delta) is a proxy of aberrant aging trajectories, often having high correlations with factors that condition ageing. Furthermore, classification of different clinical groups (e.g.: stable vs progressive) can also be done using the trained models.
AgeML
ageml
allows age modelling with a set of simple-to-use CLIs that produce comprehensive figures of the modelling steps and detailed logs for exploring the effectiveness of the trained models.
There are 4 main CLIs:
- model_age: It takes a features file (in CSV format) from a set of subjects, which includes their chronological age, and it trains a model for predicting it. Categorical Covariates can be included to train models per category, using a CSV file. Systems, feature groups that correspond to a congruent physiological system (cardiac, muskuloskeletal, gastric, etc.) can also be included to train models per system using a simple .txt file. A CSV file is returned with the predicted ages, and the corresponding age delta. Also, a simple correlation analysis is performed to check how the input features correlate with the chronological age. The age distribution of the cohort is plotted too.
- factor_correlation: The correlation between the provided factors and the computed age deltas is analyzed, including the strength and significance. If the clinical category of each subject is provided (with a CSV file), this analysis runs for every clinical category.
- clinical_groups: To see how the age delta changes across clinical groups, a boxplot is created. The age distribution across the groups is also plotted.
- clinical_classify: Using the features file and the ages file (with the age delta) classification of two clinical groups is performed. A Receiver Operating Curve (ROC) is plotted for each model used in the classifications.
Files
ageml-0.2.0.zip
Files
(1.7 MB)
Name | Size | Download all |
---|---|---|
md5:f60bcc32455e67cb30633f0b23c78aaf
|
202.7 kB | Download |
md5:854fc192568d9cb1dfb7a8e4cc7228c7
|
202.6 kB | Download |
md5:4758ee2031fa1f9f7ba686b049dfd534
|
1.3 MB | Preview Download |
Additional details
Related works
- Is described by
- Preprint: 10.1101/2024.05.02.592130 (DOI)
Software
- Repository URL
- https://github.com/compneurobilbao/ageml
- Programming language
- Python
- Development Status
- Active