Cómo crear una red neuronal para la detección de Alzheimer

Por lo tanto, este tipo de preguntas de pronóstico siempre son interesantes. Pero mucho cuidado en este campo minado.

Primero, si se va a idear un método basado en datos para estimar la supervivencia con CUALQUIER enfermedad, mucho menos Alzheimer, se requeriría una colección específica de datos multivariados de sujetos humanos que presentan la enfermedad, y modelos de supervivencia validados adicionalmente contra uno o más grupos que no haga. Entonces, la primera parte es el obstáculo de la recopilación de datos sobre sujetos humanos. Y hay muchas regulaciones que gobiernan eso.

Para agregar a ese obstáculo, las personas identificadas para presentar la enfermedad de interés generalmente serán relativamente raras en una población determinada (a menos que estemos hablando, por ejemplo, de la frecuencia de norovirus y ‘chinches estomacales’). Por lo tanto, los datos de este grupo serán naturalmente más escasos y, por lo tanto, uno o más predictores potenciales pueden no tener datos críticos para informar conclusiones razonables sobre la supervivencia.

Se mencionó acertadamente a Bayes, y aquí agregaría que el análisis de supervivencia bayesiano ayuda en que los antecedentes informativos se pueden ingresar a una función de supervivencia cuando los datos directos del paciente son escasos. Pero aún será necesario adquirir datos de sujetos humanos que respalden o no las conclusiones de esos antecedentes. Es decir, los datos del paciente eventualmente deberían suplantar a los anteriores.

Una vez allí, y cree que tiene un modelo de supervivencia razonable (y estamos hablando de la simulación posterior, etc.), se podría aplicar un método de aprendizaje para mejorar las estimaciones de supervivencia a nivel individual. Sin embargo, sería difícil saber cuál es ese método, ya que cosas como las redes neuronales no son informativas (cómo se procesan las entradas es el recuadro negro cognitivo proverbial). La mala mejora en las estimaciones de supervivencia puede indicar la necesidad de probar más predictores que no se capturaron antes.

Para eventos raros, probablemente requeriría una gran cantidad de capacitación para desarrollar un rango razonable que cumpla con la expectativa de “cuánto tiempo tengo” (el obstáculo final inevitable de tal proyecto). Creo que tal empresa realmente vale la pena. Podría brindar a las personas la tranquilidad mental más importante y permitirles tomar decisiones sobre la trayectoria de su vida dada una restricción terminal.

Pero si la incertidumbre no se tiene en cuenta en dicho modelo, o si la interpretación de una estimación se emitió de manera descuidada para un paciente o aquellos cercanos al paciente, dicho desarrollo podría hacer más daño que bien (para el paciente y / o desarrollador) . Hipócrates viene rápidamente a la mente aquí, ya que pisar muy cuidadosamente, con cuidado y empatía en este ámbito está garantizado en el más alto grado.

Gracias por A2A.

He construido redes neuronales artificiales desde cero antes, pero todavía no he usado PyBrain. Sin embargo, hay algo de documentación en la página de Github que parece bastante simple pybrain / pybrain.

Antes de comenzar con la codificación real, hay algunos puntos que deberá tener en cuenta:

  • Qué datos de entrada están disponibles . Idealmente, desea una gran cantidad de datos de entrada, por ejemplo, al menos decenas (si no cientos o miles de características) y tantos ejemplos de estos datos como pueda obtener. Si bien puede comenzar a trabajar con una pequeña cantidad de ejemplos de entrenamiento, seguramente encontrará que el modelo sobreajusta los datos y no se generaliza bien (vea la respuesta de Chris Prosser a ¿Cuál es la mejor manera de explicar la compensación de la variación de sesgo en el laico? términos?).
  • Qué salida se requiere . La red más directa implicaría un resultado verdadero / falso simple para cada caso de prueba y un nivel de confianza para acompañarlo. Se pueden construir resultados más complejos, como la clasificación de varias clases, por ejemplo, agrupar resultados que funcionarían de manera efectiva con un nivel de Verdadero / Falso y de confianza para cada uno (si son resultados discretos).

