¿Cómo se aplican las estadísticas en informática para evaluar la precisión en las afirmaciones de investigación?

8

He notado en mi corta vida académica que muchos artículos publicados en nuestra área a veces no tienen mucho rigor con respecto a las estadísticas. Esto no es solo una suposición; He escuchado a los profesores decir lo mismo.

Por ejemplo, en las disciplinas de CS veo publicaciones que afirman que se ha observado que la metodología X es efectiva y ANOVA y ANCOVA lo demuestran, sin embargo, no veo referencias para otros investigadores que evalúen que se hayan observado las restricciones necesarias. De alguna manera, parece que tan pronto como aparece una 'función y nombre complejos', eso demuestra que el investigador está utilizando un método y enfoque altamente creíble que 'debe saber qué está haciendo y está bien si no describe las restricciones' , digamos, para esa distribución o enfoque dado, para que la comunidad pueda evaluarlo.

A veces, hay excusas para justificar la hipótesis con un tamaño de muestra tan pequeño.

Por lo tanto, mi pregunta aquí se plantea como estudiante de disciplinas de CS como aspirante a aprender más sobre estadísticas: ¿Cómo los científicos informáticos abordan las estadísticas?

Esta pregunta puede parecer que estoy preguntando lo que ya he explicado, pero esa es mi opinión . Podría estar equivocado, o podría estar centrándome en un grupo de profesionales, mientras que otros grupos de investigadores de CS podrían estar haciendo algo más que siga mejores prácticas con respecto al rigor estadístico.

Entonces, específicamente, lo que quiero es "Nuestra área está o no dentro de las estadísticas debido a los hechos dados (documentos de ejemplo, libros u otro artículo de discusión sobre esto están bien)". La respuesta de @Patrick está más cerca de esto.

Oeufcoque Penteano
fuente
Avíseme si mi respuesta no es exactamente lo que estaba buscando ... Puedo encontrar algunos ejemplos, si lo desea, pero parece que ya tiene muchos. Además, a menos que tenga acceso a los procedimientos, puede ser difícil presentar enlaces a los documentos.
Patrick87
Tengo acceso a las bibliotecas digitales IEEE y ACM, los ejemplos serían muy bien recibidos también en su publicación, podría usarlos, más adelante cuando obtenga mi doctorado para mostrar a los estudiantes que termino aconsejando ejemplos buenos y malos con respecto a este punto. Y sí, este es el deporte de opinión y declaración que estaba buscando.
Oeufcoque Penteano
Tenga en cuenta que grandes partes de la informática no son empíricas en absoluto y, por lo tanto, no (ab) usan estadísticas. En una nota sarcástica, las personas de ingeniería de software son "conocidas" por escribir mucho y decir poco (de relevancia). El primer paso sería aprender estadísticas; pocos de los aspirantes a investigadores de ingeniería de software que conozco han tomado un curso o algo sobre estadísticas.
Raphael
Buen punto. Estoy acostumbrado a escuchar esto también. ¿Qué se consideraría a continuación?
Oeufcoque Penteano

Respuestas:

11

Como estudiante de posgrado en ciencias de la computación, que está expuesto a la investigación en otros campos que no sean ciencias de la computación, y cuyo grupo de investigación trabaja en un área de ciencias de la computación donde las estadísticas se pueden aplicar fructíferamente, puedo ofrecer mi experiencia; Su experiencia puede ser diferente.

En general, incluso la investigación científica más bien intencionada puede fallar al aplicar rigurosamente el análisis estadístico a los resultados, y según mi experiencia, esto no siempre impide que los documentos que incluyen resultados tan poco analizados sean aceptados para su publicación. El área en la que opera mi grupo es principalmente en computación distribuida y arquitectura de computadoras de alto rendimiento. A menudo, la investigación involucra diseños experimentales cuyo desempeño no puede ser fácilmente entendido analíticamente en los detalles requeridos. Como tal, los resultados empíricos a menudo se usan como evidencia para reclamos.

