Geekflare cuenta con el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliados comprando enlaces en este sitio.
Comparte en:

¿Cómo empezar con el aprendizaje automático?

comenzando ml
Escáner de seguridad de aplicaciones web Invicti – la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

Los intentos de diseñar máquinas más inteligentes que los humanos no son nuevos.

Uno de los primeros ataques que la informática hizo a la "inteligencia" humana fue a través del juego de ajedrez. El ajedrez es (¿o deberíamos decir, fue?) asumido por muchos como la prueba definitiva del intelecto y la creatividad humanos, y allá por los años 1960 y 70, había diferentes escuelas de pensamiento dentro de la informática.

Algunos sostenían que era solo cuestión de tiempo antes de que las computadoras superaran a los humanos en el juego de ajedrez, mientras que otros creían que esto nunca sucedería.

Kasparov contra Deep Blue

El evento más sensacional con el hombre contra la máquina en la batalla del pensamiento fue el partido de ajedrez de 1996 entre el entonces campeón mundial Garry Kasparov (y posiblemente el mejor jugador de ajedrez de todos los tiempos) y Deep Blue, una supercomputadora que IBM diseñó para este mismo evento.

kasparov-vs.-deep-blue
Crédito de la imagen: Wikipedia

Para abreviar una larga historia, Kasparov ganó el partido de 1996 de manera convincente (4-2) pero perdió la revancha de 1997 (4.5-3.5) en medio de mucho controversia y las acusaciones directas de trampa de Kasparov contra IBM.

Independientemente, una era en el ajedrez y la informática había terminado. Las computadoras tenían derecho a ser más inteligentes que cualquier ser humano vivo posible. IBM, feliz con la venganza, desmanteló Deep Blue y siguió adelante.

Hoy en día, es imposible para cualquier gran maestro vencer a cualquier motor de ajedrez normal que funcione con hardware básico.

What isn’t Machine Learning?

Antes de analizar más a fondo el aprendizaje automático, eliminemos algunos conceptos erróneos. El aprendizaje automático no es, ni mucho menos, un intento de replicar el cerebro humano. A pesar de las creencias sensacionalistas de personas como Elon Musk, los investigadores de ciencias de la computación sostienen que no están en busca de este grano sagrado y, ciertamente, no están cerca de él.

En pocas palabras, el aprendizaje automático es la práctica de aplicar procesos de aprendizaje mediante ejemplos a las computadoras. Esto contrasta con el enfoque tradicional de confiar en un programador humano para pensar en todos los escenarios posibles y las reglas de código rígido para ellos en un sistema.

Honestamente, eso es lo que es el aprendizaje automático: alimentar toneladas y toneladas y toneladas de datos a una computadora para que pueda aprender de los ejemplos (prueba → error → comparación → mejora) en lugar de depender del código fuente.

Applications of Machine Learning

Entonces, si el aprendizaje automático no es magia negra y tampoco va a generar Terminators, ¿para qué es útil?

aprendizaje automático

El aprendizaje automático ayuda en los casos en que la programación tradicional fracasa, y estos casos generalmente se incluyen en una de las dos categorías.

  • Clasificación
  • Predicción

Como su nombre lo indica, la clasificación se refiere a etiquetar las cosas correctamente, mientras que la predicción tiene como objetivo corregir las proyecciones futuras, dado un conjunto de datos suficientemente grande de valores pasados.

Cosas aplicaciones interesantes de Machine Learning son:

filtrado de spam

Correo electrónico no deseado es omnipresente, pero tratar de detenerlo puede ser una pesadilla. ¿Cómo se define el spam? ¿Es la presencia de palabras clave específicas? ¿O tal vez la forma en que está escrito? Es difícil pensar en un conjunto exhaustivo de reglas en cuanto a programas.

Por eso utilizamos el aprendizaje automático. Mostramos al sistema millones de mensajes spam y no spam y dejamos que se encargue del resto. ¡Este fue el secreto detrás de los excelentes filtros de correo no deseado de Gmail que sacudieron el correo electrónico personal a principios de la década de 2000!