Para los datos de entrenamiento / prueba, necesita tanto los datos de entrada como el resultado correcto. Esto se usaría para construir un modelo de clasificación que pueda tomar las mismas entradas para otro caso y predecir el resultado.

Podrá medir la precisión del modelo dividiendo los datos de entrenamiento en grupos, entrenando el modelo en un subconjunto, por ejemplo, 60%, probando diferentes parámetros, por ejemplo, factores de regularización, etc. en un conjunto de validación cruzada, por ejemplo, 20% y luego probando el modelo / parámetros seleccionados en el conjunto restante.


Debería ser relativamente sencillo crear un prototipo y medir su precisión. La medición de la precisión de los datos de entrenamiento y los datos de prueba / validación cruzada deberían garantizar que se mitiga el riesgo de sobreajuste. Esto le permitiría determinar si tiene datos suficientes para hacer buenas predicciones o si necesita más ejemplos de capacitación o si los datos para cada ejemplo son insuficientes para hacer una buena predicción.

Cabe señalar que debe haber suficiente información en el feed de datos del modelo para poder hacer buenas predicciones. Puede tener la forma de un patrón complejo que no ha sido reconocido por un humano, pero más a menudo el rendimiento está más o menos en línea con un experto humano (o no muy atrás), es decir, si un experto humano no puede usar las entradas para hacer predicciones hay una buena posibilidad de que la red neuronal tampoco pueda hacer esto.

Si ha reunido los datos y está buscando colaboradores en el proceso de desarrollo, me interesaría participar en esto.

El tiempo promedio desde el diagnóstico hasta la muerte de las demencias de tipo Alzheimer es de aproximadamente 12 años, pero recuerde, eso es un promedio, no un predictor, es desde el diagnóstico, no desde los primeros síntomas, y hay muchos otros factores involucrados en el avance de la enfermedad, no estoy seguro de cómo su red neuronal podría dar algún tipo de predicción precisa.

Por ejemplo, la mayoría de los expertos ahora están de acuerdo en que el daño que las demencias TIPO de Alzheimer causan al cerebro, los cambios estructurales reales, comienzan hasta diez años antes de los primeros síntomas. Además, si alguien está en su tercer año posterior al diagnóstico, se desliza fácilmente a la demencia en la etapa intermedia y esa persona tiene un ACV, la demencia de esa persona da tres o cuatro saltos gigantes hacia adelante. Si esa misma persona de tercer año que se desliza normalmente cae y se rompe una cadera, la progresión puede ser igual de rápida. Una infección del tracto urinario va a ser un lavado, progresivamente, pero la neumonía lo va a mover más rápido. Y todos estos eventos son impredecibles.

Y esa palabra “TIPO” es importante, porque los investigadores ahora se dan cuenta de que el Alzheimer es un tipo, y hay muchas otras demencias poco relacionadas, que no siguen exactamente la progresión “normal” del Alzheimer, pero lo hacen tan de cerca que son tipo – más bien como todos los terriers son perros, pero no todos los perros son terriers. La demencia del lóbulo frontal generalmente es de progresión bastante lenta (a menos que exista el ACV mencionado anteriormente) y las demencias relacionadas con el alcohol son totalmente impredecibles.

El Parkinson tiene su propio componente de demencia, al igual que el de Huntington y algunas formas de esclerosis múltiple. Luego están las demencias vasculares (enfermedad de infarto múltiple y, a menudo, enfermedades cardíacas o pulmonares graves, por ejemplo, que le roban oxígeno al cerebro) y la enfermedad del cuerpo de Lewy.

Todas estas son demencias que, por lo general, se agrupan bajo el paraguas del “tipo de Alzheimer”, aunque, una vez que podemos observar el cerebro real, descubrimos que esta demencia no tenía los cambios estructurales típicos del “Alzheimer”. Solo los investigadores, algunos médicos y personas como yo realmente se preocupan por el tipo real de demencia que tiene una persona, porque, realmente, vamos a tratarte de la misma manera: paliativamente. No podemos detener la enfermedad, no podemos frenarla, no podemos arreglar lo que está sucediendo, todo lo que podemos hacer es apoyar a la persona con la enfermedad hasta el final de la enfermedad, y eso es lo que hacemos. .

