semihsalihoglu
My goal was to explain the intuitions behind HNSW indices as a natural relaxation of two prior indices: kd trees and the (not much appreciated) sa trees.
I also place these three vector indices in a framework that I call the "FES Theorem", which states that any vector index design can provide at most two of the following three properties: - Fast: returns vectors that are similar to a query vector q quickly. - Exact: correctly returns the most similar vectors to q (instead of "approximate" indices that can make mistakes) - Scalable: can index vectors with large number of dimensions, e.g., 1000s of dimensions.
Kd trees, sa trees, and HNSW satisfy each 2 possible combinations of these 3 properties.
Needless to say, I intentionally picked the term "FES Theorem" to sound like the famous "CAP Theorem". Fes (Turkish) or a fez (English), just like cap, is a headdress. You can see a picture in the post.
I hope you find the explanation of HNSW as a sequence of relaxation of kd trees useful.
Enjoy!
I explain RDF first as a data model and compare its pros and cons with relational and property graph model. I then explain RDF and the standards around RDF, such as RDFS and OWL, as a "knowledge representation system". I cover RDF's roots in knowledge representation and reasoning (KRR), traditional symbolic AI systems. I also discuss several directions I have seen people pursue to improve LLMs with RDF-based or more broadly KRR-based technology (see especially the link to Doug Lenat's last article (I think) on the subject before he passed on).
It's a bit of a long read but I hope people find it useful to think about RDF.
In Praise of Resource Description Framework (RDF)
RAG Using Unstructured Data and Role of Knowledge Graphs
The standard RAG-U uses vector embeddings of chunks, which are fetched from a vector index. An envisioned role of knowledge graphs is to improve standard RAG-U by explicitly linking the chunks through the entities they mention. This is a promising idea but one that need to be subjected to rigorous evaluation as done in prominent IR publications, e.g., SIGIR.
The post then discusses the scenario when an enterprise does not have a knowledge graph and discuss the ideal of automatically extracting knowledge graphs from unstructured pdfs and text documents. It covers the recent work that uses LLMs for this task (they're not yet competitive with specialized models) and highlights many interesting open questions.
Hope this is interesting to people who are interested in the area but intimidated because of the flood of activity (but don't be; I think the area is easier to digest than it may look.)
In short, GNNs are not deeply connected to LLMs.
GNNs became very popular several years ago because they were the only ML architectures where you could incorporate into the model and training objective not just the features but also connections between features. And they dominated academia until LLMs. In practice, I don't think they're as popular as they are in academia but afaik several major companies, such as Pinterest based their recommendation engines on models that had GNN architecture.
But one can imagine building applications that use a mix of these technologies. You can use GNNs to create embeddings of KGs and the use these embeddings to extract information during retrieval in a RAG system. All these combinations are possible.
These blogs have two goals:
(i) give an overview of what I learned as an outsider looking for technical depth; (ii) discuss some venues of work that I ran into that looked important.
This first post is on "Retrieval Augmented Generation using structured data", so private records stored in relational or graph DBMSs. The post is long and full of links to some of the important material I read (given my academic background, many of these are papers) but it should be an easy read especially if you were an outsider intimidated by this fast moving space.
tl;dr for this post: - I provide an overview of RAG. - Compared to pre-LLM work, the simplicity and effectiveness of developing a natural language interface over your database using LLMs is impressive. - There is little work that studies LLMs' ability to generate Cypher or SPARQL. I also hope to see more work on nested, recursive and union-of-join queries. - Everyone is studying how to prompt LLMs so they generate correct DBMS queries. Here, I hope to see work studying the effects of data modeling (normalization, views, graph modeling) on the accuracy of LLM-generated queries.
Hope some find this interesting.
RAG Using Structured Data: Overview and Important Questions
Colombian Painter Botero (Painter of Our Virtues) Dies at 91
US explorer freed after a week from one of Turkey's deepest caves
Organisers say it was one of the largest and most complicated underground rescues ever mounted.
The lowest point of the Morca Cave, in a remote part of the south, reaches nearly 1.3km (0.8 miles) below ground.
Mr Dickey was brought out of the cave at 00:37 local time (21:37 GMT), the Turkish Caving Federation announced on social media. "
Caught in the crossfire: Fears of Chinese–American scientists
So even when using official numbers, the urban density of Istnabul is > 6000 according to Wikipedia.
ps: I live in Toronto, so I know Toronto is incomparably dense compared to other parts of Ontario. I could have made the same point by comparing Toronto's density to Ontario. Though, I'm curious how much of Ontario is uninhabitable. I thought most of it (say > 50%) seemed habitable.
Istanbul, which is the biggest city in my home country Turkiye has these: Area: 5,343 (so 200x smaller) Population: 18M (official census is ~16M but even the major cites 18M)
I'm not even comparing the much denser places in the world (e.g., Gaza).
Interesting that there is apparently a population clock that model's Canada's population: https://www150.statcan.gc.ca/n1/pub/71-607-x/71-607-x2018005...
See also the Century Initiative: https://www.centuryinitiative.ca/ to reach 100M by 2100.