Claramente, los experimentos deben ser diseñados, y los resultados analizados, de tal manera que proporcionen cierta confianza de que los resultados son estadísticamente significativos. La mayoría de las veces, esto no se hace, incluso en algunos de los lugares más importantes. Cuando se aplica el análisis estadístico, casi nunca es riguroso en ningún sentido significativo; lo más que normalmente se ve (¡y uno se alegra de verlo!) es que un experimento se repitió n veces, para algunos n elegidos arbitrariamente , donde típicamente . La selección de barras de error (si se indica alguna) parece ser principalmente una cuestión de preferencia o gusto personal.1<norte<5 5

En resumen, no, no eres solo tú; y no es solo ingeniería de software. En general, según mi experiencia, varias áreas de la investigación informática parecen errar por no hacer lo suficiente. De hecho, incluso podría ser perjudicial para la viabilidad de un trabajo presentado para considerar consideraciones estadísticas. Eso no quiere decir que la situación me parezca satisfactoria; lejos de ahi. Pero estas son mis impresiones. Por ejemplo, puede echar un vistazo a la sección 5 de este documento, que se presentó en Supercomputing 2011, una de las conferencias de más alto perfil en el área de la informática de alto rendimiento. Específicamente, eche un vistazo a parte de la discusión de resultados en la sección 5 y vea si llega a las mismas conclusiones que yo sobre el rigor del análisis estadístico de los resultados experimentales.

En términos más generales, esta deficiencia puede ser sintomática de una condición en algunas áreas de la informática para publicar más artículos en lugar de menos, para dirigir conferencias en lugar de revistas, y para enfatizar el progreso gradual en lugar de mejoras significativas y fundamentales en la comprensión. Puede consultar este artículo , que proporciona información valiosa en este sentido.

Patrick87
fuente
Muchas gracias por tu opinión. Me alegra ver que otras personas piensan de esta manera. Espero que la comunidad también tenga otras opiniones para compartir o, al menos, votar para expresar su opinión. :) Lástima que sigo siendo un novato, así que no puedo votar nada.
Oeufcoque Penteano
@OeufcoquePenteano Hola, todos son novatos cuando comienzan. Esta es una buena pregunta y plantea un punto interesante sobre una posible deficiencia en los estándares de investigación informática. Agregaré a la respuesta en breve. También tenga en cuenta que esta pregunta puede ser cerrada (más temprano que tarde, incluso) por otros miembros, ya que preguntas como esta (hasta ahora) han sido consideradas con cierta sospecha, y dado que este sitio todavía está en beta, la comunidad todavía está tratando de defina lo que está dentro y fuera del tema aquí.
Patrick87
Pero la propuesta inicial mencionada sobre informática e investigación y esta cumple con este criterio ¿verdad? En este punto, no hay otro criterio más refinado que expulse esta pregunta del juego, ¿o lo habría? ¿O hay alguna otra familia de pila que podría discutir sobre esta pregunta? Gracias por su cumplido y atención al responderlo :)
Oeufcoque Penteano
1
En cuanto a la evaluación comparativa de implementaciones de prueba de concepto, me cuesta ver cómo se puede establecer la importancia. No parece posible aplicar estadísticas aquí; tomar medidas por sí solo no es estadística. Sin embargo, es importante que las mediciones se interpreten cuidadosamente y con perspectiva.
Raphael
44
@ Patrick87: No quiero abogar por ignorar la significación estadística. Sin embargo, es difícil. Por cierto, hago puntos de referencia para mi tesis de maestría. Ejecuto mis cosas (muchas veces) en dos o tres máquinas y me encargo de medir los tiempos relevantes. ¿Que más puedo hacer? Ni siquiera puedo comenzar a emplear estadísticas rigurosas porque no tengo idea de lo que puede ser un modelo estocástico para la ejecución de algoritmos multinúcleo con la JVM en el medio.
Raphael
2

La ingeniería de software incluye muchas características. Dos de ellos son el factor humano y la medida de calidad.

Digamos que quiero hacer un análisis de productividad. La recopilación de datos sería difícil de comparar con el análisis de algoritmos porque los datos se refieren a la productividad humana. Además, la medida objetiva de la calidad no es fácil de lograr.

