Frank Liu, director de operaciones de Zilliz – Serie de entrevistas

Estás leyendo la publicación: Frank Liu, director de operaciones de Zilliz – Serie de entrevistas

Frank Liu es el Director de Operaciones de Zilliz, un proveedor líder de bases de datos vectoriales y tecnologías de IA. También son los ingenieros y científicos que crearon LF AI Milvus®, la base de datos vectorial de código abierto más popular del mundo.

¿Qué le atrajo inicialmente del aprendizaje automático?

Mi primera exposición al poder de ML/AI fue como estudiante de pregrado en Stanford, a pesar de estar un poco lejos de mi especialidad (Ingeniería Eléctrica). Inicialmente me atrajo EE como un campo porque la capacidad de destilar sistemas eléctricos y físicos complejos en aproximaciones matemáticas me pareció muy poderosa, y las estadísticas y el aprendizaje automático me parecieron iguales. Terminé tomando más clases de visión por computadora y aprendizaje automático durante la escuela de posgrado, y terminé escribiendo mi tesis de maestría sobre el uso de ML para calificar la belleza estética de las imágenes. Todo esto me llevó a mi primer trabajo en el equipo de Computer Vision & Machine Learning en Yahoo, donde desempeñé una función híbrida de investigación y desarrollo de software. Todavía estábamos en los días previos a los transformadores de AlexNet y VGG en ese entonces, y ver un campo completo y una industria moverse tan rápidamente, desde la preparación de datos hasta el entrenamiento masivo de modelos paralelos y la producción de modelos, ha sido increíble. En muchos sentidos, se siente un poco ridículo usar la frase “en ese entonces” para referirse a algo que sucedió hace menos de 10 años, pero ese es el progreso que se ha logrado en este campo.

Después de Yahoo, me desempeñé como CTO de una startup que cofundé, donde aprovechamos ML para la localización en interiores. Allí, tuvimos que optimizar los modelos secuenciales para microcontroladores muy pequeños, un desafío de ingeniería muy diferente pero no obstante relacionado con los modelos de difusión y LLM masivos de la actualidad. También construimos hardware, tableros para visualización y aplicaciones simples nativas de la nube, pero AI/ML siempre sirvió como un componente central del trabajo que estábamos haciendo.

Aunque he estado en o junto a ML durante la mayor parte de los 7 u 8 años, todavía mantengo mucho amor por el diseño de circuitos y el diseño de lógica digital. Tener experiencia en Ingeniería Eléctrica es, en muchos sentidos, increíblemente útil para mucho del trabajo en el que estoy involucrado en estos días también. Una gran cantidad de conceptos importantes en el diseño digital, como la memoria virtual, la predicción de bifurcaciones y la ejecución concurrente en HDL, ayudan a proporcionar una vista completa de una gran cantidad de ML y sistemas distribuidos en la actualidad. Si bien entiendo el atractivo de CS, espero ver un resurgimiento en campos de ingeniería más tradicionales (EE, MechE, ChemE, etc.) en los próximos años.

Para los lectores que no están familiarizados con el término, ¿qué son los datos no estructurados?

Los datos no estructurados se refieren a datos “complejos”, que son esencialmente datos que no se pueden almacenar en un formato predefinido ni encajar en un modelo de datos existente. A modo de comparación, los datos estructurados se refieren a cualquier tipo de datos que tengan una estructura predefinida: datos numéricos, cadenas, tablas, objetos y almacenes de clave/valor son ejemplos de datos estructurados.

Para ayudar a comprender realmente qué son los datos no estructurados y por qué tradicionalmente ha sido difícil procesar computacionalmente este tipo de datos, es útil compararlos con los datos estructurados. En los términos más simples, los datos estructurados tradicionales se pueden almacenar a través de un modelo relacional. Tomemos, por ejemplo, una base de datos relacional con una tabla para almacenar información de libros: cada fila dentro de la tabla podría representar un libro en particular indexado por número ISBN, mientras que las columnas indicarían la categoría de información correspondiente, como título, autor, fecha de publicación. , así sucesivamente y así sucesivamente. Hoy en día, existen modelos de datos mucho más flexibles: almacenes de columnas anchas, bases de datos de objetos, bases de datos de gráficos, etc. Pero la idea general sigue siendo la misma: estas bases de datos están destinadas a almacenar datos que se ajustan a un molde o modelo de datos en particular.

🔥 Recomendado:  Yotam Oren, CEO y cofundador de Mona Labs - Serie de entrevistas

Los datos no estructurados, por otro lado, se pueden considerar esencialmente como una gota pseudoaleatoria de datos binarios. Puede representar cualquier cosa, ser arbitrariamente grande o pequeño, y puede transformarse y leerse de innumerables maneras diferentes. Esto hace que sea imposible encajar en cualquier modelo de datos, y mucho menos en una tabla en una base de datos relacional.

