algorithme

Algoritmo: definición

Con la llegada de la IA y la supremacía de GAFAM, los algoritmos están en boca de todos. Sin embargo, por mucho que escuchemos sobre ello en la vida cotidiana, ignoramos qué es realmente un algoritmo. Si este tema ya ha despertado su curiosidad, encuentre las respuestas a sus preguntas a continuación.

Aunque hoy en día se asocia a las nuevas tecnologías, el término “algoritmo” no es nada reciente. Aparece por primera vez en las obras de Mohammed Ibn Musa-Al Kwarizmi. Este matemático, padre del Álgebra, vivió en el siglo IX a.C. Todo esto para decir que la Historia se remonta mucho, mucho antes de la Edad Media. Pero ¿cómo es posible que una frase cuyos orígenes se remontan a la Antigüedad esté ahora en el centro de la actualidad?

Algoritmo: los puntos importantes

Un algoritmo se define como una secuencia de operaciones ordenadas con el objetivo de resolver un problema. Para explicarlo de forma sencilla, podríamos ver un algoritmo como una receta de cocina. En este se detalla cada paso a seguir para que los ingredientes a tu disposición se conviertan en un plato sabroso. De la misma manera, un algoritmo permite lograr un resultado muy específico realizando una determinada cantidad de operaciones.

El hecho es que los parámetros cambian cada vez que ejecutamos un algoritmo. Pueden entrar en juego muchos factores externos. Por eso, diseñar un algoritmo también implica planificar todas las eventualidades y construir un árbol de instrucciones real. El ingeniero informático debe velar por que ningún detalle quede al azar para que el algoritmo haga su trabajo, sean cuales sean las circunstancias.

Algoritmo: ¿de dónde viene este término?

Como se mencionó anteriormente, este término fue acuñado por Muhammad ibn Mūsa al-Khwarizmī. A decir verdad, le debemos mucho a este antiguo erudito. Hasta hoy, la humanidad utiliza su sistema numérico decimal. Sus descubrimientos son la base sobre la que descansan las Matemáticas.

A través de sus obras, este estudioso adquirió una sólida reputación que rápidamente traspasó las fronteras de Oriente Medio. Sin embargo, debido a las barreras del idioma, el nombre de este brillante matemático se fue distorsionando gradualmente de Khwarizmi a Algoritmi. Este nombre romanizado dará lugar posteriormente a la palabra “algoritmo” cuyo significado se acerca al de “recetas paso a paso” para los angloparlantes. Con el paso de los años, este término poco a poco fue haciéndose hueco en la jerga tecnológica.

Comprender el vínculo entre el algoritmo y la informática

En primer lugar, primero debes entender cómo funcionan las computadoras. Son dispositivos destinados a ejecutar programas informáticos. Estos fueron diseñados para entregar instrucciones a la computadora para realizar cualquier tarea. En esta ocasión, el programa entrega paso a paso las operaciones a realizar para culminar con éxito la tarea en cuestión. ¡Lo habrías entendido! Muchas herramientas informáticas se han diseñado en base a un algoritmo.

Desde un punto de vista técnico, los algoritmos transforman entradas en salidas. Entonces, en el caso de un motor de búsqueda, las frases que busca son entradas y las direcciones que obtiene son salidas. En la vida cotidiana, los algoritmos traducen una necesidad al lenguaje informático (entrada) para responder a ella utilizando medios informáticos (salida). Por lo tanto, para realizar cualquier función, deben estar escritos en código. El lenguaje de programación debe elegirse cuidadosamente para permitir usos específicos.

Un algoritmo: ¿para qué?

Los algoritmos están omnipresentes en el campo de la informática. Para crear cualquier programa, los desarrolladores diseñan y compilan una serie de algoritmos. Éstos garantizarán la correcta ejecución de las órdenes cualesquiera que sean las circunstancias. Por tanto, se trata de hacer todo lo posible para garantizar que cualquier error no perturbe el correcto funcionamiento de la aplicación.

Con todas las posibilidades que ofrecen las nuevas tecnologías, los algoritmos están omnipresentes hoy en día. Ofrecen un amplio campo de aplicaciones que los desarrolladores disfrutan explorando. Sin embargo, destacan en un cierto número de áreas.

Descripción general de los servicios que dependen de algoritmos

Los gigantes de Internet han basado su éxito en el rendimiento de sus algoritmos. Algoritmos que les han permitido ofrecer servicios que se adaptan perfectamente a las necesidades de sus clientes. Éstos son sólo algunos de estos algoritmos de renombre.

