El machine learning está cada vez más presente en nuestra vida cotidiana. Desde funciones de fondo en nuestros dispositivos cotidianos hasta convertirse en una habilidad muy necesaria si eres programador. Por desgracia, hay algo que no ha cambiado: sigue siendo bastante difícil iniciarse en el machine learning si no se tiene una formación técnica. Incluso si eres una persona técnica que sabe codificar, el machine learning tiende a ser muy difícil, incluso para proyectos básicos como los clasificadores de Machine Learning.
Pero, ¿por qué es tan difícil empezar? Te ahorraré el ensayo de cuatro páginas y te daré las SparkNotes:
- El machine learning por sí mismo es un reto para construir porque requiere codificación de alto nivel + matemáticas (no siempre, pero este es el caso la mayoría de las veces). Un desarrollador medio tiene que enfrentarse no a una, sino a dos curvas de aprendizaje.
- La gran dependencia de enormes conjuntos de datos (y me refiero a conjuntos de datos MASIVOS). Los modelos de machine learning requieren del orden de 50K a 100K muestras únicas para entender un problema. En la mayoría de los casos, la recopilación de datos no supone un gran problema si se quiere trabajar en problemas muy habituales; sin embargo, si el problema se convierte en algo único, resulta muy difícil recopilar todos estos datos.
- El entrenamiento de los modelos lleva demasiado tiempo. Incluso para tareas básicas, puedes encontrarte entrenando un modelo durante horas en un procesador de gama alta. En gran medida, esto no es factible para los desarrolladores.
Entonces, ¿cómo podemos solucionar esto? ¿Y si pudiéramos eliminar la necesidad de big data, suprimir el entrenamiento y ofrecer a los desarrolladores una experiencia sencilla sin código y con poco código? Te presentamos a Humingbird.
Tabla de contenidos
Humingbird: La forma más sencilla de iniciarse en el machine learning
En primer lugar, me gustaría dar un pequeño rodeo y volver a hablar de Humingbird.
Antes de que existiera Stripe, los pagos online eran uno de los proyectos más confusos en los que trabajar como desarrollador (para los que no estén familiarizados, Stripe es una herramienta para desarrolladores que hace que los pagos online sean sencillos). Había que ponerse en contacto con un banco, negociar un acuerdo, obtener la aprobación y trabajar con sus sistemas heredados. En resumen, era una barrera enorme incluso para aceptar un simple pago en línea para las empresas.
Entonces apareció Stripe, y podías pegar un pequeño programa de 6 líneas en tu backend para aceptar pagos online. Sin aplicación, sin negociaciones, simplemente plug and play. Hoy en día, Stripe impulsa la gran mayoría de los pagos en Internet, desde las grandes empresas hasta los proyectos desarrollados a pequeña escala.
¿Por qué estoy hablando de pagos? ¿No era este un blog sobre machine learning?
Aunque parezca una locura, creo que el machine learning todavía está en los «viejos tiempos» de los pagos en línea y no tenemos nada parecido a un servicio simple de plug and play. En otras palabras, no tenemos el equivalente de Stripe en machine learning.
Esta es la intención de Humingbird: una experiencia de machine learning altamente simplificada que simplemente funciona desde el principio. Sin largos ciclos de recogida de datos, ajuste de modelos, entrenamiento y codificación complicada.
Humingbird es una plataforma para que los desarrolladores construyan clasificadores de machine learning personalizables:
- Poco o nada de código.
- Sin datos (no una pequeña cantidad, literalmente sin datos).
- Sin entrenamiento del modelo.
Pero en lugar de hablar de ello, ¡comparemos algunos ejemplos comunes!
Tareas comunes de machine learning: Humingbird frente al resto
Veamos algunos ejemplos de cómo Humingbird proporciona una simplicidad de siguiente nivel en comparación con las opciones comunes.
MNIST: Humingbird frente a TensorFlow y PyTorch
MNIST es una tarea común de nivel de entrada para las personas que aprenden el aprendizaje de máquinas. La tarea es simple: dado un dígito escrito a mano (como una imagen), predecir qué número es. Te comparto el código necesario para cada uno de los casos en los siguientes enlaces:
Humingbird no requiere preprocesamiento de datos, entrenamiento, recogida de datos ni una programación complicada. Pero, ¿y si quisiéramos predecir también un «10» escrito a mano? Todo lo que tenemos que hacer es añadir la etiqueta que podrás encontrar aquí.
Reseñas de IMDb: Humingbird vs TensorFlow y PyTorch
Otra tarea común en el machine learning es el conjunto de datos de críticas de películas de IMDb. Esta tarea se utiliza comúnmente para predecir el sentimiento en un pasaje de texto y hasta el día de hoy se utiliza como punto de referencia. Vamos a comparar los frameworks comunes y Humingbird:
Ya te has hecho una idea. Con Humingbird, puedes construir clasificadores de machine learning a medida en un abrir y cerrar de ojos.
Mi objetivo: hacer que el machine learning sea accesible y sencillo
Como probablemente puedes adivinar, mi motivación para construir Humingbird es muy simple: Quiero que el machine learning sea más sencillo para todo el mundo, aunque sea en lo más simple.
Si quieres saber más sobre el proyecto, dirígete a este post.
Aquí puedes leer los documentos y empezar.
Más contenido en PlainEnglish.io. Suscríbete a nuestra newsletter semanal gratuita. Siguenos en Twitter y LinkedIn. Echa un vistazo a nuestro Community Discord y únete a nuestro Talent Collective.