Recomendaciones

Hoy en día, todas las principales empresas de comercio electrónico cuentan con potentes sistemas de recomendación. A veces, su capacidad para recomendar cosas que "podríamos" encontrar útiles es increíblemente precisa, a pesar de que nunca antes hayamos hecho clic en ese elemento.

¿Coincidencia? ¡De ningún modo!

El aprendizaje automático está trabajando duro aquí, engullendo terabytes tras terabytes de datos y tratando de predecir nuestros estados de ánimo y preferencias volátiles.

Chatbots

¿Se ha encontrado con un servicio de atención al cliente de primer nivel que parecía extrañamente robótico y, sin embargo, pudo entablar una pequeña charla interesante?

chatbot-ilustracion

Bueno, entonces has sido engañado por Machine Learning.

Aprender de las conversaciones y determinar qué decir cuando es un área próxima y emocionante de aplicación de chatbot.

Eliminación de malezas

En la agricultura, los robots impulsados ​​por el aprendizaje automático se utilizan para rociar las malas hierbas y otras plantas no deseadas en medio de los cultivos de forma selectiva.

De lo contrario, esto tendría que hacerse a mano o sería un desperdicio enorme ya que el sistema rociaría el producto también con el líquido asesino.

Interacción basada en voz con los sistemas informáticos ya no es ciencia ficción. Hoy tenemos asistentes digitales como Alexa, Siri y Google Home que pueden tomar comandos verbalmente y no estropearse (bueno, ¡casi!).

Google-búsqueda por voz

Algunos podrían argumentar que es un invento que es mejor evitar ya que está haciendo que la raza humana sea más perezosa que nunca, pero no se puede discutir la efectividad.

El diagnóstico médico

Estamos al borde de una revolución en el diagnóstico médico, ya que los sistemas basados ​​en aprendizaje automático están comenzando a superar a los médicos experimentados en diagnóstico a través de radiografías, etc.

Tenga en cuenta que esto no significa que pronto no se necesitarán médicos, sino que la calidad de la atención médica aumentará drásticamente, mientras que los costos se hundirán (¡a menos que los carteles comerciales dicten lo contrario!).

Esto fue solo una muestra de para qué se está utilizando Machine Learning. Los coches autónomos, los bots de juegos de estrategia, las máquinas dobladoras de camisetas, el descifrado de captchas y las fotos en blanco y negro para colorear están sucediendo en estos días.

Types of Machine Learning

Las técnicas de aprendizaje automático son de dos tipos.

Aprendizaje Supervisado, en el que el sistema está dirigido por el juicio humano, y Aprendizaje No Supervisado, en el que se deja que el sistema aprenda por sí mismo. Otra forma de decir lo mismo sería que en el aprendizaje supervisado tenemos un conjunto de datos que contiene tanto las entradas como la salida esperada, que el sistema usa para comparar y autocorregirse. Sin embargo, en el aprendizaje no supervisado, no hay salida existente para medir, por lo que los resultados pueden variar enormemente.

¿Una aplicación emocionante y escalofriante de aprendizaje automático no supervisado?

Eso sería bots jugando juegos de mesa, en los que al programa se le enseñan las reglas del juego y las condiciones ganadoras y luego se deja a sus propios dispositivos. Luego, el programa juega millones de juegos contra sí mismo, aprendiendo de sus errores y reforzando las decisiones ventajosas.

Si estás en una computadora lo suficientemente potente, ¡se puede preparar una IA de juego mundial en cuestión de unas pocas horas!

Las siguientes imágenes ilustran estas ideas de manera sucinta (fuente: Medio):

aprendizaje automático supervisado
aprendizaje automático no supervisado

Tools and Libraries for Machine Learning

Los profesionales de la ciencia de datos utilizan muchas herramientas y bibliotecas de ML para resolver problemas complejos de aprendizaje automático. Aquí están algunos de los mejores plataformas de aprendizaje automático puedes probar:

#1. TensorFlow

TensorFlow es una plataforma de ML de extremo a extremo que muchos adoran por crear modelos de ML de grado de producción. Puede usar sus modelos pre-entrenados directamente o crear sus propios modelos y entrenarlos.

