Interviste

Dott. Ram Sriharsha, VP of Engineering at Pinecone – Intervista

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Il Dott. Ram Sriharsha è il VP of Engineering e R&D di Pinecone.

Prima di unirsi a Pinecone, Ram ha ricoperto ruoli di VP a Yahoo, Databricks e Splunk. A Yahoo, è stato sia un principale ingegnere software che uno scienziato di ricerca; a Databricks, è stato il lead del prodotto e dell’ingegneria per la piattaforma di analisi unificata per la genomica; e, nei suoi tre anni a Splunk, ha ricoperto diversi ruoli, tra cui Sr Principal Scientist, VP Engineering e Distinguished Engineer.

Pinecone è un database vettoriale completamente gestito che rende facile aggiungere la ricerca vettoriale alle applicazioni di produzione. Combina librerie di ricerca vettoriale, funzionalità come il filtro e infrastrutture distribuite per fornire prestazioni elevate e affidabilità a qualsiasi scala.

Cosa ti ha inizialmente attratto verso il machine learning?

Le statistiche ad alta dimensionalità, la teoria dell’apprendimento e argomenti del genere sono stati ciò che mi ha attirato verso il machine learning. Sono matematicamente ben definiti, possono essere ragionati e offrono alcuni insight fondamentali su cosa significhi apprendere e come progettare algoritmi che possano apprendere in modo efficiente.

Precedentemente eri Vice President of Engineering a Splunk, una piattaforma di dati che aiuta a trasformare i dati in azioni per l’Osservabilità, l’IT, la Sicurezza e altro. Quali sono stati alcuni dei tuoi principali take-away da questa esperienza?

Non mi ero reso conto fino a quando non sono arrivato a Splunk di quanto diverse siano le use case nella ricerca aziendale: le persone utilizzano Splunk per l’analisi dei log, l’osservabilità e l’analisi della sicurezza tra molte altre use case. E ciò che è comune a molte di queste use case è l’idea di rilevare eventi simili o molto dissimili (o anomali) nei dati non strutturati. Si tratta di un problema difficile e i metodi tradizionali di ricerca attraverso tali dati non sono molto scalabili. Durante il mio tempo a Splunk, ho avviato ricerche su queste aree su come utilizzare il machine learning (e il deep learning) per l’estrazione dei log, l’analisi della sicurezza, ecc. Attraverso questo lavoro, ho capito che le embedding vettoriali e la ricerca vettoriale sarebbero diventate una primitiva fondamentale per nuovi approcci a questi domini.

Puoi descrivere per noi cosa è la ricerca vettoriale?

Nella ricerca tradizionale (nota anche come ricerca per parole chiave), si cerca di trovare corrispondenze tra parole chiave tra una query e documenti (questo potrebbe essere tweet, documenti web, documenti legali, ecc.). Per fare ciò, si divide la query in token, si recuperano documenti che contengono il token dato e si combinano e si classificano per determinare i documenti più rilevanti per una data query.

Il principale problema, naturalmente, è che per ottenere risultati rilevanti, la query deve avere corrispondenze di parole chiave nel documento. Un classico problema della ricerca tradizionale è: se si cerca “pop”, si troverà “pop music”, ma non si troverà “soda”, ecc. poiché non c’è sovrapposizione di parole chiave tra “pop” e documenti che contengono “soda”, anche se sappiamo che colloquialmente in molte aree degli Stati Uniti, “pop” significa la stessa cosa di “soda”.

Nella ricerca vettoriale, si inizia convertendo sia le query che i documenti in un vettore in uno spazio ad alta dimensionalità. Ciò viene solitamente fatto passando il testo attraverso un modello di deep learning come i modelli LLM di OpenAI o altri modelli linguistici. Ciò che si ottiene come risultato è una matrice di numeri a virgola mobile che può essere pensata come un vettore in uno spazio ad alta dimensionalità.

L’idea fondamentale è che i vettori vicini in questo spazio ad alta dimensionalità sono anche semanticamente simili. Tornando al nostro esempio di “soda” e “pop”, se il modello è stato addestrato sul corpus giusto, è probabile che consideri “pop” e “soda” semanticamente simili e quindi le relative embedding saranno vicine l’una all’altra nello spazio di embedding. Se questo è il caso, allora il recupero di documenti vicini per una data query diventa il problema di cercare i vicini più vicini del corrispondente vettore di query in questo spazio ad alta dimensionalità.

Puoi descrivere cosa è il database vettoriale e come consente la costruzione di applicazioni di ricerca vettoriale ad alte prestazioni?

Un database vettoriale memorizza, indice e gestisce queste embedding (o vettori). Le principali sfide che un database vettoriale risolve sono:

  • Costruire un indice di ricerca efficiente sui vettori per rispondere a query di vicini più vicini
  • Costruire indici e strutture di dati ausiliari efficienti per supportare il filtro delle query. Ad esempio, supponga di voler cercare solo un subset del corpus, dovrebbe essere possibile sfruttare l’indice di ricerca esistente senza doverlo ricostruire

Supporta aggiornamenti efficienti e mantenga sia i dati che l’indice di ricerca freschi, coerenti, duraturi, ecc.

Quali sono i diversi tipi di algoritmi di machine learning che vengono utilizzati a Pinecone?

Di solito lavoriamo su algoritmi di ricerca del vicino più vicino approssimativo e sviluppiamo nuovi algoritmi per aggiornare, interrogare e gestire grandi quantità di dati in modo il più efficiente possibile.

Lavoriamo anche su algoritmi che combinano il recupero denso e sparso per migliorare la rilevanza della ricerca.

Quali sono alcune delle sfide dietro la costruzione di una ricerca scalabile?

Mentre la ricerca del vicino più vicino approssimativo è stata oggetto di ricerca per decenni, crediamo che ci sia ancora molto da scoprire.

In particolare, quando si tratta di progettare una ricerca del vicino più vicino su larga scala che sia efficiente in termini di costo, o di progettare algoritmi che supportino aggiornamenti ad alto volume e indici freschi in generale, sono problemi difficili oggi.

Quali sono alcuni dei diversi tipi di use case per cui questa tecnologia può essere utilizzata?

L’insieme di use case per i database vettoriali sta crescendo di giorno in giorno. Oltre al suo utilizzo nella ricerca semantica, lo vediamo anche utilizzato nella ricerca di immagini, recupero di immagini, intelligenza artificiale generativa, analisi della sicurezza, ecc.

Qual è la tua visione per il futuro della ricerca?

Credo che il futuro della ricerca sarà guidato dall’intelligenza artificiale, e non credo che questo sia molto lontano. In quel futuro, mi aspetto che i database vettoriali saranno una primitiva fondamentale. Ci piace pensare ai database vettoriali come alla memoria a lungo termine (o alla base di conoscenza esterna) dell’intelligenza artificiale.

Grazie per la grande intervista, i lettori che desiderano saperne di più possono visitare Pinecone.

Antoine è un leader visionario e socio fondatore di Unite.AI, guidato da una passione incrollabile per plasmare e promuovere il futuro dell'AI e della robotica. Un imprenditore seriale, crede che l'AI sarà così disruptiva per la società come l'elettricità, e spesso si lascia trasportare dall'entusiasmo per il potenziale delle tecnologie disruptive e dell'AGI.

Come futurista, è dedicato a esplorare come queste innovazioni plasmeranno il nostro mondo. Inoltre, è il fondatore di Securities.io, una piattaforma focalizzata sugli investimenti in tecnologie all'avanguardia che stanno ridefinendo il futuro e riplasmando interi settori.