Ir al contenido principal

Diagrama de temas

    • 2.1 Flujo de trabajo del aprendizaje automático

      • Pensamiento de diseño


        Antes de comenzar a crear un proyecto que utilice la IA, debe involucrarse en el pensamiento de diseño. El pensamiento de diseño es un enfoque para la generación de ideas que se centra en las necesidades humanas y la innovación. Mientras que los enfoques de diseño tradicionales pueden identificar las necesidades al observar las tendencias actuales, el pensamiento de diseño trata de analizar más profundamente las necesidades de las personas, por qué lo necesitan y cómo se puede satisfacer mejor esa necesidad.
        Un proceso de pensamiento de diseño fomenta la empatía. Sin ella, no es posible entender realmente las necesidades y los deseos de alguien. La empatía requiere que deje de lado nociones o sesgos preconcebidos y trate de ver las cosas desde el punto de vista de otra persona. Esto también puede llevar a la innovación, ya que los diseñadores no están atrapados en una sola perspectiva. En su lugar, pueden optar por aprender de las nuevas experiencias.

        El pensamiento de diseño también fomenta la formulación de preguntas para ayudar a generar ideas. Incluso si no hay respuestas inmediatas a esas preguntas, hacerlas es un buen primer paso para determinar a qué debe prestar más atención el equipo del proyecto a medida que este se desarrolla. Por ejemplo, una pregunta podría ser: "¿Existen necesidades o deseos que la gente tiene y que descuidamos debido a un riesgo percibido?".

        El pensamiento de diseño no se trata necesariamente de encontrar una solución perfecta de inmediato. Es más parecido a un proceso de lluvia de ideas. A medida que las personas generan ideas y luego las discuten, pueden comenzar a imaginar cómo la ciencia de datos podría ser un factor importante o tal vez cómo podría no serlo. Puede haber soluciones alternativas que no incorporen la ciencia de datos o que la incorporen de maneras diferentes a las utilizadas en el pasado. Disponer de un conjunto de opciones puede reducir el riesgo y dejar más claro el camino a seguir. También puede aumentar la aceptación por parte de los empleados y clientes por igual.

        Por lo tanto, para resumir, el pensamiento de diseño es un proceso de:

        Empatía con su público objetivo;
        - Formulación de preguntas para describir cualquier problema que las personas tengan;
        - Realización de lluvias de ideas que pueden abordar estos problemas.


        Nota: Algunas definiciones de pensamiento de diseño también incorporan la creación de prototipos, las pruebas y la implementación de ideas.

        Información adicional

        Para conocer más sobre qué es el pensamiento de diseño y su popularidad, consulte esta página


      • Modelo de aprendizaje automático


        Uno de los productos significativos de un proyecto de aprendizaje automático es la creación de un modelo de aprendizaje automático, una representación matemática del proceso o sistema que necesita analizar o automatizar de alguna manera. Por ejemplo, puede crear un modelo de aprendizaje automático para representar una situación problemática en medicina, ventas, agricultura o algún otro campo y, a continuación, aplicarlo para obtener información, proporcionar orientación o automatizar el proceso de alguna manera.

        A continuación, se proporcionan algunos ejemplos.
        Lo que representa el modelo Cómo se puede aplicar el modelo
        Atributos que influyen en cómo una persona podría reaccionar a un tratamiento médico en particular. Un sistema que ayuda a los médicos a seleccionar un plan de tratamiento adecuado.
        Atributos que influyen en las ventas de productos. Un sistema que recomienda precios de productos adecuados que permitirán cumplir con los objetivos de ventas.
        Atributos que influyen en la salud en general de las plantas y su crecimiento. Un sistema que monitorea los cultivos y guía la aplicación de fertilizantes, otros aditivos que mejoran el crecimiento, riego, etc.

      • Flujo de trabajo del aprendizaje automático


        El proceso a través del cual se crea y usa un modelo de aprendizaje automático se denomina flujo de trabajo de aprendizaje automático. El flujo de trabajo se compone de varias tareas.

        1. Formular el problema.
        2. Identificar y recopilar el conjunto de datos.
        3. Limpiar y preparar los datos.
        4. Analizar los datos.
        5. Seleccionar, entrenar, probar y ajustar el modelo.
        6. Aplicar el modelo y presentar los resultados.
        7. Supervisar y mantener el modelo.


        Figura 1. Un flujo de trabajo de aprendizaje automático típico.
        Estas fases pueden superponerse y se realizan de forma iterativa. A medida que obtenga más información sobre el problema, los datos y los resultados, refinará continuamente el modelo. Por ejemplo, a medida que recopila el conjunto de datos y se hace una idea de los patrones que podría revelar, puede volver a visitarlo y aclarar cómo ha definido el problema. Si bien cada problema de aprendizaje automático puede ofrecer sus propios desafíos únicos, guiarse por un flujo de trabajo general como el que se muestra aquí le ayudará a desarrollar un abordaje común para resolver cualquier problema de aprendizaje automático.

        Nota: La secuencia del flujo de trabajo no es inamovible. Por ejemplo, puede comenzar recopilando y analizando un conjunto de datos. La información que obtiene al hacerlo podría inspirarle ideas sobre problemas que puede resolver aplicando el aprendizaje automático al conjunto de datos. Entonces usted podría formular el problema.

        Información adicional


        Para obtener información adicional sobre las pautas del proyecto de aprendizaje automático, consulte aquí

        Para obtener información adicional sobre la formulación de problemas, consulte aquí

        Para obtener información adicional sobre la gestión de proyectos de aprendizaje automático, consulte aquí


      • Requisitos de la habilidad en materia de ciencia de datos


        Se precisan diferentes conjuntos de habilidades para llevar a cabo las diversas tareas que componen un flujo de trabajo de aprendizaje automático. Los proyectos de IA y AA dependen en gran medida de la cantidad, la calidad y el tipo de datos disponibles para fundamentar un problema en particular. A menudo, la motivación de un proyecto es la especulación de que los datos disponibles podrían ser útiles para resolver un problema concreto o mejorar la respuesta ante este.

        Es posible que sea necesario llevar a cabo un nivel de exploración e investigación para responder preguntas tales como las siguientes:

        - ¿Qué datos están disponibles?
        ¿Cómo se relacionan los datos con los problemas que necesitan resolverse?
        ¿Qué método de AA o IA podría ser el más adecuado?
        ¿Cómo debe medirse el éxito?

        A medida que responda a estas preguntas, puede determinar que un abordaje más tradicional sería mejor que usar IA/AA o puede confirmar las ventajas de usar IA/AA en el proyecto. El trabajo en la etapa de exploración e investigación demanda que usted opere como un investigador o científico de datos, o un profesional que es responsable de recopilar, analizar e interpretar cantidades sumamente grandes de datos.

      • Conocimientos especializados en el dominio


        Los conocimientos especializados en el dominio significan saber y comprender un tema o campo de estudio específico. Cuando se considera la experiencia de dominio para proyectos de aprendizaje automático, el tipo de experiencia de dominio depende del objetivo del proyecto y el problema que está intentando resolver.

        - Si un proyecto tiene como objetivo distribuir vacunas de la manera más efectiva para reducir la propagación de un virus, los expertos de su dominio deben incluir virólogos y médicos que se especialicen en enfermedades infecciosas.
        - Si la Organización Meteorológica Mundial quisiera utilizar el análisis de aprendizaje automático de los datos atmosféricos para determinar qué tipos de medidas de emisiones pueden ser más útiles para detener el calentamiento global, el equipo tendría que incluir expertos en emisiones de gases de efecto invernadero, así como meteorólogos que se especializan en el flujo atmosférico.


        Los expertos en dominios pueden ayudar a reconocer el problema para el aprendizaje automático mediante la identificación de áreas donde el análisis de datos y las estimaciones pueden ser más útiles y también pueden ayudar en otras partes del proceso al:

        - Validar los datos utilizados para los modelos de entrenamiento.
        - Evaluar la precisión y la utilidad de las estimaciones del aprendizaje automático en función de los conocimientos y experiencia previos.

      • Requisitos de habilidades de TI


        Una vez que haya completado la fase de investigación e identificado el método para resolver el problema y, cuando llegue el momento de implementar el modelo en una solución a largo plazo, es posible que necesite algunos conjuntos de habilidades de desarrollo de software o TI más tradicionales para continuar. En este punto del proyecto, debe responder a preguntas como:

        - ¿Deberíamos automatizar el proceso de aprendizaje automático para respaldar mejor el modelo? Si es así, ¿cómo?
        - ¿Cómo debemos desarrollar e implementar la solución para que funcione adecuadamente a escala (en el tamaño suficiente para resolver el problema) y permite mejoras de crecimiento y futuras?
        - ¿Cómo debemos mantener el sistema para que siga funcionando de manera óptima?

        Poner en marcha una solución de aprendizaje automático puede implicar:

        Administradores de bases de datos para garantizar el acceso a los datos.
        - Desarrolladores para codificar y mantener las soluciones.
        Administradores de sitios web para publicar y administrar las soluciones y el acceso a ellas.
        Expertos en seguridad de TI para proteger tanto los datos como la solución.

        También será necesario tomar decisiones sobre cómo implementar la solución, almacenar los datos para ella y si se debe usar hardware local o recursos basados en la nube.

      • Desviación del concepto


        Los modelos de aprendizaje automático se entrenan mediante el uso de datos históricos, lo que permite al modelo terminado realizar predicciones sobre el futuro. Si bien a menudo se dice que "la historia se repite", esto no siempre es cierto en el aprendizaje automático. Con el tiempo, podría ser más apropiado decir "el futuro no es lo que solía ser". Los modelos de aprendizaje automático pueden volverse menos efectivos al trabajar con nuevos conjuntos de datos por causa de la desviación del concepto, un proceso que puede ocurrir cuando los patrones que se utilizaron inicialmente para entrenar un modelo de aprendizaje automático cambian con el tiempo y el modelo ya no funciona de manera correcta con los nuevos datos.

        Por ejemplo, un modelo puede predecir las emisiones de carbono en función de los patrones de tráfico alrededor de una región del país. Con el tiempo, a medida que las poblaciones crecen y se reducen en la región y opciones como trabajar o estudiar desde casa se vuelven más disponibles, estos cambios pueden resultar en que el modelo cree predicciones menos precisas a medida que transcurre el tiempo. En esencia, la efectividad del modelo puede decaer en la medida que el concepto que intenta predecir cambia con el paso del tiempo.

        Es posible que no siempre se pueda predecir cuándo un modelo estará sujeto a la desviación del concepto, pero siempre debe considerar esta posibilidad al planear cómo se mantendrán los modelos en proyectos donde un modelo de aprendizaje automático se integra a una solución de software a largo plazo.

      • Aprendizaje por transferencia


        En algunos casos, puede dedicar mucho tiempo y recursos a desarrollar y refinar modelos como los modelos de redes neuronales que se utilizan para las tareas de visión artificial y procesamiento del lenguaje natural (PLN). Tal vez necesite desarrollar un nuevo modelo para resolver un problema similar. O es posible que tenga que actualizar un modelo antiguo, quizás uno que ya no funciona de manera óptima por la desviación del concepto.

        En lugar de empezar de nuevo desde cero, podría comenzar la nueva tarea basándose en el modelo anterior. El uso de un modelo de aprendizaje automático anterior como base para un nuevo modelo se llama aprendizaje por transferencia. Con este enfoque se puede acelerar el proceso de entrenamiento y mejorar el rendimiento de su modelo nuevo.

        Figura 1. El proceso de aprendizaje por transferencia.


      • Defina el éxito mensurable


        Después de formular el problema que intenta resolver con IA y el aprendizaje automático y de haber reunido un equipo de personas con conocimientos de ciencia de datos, dominio y TI para ejecutar el proyecto, debe definir qué es el éxito del proyecto y esta definición debe ser mensurable. En su forma más simple, su medición del éxito debe describir qué tan bien su solución aborda o resuelve el problema formulado.

        Por ejemplo, si el objetivo del software de reconocimiento facial es poder desbloquear de manera confiable el teléfono de una persona mediante el uso de la cámara frontal, debe rastrear la frecuencia con la que el teléfono realiza la tarea con éxito y la frecuencia con la que produce un error. En este caso, el proyecto podría considerarse exitoso si el teléfono nunca se desbloquea para una persona que no es el propietario y se desbloquea para su propietario al menos el 75 % de las veces.

      • Evaluación de riesgos


        Los proyectos de IA y AA pueden implicar mucho riesgo. Estos proyectos a menudo se construyen con datos que pueden contener información personal, privada y legalmente protegida y los resultados de estos proyectos pueden tener consecuencias personales, cívicas y legales para las personas o poblaciones que se están analizando. Los riesgos pueden incluir cualquiera de los siguientes:


        - Riesgos relacionados con los datos, como por ejemplo:
        Proporcionar o permitir el acceso no autorizado a datos y resultados durante el proyecto de fuentes internas y externas.
        La posibilidad de brechas de información.
        Violación de las leyes y regulaciones de cumplimiento de datos.
        - Riesgos legales y monetarios. Si se descubre que el equipo u organización actuó de manera inapropiada en el proyecto, podrían estar expuestos a acciones legales penales o cívicas que pueden resultar en multas u otras sanciones.
        - Riesgos éticos. Incluso si todos los involucrados siguen todas las leyes y regulaciones relevantes, si los datos o resultados del proyecto de IA o aprendizaje automático se utilizan de una manera que daña a uno o varios segmentos de la sociedad, podría haber una reacción violenta hacia los miembros del equipo y las organizaciones participantes. Esta reacción violenta podría tomar muchas formas, desde consumidores que boicotean las marcas, hasta disturbios sociales.
        - Riesgos relacionados con el proyecto. Incluso si el proyecto produce con éxito los resultados esperados y deseados, si esos resultados crean problemas técnicos, legales o éticos, el proyecto podría verse como un fracaso y los miembros del equipo podrían perder la confianza de sus compañeros.


        Debido a que los riesgos pueden afectar a tantas personas y entidades de tantas maneras, mitigarlos es una práctica generalmente aceptada. La mitigación es la práctica de reducir la gravedad de algo.
        Algunas formas de mitigar los riesgos en los proyectos de IA y AA incluyen:

        Seguir el flujo de trabajo de AA.
        Documentar las decisiones hechas en cada paso del flujo de trabajo de aprendizaje automático.
        Aclarar y documentar objetivos, supuestos y resultados deseados.
        Considerar, evaluar y documentar cualquier resultado potencialmente negativo.
        Incluir expertos legales y éticos al equipo del proyecto para ayudar a identificar resultados indeseables que podrían conducir a responsabilidad legal o ética.


        Los miembros clave del equipo del proyecto deben revisar el proyecto regularmente a medida que avanza para evaluar los riesgos y garantizar que se adopten las medidas adecuadas para mitigarlos.

      • Ámbito del proyecto y su progresión


        Cuando trabaja con IA y AA, quizás no participe directamente en el aspecto de gestión de alto nivel del proyecto. Sin embargo, es probable que aún necesite participar o al menos comprender los componentes clave del proyecto. Uno de esos componentes es el ámbito del proyecto. El ámbito hace referencia a una descripción de todos los aspectos del proyecto, incluidas las restricciones, las limitaciones o los límites establecidos en el proyecto para ayudar a definirlo.
        El ámbito de un proyecto se define cuando comienza el ciclo de vida del proyecto. En un contexto de ciencia de datos, esto puede incluir:

        - Recursos de software y hardware. Los proyectos de IA y AA requieren recursos de hardware y software destinados para el equipo. Los recursos de software pueden incluir lenguajes de programación, bibliotecas de programación de terceros, entornos de desarrollo, entornos de prueba y así sucesivamente. Los recursos de hardware pueden incluir unidades centrales de procesamiento (CPU), unidades de procesamiento gráfico (GPU), dispositivos de almacenamiento de datos como unidades de estado sólido (SSD), dispositivos de red como enrutadores y mucho más. La forma en la que se asignan esos recursos también forma parte del ámbito, es decir, ¿están en las instalaciones o se abastecen en la nube?

        - Profesionales y otras partes interesadas. El ámbito también debe determinar quién trabajará en el proyecto y cuál será su función. Algunos profesionales (personas que ejercen una profesión) están mejor dotados para realizar una tarea, mientras que otros deben ser ubicados en otra. Incluso los no profesionales pueden tener un impacto en el proyecto, como los empleados de TI que mantienen la red que los profesionales de la ciencia de datos utilizan para comunicarse o compartir datos. Incluso puede incluir clientes externos en el ámbito del proyecto si necesitan proporcionar información.
        Nota: Una parte interesada es una persona o un grupo que tiene un interés en algo.

        - Procesos y procedimientos. El ámbito debe definir claramente los procesos y procedimientos para llevar a cabo tareas de ciencia de datos, o para que los miembros del equipo puedan terminar trabajando en las tareas innecesarias.

        - Medidas para el éxito. Como cualquier proyecto, un proyecto de ciencia de datos debe tener una forma de medir el éxito para garantizar el cumplimiento de sus objetivos.

        - Plazos y entregables. Los miembros del proyecto deben saber cuál es el producto final se espera que produzcan y cuándo. También es posible que necesiten producir entregables incrementales en ciertas etapas para garantizar que el proyecto se desarrolle sin problemas.

        Poner restricciones en un proyecto es importante porque, sin ellas, el proyecto puede seguir creciendo, avanzando más y más, hasta que el proyecto ya no es sostenible o no cumple con las expectativas, un concepto llamado 
        progresión del ámbito. Debe pensar en lo que es necesario para lograr sus objetivos y en lo que no lo es.


        - La inversión en varias GPU podría reducir el tiempo de creación del modelo, pero el gasto podría superar el beneficio.

        Es posible que quiera crear varios entregables complejos y sofisticados, pero quizás esto no sea factible en su escala de tiempo o con su presupuesto.

        Tal vez no tenga suficientes datos (o suficientes datos de calidad) para avanzar con una idea.

        También podría encontrar obstáculos técnicos, como no tener acceso a herramientas listas para usar que puedan abordar sus necesidades específicas.

        También puede haber riesgos involucrados en la implementación de una idea, como aquellos que exponen vulnerabilidades de ciberseguridad o tienen implicaciones éticas significativas.


        Debe contemplar estos tipos de limitaciones cuando defina el ámbito del proyecto.


      • Planificación de un flujo de trabajo del aprendizaje automático