Scénario de test & Cas d'usage
Aprendizaje activo para optimizar el etiquetado de datos.
Descubrir todas las acciones de activeLearnSe crean dos tablas: 'COMENTARIOS_CLIENTES' con un ID y el texto del comentario, y 'ANOTACIONES_SENTIMIENTO' con el ID y la etiqueta de sentimiento asignada. La tabla de anotaciones solo cubre una parte de los comentarios.
| 1 | DATA casuser.COMENTARIOS_CLIENTES; |
| 2 | LENGTH ComentarioID $ 10 Producto $ 20 Texto $ 200; |
| 3 | INPUT ComentarioID $ Producto $ Texto $;& |
| 4 | DATALINES; |
| 5 | C01 Laptop 'El rendimiento es increíble' |
| 6 | C02 Telefono 'La batería dura muy poco' |
| 7 | C03 Tablet 'La pantalla es muy nítida' |
| 8 | C04 Laptop 'Se calienta demasiado rápido' |
| 9 | C05 Monitor 'No tiene suficientes puertos USB' |
| 10 | ; |
| 11 | RUN; |
| 12 | |
| 13 | DATA casuser.ANOTACIONES_SENTIMIENTO; |
| 14 | LENGTH ComentarioID $ 10 Sentimiento $ 10; |
| 15 | INPUT ComentarioID $ Sentimiento $; |
| 16 | DATALINES; |
| 17 | C01 Positivo |
| 18 | C02 Negativo |
| 19 | C04 Negativo |
| 20 | ; |
| 21 | RUN; |
| 1 | PROC CASUTIL; |
| 2 | load DATA=casuser.COMENTARIOS_CLIENTES outcaslib='casuser' casout='COMENTARIOS_CLIENTES' replace; |
| 3 | load DATA=casuser.ANOTACIONES_SENTIMIENTO outcaslib='casuser' casout='ANOTACIONES_SENTIMIENTO' replace; |
| 4 | RUN; |
| 5 | QUIT; |
| 1 | PROC CAS; |
| 2 | activeLearn.alJoin / |
| 3 | TABLE={name='COMENTARIOS_CLIENTES'}, |
| 4 | annotatedTable={name='ANOTACIONES_SENTIMIENTO'}, |
| 5 | id='ComentarioID', |
| 6 | joinType='INNER', |
| 7 | casOut={name='DATOS_ENTRENAMIENTO', replace=true}; |
| 8 | RUN; |
| 9 | QUIT; |
| 1 | PROC CAS; |
| 2 | activeLearn.alJoin / |
| 3 | TABLE={name='COMENTARIOS_CLIENTES'}, |
| 4 | annotatedTable={name='ANOTACIONES_SENTIMIENTO'}, |
| 5 | id='ComentarioID', |
| 6 | joinType='LEFT', |
| 7 | casOut={name='COMENTARIOS_COMPLETOS', replace=true}; |
| 8 | RUN; |
| 9 | QUIT; |
Se generan dos tablas. 'DATOS_ENTRENAMIENTO' contendrá 3 filas, solo con los comentarios que tienen una etiqueta de sentimiento. 'COMENTARIOS_COMPLETOS' contendrá las 5 filas originales; las filas C03 y C05 tendrán un valor faltante (missing) en la columna 'Sentimiento', demostrando la correcta aplicación de ambos tipos de unión.