¿Cuáles son las diferencias entre un algoritmo AI y un algoritmo computacional regular o qué hace que un algoritmo califique para ser AI?

A2A.

Bueno, en última instancia, no hay diferencia entre los dos; sin embargo, para los no iniciados, esta declaración puede ser muy engañosa. Antes de aclarar, permítanme mencionar que (aunque más allá del alcance de esta respuesta) algunas de las críticas más convincentes de los esfuerzos modernos (y pasados) en IA se han derivado precisamente de esto: que AI, en última instancia, es la aproximación glorificada de la función (un problema de optimizacion). Para más información, vea aquí: las opiniones de Hubert Dreyfus sobre la inteligencia artificial – Wikipedia, que resume las críticas de Hubert Dreyfus a la IA como un sistema que construye modelos del mundo circundante (nuevamente, a través de la aproximación de funciones).

Ahora para elaborar …

Primero, tenga en cuenta que la IA general está actualmente fuera del alcance. Tampoco entendemos qué es la conciencia, aunque hay una serie de teorías en competencia, la mayoría de las cuales se reducen a la conciencia esencialmente como un fenómeno emergente de la mecánica estadística de las neuronas en el cerebro: Emergentism – Wikipedia. Si uno adopta este punto de vista, puede ver el problema dentro del marco de la física estadística (que es una disciplina bien desarrollada), pero eso no resuelve automáticamente el problema. De hecho, para la mayoría de estos sistemas, es difícil cuantificar el comportamiento del sistema, especialmente cuando el sistema nunca se establece en un equilibrio: Mecánica estadística – Wikipedia (y referencias allí).

Dado esto, supondré que por IA nos referimos a agentes expertos, como aquellos diseñados para clasificar imágenes o aquellos diseñados para jugar Go.

En tales casos, hay dos clases generales de algoritmos:

  • Máquinas deterministas de estado estático
  • Sistemas dinámicos no deterministas (como las redes neuronales)

En la primera clase, uno programa el sistema para lograr la salida deseada en entradas conocidas. En este caso, todos los estados del sistema se conocen de antemano (y si un sistema encuentra una ruta que lo obliga a un estado desconocido, puede salir con un error). Esto requiere que uno tenga un conjunto de estados posibles, posibles entradas y salidas deseadas antes de comenzar a construir el sistema. En cierto sentido, qué entradas deberían mapearse a qué salidas se conocen de antemano, y el trabajo de un ingeniero se reduce a asociar las entradas conocidas a las salidas correctas.

En la segunda clase, generalmente no se sabe qué entradas deben asignarse a qué salidas. Por lo tanto, no se puede codificar un sistema determinista que tenga en cuenta todas las entradas posibles (y que dé las salidas correctas). En este caso, se hacen algunas suposiciones de alto nivel sobre el tipo de función que podría asociar esas entradas a las salidas correctamente, pero esta función depende de muchos parámetros que pueden alterar su comportamiento. Uno no conoce estos parámetros desde el principio y debe aproximarlos. Aquí es donde entra en juego el “entrenamiento” de un sistema de IA.

En sistemas como el aprendizaje profundo con miles o incluso millones de neuronas, el grado de libertad es tan grande (el número de esos parámetros que controlan la función desconocida) que es prácticamente imposible resumir la función después de que el sistema ha sido entrenado (es decir, después de Se ha seleccionado un conjunto de parámetros). Además, muchos sistemas de IA evolucionan continuamente a través del proceso de aprendizaje en línea (lo que significa que esos parámetros pueden cambiar continuamente).

Entonces, quizás lo que hace que un algoritmo califique como IA es precisamente la distinción entre sistemas deterministas y no deterministas.

Por cierto, estoy usando la terminología aquí que puede entrar en conflicto con otros usos de la misma (por ejemplo, Determinismo – Wikipedia).

En el caso de la IA, el no determinismo radica en el hecho de que el comportamiento del sistema después de que se instala en algún estado después del entrenamiento no se conoce de antemano; lo que se conoce es el rendimiento deseable del sistema (que es realmente un requisito / restricción, y no es intrínseco al sistema). Sin embargo, puede haber diferentes sistemas (es decir, sistemas con diferentes parámetros) que tengan un rendimiento comparable (en otras palabras, no se sabe de antemano si existe un vector único de parámetros de tal manera que para todas las pequeñas fluctuaciones alrededor de este vector el sistema logre el deseado rendimiento: puede haber más de uno de esos vectores, o puede que no haya ninguno; este, por cierto, es uno de los problemas centrales en la mecánica estadística antes mencionada, que se llama el problema de las transiciones de fase: estado de Gibbs – Wikipedia y transición de fase – Wikipedia; y para obtener más detalles sobre una conexión entre la física estadística y las redes neuronales, consulte ¿El aprendizaje profundo está relacionado con la física estadística, en particular la ciencia de redes?). El vector de parámetros que finalmente se encuentra (o se determina como resultado del entrenamiento) puede depender de algunas cosas, incluido el algoritmo de entrenamiento y el estado inicial.

