Homomorphic Encryption for Supervised Learning
No Thumbnail Available
URL
Journal Title
Journal ISSN
Volume Title
Sähkötekniikan korkeakoulu |
Master's thesis
Authors
Date
2021-06-15
Department
Major/Subject
Signal, Speech and Language Processing
Mcode
ELEC3031
Degree programme
CCIS - Master’s Programme in Computer, Communication and Information Sciences (TS2013)
Language
en
Pages
59
Series
Abstract
This thesis presents the background, research and implementation of supervised learning with homomorphic encryption. Five machine learning models are considered including linear classifier, logistic regression, classical support vector machine, least squares support vector machine and neural network with one linear layer and sigmoid activation function. The objective of this thesis is to implement workarounds and procedures for training the models with encrypted data and obtain similar results as with regular model. The differences in results are evaluated. The data is encrypted using homomorphic encryption in order to preserve privacy of the data. The most general scenario is that customers want their data to remain private but still need to apply machine learning to their data for example in the cloud. This thesis includes background research of homomorphic encryption and supervised learning models listed above. Also, an overview of existing research related to the topic is provided. All the encrypted models considered are implemented and evaluated by using TenSEAL-library. Regular models are implemented with PyTorch-library or NumPylibrary. The data is encrypted into ciphertext by using Cheon-Kim-Kim-Song-scheme provided by TenSEAL. Training and inference are performed and obtained predictions are sent back to the data owner who decrypts the results in order to obtain the value of the label. The model parameters become encrypted during the training and are decrypted and send back to the model after each epoch. However, the data remains private as it stays encrypted during the training and inference. The results obtained with plain data were similar to the results obtained with encrypted data. It was shown that machine learning models mentioned above, can be implemented for encrypted data without compromising precision. However, the main drawback with encrypted training was the computational efficiency as it took thousands of times longer than with plain data.Tämä diplomityö pitää sisällään taustatutkimuksen ja toteutuksen liittyen homomorfisen salauksen hyödyntämiseen ohjatussa koneoppimisessa. Työssä käsitellään viittä koneoppimismallia: lineaarinen luokittelija, logistinen regressio, kaksi eri tukivektorikonemallia sekä kaksitasoinen neuroverkko. Työn tarkoituksena on toteuttaa vaihtoehtoisia ratkaisuja ja menetelmiä edellä mainittujen mallien kouluttamiseen salatulla datalla ja saavuttaa samankaltaisia tuloksia kuin salaamattomalla datalla. Tulosten eroavaisuudet analysoidaan. Datan salaus tapahtuu käyttämällä homomorfista salausta datan yksityisyyden takaamiseksi. Yleisin tilanne on, että asiakkaat haluavat datansa pysyvän yksityisenä, mutta heillä on tarve hyödyntää koneoppimista dataansa esimerkiksi pilvipalveluissa. Työ sisältää taustatutkimuksen homomorfisesta salauksesta sekä yllä mainituista koneoppimismalleista. Myös aikasempaa tutkimusta aiheeseen liittyen taustoitetaan. Kaikki työssä käsiteltävät salatut mallit toteutetaan ja arvioidaan käyttäen TenSEAL-kirjastoa. Salaamattomat mallit toteutetaan käyttäen PyTorch-kirjastoa tai Numpy-kirjastoa. Data salataan käyttämällä TenSEAL-kirjaston tarjoamaa CheonKim-Kim-Song menetelmää. Mallit koulutetaan ja testataan, minkä jälkeen saadut ennusteet lähetetään takaisin datan haltijalle, joka purkaa saatujen tulosten salauksen päätelläkseen mihin luokkiin tulokset kuuluvat. Mallin parametrit tulevat salatuiksi kouluttamisen aikana, joten niiden salaus puretaan jokaisen koulutuskierroksen jälkeen ja salaamattomat parametrit lähetetään takaisin koneoppimismallille. Tästä huolimatta data säilyy salattuna koko koulutuksen ja testauksen ajan. Salaamattomalla datalla saadut tulokset olivat samankaltaisia kuin salatulla datalla saadut tulokset. Tuloksista kävi ilmi, että yllä mainitut koneoppimismallit voidaan toteuttaa toimimaan salatulla datalla ilman, että mallien tarkkuus kärsii. Suurin haittapuoli salatulla datalla kouluttamisessa oli tehokkuus, sillä se vei jopa tuhansia kertoja kauemmin kuin salaamattomalla datalla.Description
Supervisor
Ollila, EsaThesis advisor
Balch, PhilippeKeywords
homomorphic encryption, supervised learning, ciphertext, binary classification