Computer Science > Data Structures and Algorithms
[Submitted on 22 Jan 2018 (this version), latest version 30 Apr 2019 (v2)]
Title:Scalable Secure Computation of Statistical Functions with Applications to $k$-Nearest Neighbors
View PDFAbstract:Given a set $S$ of $n$ $d$-dimensional points, the $k$-nearest neighbors (KNN) is the problem of quickly finding $k$ points in $S$ that are nearest to a query point $q$. The $k$-nearest neighbors problem has applications in machine learning for classification and regression and also in searching. The secure version of KNN where either $q$ or $S$ are encrypted, has applications such as providing services over sensitive (such as medical or localization) data.
In this work we present the first scalable and efficient algorithm for solving KNN with Fully Homomorphic Encryption (FHE) that is realized by a polynomial whose degree is independent of $n$, the number of points. We implemented our algorithm in an open source library based on HELib implementation for the Brakerski-Gentry-Vakuntanthan's FHE scheme, and ran experiments on MIT's OpenStack cloud. Our experiments show that given a query point $q$, we can find the set of 20 nearest points out of more than 1000 points in less than an hour.
Our result introduces a statistical coreset, which is a data summarization technique that allows statistical functions, such as moments, to be efficiently and scalably computed. As a central tool, we design a new coin toss technique which we use to build the coreset. This coin toss technique and computation of statistical functions may be of independent interest.
Submission history
From: Hayim Shaul [view email][v1] Mon, 22 Jan 2018 20:11:09 UTC (126 KB)
[v2] Tue, 30 Apr 2019 08:30:01 UTC (326 KB)
Current browse context:
cs.DS
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
Connected Papers (What is Connected Papers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.