¿Qué es realmente tan diferente sobre la inteligencia artificial en comparación con los buenos algoritmos antiguos?

En mi humilde opinión, los algoritmos tradicionales resuelven problemas. Las soluciones a esos problemas primero fueron desarrolladas por humanos y luego escritas como secuencias de pasos que las computadoras deben seguir para resolver el problema.

Se puede pensar que la Inteligencia Artificial describe un problema a una IA y hace que desarrolle un algoritmo tradicional que pueda resolver el problema. En lugar de descifrar los pasos, solo descubrimos el patrón general de pasos que serán necesarios.

Buenos viejos algoritmos

  • Tomar datos sobre un problema T
  • Proporcione datos que sean una solución al problema T

Aprendizaje automático

  • Tomar datos sobre un problema T
  • Entregue el “viejo algoritmo A” que resuelve el problema T
  • Si se dan más datos, la A resultante es mejor en su tarea.

Supongo que está hablando de aprendizaje automático / redes neuronales en lugar de una IA fuerte

En machine learning / ANN, no necesita saber cómo resolver el problema. Usted proporciona ejemplos resueltos y el algoritmo “aprende” los patrones entre el problema y la solución.

Un buen ejemplo de esto es el reconocimiento de imágenes. En lugar de decirle a la computadora exactamente cómo se ve un automóvil, proporciona una gran cantidad de imágenes con y sin automóviles en ellas, y una nota que le dice al algoritmo si hay una o no.

El algoritmo ahora compara las diferencias entre las imágenes con automóviles y las imágenes sin automóviles. Con un tamaño de muestra suficiente, puede darle una imagen completamente nueva y probablemente saldrá correctamente si hay un automóvil o no.

Esto es útil porque no necesita escribir código nuevo para cada objeto que desea que reconozca el algoritmo.

En caso de que realmente estuvieras hablando de una IA fuerte: una IA fuerte sería más poderosa porque podría tener cualquier tipo de problema y encontrar una solución por sí mismo. Se le podría dar una meta e identificar posibles problemas con soluciones coincidentes. Una IA fuerte podría significar tener un algoritmo que resuelva todo.

En resumen, un algoritmo es, como probablemente ya sepa, un conjunto de pasos necesarios para realizar una acción. El desarrollo de la IA no es muy diferente, en el hecho de que todavía obedecen un conjunto de pasos definidos. Sin embargo, la diferencia radica en cuán complejo es ese algoritmo. Queremos que nuestras máquinas emulen el poder del cerebro, el poder de decisión, que todavía no se entiende muy bien en el campo de la neurociencia. Digamos que tienes un algoritmo muy simple:

  • Caminar en línea recta
  • Estirar la mano
  • Palma abierta
  • Estirar el brazo aún más
  • Palma cercana
  • Girar

