¿Qué piensa sobre la aplicación de técnicas de aprendizaje automático, como bosques aleatorios o regresión penalizada (con penalización L1 o L2, o una combinación de ambas) en estudios clínicos de muestra pequeña cuando el objetivo es aislar predictores interesantes en un contexto de clasificación? No se trata de la selección del modelo, ni estoy preguntando cómo encontrar estimaciones óptimas de efecto / importancia variable. No planeo hacer una inferencia fuerte, sino solo usar modelos multivariados, evitando así probar cada predictor contra el resultado de interés uno a la vez, y teniendo en cuenta sus interrelaciones.
Me preguntaba si ese enfoque ya se había aplicado en este caso extremo en particular, digamos 20-30 sujetos con datos sobre 10-15 variables categóricas o continuas. No es exactamente el y creo que el problema aquí está relacionado con el número de clases que tratamos de explicar (que a menudo no están bien equilibradas) y el (muy) pequeño n. Soy consciente de la gran cantidad de literatura sobre este tema en el contexto de la bioinformática, pero no encontré ninguna referencia relacionada con estudios biomédicos con fenotipos medidos psicométricamente (por ejemplo, a través de cuestionarios neuropsicológicos).
¿Alguna pista o puntero a documentos relevantes?
Actualizar
Estoy abierto a cualquier otra solución para analizar este tipo de datos, por ejemplo, el algoritmo C4.5 o sus derivados, métodos de reglas de asociación y cualquier técnica de minería de datos para la clasificación supervisada o semi-supervisada.
Respuestas:
Tampoco he visto esto fuera de la bioinformática / aprendizaje automático, pero tal vez puedas ser el primero :)
Como buen representante del método de método de muestra pequeña de la bioinformática, la regresión logística con la regularización L1 puede dar un buen ajuste cuando el número de parámetros es exponencial en el número de observaciones, los intervalos de confianza no asintóticos se pueden diseñar utilizando desigualdades de tipo Chernoff (es decir, Dudik, (2004) por ejemplo). Trevor Hastie ha realizado algunos trabajos aplicando estos métodos para identificar las interacciones genéticas. En el siguiente documento, lo usa para identificar efectos significativos de un modelo con 310,637 parámetros ajustables ajustados a una muestra de 2200 observaciones
"El análisis de asociación de todo el genoma por lazo penalizó la regresión logística". Autores: Hastie, T; Sobel, E; Wu, T. T; Chen, Y. F; Lange, K Bioinformatics Vol: 25 Edición: 6 ISSN: 1367-4803 Fecha: 03/2009 Páginas: 714 - 721
Presentación relacionada de Victoria Stodden ( Selección de modelo con muchas más variables que observaciones )
fuente
Tendría muy poca confianza en la generalización de los resultados de un análisis exploratorio con 15 predictores y un tamaño de muestra de 20.
En tales circunstancias, mi consejo generalmente sería limitar los análisis a relaciones bivariadas. Si toma una perspectiva bayesiana, entonces diría que sus expectativas anteriores son igualmente importantes, si no más, que los datos.
fuente
Una regla general común es tener al menos 10 veces el número de instancias de datos de entrenamiento (por no hablar de ningún dato de prueba / validación, etc.) ya que hay parámetros ajustables en el clasificador. Tenga en cuenta que tiene un problema en el que necesita no solo tener datos adecuados sino también datos representativos . Al final, no hay una regla sistemática porque hay muchas variables al tomar esta decisión. Como dicen Hastie, Tibshirani y Friedman en Los elementos del aprendizaje estadístico (ver Capítulo 7):
Si es nuevo en este campo, le recomiendo leer este breve documento de "Reconocimiento de patrones" de la Enciclopedia de Ingeniería Biomédica que ofrece un breve resumen de algunos de los problemas de datos.
fuente
Puedo asegurarle que RF funcionaría en ese caso y su medida de importancia sería bastante perspicaz (porque no habrá una gran cola de atributos engañosos sin importancia como en el estándar (n << p) s). No puedo recordar ningún documento que trate con un problema similar, pero lo buscaré.
fuente
Si tiene entradas discretas, estoy escribiendo un programa para predecir los valores faltantes de una entrada binaria, dadas las entradas anteriores. Cualquier categoría, por ejemplo, "1 de 6", se puede convertir en bits binarios, y funcionará bien; No lo afectará.
El propósito del algoritmo que estoy escribiendo es aprender lo más rápido posible matemáticamente. En consecuencia, tiene una complejidad de tiempo y espacio muy pobre (¡complejidad espacial sobre O (4 ^ N) !.
Pero para eso obtienes esencialmente un aprendizaje único, para cualquier sistema cuyo estado se pueda expresar como un vector de bits. Por ejemplo, un sumador completo tiene 8 estados de entrada distintos. El algoritmo aprenderá un sumador completo perfectamente después de solo 8 muestras de entrenamiento distintas. No solo eso, sino que también puede darle la respuesta y hacer que pronostique la pregunta, o darle parte de la respuesta y parte de la pregunta y hacer que complete el resto.
Si los datos de entrada tienen muchos bits, será bastante computacional y requerirá mucha memoria. Pero si tiene muy pocas muestras, o eso es el objetivo del diseño, le dará las mejores predicciones posibles.
Simplemente lo entrena con vectores de bits, incluido un vector de bits cuyos bits son desconocidos. Para obtener una predicción, también debes alimentarlo con un vector de bits, qué bits son desconocidos y qué bits quieres que prediga.
Código fuente disponible aquí: https://sourceforge.net/p/aithroughlogiccompression/code/HEAD/tree/BayesianInferenceEngine/src/_version2/
fuente