Migliorare la Velocità e la Privacy nel Machine Learning
Un nuovo metodo migliora le prestazioni dell'FHE mantenendo l'accuratezza nell'analisi dei dati.
― 5 leggere min
Indice
Con l'aumento dell'uso del machine learning in settori come la sanità, il riconoscimento facciale e la finanza, cresce anche la necessità di mantenere al sicuro i dati sensibili. Un modo per proteggere questi dati pur continuando ad analizzarli è attraverso un metodo chiamato Fully Homomorphic Encryption (FHE). Questa tecnica permette di fare calcoli su dati criptati senza doverli decriptare prima, il che aiuta a mantenere la privacy.
Tuttavia, l'FHE ha un grande svantaggio: può essere molto più lento rispetto ai calcoli normali. Questo rallentamento può arrivare fino a cinque volte di più! La ragione principale di questo ritardo è che le operazioni non polinomiali, come ReLU (Rectified Linear Unit) e MaxPooling, che sono spesso usate nei modelli di machine learning, non sono supportate direttamente dall'FHE. Per aggirare questo problema, i ricercatori spesso sostituiscono queste operazioni con Approssimazioni Polinomiali che possono essere elaborate sotto l'FHE, ma questa sostituzione può introdurre errori.
In questo lavoro, presentiamo un nuovo approccio che mira ad accelerare l'analisi dei dati privati mantenendo alta la precisione. Proponiamo di usare approssimazioni polinomiali a basso grado invece di quelle ad alto grado. Inoltre, introduciamo quattro tecniche per migliorare le prestazioni dei modelli che usano queste approssimazioni sotto l'FHE.
La Sfida delle Operazioni Non-Polinomiali
Le operazioni non polinomiali sono essenziali in molti modelli di machine learning. Operazioni come ReLU permettono ai modelli di imparare introducendo non linearità, il che aiuta a gestire schemi complessi nei dati. Tuttavia, quando si usa l'FHE, queste operazioni devono essere trattate con attenzione. Lavori precedenti hanno esaminato due strategie principali:
Approcci Ibridi: Questo implica l'uso di un mix di FHE e altri metodi sicuri per elaborare operazioni non polinomiali. Tuttavia, questo porta a delle complicazioni, principalmente a causa dei ritardi di comunicazione introdotti quando i dati vengono trasferiti tra diversi metodi.
Approssimazioni Polinomiali: Questo metodo sostituisce le operazioni non polinomiali con funzioni polinomiali che possono essere calcolate sotto l'FHE. Anche se questo approccio può essere efficace, porta spesso a un compromesso tra precisione e velocità di elaborazione. Funzioni polinomiali ad alta precisione di solito richiedono gradi elevati, che richiedono molto più tempo per essere calcolate. Funzioni a grado più basso sono più veloci ma possono portare a perdite significative di precisione.
La Nostra Soluzione: Approssimazioni Polinomiali a Basso Grado
Proponiamo un nuovo framework che si concentra sulla sostituzione delle operazioni non polinomiali con approssimazioni polinomiali a basso grado. Il nostro approccio cerca di rendere l'inferenza di machine learning basata su FHE più veloce mantenendo alta la precisione. Facciamo questo incorporando quattro tecniche chiave:
Ottimizzazione dei Coefficienti (CT): Questo implica affinare i coefficienti delle approssimazioni polinomiali in base alla distribuzione dei dati di input prima dell'addestramento. In questo modo, possiamo ottenere maggiore precisione senza la necessità di un ampio riaddestramento.
Approssimazione Progressiva (PA): Invece di sostituire tutti gli operatori non polinomiali contemporaneamente, suggeriamo di sostituirli uno alla volta. Dopo ogni sostituzione, ottimizziamo il modello, aiutando a preservare la precisione e garantire la convergenza durante l'addestramento.
Addestramento Alternato (AT): In questa tecnica, alterniamo l’addestramento tra approssimazioni polinomiali e operatori lineari. Questa separazione aiuta ad evitare conflitti che possono sorgere durante l’addestramento e garantisce che entrambi possano essere ottimizzati efficacemente.
Scalatura Dinamica e Statica (DS/SS): Durante la fase di addestramento, regoliamo dinamicamente i valori di input delle approssimazioni polinomiali per ottimizzare le prestazioni. Una volta completato l'addestramento, applichiamo una scalatura statica basata sul valore massimo di input per garantire che il modello funzioni efficacemente durante il reale utilizzo.
Risultati del Nostro Approccio
I nostri esperimenti dimostrano l'efficacia del nostro framework utilizzando modelli ben noti come ResNet-18 e VGG-19. Quando applicati a questi modelli, soprattutto in compiti complessi come quelli nel dataset ImageNet, le nostre tecniche hanno superato i metodi precedenti che utilizzavano approssimazioni polinomiali di grado superiore.
Risultati Chiave
La combinazione delle nostre tecniche ha portato a miglioramenti notevoli sia nella precisione che nella velocità di elaborazione. Ad esempio, mentre l'uso di un'approssimazione polinomiale di grado 27 portava in precedenza a un'alta precisione, il nostro framework ha raggiunto livelli di precisione simili con un polinomiale di grado significativamente inferiore, portando a calcoli più veloci.
L'efficacia del metodo è stata coerente su diversi dataset, dimostrando che è robusto e può adattarsi bene a varie sfide.
Valutazioni Specifiche
Per garantire che il nostro approccio sia sia efficace che efficiente, abbiamo condotto varie valutazioni su più dataset:
VGG-19 su CiFar-10: I risultati hanno mostrato che gli approcci ibridi non potevano competere con i nostri metodi proposti, indicando che le nostre approssimazioni polinomiali a basso grado erano molto più efficaci nel mantenere alta la precisione con una latenza ridotta.
ResNet-18 su ImageNet-1k: Questo ha dimostrato che il nostro framework ha costantemente raggiunto miglioramenti nella precisione anche a gradi di approssimazione polinomiali più bassi rispetto ai metodi tradizionali.
Conclusione
Questo lavoro dimostra che è possibile raggiungere inferenze di machine learning veloci e private attraverso approssimazioni polinomiali a basso grado mantenendo la precisione. Le tecniche che abbiamo proposto facilitano un approccio sistematico per ottimizzare sia il processo di addestramento che le prestazioni dei modelli in esecuzione sotto la Fully Homomorphic Encryption.
Integrando l'ottimizzazione dei coefficienti, l'approssimazione progressiva, l'addestramento alternato e i metodi di scalatura, siamo riusciti a colmare il divario tra protezione della privacy ed efficienza computazionale. Questo nuovo framework rappresenta un passo promettente nella continua sfida di proteggere i dati sensibili mentre si utilizzano tecniche di machine learning avanzate.
Le ricerche future si concentreranno su ulteriori ottimizzazioni di queste tecniche ed esploreranno la loro applicabilità ad altri modelli di machine learning complessi e dataset. Crediamo che questo lavoro apra nuove opportunità per il machine learning che preserva la privacy e incoraggi ulteriori indagini su un'elaborazione efficiente dei dati sotto crittografia.
Titolo: Accurate Low-Degree Polynomial Approximation of Non-polynomial Operators for Fast Private Inference in Homomorphic Encryption
Estratto: As machine learning (ML) permeates fields like healthcare, facial recognition, and blockchain, the need to protect sensitive data intensifies. Fully Homomorphic Encryption (FHE) allows inference on encrypted data, preserving the privacy of both data and the ML model. However, it slows down non-secure inference by up to five magnitudes, with a root cause of replacing non-polynomial operators (ReLU and MaxPooling) with high-degree Polynomial Approximated Function (PAF). We propose SmartPAF, a framework to replace non-polynomial operators with low-degree PAF and then recover the accuracy of PAF-approximated model through four techniques: (1) Coefficient Tuning (CT) -- adjust PAF coefficients based on the input distributions before training, (2) Progressive Approximation (PA) -- progressively replace one non-polynomial operator at a time followed by a fine-tuning, (3) Alternate Training (AT) -- alternate the training between PAFs and other linear operators in the decoupled manner, and (4) Dynamic Scale (DS) / Static Scale (SS) -- dynamically scale PAF input value within (-1, 1) in training, and fix the scale as the running max value in FHE deployment. The synergistic effect of CT, PA, AT, and DS/SS enables SmartPAF to enhance the accuracy of the various models approximated by PAFs with various low degrees under multiple datasets. For ResNet-18 under ImageNet-1k, the Pareto-frontier spotted by SmartPAF in latency-accuracy tradeoff space achieves 1.42x ~ 13.64x accuracy improvement and 6.79x ~ 14.9x speedup than prior works. Further, SmartPAF enables a 14-degree PAF (f1^2 g_1^2) to achieve 7.81x speedup compared to the 27-degree PAF obtained by minimax approximation with the same 69.4% post-replacement accuracy. Our code is available at https://github.com/EfficientFHE/SmartPAF.
Autori: Jianming Tong, Jingtian Dang, Anupam Golder, Callie Hao, Arijit Raychowdhury, Tushar Krishna
Ultimo aggiornamento: 2024-05-07 00:00:00
Lingua: English
URL di origine: https://arxiv.org/abs/2404.03216
Fonte PDF: https://arxiv.org/pdf/2404.03216
Licenza: https://creativecommons.org/licenses/by/4.0/
Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.
Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.