Ranking de página de Google: Este servicio destinado a indexar y clasificar todo el contenido web se basa en algoritmos excepcionales. Estos no sólo han sido diseñados para presentar las páginas que corresponden a su búsqueda. Ofrecen un ecosistema real que estudia la calidad del contenido, sus hábitos de navegación o incluso los temas que están generando revuelo en la Web.

La línea de tiempo de Facebook: ¿Has notado que tu servicio de noticias de Facebook siempre muestra publicaciones relacionadas con tus intereses? Y bien ! Este no es el resultado de la casualidad. Un algoritmo realiza un seguimiento de tus interacciones en esta red social. Esta información nos permitirá presentar publicaciones que sin duda llamarán su atención.

Robots comerciales : La creciente atracción que la mayoría de la gente siente por el mundo de las finanzas ha favorecido la aparición de las plataformas de negociación. Al mismo tiempo, han surgido robots comerciales. Estos algoritmos están destinados a reemplazar al comerciante. Analizan las señales del mercado en tiempo real para comprar o vender activos con el objetivo de obtener beneficios sin intervención humana.

El famoso algoritmo Round Robin : Aunque es poco conocido por los profanos, este algoritmo es ampliamente conocido entre los desarrolladores. Efectivamente, transmite al procesador de tu ordenador el orden en el que se ejecutarán los diferentes programas para que el dispositivo funcione correctamente sin gastar excesivamente recursos.

Cuando el aprendizaje automático desarrolla el potencial de los algoritmos

El aprendizaje automático ha dado una nueva dimensión a los algoritmos. Permite desarrollar programas más o menos autónomos que procesan datos y ejecutan comandos en función de la naturaleza de la entrada. Por lo tanto, no es necesario proporcionarles instrucciones específicas sobre cómo realizar una tarea. Las herramientas de nueva generación “aprenden” a sobresalir en un campo y evolucionan con el uso. Este proceso se lleva a cabo con poca o ninguna intervención humana. Lo que los convierte en programas eficientes y confiables.

A lire également  Telegrama: definición

Estos algoritmos en evolución ahora son adecuados para todos los usos. Sin embargo, destacan perfectamente en big data. Los módulos creados ofrecen predicciones precisas o incluso identifican perfiles que cumplen determinados criterios en una amplia base de datos que se actualiza continuamente. Para ello, las herramientas de inteligencia de negocios se apoyan en esta tecnología. Este ingenioso sistema les permite ayudar a cualquier directivo en la toma de decisiones.

Sin embargo, también encontramos estas herramientas en la vida cotidiana. Así, nos encontramos ante un algoritmo de Machine Learning cuando accedemos a nuestro perfil de Facebook o Instagram. Lo mismo ocurre al ver sugerencias en Netflix. Un algoritmo analiza nuestros hábitos para luego presentar contenidos que puedan interesarnos.

Por tanto, estos algoritmos están presentes en todas partes. El hecho es que distinguimos 3 modelos algorítmicos principales para el aprendizaje automático:

Algoritmos de aprendizaje supervisados ​​que requieren que los desarrolladores o usuarios primero clasifiquen los datos de entrada etiquetándolos. Luego, estas herramientas procesan estos datos para que, en última instancia, se logren los resultados deseados. Por lo general, son la base de un software destinado a proporcionar predicciones. Por ejemplo, podríamos citar un software que generará automáticamente declaraciones de pronóstico para su empresa. Para ello, analizará las ventas realizadas durante años anteriores con el fin de comprender mejor la estacionalidad de su actividad. Luego deberás indicar tu facturación para cada período determinado, los gastos que soportas, etc.

Los algoritmos de aprendizaje no supervisados ​​funcionan sin que tengas que ordenar los datos de entrada. Estas herramientas suelen centrarse en el análisis de tendencias. El objetivo será “adivinar” las variables que dictan la distribución de los números. Posteriormente, el módulo en cuestión establecerá una correlación entre los datos introducidos. Este proceso permitirá posteriormente contar con un modelo que priorizará todos los elementos de un agregado de datos. En la práctica, estos algoritmos facilitan la comprensión de secuencias estadísticas y resuelven problemas relacionados con el clustering, la reducción de cantidades o el establecimiento de reglas de asociación. Por tanto, pueden utilizarse, por ejemplo, para automatizar el análisis de señales comerciales.

Los algoritmos semisupervisados ​​representan el punto medio de ambos mundos. Algunos datos están ordenados y etiquetados mientras que otros no. Al hacer esto, el modelo ordenará estos datos por sí mismo y luego podrá proporcionar una predicción si es necesario. Este diagrama permite que las herramientas sean relativamente autónomas garantizando al mismo tiempo un mínimo de precisión. Es un modelo muy utilizado en Big Data para clasificación o regresión.