Independientemente del nivel de habilidad que posea, puede encontrar soluciones de ML fácilmente con esta herramienta. Con TensorFlow en su kit de herramientas, le resultará más fácil pasar de la fase de investigación a la de producción. Le ayudará a encontrar soluciones más rápido para acelerar sus tareas de ML en cada etapa del flujo de trabajo.

tensorflowml

Características:

  • Cargue y procese datos, cree potentes modelos de aprendizaje automáticoy preprocesar, limpiar y consolidar datos a escala con las herramientas de TensorFlow como conjuntos de datos estándar para el entrenamiento inicial del modelo y su validación. 
  • El ecosistema TensorFlow se desarrolla en el marco Core, que agiliza la creación, el entrenamiento y la exportación de modelos. 
  • Compatibilidad con iteración rápida de modelos, capacitación distribuida, depuración sin esfuerzo con Keras y más
  • Seguimiento de la mejora y el desarrollo a través de TensorBoard y Model Analysis
  • Ejecutar e implementar modelos en el dispositivo, en las instalaciones, en la nube, navegador, dispositivos perimetrales, servidores, dispositivos móviles, CPU, GPU, microcontroladores y FPGA.

TensorFlow incluso lo ayuda a implementar MLOps y las mejores prácticas para el seguimiento de modelos, la automatización de datos, la capacitación de modelos y la supervisión del rendimiento.

#2. scikit-aprender

scikit-aprender es una herramienta ML eficiente pero simple que puede usar para realizar análisis predictivos de datos. Es accesible para cualquier persona y reutilizable en una variedad de contextos diferentes. scikit-learn se basa en SciPy, NumPy y matplotlib.

Lo mejor es que scikit-learn es una herramienta de código abierto que se puede usar comercialmente y tiene una licencia BSD. La herramienta es útil en:

  • Clasificación: para identificar la categoría de un objeto a través de algoritmos ML como SVM, bosque aleatorio, vecinos más cercanos, etc. Se utiliza en el reconocimiento de imágenes y detección de spam.
  • Regresión: para predecir los atributos de valor continuo de un objeto a través de algoritmos como SVR, bosque aleatorio, vecinos más cercanos, etc. Se utiliza para predecir precios de acciones y respuestas a medicamentos.
  • Agrupamiento: para agrupar objetos similares a través de algoritmos como k-Means, mean-shift, spectral clustering, etc. Se utiliza para agrupar resultados de experimentos y segmentación de clientes.
  • Reducción de dimensionalidad: para reducir las variables aleatorias para su consideración a través de algoritmos como PCA y selección de características. Se utiliza para visualización y mejora de la eficiencia.
  • Selección de modelo: para comparar, validar y elegir modelos y parámetros a través de validación cruzada y búsqueda en cuadrícula. Se utiliza para mejorar la precisión.
  • Preprocesamiento: para realizar la normalización y la extracción de características para transformar los datos de entrada.

#3. MATLAB

MATLAB es una popular plataforma de computación y programación numérica que utilizan millones de científicos e ingenieros. Le ayuda a analizar datos, crear modelos y desarrollar algoritmos.

Su entorno de escritorio está ajustado para procesos de diseño y análisis iterativo con un lenguaje de programación que expresa directamente matrices y matrices matemáticas.

matlabml

Características:

  • Modele, analice, explore y visualice datos
  • Cree clases, funciones y scripts junto con aplicaciones web y de escritorio
  • Live Editor para crear scripts con texto formateado, salida y código en un cuaderno ejecutable
  • Las aplicaciones de MATLAB le permiten ver cómo funcionan los algoritmos con los datos y luego iterar y generar un programa para automatizar el trabajo
  • Puede ejecutar sus análisis en nubes, GPU y clústeres con cambios menores
  • Realizar computación paralela
  • Compatible con Azure y AWS

Machine Learning: Learning Resources

Entonces, ahora que está entusiasmado con el aprendizaje automático y cómo puede ayudarlo a conquistar el mundo, ¿por dónde empezar?

