Diferencia entre revisiones de «APLI2 CS»
(→Numero de usuarios agrupados por numero de intentos) |
(→CATEGORIZAR LAS FRASES Y FALLOS) |
||
(No se muestran 26 ediciones intermedias de 2 usuarios) | |||
Línea 2: | Línea 2: | ||
Esto no va a ser más que la posibilidad de estudiar este sistema de aprendizaje como sistema complejo. Para ello vamos a realizar muchos experimentos y muchos cosas que iremos publicando poco a poco. | Esto no va a ser más que la posibilidad de estudiar este sistema de aprendizaje como sistema complejo. Para ello vamos a realizar muchos experimentos y muchos cosas que iremos publicando poco a poco. | ||
+ | |||
+ | == Limpieza de usuarios del sistema y de profesores == | ||
+ | |||
+ | Para evitar la perturbación de los datos y la innecesaria complicación de las consultas a la base de datos, vamos a quitar los datos de los profesores a la hora de realizar las pruebas y test de que todo funciona. | ||
+ | |||
+ | 52 ejercicios terminados y 569 líneas realizadas. | ||
+ | |||
+ | Un dato BRUTAL... o al menos me lo parece a mi... | ||
+ | |||
+ | 209 alumnos... NO HAN HECHO NI UN SOLO INTENTO!! (de 606) | ||
+ | |||
+ | Quizás hubiera que hacer un estudio de la fecha de matriculación de esos 209 alumnos... si está concentrada (por un fallo puntual) o esparcida en el tiempo. | ||
+ | |||
+ | 136 alumnos sin correo registrado | ||
+ | |||
+ | FINALMENTE, nos hemos quedado con una base de datos de alumnos para experimentar (sobre formalización) con: | ||
+ | |||
+ | 370 usuarios, 3950 ejercicios resueltos y 53770 líneas de intentos (acertados 15286 y fallidos 38484). | ||
+ | |||
+ | Por ahora se da por finalizado la limpieza de los datos. | ||
+ | |||
+ | = CATEGORIZAR LAS FRASES Y FALLOS = | ||
+ | |||
+ | Para un análisis más profundo vamos a caracterizar los fallos en semánticos y sintácticos, y para ello deberemos recrear otra vez toda la actividad fallida de APLI2. | ||
+ | |||
+ | Por otro lado, vamos a caracterizar las frases propuestas por el profesor en función a los conectores lógicos que usen, ya que eso nos podrá dar una idea más aproximada de donde se atrancan los alumnos. | ||
+ | |||
+ | Por comodidad, hemos juntado las tablas de premisas y conclusiones en una sola. Primero copiamos la de premisas y la de conclusiones la exportamos con la orden: | ||
+ | |||
+ | INSERT INTO formalizacion (cdconclusion,texto, formalizacion, cdejercicio ) SELECT cdconclusion, dsconclusion as texto, formalizacion, cdejercicio FROM conclusiones | ||
+ | |||
+ | Posteriormente habrá que actualizar la tabla de w_actividades con los códigos nuevos. Ahora vamos a caracterizar las lineas del profesor, para ello vamos a crear los campos booleanos: | ||
+ | *negacion | ||
+ | *conjuncion | ||
+ | *disyuncion | ||
+ | *implicacion | ||
+ | *equivalencia | ||
+ | *existencial | ||
+ | *universal | ||
+ | *existall (juntos los dos) | ||
+ | |||
+ | y si se ocurre algo más, ya se pondrá. | ||
+ | |||
+ | UPDATE formalizacion set disyuncion=1 where formalizacion.formalizacion like '%|%' | ||
+ | |||
+ | |||
+ | |||
+ | me faltan la igualdad y desigualdad, además de ponerle si son de primer orden o proposicionales. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | - | ||
+ | |||
+ | = REHACER TODA LA EXPERIMENTACION = | ||
== Número de usuarios que terminan un ejercicio == | == Número de usuarios que terminan un ejercicio == | ||
Línea 7: | Línea 62: | ||
La consulta SQL correspondiente es: | La consulta SQL correspondiente es: | ||
− | SELECT count(cdusuario) as numero ,cdejercicio FROM w_ejercicios group by cdejercicio order by | + | SELECT count(cdusuario) as numero ,cdejercicio FROM w_ejercicios group by cdejercicio order by numero limit 0,300 |
y esto arroja una gráfica inicial (hay que depurar algún usuario) y su representación en escala logarítmica, con recta de mayor ajuste. | y esto arroja una gráfica inicial (hay que depurar algún usuario) y su representación en escala logarítmica, con recta de mayor ajuste. | ||
Línea 13: | Línea 68: | ||
[[Image:dist_num_usuarios.png]] [[Image:dist_log_num_usuarios.png]] | [[Image:dist_num_usuarios.png]] [[Image:dist_log_num_usuarios.png]] | ||
+ | == Número de intentos por usuario == | ||
− | + | En esta gráfica se representa el número de intentos (fallidos y correctos) que ha hecho cada usuario ordenado por el número | |
− | |||
− | En esta gráfica se representa el | ||
La sentencia SQL | La sentencia SQL | ||
Línea 25: | Línea 79: | ||
[[Image:intentos_usuarios.png]] [[Image:intentos_usuarios_log.png]] | [[Image:intentos_usuarios.png]] [[Image:intentos_usuarios_log.png]] | ||
− | + | == Número de usuarios agrupados por número de intentos == | |
− | == | ||
La sentencia SQL | La sentencia SQL | ||
Línea 33: | Línea 86: | ||
− | [[Image: | + | [[Image:numusuarios_intentos.png]] |
Nueva SQL | Nueva SQL | ||
Select count(cdusuario) as numusu FROM (SELECT count(*) as intentos,cdusuario FROM w_actividades group by cdusuario order by intentos) as maestra group by (intentos div 25) limit 0,3000 | Select count(cdusuario) as numusu FROM (SELECT count(*) as intentos,cdusuario FROM w_actividades group by cdusuario order by intentos) as maestra group by (intentos div 25) limit 0,3000 | ||
+ | |||
+ | |||
+ | El mismo rango de datos, pero agrupados de 5 intervalos de 5 y de 25 aciertos | ||
+ | |||
+ | [[Image:numusuarios_intentos_5.png]] [[Image:numusuarios_intentos_10.png]] [[Image:numusuarios_intentos_25.png]] | ||
+ | |||
+ | == Distribución por fechas == | ||
+ | |||
+ | select (diferencia div 7), count(cdusuario) FROM ( select cdusuario, datediff(max(fecha),min(fecha)) as diferencia FROM w_actividades group by cdusuario) as maestra where diferencia>0 group by (diferencia div 7) limit 0,3000 | ||
+ | |||
+ | |||
+ | == Actividad de la plataforma == | ||
+ | |||
+ | Vamos a tratar de medir la actividad de la aplicación en estos años de vida | ||
+ | |||
+ | [[Image:actividadhistorica.png]] [[Image:actividadmesano.png]] [[Image:actividadmensual.png]] | ||
+ | |||
+ | Ahora la pregunta es la siguiente: ¿No veis nada raro en la grafica de actividad por meses? (la última) |
Revisión actual del 08:29 23 dic 2011
Sumario
APLI2 como sistema complejo
Esto no va a ser más que la posibilidad de estudiar este sistema de aprendizaje como sistema complejo. Para ello vamos a realizar muchos experimentos y muchos cosas que iremos publicando poco a poco.
Limpieza de usuarios del sistema y de profesores
Para evitar la perturbación de los datos y la innecesaria complicación de las consultas a la base de datos, vamos a quitar los datos de los profesores a la hora de realizar las pruebas y test de que todo funciona.
52 ejercicios terminados y 569 líneas realizadas.
Un dato BRUTAL... o al menos me lo parece a mi...
209 alumnos... NO HAN HECHO NI UN SOLO INTENTO!! (de 606)
Quizás hubiera que hacer un estudio de la fecha de matriculación de esos 209 alumnos... si está concentrada (por un fallo puntual) o esparcida en el tiempo.
136 alumnos sin correo registrado
FINALMENTE, nos hemos quedado con una base de datos de alumnos para experimentar (sobre formalización) con:
370 usuarios, 3950 ejercicios resueltos y 53770 líneas de intentos (acertados 15286 y fallidos 38484).
Por ahora se da por finalizado la limpieza de los datos.
CATEGORIZAR LAS FRASES Y FALLOS
Para un análisis más profundo vamos a caracterizar los fallos en semánticos y sintácticos, y para ello deberemos recrear otra vez toda la actividad fallida de APLI2.
Por otro lado, vamos a caracterizar las frases propuestas por el profesor en función a los conectores lógicos que usen, ya que eso nos podrá dar una idea más aproximada de donde se atrancan los alumnos.
Por comodidad, hemos juntado las tablas de premisas y conclusiones en una sola. Primero copiamos la de premisas y la de conclusiones la exportamos con la orden:
INSERT INTO formalizacion (cdconclusion,texto, formalizacion, cdejercicio ) SELECT cdconclusion, dsconclusion as texto, formalizacion, cdejercicio FROM conclusiones
Posteriormente habrá que actualizar la tabla de w_actividades con los códigos nuevos. Ahora vamos a caracterizar las lineas del profesor, para ello vamos a crear los campos booleanos:
- negacion
- conjuncion
- disyuncion
- implicacion
- equivalencia
- existencial
- universal
- existall (juntos los dos)
y si se ocurre algo más, ya se pondrá.
UPDATE formalizacion set disyuncion=1 where formalizacion.formalizacion like '%|%'
me faltan la igualdad y desigualdad, además de ponerle si son de primer orden o proposicionales.
-
REHACER TODA LA EXPERIMENTACION
Número de usuarios que terminan un ejercicio
La consulta SQL correspondiente es:
SELECT count(cdusuario) as numero ,cdejercicio FROM w_ejercicios group by cdejercicio order by numero limit 0,300
y esto arroja una gráfica inicial (hay que depurar algún usuario) y su representación en escala logarítmica, con recta de mayor ajuste.
Número de intentos por usuario
En esta gráfica se representa el número de intentos (fallidos y correctos) que ha hecho cada usuario ordenado por el número
La sentencia SQL
SELECT count(*) as numero,cdusuario FROM w_actividades group by cdusuario order by numero desc limit 0,3000
Número de usuarios agrupados por número de intentos
La sentencia SQL
Select intentos, count(cdusuario) as numusu FROM (SELECT count(*) as intentos,cdusuario FROM w_actividades group by cdusuario order by intentos) as maestra group by intentos limit 0,3000
Nueva SQL
Select count(cdusuario) as numusu FROM (SELECT count(*) as intentos,cdusuario FROM w_actividades group by cdusuario order by intentos) as maestra group by (intentos div 25) limit 0,3000
El mismo rango de datos, pero agrupados de 5 intervalos de 5 y de 25 aciertos
Distribución por fechas
select (diferencia div 7), count(cdusuario) FROM ( select cdusuario, datediff(max(fecha),min(fecha)) as diferencia FROM w_actividades group by cdusuario) as maestra where diferencia>0 group by (diferencia div 7) limit 0,3000
Actividad de la plataforma
Vamos a tratar de medir la actividad de la aplicación en estos años de vida
Ahora la pregunta es la siguiente: ¿No veis nada raro en la grafica de actividad por meses? (la última)