10 líneas de código por día para un sistema de aviónica frente a 150 líneas de código por día para una aplicación en teléfonos inteligentes, ¿cuál tiene mayor productividad y cuál tiene mejor calidad? ¿Y si ambos afirman que están utilizando la misma metodología? Compararlos es comparar manzanas y naranjas.

A veces es difícil lograr una medida precisa de la eficiencia del código. Por ejemplo, puse un montón de variables inútiles y muchas líneas de código para esas variables, por ejemplo, para fines de depuración. Esto aumenta mi productividad en la etapa de desarrollo. Al final, los elimino y digo que mejoro mi código para lograr la eficiencia.

Más tarde, un investigador entra y realiza un análisis de eficiencia. Podría tratar lo anterior como ruidos y solo concentrarse en los resultados finales. Algunos investigadores prestan atención a los ruidos. Luego verás artículos con diferentes conclusiones.

Se supone que las estadísticas son una herramienta para ayudar a los investigadores a encontrar las causas de los problemas. Muchos investigadores lo usan para sacar conclusiones. Esto es lo que has observado.


Algunos comentarios anteriores podrían llevar al OP a pensar que estoy en contra del uso de estadísticas en ingeniería de software. Si es así, me gustaría aclararme.

No estoy en contra de las estadísticas. El análisis de estadísticas puede decirle que X podría ser cierto. Pero, ese no debería ser el final de la investigación. La siguiente tarea debería ser averiguar si X es realmente cierto y por qué. Esto es de lo que creo que se trata la ciencia: encontrar la verdad.

Si la ingeniería de software pertenece o no a la informática es otra cuestión.

scaaahu
fuente
Hola gracias. Creo que puedes comentar tu pregunta, así que esto debería funcionar. ¿Quiere decir que se puede permitir que los ingenieros de software sean más informales sobre las estadísticas debido a las incertidumbres? No lo sé. Mira, tengo un libro que recibí de un profesor que enseña estadísticas para investigadores sociales. Creo que su lado es mucho peor que el nuestro, e incluso tienen ejemplos bien definidos en un libro para eso. ¿Por qué nosotros incluso tenemos código estático para probar diferentes enfoques que no podríamos?
Oeufcoque Penteano
Me pregunto si esta es la brecha que generalmente escucho entre la investigación y las personas que realmente trabajan en la industria. Estoy de acuerdo con usted en que, por el lado del desarrollador, no le preocupan las estadísticas, sino el funcionamiento del programa. Pero sí, el gerente del proyecto lo necesitaría para predecir si el desarrollador estaría retrasado o no, ¿tal vez? Aún teniendo en cuenta la parte de la pregunta de "reclamos de investigación", ¿cree que la precisión en las estadísticas sería inútil como, por ejemplo, inferir que pocas cosas los desarrolladores reducen inconscientemente su productividad y disfrute en el trabajo? Mi preocupación yace ahí.
Oeufcoque Penteano
¿Quiere decir que realizar una investigación experimental consideraría a las personas como sujetos? Estaba hablando de medir códigos para entender esto, no experimentar con personas. Lo siento, estoy confundido solo con tu última declaración. Pero, gracias por tus ideas!
Oeufcoque Penteano
Muy bien, ahora entiendo. Como soy un novato en esto, no sabía que las largas discusiones sobre los comentarios serían una mala práctica, así que me detendré en este punto. Gracias por tus ideas. Esperaré unos días más y elegiré una respuesta (en caso de que la pregunta no sea apropiada para esta comunidad y se cierre).
Oeufcoque Penteano
Me pregunto si estás hablando de las mismas estadísticas. En general, una "estadística" suele ser un conjunto de medidas. En matemáticas y ciencias, "estadística", la estimación de los parámetros del modelo a partir de datos / mediciones. Por lo tanto, enumerar recuentos de LOC ni siquiera es estadística en sentido científico; si puede (con precisión) estimar el parámetro "consumo promedio de café de desarrollador" a partir de datos de LOC, entonces está haciendo estadísticas (relevantes); Has encontrado eventos correlacionados.
Raphael
1

