Nuevas características de Inteligencia Artificial en Power BI / Power Query

En los últimos años, hemos visto que Power BI / Power Query obtienen nuevas funciones que utilizan Inteligencia Artificial en su núcleo.

Esta publicación del blog es una descripción general de todas estas características, la experiencia que intenta proporcionar y los problemas comunes que intenta resolver.

Columna del ejemplo en Power BI / Power Query

La IA en Power BI / Power Query comenzó por primera vez con la función «Column from Examples» (Columna de ejemplos)  (url) en la que puedes proporcionar una muestra de cómo necesitas que se vea el valor de salida en función de los datos de una columna existente en la que Power BI / Power Query podría mostrar la salida exacta que necesitas:

(un ejemplo sobre cómo puedes escribir los decimales del número en el que Power BI / Power Query podría interpretar tu ejemplo y crear el código para ti; los valores en gris son los sugeridos por el algoritmo)

Se ha estado mejorando esa experiencia desde entonces y solo se está volviendo cada vez más precisa con sus sugerencias. Sin mencionar que siempre puedes mirar el código M que está creando y entrar alguna vez si necesitas hacer algún cambio o enmendarlo.

Tabla del ejemplo (para Web Scraping) en Power BI / Power Query

Hace unos años (a mediados de 2018) agregaron esta nueva funcionalidad al conector «From Web» donde puedes obtener una vista previa de una página web y simplemente escribir algunos ejemplos de los datos que necesitas de la página web y que Power BI / Power Query haga el resto para que puedas obtener los datos que necesitas. Incluso ahora puedes seleccionar cualquier tipo de atributos html, lo que significa que puedes proporcionar un ejemplo de las URL de la imagen que estás buscando y Power BI / Power Query se encargará del resto (usando CSS Selectors) para agarrar los valores específicos que buscas.

(revisando la tabla usando ejemplos para una página web – los valores en gris son los sugeridos por el algoritmo)

Nueva función de IA en Power BI Desktop Noviembre de 2019

Microsoft acaba de agregar al escritorio de Microsoft Power BI algunas experiencias que solo estaban disponibles a través de los flujos de datos de Power BI. Puedes leer la versión completa del blog oficial de Power BI (aquí), pero les daré una descripción general de lo que trae esta nueva versión de Power BI Desktop.

Después de habilitar estas funciones, aparecerá el menú Agregar columna (Add Column) Y el menú de Inicio (Home) en un nuevo grupo de Transformaciones de IA (AI Transforms):

Notarás que estos son básicamente 3 tipos de transformaciones:

  • Análisis de texto (text analytics): que utiliza la API de servicios cognitivos
  • Visión (vision): también utiliza la API de servicios cognitivos
  • Aprendizaje automático (azure machine learning): expone sus funciones / modelos de Azure Machine Learning

Nota: Un requisito super importante para usar en cualquiera de ellas es que necesitas tener una capacidad Premium en uno de sus espacios de trabajo para poder utilizarlas.

Estas características son básicamente una versión modificada de la Experiencia del usuario del conector que he definido previamente (aquí) donde expone un conjunto de funciones que puedes usar contra tus propios datos actuales.

Puedes consultar más información sobre parámetros y funciones en Power BI / Power Query desde aquí.

Miremos cada uno de ellos uno por uno.

Análisis de texto (Text Analytics)

En el momento en que haga clic en el botón análisis de texto (Text Analytics), recibirás una nueva ventana de navegación y autentificacion que debería verse así:

Una vez que finalices el proceso de autentificacion, puedes presionar el botón de conexión y luego esperar unos segundos hasta que el servicio pueda cargar las funciones disponibles del servicio:

Por ahora, solo tenemos 3 funciones disponibles:

  • Detecta el lenguaje (detect language): simplemente hace eso. Detecta el idioma de una cadena de texto y te proporciona el código ISO del idioma.
  • Extraer frases clave (extract key phrases): «recorre a través del texto para mostrar frases importantes en tus datos»
  • Indice de sentimiento (score sentiment): calcula el indice de sentimiento (de 0 a 1) en base a las frases negativas y positivas

Realmente deseo que agreguen una función de Texto traductor (Translator Text) en el futuro para poder traducir mi cadena de texto de inglés a español con bastante facilidad (¡y de manera segura!) En la mayoría de los casos.

Poniendo a prueba la última función, intente esto:

Solo 3 cadenas de texto en español, por lo que tuvo que detectar automáticamente el idioma y luego hacer el análisis del indice de sentimiento (score sentiment) y el resultado es intrigante:

Cuanto más bajo sea el valor, peor puntaje se sentirá (más cerca de 0 es negativo, más cerca de 1 es positivo).

Los dos primeros tienen sentido, pero el último no es tan bueno, pero al mismo tiempo es una forma coloquial de decir «muy malo» o «bastante malo» en algunos países de América Latina.

Aquí está el valor que tengo en esa tabla y a qué se traduce en inglés:

OriginalTranslated
eso es muy buenothat’s really good!
muy malovery bad
bien malo!quite bad

Supongo que lo que estoy tratando de decir es que desearía poder pasar una consulta (con un valor de tabla) para agregar mi propia lista de palabras clave / frases negativas y positivas a este algoritmo. Eso sería tremendo.

Visión

Similar a lo que hice antes, tengo una tabla de muestra con esencialmente dos URL de imágenes del último Microsoft Ignite.

Los enlaces a esas 2 imágenes son (Imagen 1 | Imagen 2). El primero es básicamente el volante del evento y el segundo es una imagen del CEO de Microsoft, Satya Nadella, dando una presentación.

Voy a hacer clic en el botón Visión (Vision) y veamos qué experiencia obtengo:

Es una función que requiere que la imagen se establezca como binaria o como url (como texto).

El resultado de esta función es en realidad una nueva tabla:

Realmente deseo que no expandan automáticamente esta nueva columna durante el proceso posterior de la respuesta de la API, porque ahora termino con 1 fila por cada etiqueta que tiene cada imagen. Desearía poder hacerlo por mi cuenta, haciendo que el campo Json sea un registro en lugar de un valor de texto (como se puede ver en la columna Imágenes de Text Images.Json).

Sin embargo, la función parece estar funcionando. Todavía necesito profundizar en el caso del uso de este, ya que no estoy completamente seguro de qué  etiquetas están disponibles para asignar a una imagen, pero es bueno saber que esto es posible y mostró que había una persona en la segunda foto.

Puedes leer más sobre el etiquetado de imágenes y cómo funciona en la documentación oficial (aquí).

Azure Machine Learning (Aprendizaje automático)

La última opción es para Azure Machine Learning, pero si no tienes ningún modelo / función que puedas usar, te dará un error como el siguiente:

Sin embargo, si tienes algún modelo, se mostrará así:

Si aún no puedes ver nada, te recomiendo que leas la documentación completa sobre esta función desde aquí.

Sobre la autenticación para estas características

Estos son los pasos adicionales para consultores y otros usuarios que trabajan con múltiples cuentas / inquilinos al mismo tiempo. Inicialmente tuve que autentificarme con una cuenta que tiene capacidad Premium, pero no tengo ningún modelo debajo de esa, así que si quiero cambiar a otra, debo pasar por la ventana de Configuración de fuente de datos (Data Source Settings) como con cualquier otro conector e ir allí para cambiar mis credenciales:

Puedes leer completamente esta publicacion del blog la cual profundiza en cómo cambiar tus credenciales dentro de Power BI / Power Query.

Conclusión

¡Estos son tiempos emocionantes! Si tienes capacidad Premium, entonces estoy realmente celoso de ti, ya que esto solo mejorará para ti y puedo imaginar que Microsoft está trabajando detrás de escena para permitir más integraciones / características como esta en el futuro donde podrás simplemente invocar uno de los servicios de Azure sobre tus datos con un solo clic, no más configuraciones tediosas. Este es el sueño de cualquier analista de negocios.

Déjame saber en la sección de comentarios a continuación lo que piensas acerca de estas nuevas características.

Posted in:

2 Comments

  1. Gracias Miguel Escobar por la documentación, realmente no tiene límite la IA. Hay algunos aspectos que no puedo comprender en este momento hasta ponerlos en práctica, está imparable esta revolución de datos. Saludos y nuevamente gracias.

  2. Hola MIguel, verdaderamente es genial, pero mas genial seria que no necesites algo primium y que este disponible como lo esta la columna a partir de ejemplos, me gustaria mucho mas que pudiera existir mas IA en las trasformaciones que realizas con tus archivos de varias fuentes. como siempre que estes bien y espero con ancias las ultimas publicaciones para terminar este año, siempre disfruto de tus post. Cuidate mucho, te envio un fuerte abrazo!.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.