¿Cuáles son algunos ejemplos de este tipo de datos?

Los datos generados por humanos (imágenes, videos, audio, lenguaje natural, etc.) son excelentes ejemplos de datos no estructurados. Pero también hay una variedad de ejemplos menos mundanos de datos no estructurados. Los perfiles de usuario, las estructuras de proteínas, las secuencias del genoma e incluso el código legible por humanos también son excelentes ejemplos de datos no estructurados. La razón principal por la que los datos no estructurados tradicionalmente han sido tan difíciles de administrar es que los datos no estructurados pueden tomar cualquier forma y pueden requerir tiempos de ejecución muy diferentes para procesar.

Usando imágenes como ejemplo, dos fotos de la misma escena pueden tener valores de píxeles muy diferentes, pero ambas tienen un contenido general similar. El lenguaje natural es otro ejemplo de datos no estructurados a los que me gusta referirme. Las frases “Ingeniería eléctrica” ​​y “Ciencias de la computación” están estrechamente relacionadas, tanto que los edificios EE y CS de Stanford son adyacentes entre sí, pero sin una forma de codificar el significado semántico detrás de estas dos frases, una computadora puede ingenuamente pensar que “Ciencias de la Computación” y “Ciencias Sociales” están más relacionadas.

¿Qué es una base de datos vectorial?

Para comprender una base de datos vectorial, primero ayuda comprender qué es una incrustación. Llegaré a eso en un momento, pero la versión corta es que una incrustación es un vector de alta dimensión que puede representar la semántica de los datos no estructurados. En general, es muy probable que dos incrustaciones cercanas entre sí en términos de distancia correspondan a datos de entrada semánticamente similares. Con el ML moderno, tenemos el poder de codificar y transformar una variedad de diferentes tipos de datos no estructurados (imágenes y texto, por ejemplo) en vectores de incrustación semánticamente poderosos.

Desde la perspectiva de una organización, los datos no estructurados se vuelven increíblemente difíciles de administrar una vez que la cantidad supera cierto límite. Aquí es donde una base de datos vectorial como Nube Zilliz entra en juego. Una base de datos vectorial está diseñada específicamente para almacenar, indexar y buscar en cantidades masivas de datos no estructurados aprovechando las incrustaciones como la representación subyacente. La búsqueda en una base de datos de vectores generalmente se realiza con vectores de consulta, y el resultado de la consulta son los primeros N resultados más similares en función de la distancia.

🔥 Recomendado:  Ronny Shalev, PhD, CEO y fundador de Dyad Medical Inc - Serie de entrevistas

Las mejores bases de datos vectoriales tienen muchas de las características de usabilidad de las bases de datos relacionales tradicionales: escalado horizontal, almacenamiento en caché, replicación, conmutación por error y ejecución de consultas son solo algunas de las muchas características que debe implementar una verdadera base de datos vectorial. Como definidores de categorías, también hemos estado activos en círculos académicos, habiendo publicado artículos en SIGMOD 2021 y VLDB 2022las dos principales conferencias sobre bases de datos que existen en la actualidad.

¿Podría discutir qué es una incrustación?

En términos generales, una incrustación es un vector de alta dimensión que proviene de las activaciones de una capa intermedia en una red neuronal multicapa. Muchas redes neuronales están capacitadas para generar incrustaciones por sí mismas y algunas aplicaciones usan vectores concatenados de múltiples capas intermedias como incrustaciones, pero no profundizaré demasiado en ninguno de ellos por ahora. Otra forma menos común pero igualmente importante de generar incrustaciones es a través de funciones artesanales. En lugar de que un modelo de ML aprenda automáticamente las representaciones correctas para los datos de entrada, la buena ingeniería de características antigua también puede funcionar para muchas aplicaciones. Independientemente del método subyacente, las incrustaciones de objetos semánticamente similares están cerca entre sí en términos de distancia, y esta propiedad es lo que impulsa las bases de datos vectoriales.

¿Cuáles son algunos de los casos de uso más populares con esta tecnología?

Las bases de datos vectoriales son excelentes para cualquier aplicación que requiera algún tipo de búsqueda semántica: la recomendación de productos, el análisis de video, la búsqueda de documentos, la detección de amenazas y fraudes y los chatbots impulsados ​​por IA son algunos de los casos de uso más populares para las bases de datos vectoriales en la actualidad. Para ilustrar esto, Milvusla base de datos vectorial de código abierto creada por Zilliz y el núcleo subyacente de Zilliz Cloud, ha sido utilizada por más de mil usuarios empresariales en una variedad de casos de uso diferentes.