Tenga en cuenta que hay muchas formas de clasificar algoritmos. Considerando su modo de funcionamiento, distinguiremos, por ejemplo, aquellos diseñados para regresión, agrupamiento o incluso regularización. Sin embargo, también mencionaremos árboles de decisión y algoritmos bayesianos o incluso redes neuronales artificiales y modelos de reducción dimensional.

Algoritmos para cifrar tus datos

Las preocupaciones de todos sobre sus datos personales han empujado a las empresas de Silicon Valley a desarrollar algoritmos para cifrar estos datos. Estos proporcionarán una capa adicional de protección contra intrusiones y fugas de datos. Para ello, tus datos serán procesados ​​como entrada para obtener una serie de caracteres alfanuméricos como salida. De esta forma, los datos serán indescifrables para los ciberdelincuentes que hayan logrado robar tus datos.

Algoritmos para la automatización

Las posibilidades de automatización que ofrecen los algoritmos son obvias. De hecho, podríamos darles instrucciones para automatizar diferentes tratamientos. Hoy en día, se utilizan para formar el corazón de muchos software de automatización.

Por ejemplo, estas herramientas le permiten recuperar automáticamente los datos de facturación enviados por sus clientes potenciales por correo electrónico. En este caso, los mensajes que pasan por tu dirección de correo electrónico sirven como datos de entrada. La utilidad podrá reconocer los datos de facturación y luego copiarlos en una hoja de cálculo.

En este caso, el algoritmo analizará cada correo electrónico recibido para encontrar términos clave. Los mensajes que presenten estos términos se procesarán automáticamente para la extracción y copia de datos.

¿Deberíamos temer el uso masivo de algoritmos?

Los algoritmos son herramientas muy prácticas, pero están lejos de ser infalibles. El rendimiento de un algoritmo dependerá principalmente de los conocimientos de su diseñador y del lenguaje elegido. Si no fue diseñado para manejar una situación determinada o si se cometió un error durante su diseño, mostrará errores o ejecutará comandos inapropiados. Al hacerlo, estas disfunciones no siempre son fáciles de identificar.

Como se mencionó anteriormente, los algoritmos sirven como herramientas para la toma de decisiones. Por tanto, pueden alterar su percepción de la realidad y animarle a tomar decisiones cuestionables. Imaginemos que un algoritmo asesora a un responsable de RRHH. Según los datos de la empresa, puede sugerir al reclutador que contrate a un hombre blanco en lugar de a una mujer perteneciente a una minoría. De hecho, sus análisis podrían mostrar que el primer grupo será más eficiente. Este será el caso si la sociedad tiene más individuos caucásicos que personas de color en sus filas.

Esta preocupación ligada a la percepción será aún más problemática para la IA. Al alimentar estos algoritmos con datos, corremos el riesgo de repetir los mismos errores debido a sesgos profundamente arraigados. En una estructura carente de diversidad étnica, un algoritmo deducirá que las minorías no cumplen los criterios de la empresa.

Al contrario de lo que se imagina, este problema está en el centro de las noticias. Los algoritmos parecen favorecer la discriminación. Por lo tanto, los algoritmos de reconocimiento facial consideran a las personas de color como delincuentes y los chatbots pueden adoptar comentarios racistas.

¿Cómo remediar los sesgos de percepción de los algoritmos?

Depende de los diseñadores tomar las decisiones correctas para remediar estos problemas. Por ahora, se trata de adoptar buenas prácticas para eliminar estos sesgos. Conviene inicialmente concentrarse en los datos realmente importantes y, por ejemplo, no considerar el origen de cada persona. Los textos legales adoptados en los últimos años van en esta dirección, pero queda por ver si los GAFAM siguen la tendencia.

Los ingenieros y desarrolladores informáticos también necesitan ser más responsables de sus creaciones y anticiparse a cualquier mal uso. Por tanto, los técnicos deben protestar en caso de que alguna tecnología se utilice para otros fines. Este ya fue el caso de los empleados de Microsoft que se oponían al uso de HoloLens en el ámbito militar, los empleados de Google han manifestado su oposición a un proyecto para crear drones asesinos.

Es necesario abordar más seriamente las cuestiones relacionadas con los prejuicios. Incluso en el caso de que se eliminaran determinados parámetros, el algoritmo podría deducir su existencia para tenerlos en cuenta. Esta es una de las razones por las que Amazon decidió prescindir de su IA para la contratación. Contra todas las expectativas, discriminó tanto a las personas de color como a las mujeres. Una situación que debería animar a las empresas a adoptar pruebas más profundas para intentar identificar estos sesgos.