Un aspecto de la IA es el efecto de IA que fue acuñado por Pamela McCorduck:

Los éxitos prácticos de inteligencia artificial, los programas computacionales que realmente lograron un comportamiento inteligente, pronto se asimilaron en cualquier dominio de aplicación en el que se descubrió que eran útiles, y se convirtieron en socios silenciosos junto con otros enfoques de resolución de problemas, lo que dejó a los investigadores de inteligencia artificial para tratar solo las “fallas”. “las nueces duras que aún no se podían romper.

La visión cínica que siempre me gustó es que si produce un algoritmo que resuelve su problema de IA: jugar al ajedrez en un dominio competitivo, identificar patrones en una base de datos grande … entonces ya no se percibe como un problema de IA.

El algoritmo de IA no es necesariamente tan diferente de otros algoritmos. Su principal diferencia es lo que intentan resolver, que a menudo es un comportamiento que generalmente se reconoce como exclusivo de las especies inteligentes (la mayoría de las veces, el conjunto de especies inteligentes se limita a los humanos). Estas tareas pueden implicar una inferencia compleja, la capacidad de extraer un patrón de los datos, reconocer este patrón en un nuevo dato o posiblemente usar este patrón para actuar mejor.

Idealmente, este algoritmo es lo suficientemente genérico como para que pueda aplicarse a nuevos dominios (¿podemos usar el mismo algoritmo para el ajedrez para tratar con las fichas? ¿Podemos aplicar este algoritmo de aprendizaje sobre el reconocimiento óptico de caracteres para reconocer a las personas? …) y esta aplicación debería hacerse con una mínima alteración del diseño inicial.

El algoritmo podrá aprovechar y manipular la nueva información por sí solo para resolver la nueva instancia del problema. Existen muchos algoritmos para la IA, pero a menudo en mi opinión son de 2 clases:

  • inferencia: el algoritmo dado un conjunto de reglas combinará estas reglas para llegar formalmente a una conclusión.
  • refuerzo: el algoritmo es capaz de aprovechar la información de múltiples entradas al reforzar lo que parece ser estadísticamente sólido en los datos recibidos.

Por supuesto, tiene subclases en estas 2 clases e incluso puede encontrar enfoques híbridos que intentan incluir el poder de ambos. En ambos casos, las personas que trabajan en el campo intentan hacer algoritmos que sean tan generales y agnósticos de entrada como sea posible, pero que sean muy eficientes.

Además de esto, algunos creen también que la IA requiere alguna forma de realización (ver Cognición incorporada). R. Brooks, por ejemplo, fue un gran defensor de esto y lo llevó a un nivel en el que su arquitectura de subsunción era una composición de bucles de control simples con inferencia casi nula y que solo confiaban en el comportamiento emergente como una exhibición de inteligencia. En este enfoque, los algoritmos a menudo son muy triviales y a menudo no se relacionan realmente con ninguna de las 2 clases anteriores, pero lo que hace que el sistema parezca actuar de manera inteligente es su composición dentro de un bucle sensorial-motor real. Tal enfoque tiene que ser criticado pero también enfatizó algunos aspectos interesantes relacionados con el uso de inferencia compleja dentro de un agente situado y en tiempo real.

Hay más que se puede decir sobre otras escuelas de pensamiento existentes, pero al final del día, los algoritmos de inteligencia artificial son solo esto:

  • Un algoritmo que resuelve, idealmente de manera genérica y eficiente, un problema que hasta ahora solo se suponía accesible para seres inteligentes.

Lo que nos lleva de vuelta a la paradoja de la IA: si resolvió el problema con una computadora, que “obviamente” no es inteligente, entonces no fue realmente un problema de IA

Los algoritmos pueden ser generalizados. Supongo que los algoritmos de IA son parte de los algoritmos computacionales. Un algoritmo de IA se usa específicamente para encontrar comportamientos de instancias. Sin embargo, hay un poco de confusión posible aquí, ya que un programa para realizar inteligencia artificial está ejecutando un algoritmo que siempre ejecutará la IA con éxito, pero no se garantiza que la IA resultante haga lo que desea.

un “algoritmo” para ser capaz de AI significa poder pasar la prueba de turing, buscarla en Internet, quora no me permite publicar enlaces a sitios comerciales externos. revisa wikipedia también. En mi humilde opinión, superar una prueba de turing significa que el algoritmo se volvió un poco consciente de sí mismo y tiene respuestas indistinguibles de las de un ser humano. oh bueno, f las regulaciones, aquí está el enlace, tenga en él: http://en.m.wikipedia.org/wiki/T