sábado, 24 de febrero de 2018

Bases de datos que aprenden

En 1952, el IBMista Arthur Samuel creó la primera implementación de un sistema de aprendizaje automático en América: jugar "Damas Inglesas".

Al principio, el sistema era derrotable. Samuel continuó mejorando las capacidades de aprendizaje de su programa de Damas y en parte entrenó el programa, haciéndolo jugar miles de juegos contra sí mismo. En 1961, los programas de Samuel jugaron el cuarto jugador de damas en América y ganaron. Esto demostró un nivel de juego aún no alcanzado por una computadora. La evolución del aprendizaje automático continuó y se amplió el rango de dominios aplicables.

En 1997, la computadora IBM Deep Blue logró rivalizar con los mejores prodigios del ajedrez del mundo, superando al Campeón Mundial de Ajedrez Gary Kasparov. ¡En 2011, la tecnología de IBM Watson compitió contra el legendario Jeopardy! los campeones Brad Rutter y Ken Jennings, ganando el primer premio de $ 1 millón de Dólares.

En la actualidad, las mejoras en los algoritmos de aprendizaje, combinados con una capacidad de cómputo más barata y más potente, así como también una gran cantidad de datos, hacen posible que el aprendizaje automático se convierta en la corriente principal. Los algoritmos computacionales que pueden realizar hazañas análogas que potencian el aprendizaje automático, ahora están automatizando lo mundano y proporcionando una visión profunda de lo complejo, sin la necesidad de una programación humana explícita de reglas y heurística.

Procesamiento SQL de última generación con tecnología de aprendizaje automático

El aprendizaje automático se está utilizando en el corazón de los métodos de próxima generación para autos autodirigidos, reconocimiento facial, detección de fraude y mucho más. En IBM, están aplicando métodos de aprendizaje automático al procesamiento de Lenguaje de Consultas Estructurado (SQL por sus siglas en inglés) para que las bases de datos puedan aprender literalmente de la experiencia.

SQL es el lenguaje estándar de la industria para acceder, consultar y manipular datos estructurados. Es utilizado por los mercados de valores, bancos de inversión, hospitales, empresas de logística, compañías de seguros, fondos de pensiones, fabricantes, pequeñas y grandes empresas. Es un lenguaje de datos que es a la vez rico en capacidades, elegante en su poder descriptivo y de uso ubicuo. Está en todas partes. Mejorar el procesamiento de SQL literalmente ayuda a una amplia sección de industrias.

SQL ofrece una oportunidad fascinante para la aplicación de aprendizaje electrónico o de máquina. En particular, para el procesamiento de consultas complejas, una consulta individual puede tener miles o incluso millones de posibles estrategias de ejecución, que producirán un resultado correcto. Si bien todas estas estrategias son correctas, algunas se realizarán mucho más rápido que otras.

El rol del compilador de SQL de la base de datos es definir la mejor estrategia de ejecución para usar para producir la respuesta a una consulta. Es muy parecido a conducir al trabajo. Hay muchos caminos que puede tomar, pero dependiendo del tráfico, la construcción, el clima y eventos imprevistos, algunas rutas pueden ser preferibles. La ruta óptima puede cambiar de un día a otro o de una hora a otra.

De la misma manera, la mejor estrategia para calcular una consulta SQL puede ser sutil de encontrar y puede cambiar fácilmente para una consulta dada, ya que los datos dentro de la base de datos cambian con el tiempo y las presiones de carga de trabajo varían.

Clásicamente, las bases de datos SQL, como Db2, utilizan un modelo sofisticado para evaluar y seleccionar la mejor estrategia de ejecución para cada consulta, basada en estadísticas de datos y modelado avanzado de CPU, RAM, Red y Entrada/Salida. Este método, utilizado ampliamente en la industria de bases de datos desde su introducción por IBM en 1979, realiza un gran trabajo.

Aun así, con la aplicación de métodos de aprendizaje automático, creemos que es posible que una base de datos aprenda de la experiencia y mejore continuamente. Esto nos llevará a niveles mejorados de estabilidad, consistencia y rendimiento nunca vistos en el dominio de décadas de investigación del SQL. Esto se logra aplicando métodos de redes neuronales al procesamiento de SQL en Db2. Las redes neuronales son un paradigma de aprendizaje automático, que emula la forma en que los científicos creen que nuestros cerebros aprenden con el tiempo.

Para todos los que trabajan en datos, mejorar la coherencia y el rendimiento del procesamiento SQL para que la base de datos encuentre mejores estrategias para calcular los resultados de las consultas, aporta beneficios emocionantes. El rendimiento será más constante y los administradores de bases de datos pasarán mucho menos tiempo ajustando el último porcentaje de rendimiento o depurando casos problemáticos.

¿Ya utiliza Usted una Base de Datos Relacional, con capacidades de aprendizaje?

No hay comentarios:

Publicar un comentario

Todos los derechos reservados.
Copyright © 2025.