Por lo tanto, su red tendrá que contener una gran cantidad de datos, individualizados, para cada persona, incluidos los antecedentes familiares de todas estas otras enfermedades y factores de riesgo, qué medicamentos existen para las comorbilidades, si las hay, porque los medicamentos pueden acelerar el progreso a lo largo de Y causa otras complicaciones, y luego tendrá que usar comodines para cosas como caídas y neumonía, que son totalmente impredecibles.

Por lo tanto, no sé una maldita cosa acerca de la programación para esta idea, pero puedo decirle que tomaría cualquier predicción que su red haya hecho con un GRAN grano de NaCL hasta que haya tenido una buena década de predicciones precisas bajo su “PyBrain” . Hay demasiados factores que afectan la progresión de los diversos tipos de demencias.

Está mezclando una pregunta de Machine Learning (red neuronal, datos de entrada, resultado) con la implementación (por ejemplo, usando PyBrain).

Mi recomendación:

Primero, intente el preprocesamiento múltiple de datos y algoritmos múltiples como SVM, SOM, ANN (en sí mismo un dominio perdido), red bayesiana, etc. La precisión es relevante aquí, no el reloj de pared, la implementación particular, etc. Es perfectamente legítimo ejecutar su programa en un mainframe, en COBOL; nadie de la comunidad científica lo rechazará, sin embargo, pueden sugerir que existen formas mejores, más baratas y quizás más rápidas para lograr el mismo resultado, pero esto no es un problema para publicar o comenzar a comercializar su solución.

Una vez que identificó el algoritmo y tiene un prototipo, encuentre la mejor implementación (o impleméntelo usted mismo) y use el hardware adecuado, como las GPU NVidia, si corresponde y es necesario. Si necesita una hora para llegar a un resultado, está bien si tiene 100 pacientes, pero no por un millón.

En primer lugar, lo felicito por querer involucrarse en el área importante del diagnóstico y la detección médica.

Sin embargo, creo que estás haciendo el tonto de tratar de calcular la duración de la vida restante. Si pudiera hacerse con precisión, cada actuario y compañía de seguros de vida lo estaría haciendo para calcular la exposición a reclamos. Lo mismo ocurriría con todos los hospitales, ya que esa información sería vital para decidir los problemas presupuestarios. Tal vez, debería hacer de estos su primer puerto de escala y ver qué hacen en este momento para usarlo como punto de partida.

Lo siento, no puedo ser de más ayuda. Sin embargo, te deseo lo mejor en tu esfuerzo

Gracias por el A2A, Abu

Si solo quieres hacer un diagnóstico, entonces una red neuronal completa es un poco exagerada.
Una máquina de vectores de soporte funcionará bien: elija algunas cosas que usted (o la literatura adecuada) considere buenos indicadores y brinde clases de muestra (¡del mismo tamaño!) Para pacientes que no están enfermos y pacientes que definitivamente lo son.

Hay otros que ya han respondido con precisión a esto, sin embargo, creo que debería ver esto. Las pruebas y la habilidad del examinador son impecables. Contacta a esta mujer para más información.
Viviendo hasta los 90 y más allá

Y es posible que desee ver esto.
Entrenamiento de Alzheimer en Florida

Gracias por el A2A por Abu

Si entiendo tu pregunta. Creo que sería más exacto decir que lo que quiere hacer es un diagnóstico diferencial de Alzheimer o demencias relacionadas con una red neuronal. Este es un problema de categorización, por lo que es aplicable a un motor de reconocimiento de redes neuronales. Pero, ¿cuáles serían sus métricas para que el motor las clasifique y clasifique?
¿O está tratando de construir una red modelo con Alzheimers para mostrar tasas promedio de disminución? También es factible, pero generalmente necesita mucho dinero y potencia informática.

Estarías mucho mejor con bayes. Las redes neuronales serán bastante ineficientes en algo así.