- FarmacoDB: Automatizaci贸n de Extracci贸n y An谩lisis de Datos
Este repositorio se enfoca en automatizar la extracci贸n y an谩lisis de datos farmacocin茅ticos de diversas fuentes, con el fin de obtener una base de datos integral y estandarizada de informaci贸n farmacocin茅tica junto con los scripts de creaci贸n y an谩lisis, dirigidos a resolver los retos de la individualizaci贸n en farmacolog铆a debido a la escasez de bases de datos completas (Wang et al., 2009). Finalmente se incluye la implementaci贸n de un modelo predictivo para la vida media de medicamentos en humanos. Se emplearon t茅cnicas avanzadas de miner铆a de texto y modelos de lenguaje para obtener datos esenciales con un total de 1,130 f谩rmacos, representados por 100,359 registros de par谩metros farmacocin茅ticos.
Este repositorio proporciona la metodolog铆a y los scripts necesarios para replicar el proceso de creaci贸n de la base de datos y del modelo predictivo y extender su aplicaci贸n a otros par谩metros farmacocin茅ticos recogidos en la base de datos.
Para m谩s detalles sobre la investigaci贸n, consulte la publicaci贸n completa aqu铆.
- Desarrollar una base de datos integral y estandarizada que aglutine datos farmacocin茅ticos esenciales como la Vida Media, Concentraci贸n M谩xima, Tiempo hasta Cmax, entre otros, recopilados de diversas fuentes incluyendo PKPDAI (Pharmacokinetics Parameter Data Aggregator and Identifier) (Hernandez F et al., 2021), DrugBank (Wishart, 2006).
Figura 1: Esquema procedimental para la creaci贸n de la base de datos de descriptores moleculares y la base de datos de par谩metros farmacocin茅ticos.
- Proporcionar un modelo para la predicci贸n de la Vida Media (half-life) utilizando descriptores moleculares.
Figura 2: Esquema procedimental para la creaci贸n del modelo predictivo.
La finaliad principal consiste en ofrecer un pipeline para poder aplicar a la estimaci贸n de otros par谩metros farmacocin茅ticos contemplados en la base de datos, facilitando as铆 una herramienta valiosa en el campo de la farmacocin茅tica y la farmacolog铆a personalizada.
Puede descargar directamente la base de datos final FarmacoDB o la base de datos de descriptores moleculares asociados.
Se realiz贸 un an谩lisis exhaustivo de los datos de farmacocin茅tica extrayendo informaci贸n de las bases de datos PKPDAI y DrugBank. Se desarroll贸 una metodolog铆a eficiente en Python para extraer y almacenar los datos en una base de datos SQLite local.
Figura 3: Esquema del Proceso de Obtenci贸n y Almacenamiento de Datos Farmacocin茅ticos.
bbdd_pipeline/1_extract/extract.ipynb
Obtendr谩 DRUG_DB.db necesario para la siguiente etapa (2).
Se implement贸 un proceso de miner铆a de texto para extraer la informaci贸n de "especie" y "enfermedad" de los art铆culos cient铆ficos utilizando el modelo BERN2 (Sung et al., 2022). Se automatiz贸 la b煤squeda en la base de datos SQLite local y se realizaron consultas a la API de BERN2.
Figura 4: Creaci贸n de la base de datos de par谩metros farmacocin茅ticos.
bbdd_pipeline/2_diseases_species/diseases_species.ipynb
Obtendr谩 DRUG_DB.db necesario para la siguiente etapa (3).
Se procedi贸 a la extracci贸n de descriptores moleculares utilizando la calculadora Mordred (Moriwaki et al., 2018), que ofrece una soluci贸n robusta y eficiente para esta tarea. Se accedi贸 a los SMILES de los compuestos a trav茅s del paquete pubchempy y se extrajeron los descriptores moleculares con Mordred.
Figura 5: Creaci贸n de la base de datos de descriptores moleculares.
bbdd_pipeline/3_descriptors/descriptors.ipynb
Obtendr谩 DRUG_DB.db necesario para la siguiente etapa (4).
Obtendr谩 BD_DESCRIPTORS.db necesario para la etapa 8.
Se realiz贸 una normalizaci贸n y limpieza profunda de los nombres de los par谩metros farmacocin茅ticos en la base de datos de medicamentos para eliminar redundancias y asegurar coherencia. Se normalizaron unidades y valores para garantizar la coherencia y fiabilidad de los datos.
Figura 6: Esquema del Proceso de Normalizaci贸n y Limpieza.
bbdd_pipeline/4_clean_normalization_metrics/clean_normalization_metrics.ipynb
Obtendr谩 DRUG_DB.db necesario para la siguiente etapa (5).
bbdd_pipeline/4_clean_normalization_metrics/5_groups/groups.ipynb
Obtendr谩 DRUG_DB_applied.db necesario para la siguiente etapa (6).
bbdd_pipeline/4_clean_normalization_metrics/6_standard_units/standard_units.ipynb
Obtendr谩 DRUG_DB_applied.db necesario para la siguiente etapa (7).
Opcional, para ver la distribuci贸n y otra informaci贸n referente a las unidades: bbdd_pipeline/4_clean_normalization_metrics/6_standard_units/distribution.ipynb
bbdd_pipeline/4_clean_normalization_metrics/7_mean_median_std/mean_median_std.ipynb
Obtendr谩 DRUG_DB_applied.db necesario para la siguiente etapa (8).
Esta base de datos ser谩 la base de datos completa.
Se integraron los par谩metros descriptivos junto con la base de datos final para preparar los .csv necesarios para la creaci贸n del modelo predictivo.
bbdd_pipeline/8_create_csv/create_csv.ipynb
Obtendr谩 dentro de la carpeta csv todos los .csv correspondientes a cada par谩metro, necesarios para la creaci贸n del modelo.
-
Recopilaci贸n y preparaci贸n de datos: Se recolectaron datos de par谩metros farmacocin茅ticos y se filtraron para incluir solo instancias relacionadas con la especie "humano".
-
Variable Target: Tr谩s m煤ltiples configuraciones se decidi贸 usar como variable objetivo la variable mediana median, usted puede probar con la media por ejemplo, sustituyendo por mean.
-
Pipeline Customizado: Recuerde que se le ofrece el pipeline completo. Usted podr谩 realizar los cambios que considere como aplicar otro m茅todo de optimizaci贸n por ejemplo, o implementar otro modelo, cambiar la variable target, explorar otras t茅cnicas de limpieza, normalizaciones etc.
-
Eliminaci贸n de valores faltantes y no num茅ricos: Se eliminaron instancias con valores "nan" y variables no num茅ricas.
-
Filtrado de valores at铆picos: Se excluyeron valores at铆picos correspondientes al primer cuartil de las variables objetivo.
-
Construcci贸n de conjuntos de entrenamiento y prueba: Se asign贸 el 80% de los datos al conjunto de entrenamiento y el 20% restante al conjunto de prueba.
Se probaron cuatro enfoques distintos de normalizaci贸n y estandarizaci贸n de datos para evaluar su impacto en la precisi贸n del modelo. Finalmente se propone el mejor.
Se han probado una larga secuencia de modelos, de hiperparametrizaciones y de optimizaciones.
A continuaci贸n se proponen los modelos finalistas que arrojan mejores resultados:
-
Redes Neuronales Artificiales (ANN): Utilizadas para capturar relaciones complejas entre descriptores moleculares y par谩metros farmacocin茅ticos.
-
MLJAR: Paquete de AutoML en Python que opera de manera supervisada, utilizado para la optimizaci贸n de modelos predictivos mediante m茅todos como el Random Search y otros algoritmos evolutivos.
El pipeline para el desarrollo del modelo lo puede encontrar a continuaci贸n:
Recuerde que podr谩 adaptarlo a sus necesidades.Si prefiere explorar todos los modelos probados y configuraciones puede usar el siguiente pipeline:
Recuerde que podr谩 adaptarlo a sus necesidades.El repositorio est谩 organizado de la siguiente manera:
-
bbdd_pipeline/: Contiene todos los scripts mencionados en los pasos anteriores. -
model_pipeline/: Contiene los scripts utilizados para la creaci贸n del modelo predictivo, limpieza de datos, an谩lisis etc. -
bbdd/: Contiene la base de datos final FarmacoDB y la base de datos de descriptores moleculares asociados.
Puede clonar este repositorio y utilizar las bases de datos creadas y los scripts proporcionados para crear su propia base de datos, o bien desarrollar sus propios modelos predictivos seg煤n sus necesidades siguiendo los pipelines propuestos.
git clone https://github.com/pablosierrafernandez/FarmacoDB.gitAgradezco a @Santi Garcia-Vallve y a @Pedro M. Filipe por su orientaci贸n y apoyo durante el desarrollo de este trabajo.
Las contribuciones son bienvenidas. Si tiene sugerencias de mejoras, nuevas funcionalidades o encuentra alg煤n problema, por favor abra un issue o env铆a un pull request.
Este proyecto est谩 bajo la licencia MIT.
Consulte el archivo LICENSE para m谩s detalles.
-
@pablosierrafernandez: Investigador y desarrollador principal del proyecto.
-
@Pedro M. Filipe: Tutor acompa帽ante durante el proceso de desarrollo e investigaci贸n del proyecto.
En colaboracion con:
| Logo | Entidad | Descripci贸n |
|---|---|---|
![]() |
Anaxomics SL | Empresa de biotecnolog铆a que utiliza inteligencia artificial para acelerar la investigaci贸n de f谩rmacos. |
![]() |
Universitat Rovira i Virgili | Instituci贸n de educaci贸n superior ubicada en Tarragona, Espa帽a, conocida por su excelencia acad茅mica e investigaci贸n multidisciplinaria. |
- Wang et al., 2009. https://pubmed.ncbi.nlm.nih.gov/19345282/
- Hernandez F et al., 2021. https://wellcomeopenresearch.org/articles/6-88/v1
- Wishart, 2006. https://academic.oup.com/nar/article/34/suppl_1/D668/1132926
- Sung et al., 2022. https://academic.oup.com/bioinformatics/article/38/20/4837/6687126
- Moriwaki et al., 2018. https://jcheminf.biomedcentral.com/articles/10.1186/s13321-018-0258-y
Para obtener m谩s detalles sobre la metodolog铆a utilizada y las referencias adicionales, consulte la publicaci贸n completa en el Archivo de la URV.
隆Gracias por contribuir al avance de la farmacocin茅tica con este proyecto! Si tiene alguna pregunta o necesita ayuda, no dude en contactarme.








