{"id":913,"date":"2018-08-17T04:00:00","date_gmt":"2018-08-17T04:00:00","guid":{"rendered":"https:\/\/www.aiproblog.com\/index.php\/2018\/08\/17\/more-efficient-security-for-cloud-based-machine-learning\/"},"modified":"2018-08-17T04:00:00","modified_gmt":"2018-08-17T04:00:00","slug":"more-efficient-security-for-cloud-based-machine-learning","status":"publish","type":"post","link":"https:\/\/www.aiproblog.com\/index.php\/2018\/08\/17\/more-efficient-security-for-cloud-based-machine-learning\/","title":{"rendered":"More efficient security for cloud-based machine learning"},"content":{"rendered":"<p>Author: Rob Matheson | MIT News Office<\/p>\n<div>\n<p>A novel encryption method devised by MIT researchers secures data used in online neural networks, without dramatically slowing their runtimes. This approach holds promise for using cloud-based neural networks for medical-image analysis and other applications that use sensitive data.<\/p>\n<p>Outsourcing machine learning is a rising trend in industry. Major tech firms have launched cloud platforms that conduct computation-heavy tasks, such as, say, running data through a convolutional neural network (CNN) for image classification. Resource-strapped small businesses and other users can upload data to those services for a fee and get back results in several hours.<\/p>\n<p>But what if there are leaks of private data? In recent years, researchers have explored various secure-computation techniques to protect such sensitive data. But those methods have performance drawbacks that make neural network evaluation (testing and validating) sluggish \u2014 sometimes as much as million times slower \u2014\u00a0limiting their wider adoption.<\/p>\n<p>In a paper presented at this week\u2019s USENIX Security Conference, MIT researchers describe a system that blends two conventional techniques \u2014 homomorphic encryption and garbled circuits \u2014 in a way that helps the networks run orders of magnitude faster than they do with conventional approaches.<\/p>\n<p>The researchers tested the system, called GAZELLE, on two-party image-classification tasks. A user sends encrypted image data to an online server evaluating a CNN running on GAZELLE. After this, both parties share encrypted information back and forth in order to classify the user\u2019s image. Throughout the process, the system ensures that the server never learns any uploaded data, while the user never learns anything about the network parameters. Compared to traditional systems, however, GAZELLE ran 20 to 30 times faster than state-of-the-art models, while reducing the required network bandwidth by an order of magnitude.<\/p>\n<p>One promising application for the system is training CNNs to diagnose diseases. Hospitals could, for instance, train a CNN to learn characteristics of certain medical conditions from magnetic resonance images (MRI) and identify those characteristics in uploaded MRIs. The hospital could make the model available in the cloud for other hospitals. But the model is trained on, and further relies on, private patient data. Because there are no efficient encryption models, this application isn\u2019t quite ready for prime time.<\/p>\n<p>\u201cIn this work, we show how to efficiently do this kind of secure two-party communication by combining these two techniques in a clever way,\u201d says first author Chiraag Juvekar, a PhD student in the Department of Electrical Engineering and Computer Science (EECS). \u201cThe next step is to take real medical data and show that, even when we scale it for applications real users care about, it still provides acceptable performance.\u201d<\/p>\n<p>Co-authors on the paper are Vinod Vaikuntanathan, an associate professor in EECS and a member of the Computer Science and Artificial Intelligence Laboratory, and Anantha Chandrakasan, dean of the School of Engineering and the Vannevar Bush Professor of Electrical Engineering and Computer Science.<\/p>\n<p><strong>Maximizing performance<\/strong><\/p>\n<p>CNNs process image data through multiple linear and nonlinear layers of computation. Linear layers do the complex math, called linear algebra, and assign some values to the data. At a certain threshold, the data is outputted to nonlinear layers that do some simpler computation, make decisions (such as identifying image features), and send the data to the next linear layer. The end result is an image with an assigned class, such as vehicle, animal, person, or anatomical feature.<\/p>\n<p>Recent approaches to securing CNNs have involved applying homomorphic encryption or garbled circuits to process data throughout an entire network. These techniques are effective at securing data. \u201cOn paper, this looks like it solves the problem,\u201d Juvekar says. But they render complex neural networks inefficient, \u201cso you wouldn\u2019t use them for any real-world application.\u201d<\/p>\n<p>Homomorphic encryption, used in cloud computing, receives and executes computation all in encrypted data, called ciphertext, and generates an encrypted result that can then be decrypted by a user. When applied to neural networks, this technique is particularly fast and efficient at computing linear algebra. However, it must introduce a little noise into the data at each layer. Over multiple layers, noise accumulates, and the computation needed to filter that noise grows increasingly complex, slowing computation speeds.<\/p>\n<p>Garbled circuits are a form of secure two-party computation. The technique takes an input from both parties, does some computation, and sends two separate inputs to each party. In that way, the parties send data to one another, but they never see the other party\u2019s data, only the relevant output on their side. The bandwidth needed to communicate data between parties, however, scales with computation complexity, not with the size of the input. In an online neural network, this technique works well in the nonlinear layers, where computation is minimal, but the bandwidth becomes unwieldy in math-heavy linear layers.<\/p>\n<p>The MIT researchers, instead, combined the two techniques in a way that gets around their inefficiencies.<\/p>\n<p>In their system, a user will upload ciphertext to a cloud-based CNN. The user must have garbled circuits technique running on their own computer. The CNN does all the computation in the linear layer, then sends the data to the nonlinear layer. At that point, the CNN and user share the data. The user does some computation on garbled circuits, and sends the data back to the CNN. By splitting and sharing the workload, the system restricts the homomorphic encryption to doing complex math one layer at a time, so data doesn\u2019t become too noisy. It also limits the communication of the garbled circuits to just the nonlinear layers, where it performs optimally.<\/p>\n<p>\u201cWe\u2019re only using the techniques for where they\u2019re most efficient,\u201d Juvekar says.<\/p>\n<p><strong>Secret sharing<\/strong><\/p>\n<p>The final step was ensuring both homomorphic and garbled circuit layers maintained a common randomization scheme, called \u201csecret sharing.\u201d In this scheme, data is divided into separate parts that are given to separate parties. All parties synch their parts to reconstruct the full data.<\/p>\n<p>In GAZELLE, when a user sends encrypted data to the cloud-based service, it\u2019s split between both parties. Added to each share is a secret key (random numbers) that only the owning party knows. Throughout computation, each party will always have some portion of the data, plus random numbers, so it appears fully random. At the end of computation, the two parties synch their data. Only then does the user ask the cloud-based service for its secret key. The user can then subtract the secret key from all the data to get the result.<\/p>\n<p>\u201cAt the end of the computation, we want the first party to get the classification results and the second party to get absolutely nothing,\u201d Juvekar says. Additionally, \u201cthe first party learns nothing about the parameters of the model.\u201d<\/p>\n<\/div>\n<p><a href=\"http:\/\/news.mit.edu\/2018\/more-efficient-security-cloud-based-machine-learning-0817\">Go to Source<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Author: Rob Matheson | MIT News Office A novel encryption method devised by MIT researchers secures data used in online neural networks, without dramatically slowing [&hellip;] <span class=\"read-more-link\"><a class=\"read-more\" href=\"https:\/\/www.aiproblog.com\/index.php\/2018\/08\/17\/more-efficient-security-for-cloud-based-machine-learning\/\">Read More<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":468,"comment_status":"registered_only","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[24],"tags":[],"_links":{"self":[{"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/posts\/913"}],"collection":[{"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/comments?post=913"}],"version-history":[{"count":0,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/posts\/913\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/media\/457"}],"wp:attachment":[{"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/media?parent=913"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/categories?post=913"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aiproblog.com\/index.php\/wp-json\/wp\/v2\/tags?post=913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}