Siempre estoy feliz de conversar sobre estas aplicaciones y ayudar a las personas a comprender cómo funcionan, pero definitivamente también disfruto mucho repasando algunos de los casos de uso de bases de datos vectoriales menos conocidos. El descubrimiento de nuevos fármacos es uno de mis casos favoritos de uso de bases de datos de vectores de “nicho”. El desafío para esta aplicación en particular es buscar posibles fármacos candidatos para tratar una determinada enfermedad o síntoma entre una base de datos de 800 millones de compuestos. Una empresa farmacéutica con la que nos comunicamos pudo mejorar significativamente el proceso de descubrimiento de fármacos además de reducir los recursos de hardware al combinar Milvus con una biblioteca de quimioinformática llamada RDKit.

Museo de Arte de Cleveland (CMA) IA ArtLens es otro ejemplo que me gusta mencionar. AI ArtLens es una herramienta interactiva que toma una imagen de consulta como entrada y extrae imágenes visualmente similares de la base de datos del museo. Esto generalmente se conoce como búsqueda inversa de imágenes y es un caso de uso bastante común para las bases de datos vectoriales, pero la propuesta de valor única que Milvus proporcionó a CMA fue la capacidad de poner en marcha la aplicación en una semana con un equipo muy pequeño.

¿Podría hablar sobre qué es la plataforma de código abierto Towhee?

🔥 Recomendado:  Serie Redmi Note 12 presentada en India; Cuenta con cámara de 200 MP y cámara de 200 MP. Carga de 120W

Al comunicarnos con personas de la comunidad de Milvus, descubrimos que muchos de ellos querían tener una forma unificada de generar incrustaciones para Milvus. Esto fue cierto para casi todas las diferentes organizaciones con las que hablamos, pero especialmente para las empresas que no tenían muchos ingenieros de aprendizaje automático. Con Towhee, nuestro objetivo es resolver esta brecha a través de lo que llamamos “ETL de datos vectoriales”. Mientras que las canalizaciones de ETL tradicionales se centran en combinar y transformar datos estructurados de múltiples fuentes en un formato utilizable, Towhee está diseñado para trabajar con datos no estructurados e incluye explícitamente ML en la canalización de ETL resultante. Towhee logra esto al proporcionar cientos de modelos, algoritmos y transformaciones que se pueden usar como bloques de construcción en una canalización ETL de datos vectoriales. Además de esto, Towhee también proporciona una API de Python fácil de usar que permite a los desarrolladores crear y probar estas canalizaciones ETL en una sola línea de código.

Si bien Towhee es su propio proyecto independiente, también es parte del ecosistema de base de datos de vectores más amplio centrado en Milvus que está creando Zilliz. Visualizamos a Milvus y Towhee como dos proyectos altamente complementarios que, cuando se usan juntos, realmente pueden democratizar el procesamiento de datos no estructurados.

Zilliz recientemente recaudó una ronda de Serie B de $ 60 millones. ¿Cómo acelerará esto la misión Zilliz?

En primer lugar, me gustaría agradecer a Prosperity7 Ventures, Pavilion Capital, Hillhouse Capital, 5Y Capital, Yunqi Capital y otros por creer en la misión de Zilliz y apoyarnos con esta extensión de la Serie B. Ahora hemos recaudado un total de $ 113 millones, y esta última ronda de financiamiento respaldará nuestros esfuerzos para ampliar los equipos de ingeniería y comercialización. En particular, mejoraremos nuestra oferta de nube administrada, que actualmente se encuentra en acceso anticipado pero está programada para abrirse a todos a finales de este año. También continuaremos invirtiendo en bases de datos de vanguardia e investigación de inteligencia artificial como lo hemos hecho en los últimos 4 años.

¿Hay algo más que le gustaría compartir sobre Zilliz?

Como empresa, estamos creciendo rápidamente, pero lo que realmente distingue a nuestro equipo actual de otros en el espacio de bases de datos y ML es nuestra singular pasión por lo que estamos construyendo. Estamos en una misión para democratizar el procesamiento de datos no estructurados, y es absolutamente increíble ver a tanta gente talentosa en Zilliz trabajando hacia un objetivo singular. Si algo de lo que estamos haciendo le parece interesante, no dude en Póngase en contacto con nosotros. Nos encantaría tenerte a bordo.

Si desea saber un poco más, también estoy personalmente abierto a conversar sobre Zilliz, bases de datos vectoriales o avances relacionados con la integración en AI/ML. Mi puerta (figurativa) siempre está abierta, así que siéntete libre de contactarme directamente en Twitter/LinkedIn.

Por último, pero no menos importante, ¡gracias por leer!

Gracias por la gran entrevista, los lectores que deseen obtener más información deben visitar Zilliz.