AI Project
AI Project
AUDRIUS ZUJUS
largo de su carrera, que abarcan estructuras monolíticas complejas para aplicaciones web SaaS.
proyectos con diferentes requisitos y problemas están llegando al horizonte a una velocidad
rápida.
Con el auge de estas tecnologías, se está volviendo menos “agradable de tener” y, en cambio,
esencial para que los gerentes de proyectos técnicos tengan una relación saludable con estos
conceptos. Según Gartner, para 2020, AI generará 2,3 millones de empleos, superando los 1,8
millones que eliminará, generando $ 2.9 billones en valor comercial para 2021. El CEO de
Google llega a decir que "la IA es una de las cosas más importantes en las que la humanidad está
Con aplicaciones de inteligencia artificial que ya están alterando industrias que van desde las
finanzas hasta la atención médica, los PM técnicos que pueden aprovechar esta oportunidad
1
deben comprender cómo la gestión de proyectos de IA es distinta y cómo pueden prepararse
Antes de profundizar, es importante tener una comprensión sólida de lo que realmente es la IA.
Con muchos términos diferentes que a menudo se usan indistintamente, veamos primero las
generalización.
Este término se ha usado en exceso en los últimos años para denotar inteligencia artificial
cognición real. Sin embargo, la mayoría de los sistemas de inteligencia artificial en el futuro
2
previsible serán lo que los informáticos llaman "inteligencia artificial limitada", lo que significa
que estarán diseñados para realizar una tarea cognitiva realmente bien, en lugar de realmente
estadísticas para dar a las computadoras la capacidad de aprender de los datos sin ser
programados explícitamente.
AI y ML han sido utilizados indistintamente por muchas empresas en los últimos años debido al
éxito de algunos métodos de aprendizaje automático en el campo de la IA. Para ser claros, el
Para obtener más información sobre las redes neuronales y el aprendizaje profundo, consulte el
Una conclusión clave de la IA es que sus algoritmos usan una gran cantidad de datos para
ajustar su estructura interna de modo que, cuando se presentan nuevos datos, se clasifican de
acuerdo con los datos previos proporcionados. Llamamos a esto "aprendizaje" de los datos en
código.
3
Imagine que queremos escribir un programa que pueda diferenciar los automóviles de los
busque características específicas e indicativas, como ruedas más grandes o un cuerpo más
largo. Tendríamos que escribir código que defina específicamente cómo se ven estas
características y dónde deben encontrarse en una foto. Escribir un programa de este tipo y hacer
que funcione de manera confiable es muy difícil, probablemente produciendo tanto falsos
positivos como falsos negativos, hasta el punto de que al final puede no ser utilizable en
absoluto.
Aquí es donde los algoritmos de IA se vuelven muy útiles. Una vez que se entrena un algoritmo
de IA, podemos mostrarle muchos ejemplos, y ajusta su estructura interna para comenzar a
Los humanos no son buenos para manejar grandes volúmenes de datos, y el gran volumen de
datos disponibles a veces nos impide usarlos directamente. Aquí es donde entran los sistemas de
IA.
Un concepto muy central con respecto a los sistemas de IA es que sus predicciones son tan
buenas como sus datos. Por ejemplo, un algoritmo con un millón de puntos de datos superará al
mismo algoritmo con 10,000 puntos de datos. Además, BCG informa que “muchas compañías no
entienden la importancia de los datos y la capacitación para el éxito de la IA. Con frecuencia, la
4
mejor información es más crucial para construir un sistema inteligente que los algoritmos mejor
descubiertos, de la misma manera que la crianza a menudo supera la naturaleza en los seres
humanos ".
Con este conocimiento, la preparación y limpieza de datos es algo que prevalecerá en el proceso
del proyecto. Este paso es a menudo la parte más laboriosa de la construcción de un sistema de
inteligencia artificial, ya que la mayoría de las empresas no tienen los datos listos en los
formatos correctos; por lo tanto, los analistas de datos pueden tardar un tiempo en completar
mucho más lineales que el desarrollo de software habitual y pueden requerir una metodología
Para resumir, puede llevar mucho más tiempo construir la infraestructura de datos adecuada y
preparar los datos que se utilizarán que crear el modelo de aprendizaje automático para ejecutar
los datos. Esta es una gran consideración para los gerentes de proyecto, ya que manejan equipos
Además, el conjunto de datos debe actualizarse continuamente con los nuevos datos. El acceso a
conjuntos de datos únicos podría ser el principal factor decisivo para definir qué producto ML
5
tiene más éxito. Es fundamental mantenerse actualizado sobre esto para alcanzar el mejor
estándar (SDLC) junto con cómo las diferentes metodologías y tecnologías lo están
DESCUBRIMIENTO DE DATOS
En esta primera etapa, el enfoque debe centrarse en dos cosas clave: el usuario final del producto
Al abordar el problema desde dos lados independientes, estas técnicas pueden ayudar a un
dentro de una empresa. Durante esta fase, los mejores PM pueden beneficiarse de su
que se pueden resolver ciertos problemas. Las cosas se mueven muy rápido en el campo de ML,
y algunos problemas difíciles pueden facilitarse con los nuevos desarrollos en investigación.
Como se mencionó anteriormente, una vez que se descubren los datos, deben limpiarse y
prepararse. Esta tarea específica normalmente se realiza en pasos lineales, que no se ajustan
perfectamente a las metodologías de proyecto típicas como Agile o Waterfall, aunque pueden
6
forzarse a correr. Por lo general, la limpieza de datos se realiza de forma iterativa aumentando
de desarrollo.
La verdad de que es mejor tener un prototipo funcional de un producto más pequeño, en lugar
de uno grande inacabado, sigue vigente aquí con productos de aprendizaje automático. Los
empresa. Si puede entregar productos, incluso aquellos que pueden ser más pequeños, con
rapidez, puede ser una buena y rápida victoria para todo el equipo; primero debe priorizar estos
productos.
Preparar estos MVP en la moda Agile clásica es una buena idea, y el equipo de desarrollo debe
preparados independientemente por el equipo de datos. Una distinción importante aquí es que
acceso API de alta frecuencia desde todo el mundo, entonces debería considerar cómo puede
7
Aquí es donde los cambios en los módulos ML deben evaluarse cuidadosamente para evitar
romper el rendimiento del producto actual. Volver a entrenar los módulos ML con nuevos
algoritmos o conjuntos de datos no siempre trae un aumento lineal del rendimiento, por lo
tanto, se requiere una cantidad sustancial de pruebas antes de la implementación en vivo. Las
pruebas de módulo de ML para casos extremos y posibles ataques de red de confrontación generativa
(GAN) todavía están en su infancia, pero definitivamente es algo que los gerentes de proyecto
SDLC de los productos de IA. Para ser un gran gerente de proyectos en el campo de las
aplicaciones de ML, debe estar muy familiarizado con los siguientes tres roles: científicos de
datos, ingenieros de datos e ingenieros de infraestructura. Aunque a veces se los designa bajo
ML.
Tres roles clave con los que los PM técnicos deberían estar familiarizados: científico de datos,
8
CIENTÍFICO DE DATOS
Los científicos de datos son las personas que construyen los modelos de aprendizaje automático.
aprendizaje automático y el análisis, y luego aplican sus ideas para resolver problemas
comerciales reales.
Los científicos de datos a veces son vistos como versiones avanzadas de analistas de datos. Sin
sienten cómodos procesando grandes cantidades de datos que abarcan centros de datos y tienen
También se espera que comprendan bien las infraestructuras de datos y la minería de big data,
así como que puedan realizar ejercicios exploratorios por su cuenta, observar los datos y
Habilidades fundamentales: Python, R, Scala, Apache Spark, Hadoop, Machine Learning, Deep
INGENIERO DE DATOS
software e infraestructura necesarios para que los productos ML funcionen. Tienden a centrarse
o big data, deben tener una buena comprensión de estos temas para probar su software e
infraestructura. Esto es necesario para permitir que los modelos de aprendizaje automático
creados por el científico de datos se implementen con éxito y se expongan al mundo real.
9
Habilidades fundamentales: Python, Hadoop, MapReduce, Hive, Pig, Data Streaming,
INGENIERO DE INFRAESTRUCTURA
capa de infraestructura. Si bien los ingenieros de datos pueden construir parte de esta
infraestructura.
Los ingenieros de infraestructura pueden trabajar en varios equipos de ML, con el objetivo de
crear un entorno escalable y eficiente en el que las aplicaciones de ML puedan escalar para
atender a millones de usuarios. Los ingenieros de infraestructura no solo se encargan del nivel
de software de las plataformas, sino que también se coordinan con los socios del centro de datos
para garantizar que todo funcione sin problemas, desde la ubicación geográfica de los datos
alojados hasta el hardware. Con estos aspectos ganando importancia para los proyectos de ML,
los ingenieros de infraestructura son cada vez más importantes en las empresas impulsadas por
la inteligencia artificial.
Habilidades fundamentales: Kubernetes, Mesos, EKS, GKE, Hadoop, Spark, HDFS, CEPH,
Con la aparición de productos basados en IA y ML, se espera que los gerentes de proyecto se
enfrenten a desafíos tanto familiares como completamente ajenos. Los principales PM están
10
muy conscientes de estos posibles problemas a lo largo de todo el proceso, desde el alcance de
CONTROL DE REALIDAD
A pesar de la popularidad y la promesa de la IA, existe una buena posibilidad de que el problema
más simples y, en algunos casos, más confiables. Es muy importante que un PM haga una
A veces es aconsejable comenzar con un modelo estadístico más simple y avanzar en paralelo
con una solución basada en aprendizaje automático. Por ejemplo, si está creando un motor de
recomendación, podría ser prudente comenzar con una solución más simple con un ciclo de vida
de desarrollo más rápido, proporcionando una buena base de referencia para que el modelo de
ML posterior supere.
AI SCOPE CREEP
Las causas más comunes del aumento de alcance en los proyectos de LA están relacionadas con
tratar de hacer demasiadas cosas a la vez y subestimar el esfuerzo necesario para preparar los
datos.
11
Para abordar el primer problema, administre a las partes interesadas para que comprendan que
es mejor comenzar con ganancias rápidas en lugar de planes grandiosos. Comunique este
Comience con pequeñas características atómicas que se pueden definir y probar fácilmente. Si se
encuentra con una tarea compleja, intente dividirla en tareas más simples que sean buenos
representantes de su tarea principal. Debería ser fácil comunicar lo que estas tareas se
propusieron lograr.
Por ejemplo, si está intentando predecir cuándo un usuario hará clic en un anuncio específico,
primero puede intentar predecir si el usuario descarta el anuncio por completo. En este enfoque,
Facebook ha hecho una gran serie profundizando en este tema, centrándose más en la tubería de
ML desde el inicio hasta la entrega del modelo. Para dirigirse al segundo contribuyente al
arrastre de alcance, asegúrese de que es capaz de preparar los datos para respaldar sus proyectos
de ML. Simplemente suponiendo que tiene los datos necesarios, en el formato necesario, es el
error más común que cometen los PM al comenzar con los proyectos de ML. Dado que la
preparación y limpieza de datos a menudo es la parte más larga del proceso del proyecto ML, es
esencial administrar este paso. Asegúrese de que su científico de datos tenga acceso a los datos
correctos y pueda verificar su calidad y validez antes de proponer las características de ML que
desea construir.
Prepárese para etiquetar y limpiar los datos como un ejercicio continuo durante todo el
proyecto, no solo como iniciador, ya que el proyecto siempre puede beneficiarse de mejores y
más datos. Dado que este paso no es la tarea más cautivadora, divida este trabajo en sprints para
que su equipo de datos pueda sentir el progreso de sus esfuerzos en lugar de enfrentar una
A veces, las empresas subcontratan el etiquetado de datos a terceros. Si bien esto puede ayudar a
ahorrar tiempo y costos iniciales, también puede producir datos poco confiables, lo que en
12
última instancia obstaculiza el éxito de su modelo ML. Para evitar esto, use la técnica de
superposición múltiple, donde cada parte de los datos es verificada por múltiples partes y solo se
Cuando planifique el proyecto, deje suficiente tiempo para que el equipo de datos realice ajustes
en caso de que sus requisitos de etiquetado cambien a mitad del proyecto y se requiera volver a
etiquetar.
Finalmente, verifique si sus datos se pueden usar fácilmente con los métodos de ML existentes
en lugar de inventar nuevos métodos de ML, ya que comenzar desde cero puede aumentar
drásticamente el tiempo y el alcance del proyecto. Tenga en cuenta que si está tratando de
posibilidad de que falle. A pesar del éxito del aprendizaje automático y la cantidad de
trabajos de investigación publicados, resolver problemas de LA puede ser una tarea muy difícil.
Siempre es más fácil comenzar con un área de ML que tiene muchos buenos ejemplos y
Cada PM debe estar listo para pensar en la experiencia del usuario de los productos de IA que
están creando y cómo gestionar mejor el equipo que los está creando. Google escribió una gran
pieza sobre su forma de pensar sobre UX e IA, con énfasis en la interacción humana.
Este punto es especialmente importante si su producto ML tiene que interactuar con operadores
o incluso ser reemplazado por ellos. El diseño debe agregar la cantidad mínima necesaria de
estrés a los operadores y usuarios del sistema. Por ejemplo, los chatbots a menudo se basan en el
13
También existe la posibilidad de que las partes interesadas puedan esperar mucho más de los
productos de aprendizaje automático de lo que pueden ofrecer. Esto suele ser un problema
derivado de la exageración creada por los medios al escribir sobre productos de IA y, por lo
Asegúrese de explicar qué es realmente la herramienta de IA y qué puede lograr para sus partes
interesadas para que pueda gestionar sus expectativas lo suficientemente bien antes de que
prueben la herramienta. Good UX es excelente, pero no puede ofrecer valor a los usuarios con
expectativas poco realistas, por lo que es esencial que cualquier PM involucrado los administre y
aplicaciones que utilizan el aprendizaje profundo para lograr sus objetivos. Estos nuevos
Si bien es relativamente fácil probar un software estándar que tiene un claro "conjunto de
reglas" escrito por personas, es mucho más difícil probar exhaustivamente los modelos de
neuronales. Actualmente, la mayoría de los modelos de ML son probados por los propios
científicos de datos, sin embargo, existen pocos métodos acordados de prueba con equipos de
control de calidad estándar para garantizar que los productos de ML no fallen de manera
inesperada.
Con nuevas formas de manipular los resultados de los modelos conocidos, como estos ataques
GAN, las pruebas exhaustivas de modelos serán cada vez más importantes. Esto se convertirá en
14
una prioridad para muchos proyectos de ML, y veremos más pruebas de tipo de "integración"
para los modelos de ML en los próximos años. Para la mayoría de los proyectos simples, esto
puede no ser un problema tangible actualmente, pero es importante tener esto en cuenta si está
Esto sigue siendo bastante difícil de lograr bien, pero si tiene un modelo que se ejecuta a través
de una API disponible públicamente, es importante tener en cuenta esta posibilidad. En teoría,
una parte con acceso sustancial a ella podría entrenar su propia red basada en la suya y copiar
Esto todavía es bastante limitado en términos de posibilidad, pero asegúrese de trabajar con su
equipo en una estrategia de prevención para posibles ataques si esto es una preocupación para
su proyecto.
ESCASEZ DE TALENTO
para obtener el talento adecuado es feroz. De hecho, el New York Times informa que los
expertos en inteligencia artificial de clase mundial pueden ganar hasta $ 1 millón por año
trabajando para las grandes potencias tecnológicas de Silicon Valley. Como primer ministro,
mientras busca expertos en inteligencia artificial para unirse a su equipo, tenga en cuenta estas
dinámicas, ya que pueden afectar sus ciclos de contratación, presupuesto o calidad del trabajo
realizado.
15
Esta escasez se extiende más allá de las mentes innovadoras que crean los nuevos algoritmos de
aprendizaje profundo y también es cierto para los ingenieros y científicos de datos de alta calidad.
como Kaggle, donde pueden esperar ganar más de $ 100,000 por resolver problemas difíciles de
El primer conjunto de desafíos proviene de los datos utilizados para entrenar los modelos ML.
Es esencial comprender dónde se originan los datos que usa, y específicamente si tiene los
derechos para utilizarlos y las licencias que le permiten usar los datos.
Siempre es importante consultar a sus abogados para resolver esas preguntas antes de
implementar un modelo capacitado en los datos para los cuales puede no tener el tipo correcto
de licencia. Dado que este es un campo relativamente nuevo, muchas de estas respuestas no
están claras, pero los PM deben asegurarse de que sus equipos solo usen conjuntos de datos que
Aquí hay una buena lista de conjuntos de datos disponibles públicamente para entrenar sus
algoritmos de ML.
sistemático. Ha habido numerosos casos de tales problemas en los últimos años, donde una
compañía de cámaras tuvo que admitir que su tecnología de reconocimiento de sonrisas solo
detecta a personas de una raza en particular porque solo se entrenó en datos que contienen
16
caras de esa raza. Otro ejemplo provino de una gran compañía de software, que tuvo que retirar
concertado de un grupo de trolls de Internet hizo que produjera insultos raciales y repitiera
conspiraciones salvajes.
El grado de estos problemas puede ser menor o destruir proyectos, por lo tanto, al desarrollar
sistemas que son críticos, los PM deben asegurarse de considerar esas posibilidades y evitarlas
lo antes posible.
Los mejores gerentes de proyectos técnicos no solo tienen una buena comprensión de los
conceptos básicos de IA, sino también la intuición de la dificultad de cada paso del proyecto y lo
que es realmente posible crear con su equipo. Dado que AI no es una solución comercial
estándar (COTS), incluso las empresas que eligen comprar ciertos productos de ML aún tendrán
que invertir en probar cosas nuevas y administrar sus datos e infraestructura correctamente.
17
Está claro que los tipos de productos de software y los procesos para crearlos están cambiando
con la aparición de la IA. Los gerentes de proyecto que sean capaces de comprender y ejecutar
Teoría adicional: DL y NN
(ML), los gerentes de proyecto pueden beneficiarse al estar conscientes de un mayor aprendizaje
La mayoría de los modelos modernos de aprendizaje profundo se basan en una red neuronal
18
Las redes neuronales son estructuras matemáticas conectadas inspiradas biológicamente que
Podemos imaginar estas redes como millones de puertas pequeñas que se abren o cierran,
dependiendo de nuestra entrada de datos. El éxito de estas técnicas fue posible gracias al
crecimiento de la potencia informática de la GPU en los últimos años, lo que nos permite ajustar
https://www.nvidia.com/es-la/drivers/what-is-gpu-computing/
Existen múltiples tipos de redes neuronales, cada una acompañada de sus propios casos de uso
específicos y su nivel de complejidad. Es posible que vea términos como CNN (red neuronal
convolucional) o RNN (red neuronal recurrente) utilizados para describir diferentes tipos de
Para comprender mejor cómo se ven y funcionan, aquí hay una gran visualización en 3D de cómo
19
COMPRENDER LOS CONCEPTOS BÁSICOS.
Las redes neuronales son estructuras matemáticas que permiten a los sistemas de inteligencia
artificial "aprender" de los datos suministrados. Podemos imaginar estas redes como millones
20