{"id":596833,"date":"2019-07-12T08:58:37","date_gmt":"2019-07-12T15:58:37","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=596833"},"modified":"2019-07-19T07:10:24","modified_gmt":"2019-07-19T14:10:24","slug":"leveraging-blockchain-to-make-machine-learning-models-more-accessible","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/leveraging-blockchain-to-make-machine-learning-models-more-accessible\/","title":{"rendered":"Leveraging blockchain to make machine learning models more accessible"},"content":{"rendered":"
(opens in new tab)<\/span><\/a>Significant advances are being made in artificial intelligence, but accessing and taking advantage of the machine learning systems making these developments possible can be challenging, especially for those with limited resources. These systems tend to be highly centralized, their predictions are often sold on a per-query basis, and the datasets required to train them are generally proprietary and expensive to create on their own. Additionally, published models run the risk of becoming outdated if new data isn\u2019t regularly provided to retrain them.<\/p>\n We envision a slightly different paradigm, one in which people will be able to easily and cost-effectively run machine learning models with technology they already have, such as browsers and apps on their phones and other devices. In the spirit of democratizing AI, we\u2019re introducing Decentralized & Collaborative AI on Blockchain (opens in new tab)<\/span><\/a>.<\/p>\n Through this new framework, participants can collaboratively and continually train and maintain models, as well as build datasets, on public blockchains, where models are generally free to use for evaluating predictions. The framework is ideal for AI-assisted scenarios people encounter daily, such as interacting with personal assistants, playing games, or using recommender systems. An open-source implementation for the Ethereum blockchain (opens in new tab)<\/span><\/a> is available on GitHub (opens in new tab)<\/span><\/a>, and our paper “Decentralized & Collaborative AI on Blockchain (opens in new tab)<\/span><\/a>“\u2014co-authored by myself and Bo Waggoner (opens in new tab)<\/span><\/a>, a postdoc researcher with Microsoft at the time of the work\u2014will be presented at the second IEEE International Conference on Blockchain (opens in new tab)<\/span><\/a> July 14\u201317.<\/p>\n Leveraging blockchain technology allows us to do two things that are integral to the success of the framework: offer participants a level of trust and security and reliably execute an incentive-based system to encourage participants to contribute data that will help improve a model\u2019s performance.<\/p>\n With current web services, even if code is open source, people can\u2019t be 100 percent sure of what they\u2019re interacting with, and running the models generally requires specialized cloud services. In our solution, we put these public models into smart contracts (opens in new tab)<\/span><\/a>, code on a blockchain that helps ensure the specifications of agreed upon terms are upheld. In our framework, models can be updated on-chain<\/em>, meaning within the blockchain environment, for a small transaction fee or used for inference off-chain<\/em>, locally on the individual\u2019s device, with no transaction costs.<\/p>\n Smart contracts are unmodifiable and evaluated by many machines, helping to ensure the model does what it specifies it will do. The immutable nature and permanent record of smart contracts also allows us to reliably compute and deliver rewards for good data contributions. Trust is important when processing payments, especially in a system like ours that seeks to encourage positive participation via incentives (more to come on that later). Additionally, blockchains such as Ethereum have thousands of decentralized machines all over the world (opens in new tab)<\/span><\/a>, making it less likely a smart contract will become completely unavailable or taken offline.<\/p>\nWhy blockchain?<\/h3>\n