A continuación, enumero algunos recursos fantásticos en la Web que pueden ayudarlo a lograr fluidez en el aprendizaje automático sin obtener un doctorado. en informática! Si no es un investigador de Machine Learning, encontrará que el dominio de Machine Learning es tan práctico y agradable como la programación en general.

Entonces, no te preocupes; no importa cuál sea su nivel actualmente, puede, como un buen programa de aprendizaje automático, aprender y mejorar. 😛

#1. Programación

El primer requisito para ingresar al aprendizaje automático es aprender a programar. Eso es porque los sistemas de aprendizaje automático vienen en forma de bibliotecas para varios lenguajes de programación.

Python es el más recomendado, en parte porque es increíblemente agradable de aprender y en parte porque tiene un ecosistema masivo de bibliotecas y recursos.

Programación en python

La oficial La Guía para principiantes es un excelente lugar para comenzar, incluso si está un poco familiarizado con Python. O toma esto Curso de bootcamp para convertirse en un héroe desde cero.

#2. Piense en las estadísticas

Una vez que haya terminado con los conceptos básicos de Python, mi segunda recomendación sería revisar dos libros destacados. Ellos son 100% gratis. y disponible como PDF para descargar. Piense en las estadísticas y Piensa en Bayes son dos clásicos modernos que todo aspirante a ingeniero de aprendizaje automático debería internalizar.

#3. Udemy

En este punto, le recomiendo que tome un par de cursos de Udemy. El formato interactivo a su propio ritmo le ayudará a entrar en el meollo de la cuestión y generar confianza.

Asegúrese de consultar la vista previa del curso, las revisiones (¡especialmente las negativas!) Y la sensación general del curso antes de comenzar.

udemy-aprendizaje automático

También puede encontrar tutoriales increíbles en YouTube de forma gratuita. Sentdex es uno de esos canales que puedo recomendar, donde siempre hay mucha diversión, pero su enfoque no es apto para principiantes.

#4. Andrew Ng

Curso impartido por Andrew Ng en Coursera es posiblemente el recurso de aprendizaje más popular para los fundamentos del aprendizaje automático.

Coursera-aprendizaje automático

Aunque utiliza el lenguaje de programación R, no tiene paralelo en su tratamiento del tema y sus explicaciones lúcidas. Debido a este curso, Andrew Ng ha alcanzado una estatura casi divina en los círculos de ML, y la gente lo admira por su máxima sabiduría (¡no estoy bromeando!).

Este no es un curso para principiantes, pero si ya eres bueno en la gestión de datos y no te importa hacer algunas investigaciones adicionales a medida que avanzas, este curso es la mejor recomendación.

#5. Udacity

Conviértase en un ingeniero de aprendizaje automático tomando este título nano por Udacity.

udacity-ml-nanodegree

Tardará aproximadamente 3 meses en completar y al final del curso, se espera que tenga una idea clara sobre los algoritmos de aprendizaje automático, cómo modelarlos e implementarlos en producción.

Conclusión

Los recursos en Internet no tienen fin, y puede perderse fácilmente al comenzar. La mayoría de tutoriales y las discusiones son matemáticamente desafiantes o carecen de una estructura y pueden romper su confianza incluso antes de comenzar.

Entonces, me gustaría advertirle contra la autodestrucción: mantenga su puntería modesta y muévase en pasos mínimos. El aprendizaje automático no es algo con lo que pueda sentirse cómodo en uno o dos días, pero muy pronto comenzará a divertirse y, quién sabe, tal vez incluso crea algo aterrador!

¡Que te diviertas! 🙂

Gracias a nuestros patrocinadores
Más lecturas excelentes sobre IA
Impulse su negocio
Algunas de las herramientas y servicios para ayudar a que su negocio crezca.
  • Invicti utiliza Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en cuestión de horas.
    Prueba Invicti
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.
    Prueba Brightdata
  • Semrush es una solución de marketing digital todo en uno con más de 50 herramientas en SEO, redes sociales y marketing de contenido.
    Prueba Semrush
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.
    Intente Intruder