La estadística es difícil y, a menudo, contra intuitiva. Además, la necesidad de "hacer un experimento más" para ver si hay un efecto (y detenerse cuando aparece) es fuerte, especialmente si los experimentos son costosos (tiempo, trabajo, no solo dinero). También recuerde que publicar un documento sobre cómo el experimento cuidadosamente establecido, largo y costoso muestra que no existe una relación estadísticamente significativa tiende a ser imposible.

Especialmente en ingeniería de software hay muchas variables incontrolables. Para tenerlos en cuenta, necesitaría muchas réplicas del experimento y obtendrá recursos para hacer una o, en el mejor de los casos, dos.

vonbrand
fuente
-3

Por lo tanto, mi pregunta aquí se plantea como estudiante de disciplinas de CS como aspirante a aprender más sobre estadísticas: ¿Cómo los científicos informáticos abordan las estadísticas?

Hay varias preguntas anteriores y algunas no son iguales a la pregunta del título y de alguna manera esta pregunta tiene una premisa errónea subyacente / concepto erróneo sobre la falta de conexión entre las estadísticas y la CS. La pregunta general es sobre la interfaz de la informática y las estadísticas.

existe una gran superposición en la superposición intensa en algunas áreas y es una tendencia creciente con el nuevo campo fuertemente emergente de big data . en algunas escuelas (p. ej., incluso en las escuelas de élite "Ivy League"), el título de CS está estrechamente relacionado con los departamentos de matemática y estadística , y algunos tienen una especialización conjunta . Existe una interconexión muy fuerte en el campo CS / estadístico de Machine Learning . También el campo relativamente nuevo de bioinformática tiene una base estadística CS + muy fuerte.

¡Hay un campo completo de estadísticas computacionales enfocadas en la interfaz!

La estadística computacional, o computación estadística, es la interfaz entre las estadísticas y la informática. Es el área de la ciencia computacional (o computación científica) específica de la ciencia matemática de la estadística. Esta área también se está desarrollando rápidamente, lo que lleva a pedir que se enseñe un concepto más amplio de computación como parte de la educación estadística general. [1]

Sí, de acuerdo, como se señaló en la pregunta, hay muchos documentos de CS que no usan estadísticas, incluidas situaciones (como la evaluación de experimentos empíricos) en las que podría ser incluso altamente aplicable y relevante, pero exactamente lo mismo puede decirse de muchos otros campos científicos, por ejemplo, matemáticas, e incluso campos más aplicados como la física.

Hay muchas maneras de usar / aplicar estadísticas, algunas menos rigurosas que otras, y no todos los contextos requieren la aplicación completa de los aspectos muy avanzados de las estadísticas. por ejemplo, simplemente ejecutar múltiples experimentos y trazar barras de error para la desviación estadística (¡o incluso simplemente promedios! ) es un uso básico de las estadísticas. Los usos más rigurosos incluyen la prueba de hipótesis, pero hay una observación general en el campo de que muchos artículos científicos no hacen pruebas de hipótesis rigurosas, incluso donde podría ser aplicable.

Además, esta pregunta está etiquetada con . esta era mi especialidad, y se requería una clase de estadística para aprobar este título en mi escuela y obtener una especialización certificada en ingeniería (por ejemplo, ABET ), este es probablemente el caso en muchas otras universidades. Si se desean principios de tipo CS más aplicados y rigurosos, como las aplicaciones de estadísticas, se puede seguir la ruta de la "ingeniería de software" en educación.

vzn
fuente
como se ha señalado en otro comentario, usos de las estadísticas, incluso en TCS más abstractos incluyen los análisis de la complejidad del caso y PAC aprendizaje , etc
VZN
1
El análisis de complejidad de caso promedio no utiliza estadísticas. Estocástico, ciertamente, pero eso es otra cosa.
Raphael
¡muy en desacuerdo! que claramente utiliza conceptos estadísticos clave / fundamentales pero tal vez no se le enseña que lo hace! ¡Las opiniones académicas de los campos tienden a estar compartimentadas y se reflejan aquí! En mi humilde opinión cualquier ref a una distribución de insumos, etc. es , obviamente, una invocación de los conceptos estadísticos ...
VZN