Podemos decir fácilmente que este algoritmo le daría a un robot caminante la capacidad de abrir puertas si se encuentra con una. El caso es que el robot no se da cuenta de ninguna manera. Puede colocar este robot en una habitación sin puertas, pero seguirá realizando esta acción independientemente de si hay o no una puerta. Lo que AI está tratando de lograr es hacer que el robot aprenda de su entorno, haciéndolo más consciente de la situación (con la ayuda de sensores). Entonces ahora tendrías algo como esto:

  • Verificar entorno
  • Verificar puertas
  • Si alguna puerta
  • Camine hasta que la distancia sea inferior a 1 metro.
  • Estirar el brazo donde está el mango
  • Palma abierta
  • Estirar la mano aún más
  • Palma cercana
  • Girar
  • Más
    • Hacer algo más

    Obviamente es mucho más complicado que esto. Pero comprende que cuanto más complejas sean las instrucciones, menos probable será que pensemos que es un algoritmo, más bien pensamos que este ser / máquina piensa por sí mismo y es capaz de reconocer patrones y tomar decisiones sin ser humano. ayuda (por ejemplo, para entornos muy desafiantes, digamos espacio, o expediciones submarinas o lo que sea. También es muy bueno para comprender y procesar expresiones matemáticas para que no podamos hacerlo).

    Hay mucha preocupación a dónde llevaría esto. Algunos piensan que sería beneficioso. Personalmente, creo que si tales máquinas nos superaran, estaríamos condenados, por la misma razón por la que los europeos mataron a todos en las Américas en los años 800.

    Por ahora, hay poca preocupación ya que aún no podemos emular la funcionalidad completa del cerebro, ni podemos operar tantas funciones en paralelo (el cerebro logra realizar miles de millones de procesos paralelos cada segundo). Se cree que lo que definimos como conciencia, o mejor dicho, reconocimiento de patrones, viene dado por un conjunto de reglas heredadas por el proceso de evolución que nos hace comportarnos de la manera en que lo hacemos, pero es tan complejo que asumimos que tenemos libre albedrío. . Una vez que el conjunto de instrucciones sea tan complejo, o similar, para la funcionalidad de nuestro cerebro, entonces tendrá otro pensamiento como nosotros.

    Le sugiero que lea: “La singularidad está cerca” por Ray Kurzweil

    El punto que muchos pasan por alto es que los algoritmos generalmente están diseñados con el intento de encontrar una solución óptima a un problema. Si un problema es intratable, se habla de casos especiales.

    La IA se centra en la adaptabilidad de los sistemas. Los algoritmos de IA intentan encontrar una solución satisfactoria a un problema dentro de un período de tiempo útil u otras limitaciones de recursos. Como resultado, los programas que buscan una solución satisfactoria deben ser capaces de reconocer una solución, que podría llamarse un estado objetivo, el objetivo de la búsqueda.

    Por lo tanto, inherente a la IA es la búsqueda de objetivos y la identificación del estado que podría hacerse mediante la coincidencia de patrones. Los algoritmos escritos para optimizar tomarán datos, los usarán e informarán algunos resultados, con suerte más rápido que otros algoritmos que toman lo mismo en put y producen los mismos resultados. Como tal, los algoritmos no buscan nada, en realidad, simplemente se ejecutan. La IA se trata más de buscar.

    El aprendizaje es, por supuesto, parte de la IA. La IA no se trata solo de un comportamiento adaptable orientado a objetivos. El aprendizaje es seguramente una forma de adaptación. ¿El aprendizaje tiene que aplicarse al comportamiento de búsqueda de objetivos de una máquina? No. El aprendizaje en sí mismo puede ser útil para quienes lo usan. El reconocimiento en sí mismo puede ser útil, aprendido o no. Y, la IA puede usar algoritmos para obtener información. AI puede buscar un objetivo y detenerse, informando que se ha encontrado. O bien, puede buscar meta tras meta, en paralelo, en tiempo real, etc. La forma en que AI puede abordar diferentes entornos es una buena parte del trabajo en el tema.

    La idea de encontrar una solución satisfactoria se puede ver en sistemas que son bastante rígidos, como los algoritmos. Por lo tanto, resolver el problema del vendedor ambulante con recocido simulado podría producir soluciones consistentemente dentro de un 80% de óptimo en períodos de tiempo realmente aceptables. Pero, un enfoque más algorítmico para TSP podría encontrar un problema insoluble, que se ejecuta aparentemente para siempre, tratando de encontrar la ruta mínima.

    El enfoque de recocido simulado actúa de la manera que debería hacerlo un sistema de IA, pero no hace más que trabajar para encontrar una ruta mínima. Del mismo modo, alfa-beta y sus descendientes resuelven un conjunto bastante pequeño de abstractos y / o gráficos. Estas descripciones abstractas se utilizan a menudo como componentes en sistemas integrados más descriptivos. Estos otros sistemas pueden contener montañas de hechos sobre los estados a analizar y muchas formas de proporcionar evaluaciones heurísticas para alimentar los algoritmos esqueléticos creados para la búsqueda y la gestión de objetivos. Las funciones heurísticas son a menudo los objetivos del aprendizaje automático. Por supuesto, estos algoritmos de búsqueda de gráficos proporcionan la punta del iceberg para familias de modos adaptativos y deliberados de comportamiento computacional.

    Si bien el enfoque en el aprendizaje es popular en este momento, no es todo el plátano AI. Pero, mejorar en gran medida los procesos de aprendizaje y mejorar la comprensión de por qué los procesos de aprendizaje deberían ir más allá de las estadísticas descriptivas mejora la base de la IA.

    ¿La meta es aprender o la meta es aprender? Me parece (y me gustaría un poco de debate sobre esto) que el aprendizaje puede suceder sin la búsqueda de objetivos. La búsqueda de objetivos puede suceder sin adaptación, pero los sistemas que funcionan sin adaptación solo pueden alcanzar un pequeño conjunto de objetivos posibles.

    AI es (hasta donde yo sé) es simplemente un algoritmo con un paquete llamativo. Detrás de toda la jerga sobre “aprendizaje” e “inteligencia”, existen algoritmos simples. Permítanme explicar el modelo a gran escala de un programa típico de IA.

    [1] Hay un modelo “predictivo” a desarrollar que contiene varios parámetros desconocidos. La predicción se basa en los valores de estos parámetros.

    Detrás de las pantallas: este modelo es una gran ecuación lineal o generalmente no lineal que conecta las variables de entrada (llamadas “estímulos”) a las variables predichas.

    [2] El modelo de IA pasa por una fase de “aprendizaje” donde se alimentan datos y ajusta sus parámetros.

    Detrás de escena: el “aprendizaje” se logra utilizando una de las diversas variantes de minimización multivariable no lineal. Algoritmos muy sólidos y muy buenos encontrados en buenos libros de “Análisis numérico”

    [3] La IA ahora comienza sus predicciones mágicas.

    Detrás de escena: lo que hemos logrado es similar a crear un modelo de regresión a gran escala para los datos dados. Ahora, en base al modelo de regresión y sus parámetros que se han encontrado utilizando algoritmos de mejor ajuste, podemos comenzar a hacer predicciones.

    ¡Es una verdadera lástima que la mayoría de los “expertos” en IA no se tomen el tiempo para aprender los fundamentos matemáticos y algorítmicos de las técnicas de IA y tratarlos como algunos “mantras” mágicos dados por el mismo Todopoderoso!

    Digo esto después de observar que docenas de expertos en ingeniería hacen un mal uso de las técnicas de inteligencia artificial como las redes neuronales por problemas simples que se habrían llamado “análisis de regresión no lineal” en los viejos tiempos.

    Los algoritmos están diseñados para resolver problemas. Los humanos implementan estos algoritmos y los principales temas de consideración aquí son la eficiencia y la velocidad de los algoritmos. AI o Machine Learning aprende modelos para resolver automáticamente estos problemas. En un nivel abstracto, esto significa que la IA genera los algoritmos para resolver estos problemas.

    Obviamente no hay magia aquí. Los algoritmos de Machine Learning aprenden patrones de los datos. Sin embargo, se necesita mucho esfuerzo para diseñar el conjunto de características (ingeniería de características), elegir los modelos correctos (modelado), la formulación correcta del problema y, lo más importante, los datos para que el sistema aprenda. Cuantos más datos, mayores serán las posibilidades de aprender.