haystack/docs/_src/benchmarks/retriever_map.json

144 lines
3.8 KiB
JSON
Raw Normal View History

Create time and performance benchmarks for all readers and retrievers (#339) * add time and perf benchmark for es * Add retriever benchmarking * Add Reader benchmarking * add nq to squad conversion * add conversion stats * clean benchmarks * Add link to dataset * Update imports * add first support for neg psgs * Refactor test * set max_seq_len * cleanup benchmark * begin retriever speed benchmarking * Add support for retriever query index benchmarking * improve reader eval, retriever speed benchmarking * improve retriever speed benchmarking * Add retriever accuracy benchmark * Add neg doc shuffling * Add top_n * 3x speedup of SQL. add postgres docker run. make shuffle neg a param. add more logging * Add models to sweep * add option for faiss index type * remove unneeded line * change faiss to faiss_flat * begin automatic benchmark script * remove existing postgres docker for benchmarking * Add data processing scripts * Remove shuffle in script bc data already shuffled * switch hnsw setup from 256 to 128 * change es similarity to dot product by default * Error includes stack trace * Change ES default timeout * remove delete_docs() from timing for indexing * Add support for website export * update website on push to benchmarks * add complete benchmarks results * new json format * removed NaN as is not a valid json token * fix benchmarking for faiss hnsw queries. do sql calls in update_embeddings() as batches * update benchmarks for hnsw 128,20,80 * don't delete full index in delete_all_documents() * update texts for charts * update recall column for retriever * change scale and add units to desc * add units to legend * add axis titles. update desc * add html tags Co-authored-by: deepset <deepset@Crenolape.localdomain> Co-authored-by: Malte Pietsch <malte.pietsch@deepset.ai> Co-authored-by: PiffPaffM <markuspaff.mp@gmail.com>
2020-10-12 13:34:42 +02:00
{
"chart_type": "LineChart",
"title": "Retriever Accuracy",
"subtitle": "mAP at different number of docs",
"description": "Here you can see how the mean avg. precision (mAP) of the retriever decays as the number of documents increases. The set up is the same as the above querying benchmark except that a varying number of negative documents are used to fill the document store.",
"columns": [
"n_docs",
"BM25 / ElasticSearch",
"DPR / ElasticSearch",
"DPR / FAISS (flat)",
"DPR / FAISS (HNSW)",
"DPR / Milvus (flat)",
"DPR / Milvus (HNSW)"
],
"axis": [
{
"x": "Number of docs",
"y": "mAP"
}
],
"data": [
{
"model": "DPR / ElasticSearch",
"n_docs": 10000,
"map": 89.87097014904356
},
{
"model": "BM25 / ElasticSearch",
"n_docs": 100000,
"map": 56.259591531012504
},
{
"model": "BM25 / ElasticSearch",
"n_docs": 10000,
"map": 66.33019927857616
},
{
"model": "DPR / ElasticSearch",
"n_docs": 1000,
"map": 92.95105322830891
},
{
"model": "BM25 / ElasticSearch",
"n_docs": 1000,
"map": 74.20444712972909
},
{
"model": "DPR / ElasticSearch",
"n_docs": 100000,
"map": 86.54606328368973
},
{
"model": "BM25 / ElasticSearch",
"n_docs": 500000,
"map": 45.60339705629754
},
{
"model": "DPR / ElasticSearch",
"n_docs": 500000,
"map": 80.86137228234091
},
{
"model": "DPR / FAISS (flat)",
"n_docs": 1000,
"map": 92.95105322830891
},
{
"model": "DPR / FAISS (flat)",
"n_docs": 500000,
"map": 80.86137228234091
},
{
"model": "DPR / FAISS (flat)",
"n_docs": 10000,
"map": 89.87097014904354
},
{
"model": "DPR / FAISS (flat)",
"n_docs": 100000,
"map": 86.54606328368973
},
{
"model": "DPR / FAISS (HNSW)",
"n_docs": 10000,
"map": 89.49563682134192
},
{
"model": "DPR / FAISS (HNSW)",
"n_docs": 100000,
"map": 84.33419639513305
},
{
"model": "DPR / FAISS (HNSW)",
"n_docs": 500000,
"map": 75.73315903145605
},
{
"model": "DPR / FAISS (HNSW)",
"n_docs": 1000,
"map": 92.95105322830891
},
{
"model": "DPR / Milvus (flat)",
"n_docs": 1000,
"map": 92.95105322830891
},
{
"model": "DPR / Milvus (flat)",
"n_docs": 10000,
"map": 89.87097014904354
},
{
"model": "DPR / Milvus (flat)",
"n_docs": 100000,
"map": 86.54606328368973
},
{
"model": "DPR / Milvus (flat)",
"n_docs": 500000,
"map": 80.86137228234091
},
{
"model": "DPR / Milvus (HNSW)",
"n_docs": 1000,
"map": 92.95105322830891
},
{
"model": "DPR / Milvus (HNSW)",
"n_docs": 10000,
"map": 89.87097014904354
},
{
"model": "DPR / Milvus (HNSW)",
"n_docs": 500000,
"map": 74.85616575291942
},
{
"model": "DPR / Milvus (HNSW)",
"n_docs": 100000,
"map": 86.54606328368973
}
]
Create time and performance benchmarks for all readers and retrievers (#339) * add time and perf benchmark for es * Add retriever benchmarking * Add Reader benchmarking * add nq to squad conversion * add conversion stats * clean benchmarks * Add link to dataset * Update imports * add first support for neg psgs * Refactor test * set max_seq_len * cleanup benchmark * begin retriever speed benchmarking * Add support for retriever query index benchmarking * improve reader eval, retriever speed benchmarking * improve retriever speed benchmarking * Add retriever accuracy benchmark * Add neg doc shuffling * Add top_n * 3x speedup of SQL. add postgres docker run. make shuffle neg a param. add more logging * Add models to sweep * add option for faiss index type * remove unneeded line * change faiss to faiss_flat * begin automatic benchmark script * remove existing postgres docker for benchmarking * Add data processing scripts * Remove shuffle in script bc data already shuffled * switch hnsw setup from 256 to 128 * change es similarity to dot product by default * Error includes stack trace * Change ES default timeout * remove delete_docs() from timing for indexing * Add support for website export * update website on push to benchmarks * add complete benchmarks results * new json format * removed NaN as is not a valid json token * fix benchmarking for faiss hnsw queries. do sql calls in update_embeddings() as batches * update benchmarks for hnsw 128,20,80 * don't delete full index in delete_all_documents() * update texts for charts * update recall column for retriever * change scale and add units to desc * add units to legend * add axis titles. update desc * add html tags Co-authored-by: deepset <deepset@Crenolape.localdomain> Co-authored-by: Malte Pietsch <malte.pietsch@deepset.ai> Co-authored-by: PiffPaffM <markuspaff.mp@gmail.com>
2020-10-12 13:34:42 +02:00
}