algorithm - tutorial - ¿Algoritmo predictivo de "glucosa en sangre"?
programming algorithms (4)
El comportamiento del azúcar en la sangre es muy complicado. Se ve afectado por
- Azúcar en la sangre actual (complicado por la posible presencia de cetonas si el paciente es hiperglucémico)
- comida reciente a varias horas dependiendo del tipo y la cantidad
- insulina de acción rápida reciente (con variedad y perfiles de reacción dependientes del paciente entre 45 minutos y dos horas de duración. Ah, y mecanismo de administración)
- insulina de acción prolongada en las últimas 12 horas (de nuevo, paciente y dependiente de la variedad)
- niveles de actividad
- niveles de estres
- enfermedad
- tasa basal de insulina si el paciente usa una bomba
- ad nauseum
Problema muy difícil. Cualquier heurística, cualquier heurística, que elijas sería altamente engañosa. Respuesta tan corta:
No lo hagas
Esto proviene, en parte, de haber comparado el registro continuo de glucosa de 24 horas de un diabético con los ~ 10 pinchazos con los dedos tomados durante el mismo tiempo. Es decir, mi sugerencia es impulsada por los datos.
Editar: Evidentemente no me hice claro.
Ni siquiera puedes acercarte.
Nada de lo que puede hacer con los datos de punción digital puede ser remotamente confiable.
Conectar los puntos con cualquier línea (incluso segmentos rectos) es simplemente incorrecto . No refleja la realidad. Ni siquiera un poquito.
Soy un físico de partículas experimental. Conjuntos de datos complicados son lo que hago. Hay un diabético en mi vida (¿lo adivinaste?). Esto me importa.
Pero he visto los registros de datos de alta frecuencia, lado a lado con un registro de los días pinchazos con los dedos, ejercicio, comida e insulina.
Si pudieras obtener datos de cada quince minutos, diría que adelante y use una spline. No será peligrosamente engañoso. Pero, si tiene 6-10 mediciones a lo largo del día, no sabe nada .
Buenas noticias: el control continuo está bajando de precio. Está fuera del laboratorio y está disponible con algunas bombas incluso ahora.
Para aquellos que no están familiarizados con esto: pacientes diabéticos cumplidores (resultados de encuestas extremadamente anticientíficas) 4-6 + pruebas de glucosa al día como rutina, y varias adicionales en las 1-2 horas posteriores a cualquier excursión inesperada ( obtienen síntomas físicos que les permiten detectar excursiones severas).
Esto sirve para darle al paciente una idea aproximada de cómo se están desempeñando en el control de sus niveles de glucosa, pero también van a un laboratorio para extraer una Hemoglobina A1C cada trimestre (más o menos). El resultado de A1C depende principalmente de su nivel de glucosa en sangre promedio.
He hablado con personas que registraron en un 80-110 (números bastante favorables) cuatro veces al día durante meses, y obtuve un A1C que sugiere un promedio superior a 150 (no deseable en absoluto). Presumiblemente iban a altas horas de la noche. Y he escuchado historias similares de personas que probablemente estén bajando, muy bajas, mientras duermen.
La lección es:
Las lecturas de pinchazos en los dedos tienen su lugar, pero no trates de extrapolarlas a veces no bien muestreadas.
Estoy escribiendo una aplicación que permite que un usuario diabético ingrese sus lecturas de "glucosa en sangre" y luego las grafica en un gráfico de izquierda a derecha. Dado que las lecturas de sangre se realizarán solo varias veces al día, un algoritmo sería útil para:
a) complete los huecos en el gráfico entre las lecturas (las curvas serían más realistas que las líneas espasmódicas) y permita un promedio diario de "nivel de glucosa en sangre" más preciso
b) predecir aproximadamente qué sucederá en el futuro (si el usuario no come nada que afecte sus niveles sanguíneos)
Yo chupo en cálculo. Espero que alguien aquí conozca una biblioteca para estas cosas? Espero que alguien sepa de un algoritmo que ya se ha adaptado para este problema específico (por ejemplo, cuando alguien lo haya comparado con datos reales de diabéticos)
Descargo de responsabilidad: soy muy consciente de que cualquier algoritmo de este tipo variaría enormemente dependiendo del usuario. Solo estoy buscando mejorar en líneas angulosas rectas. Independientemente de los diabéticos, existe un límite en la tasa que los niveles de azúcar en la sangre pueden aumentar y disminuir.
Estoy usando Javascript, pero como solo son matemáticas, podría portarlo desde C, Java o lo que sea.
de acuerdo, vas a buscar alguna curva ajustada. La cosa con eso es que para n puntos hay polinomios ajustados a la orden ... n-1, creo. Ha sido un tiempo. Sí. por Dios, estoy en lo cierto. Lo común cuando tienes muchos puntos y no quieres una función complicada (que no) es usar una aproximación de mínimos cuadrados .
probablemente lo mejor es buscar una rutina enlatada que pueda usar; estos existen en la mayoría de los paquetes de estadísticas. Danos un poco más de detalles sobre el entorno que deseas y podríamos señalarte más de cerca a algo adecuado.
Es muy probable que esto no funcione, pero las Redes Neuronales Artificiales pueden, y repito, que pueden obtener algo de un buen conjunto de datos. Por bueno, me refiero a semanas o meses de grabación continua, e incluso entonces no confiaría en el conjunto de datos a menos que tuviera una muy buena razón para hacerlo. Tampoco creo que obtenga datos predictivos, pero puede depender de cómo lo implemente. En general, si hicieras esto, parecería más una afición ver si incluso se acerca, como "oh limpio tengo una red neuronal con una precisión de X cantidad". De nuevo, debo recalcar, ¡no lo use en ningún tipo de situaciones de producción ni en ningún otro lugar donde pueda herir o matar a alguien!
Si desea hacer un ajuste perfecto de los datos para que las cosas sean más fáciles de ver, entonces algo como lo que Charlie Martin recomienda probablemente funcione bien. Sin embargo, como señaló dmckee, esta información realmente no significaría nada.
Lo que estás tratando de hacer es más acorde con la farmacocinética, que es un estudio científico completo en sí mismo. En este caso, ni siquiera estoy seguro de que se aplique por completo, excepto en el caso de Diabetes tipo I, ya que la mayoría de lo que sé sobre pharamcokenetics solo aplica estudios de medicamentos, pero si algo está siendo producido por el cuerpo, es probable que mires completamente diferentes tipos de análisis Si le interesa el tema, hay bastantes vistas previas de libros en Google Books si realiza una búsqueda de " farmacokienetics ", pero debido a la naturaleza del tema son muy pesados en matemáticas y supone que tiene una comprensión de la química y biología también.