7 ms·
Blockchains for Artificial Intelligence
- Uptrenda 10y agoThis article is confusing and contradicting in so many ways. To start with, I was expecting some kind of trustless self-contained system whereby everything can be independently verified and concretely recorded in an autonomous system similar to a blockchain. But instead what OP seems to be describing here is more like a distributed database for storing AI training set data (similar to Storj) where he uses the blockchain more as a metaphor than anything specific. To give you an example, he uses the distributed nature of the blockchain (as it pertains to storing full copies of the chain on multiple nodes) as a model for storing training set data within a distributed system and the benefit he states for this is that since the infrastructure isn't controlled by one person - organizations will be more inclined to share. The author then goes on to describe how the integrity of training set data can be attested to in the form of ... "I believe this data / model to be good at this point" which is about as far away from verifiable as you can get. The problem is, the article is very high level and its filled with meaningless buzz words and double-speak like "DAO" ... which is apparently something that can be applied to a human-based reputation system and a blockchain (hence useless.) There are ways to use artificial intelligence as [part of] the reward mechanism for a blockchain by creating an initial AI to recognize specific types of content and then rewarding miners for finding said content ("datachains" in data mining.) And there are also trustless ways for rewarding people for creating the best general-purpose intelligence for understanding a given type of data. But from the author's account its very hard to see if we're talking about anything concrete here as the article is so technically vague on details. He does go into detail for several of these ideas. But of the ideas stated none of them are discrete, trustless, self-contained systems like a blockchain (or even really need a blockchain) which is a shame because AI, data, and blockchains can actually be unified to create bullet-proof entities (which in my opinion will be much more purpose-specific than any vague Ethereum-type "AI DAO" non-sense.) Edit: The authors treatment of AI DAOs is worth the read.
- quinndupont 10y agoAs I see it, the main challenge with much of this proposal is that it isn't clear how to convince the kind of broad sharing much of this needs (for training). There's some incentive, in the sense that if you participate you reap AI improvement, but traditional (and regulated) players will be hesitant, on pure risk-management terms (and conservatism).
- empath75 10y agoIt's probably one of those things where there will be something disruptive like an Uber or AirBnB that forces their hand.
- trentmc 10y agoI'm looking forward to seeing these. It's gonna be fun:)
- m-i-l 10y agoAgree that its very unlikely for currently closed big datasets (e.g. those that give Google and Facebook their competitive advantage) to be opened for this. But if existing shared but siloed datasets (e.g. ImageNet and Kaggle data) were moved (or copied) to the "centralised" decentralised database (bigchaindb) then there might be some benefit.
- trentmc 10y agoIt's the author here. (Hi!) I agree, for the use cases that involve sharing, how do you incentivize this when many see data as the moat? This is why I wrote the section about "Hoard vs. share?". In some applications, there will be more incentives to hoard; in others, to share. Note that one thing that softens this impasse is the idea of data exchanges. So rather than "hoard vs share" you can think of all data as potentially "for sale, but with a price" and where the price could vary dramatically. And that's where a data exchange could come in to reduce friction for price discovery.
- m3ta 10y agoI don't understand the assertion made regarding blockchains/digital signatures supposedly increasing accuracy or trust in IoT sensor-reading reliability. Also, how do you respond to the inevitable criticism that advertising your solution as a "shared global registry" invokes the "How Standards Proliferate" XKCD[1]? Finally, I like the idea of creating a marketplace or exchange for AI training information, but it's strictly not necessary to use a blockchain for this purpose unless a very large portion of your users are hyper-concerned about their anonymity. It's also misleading to try to build a marketplace of signed IoT data, with the assumption that it is more trustworthy than unsigned IoT data, when that is simply false. [1]: https://xkcd.com/927/ https://xkcd.com/927/
- lappa 10y agoThis really doesn't make any sense. >blockchains introduced three new characteristics: centralized / shared control, immutable / audit trails, and native assets / exchanges. Blockchains aren't immutable, they are just expensive to mutate. Blockchains aren't centralized. Blockchains didn't introduce audit trails, these have always been possible simply through having a transaction table that is only appended to. This of course does require trust in the central authority. >(4) Leads to provenance on training/testing data & models, to improve the trustworthiness of the data & models. Data wants reputation too. Is training set fraud really an issue in training AI? >(1) Leads to more data, and therefore better models. >(2) Leads to qualitatively new data, and therefore qualitatively new models. >(3) Allows for shared control of AI training data & models. The author has a poor understanding of both AI and blockchain technology[1]. Blockchains are for decentralized consensus, but it seems the author is vaguely proposing using a blockchain as a mass datastore (with ownership labels) for both training data and AI algorithms. Of course AI is an exciting field so this means you can generate hype by implying the field of AI has yet to solve the problem of sharing data with fellow researchers until now. [1] https://download.wpsoftware.net/bitcoin/alts.pdf https://download.wpsoftware.net/bitcoin/alts.pdf
- trentmc 10y agoHi, it's the author here. > This really doesn't make any sense. Disagree. Below, I respond to each of your points. > Blockchains aren't immutable, they are just expensive to mutate. Agreed; very little is truly absolutely immutable. It's all shades of grey. I actually prefer the word "tamper-resistant" and I usually say that next to the "immutable" definition, such as in the first paragraph of https://bigchaindb.com/whitepaper https://bigchaindb.com/whitepaper. But "immutable" makes for a good shorthand, especially because that's the label that the community uses. > Blockchains aren't centralized. Oops, that was a typo. I meant to say "decentralized". Fixed it. (That was a pretty big oops!) > Blockchains didn't introduce audit trails ... Correct. > ... [status quo] require[s] trust in the central authority Exactly. And it's crucial to note that once you don't have to trust a central authority to store your audit trail, you have a way more trustworthy audit trail that improves many applications and unlocks new ones. > The author has a poor understanding of both AI and blockchain technology ... "treatise on altcoins" Disagree. First, you don't need an "altcoin" to have a blockchain. To understand of what's special about blockchains, you first have to understand what already exists for distributed databases, then what the delta is. Second, consensus in a distributed database has been around for decades; Satoshi did not invent it. Lamport laid down much of the theory for FT and BFT consensus in 1982. What Bitcoin brought forward, in addition to BFT-ish consensus, was Sybil tolerance (addressing attack-of-the-clones). Third, as for my understanding of AI: I've been doing it professionally since the late 90s; here are my publications: http://trent.st/publications http://trent.st/publications. Doing AI in the 90s was one of the least popular things one could possibly do, so I certainly didn't do it for the hype. > vaguely proposing using a blockchain as a mass datastore (with ownership labels) Obviously I gave much more specific proposals than that. I have other writings that dive into more detail on some of the use cases, such as an IP registry [1] and for AI DAOs [2]. [1] https://medium.com/ipdb-blog/a-decentralized-content-registry-for-the-decentralized-web-99cf1335291f https://medium.com/ipdb-blog/a-decentralized-content-registr... [2] https://medium.com/@trentmc0/ai-daos-and-three-paths-to-get-there-cfa0a4cc37b8 https://medium.com/@trentmc0/ai-daos-and-three-paths-to-get-...
- antocv 10y agobigchaindb main product is actually a cluster of something like mongodb. Read the whitepaper, was disappointing.
- diminator 10y agoIt's a project for decentralizing existing big data databases... Not sure where you've set your expectations?
- antocv 10y agoIve set them at blockchain level, so. Meh. PostgreSQL can also be distributed with paxos.
- trentmc 10y agoTo clarify: "distributed" and "decentralized" are different. "Distributed" spreads compute among many physical resources, but may still have a single entity controlling it. "Decentralized" has no single entity controlling it. Paxos distributes but does not decentralize.
- trentmc 10y agoHi, it's Trent here, I'm CTO of BigchainDB and also the author of the blockchains-AI article. Yep, it's a [database] cluster, and proud to be that:) But, it's special in that there isn't a single organization that owns or controls it. That is, it's decentralized. And in fact it draws on traditional distributed DBs by building on them, to get first-class scalability and querying abilities. The first version was built on RethinkDB and we're working on wrapping MongoDB too. There's also a public version of BigchainDB that's getting rolled out, called IPDB (http://ipdb.foundation http://ipdb.foundation). With IPDB, people building apps don't need to roll their own cluster, they can just talk to it via http. > was disappointing How? We're always looking for feedback.
- antocv 10y agoYeah I get that, but a single "mongodb or whatever cluster database behind bigchaindb that you are using was called" drop tables * ; query would actually delete your so called blockchain. Thats a huge security whole, which last time I checked bigchaindb - would be solved "administratively" ie operational security level instead of protocol. Not to sound like an ass though, I do keep an eye on bigchaindb for what it is to become as the people behind it do seem to have great talent. Has that security issue been resolved? How is the ipdb secured?
- davidgerard 10y agoJust off the top of my head: * Why use a blockchain rather than a database? * Why do you require blockchain rather than some other approach? * Are you positing this as open to the hostile world? If so, why? If not, why use a blockchain? * If you're open to the hostile world: what's your threat model, and how are you addressing it? * How do your defences stop this from being the next Tay?
- trentmc 10y agoAs the article discusses, it's not an either-or. Blockchains are simply databases with specific properties; if some of those properties help your app, consider using one. They are sometimes deployed to the public, sometimes private, with appropriate models. Something like Tay would be higher in the stack - we're gonna see a lot more, some good, some bad, some ugly.
- cesnja 10y agoRegarding "hostile world," I recently learned that on private networks where all participating nodes are authenticated, blockchains can substitute proof-of-(work|stake|...) for faster and more efficient algorithms for reaching consensus [1] (I only remember raft something). What's the use case then? At least for older data (in blocks far away from the current one), blockchain in an immutable database. On the other hand, it's fun operating with buzzwords. [1] http://ieeexplore.ieee.org/document/7467408/?reload=true http://ieeexplore.ieee.org/document/7467408/?reload=true
- davidgerard 10y agoPretty much none. The very funniest one is Intel's "Proof of Elapsed Time", which might as well be called Proof of Buying An Intel CPU. Rather than have miners compete to produce the next block, a timer running in an environment secured by a DRM mechanism built into your Intel CPU picks if you get to do the next block. The white paper is an extended advertisement for Intel® Software Guard Extensions™ (SGX™). Also, they only have a simulated Proof of Buying An Intel CPU mechanism as yet. https://intelledger.github.io/introduction.html https://intelledger.github.io/introduction.html This doesn’t provide any security against malicious participants; the excuse is that private blockchains need speed over security. You might think that at that point you don’t need a blockchain at all, but you’re hardly going to sell any consultant hours with that sort of thinking.
- kordless 10y ago> They’re Software-as-a-Service on steroids. I've been writing about this for a while and I'm thankful someone else "gets it" on a level. The key to understanding why blockchain data structures are a big deal for software (including AI) is realizing how they enable change in business models and the more customer focused "business layers" in which those models operate. It's worth pointing out that SaaS is a evolutionary step up from the older MSP models. Assuming software models do not change over time is dogmatic. Blockchains, like Bitcoin, enable a means by which suffering/cost of work can be encapsulated in a transaction that cannot be altered later by the consumer of that suffering cost or the producer of that suffering cost. This means the suffering (work units) incurred by the AI (or the human involved) can be preserved in a way that is immutable and used later for efficiency improvements. That's not to say the work done by the AI is necessarily valuable, but by making it immutable the work done by the AI can be judged/measured to have been worth the amount of resources it took from something else (i.e. an other's suffering) to do the work it did. It is my belief that adversarial machine learning may benefit from blockchain based data stores. All of this is very important given our current infrastructure, and all software models that go with it, resemble Swiss cheese from a security perspective. Super viral growth models may make VCs and a few scrappy millennials wealthy, but they don't scale long term for customer satisfaction. We certainly don't want an AI going around creating super viral growth models that drain the world's economy either! Blockchains enable "do better". "Do better" is the first step on the path to enlightenment. I should note that my use of the term "suffering" relates to the cost of causality, either by one's own choice or by something outside one's own choice. It is not meant to refer to the human emotion of suffering, although the two can certainly be related.
- mccoyspace 10y agoBut the definition of work changes and the value of that work also changes. Bitcoin's internal self-referentiality and internally self-transparent genesis sidesteps this issue. "This means the suffering (work units) incurred by the AI (or the human involved) can be preserved in a way that is immutable and used later for efficiency improvements. That's not to say the work done by the AI is necessarily valuable, but by making it immutable the work done by the AI can be judged/measured to have been worth the amount of resources it took from something else (i.e. an other's suffering) to do the work it did." I think you are alluding to that fact in that above quote, but I think it still begs the question of preserving a standard, abstract 'value of work' across a constantly changing AI dataset.
- devty 10y agoI noticed that bigchainDB is written enitrely in python. I love python, but I'm surprised to see it used in the database space! (if the author is reading this) - what were your interest in using python? Do you have any concern for it's performance/scalability as the service grows?
- trentmc 10y agoHi, this is the author:) I've been using Python in enterprise-grade, large-scale production systems since the early 2000s. And it works, well. Most python libraries where performance matters have C under the hood. E.g. numpy matrix manipulation. Parallel computing got way better with the async support. As for BigchainDB itself: it wraps RethinkDB (and soon MongoDB) which is where much of the compute intensive stuff happens. Also, we leverage these fast Python+C libraries, and parallelization. If/when needed, we can always convert some of our core stuff to C or another fast language.
- devty 10y agocool. thanks for your explanation
- jcfrei 10y agoI have also thought about the applications blockchains could have for AI. However I didn't consider blockchains as a means to store data but rather as a way to reliably track the performance/quality of various AI services. You can read about it here: http://jcfrei.com/the-ai-economy-bitcoin/ http://jcfrei.com/the-ai-economy-bitcoin/
- trentmc 10y agoOh cool! Thanks for the link. I just added it to the "further reading" section on the bottom.
- daxfohl 10y agoWhat about AI for blockchains?
- trentmc 10y agoGreat question. As the article says: there are many ways that AI can help blockchains, such as mining blockchain data (e.g. Silk Road investigation). That’s for another discussion:) I'd love to see more suggestions here or elsewhere. It would be my pleasure to write an article on this.
- mtdewcmu 10y agoJust an observation on ML-- If the key to making ML useful has been huge sets of training examples, then that shows that current ML algorithms are much worse than humans at generalizing from a small number of examples. That suggests that current ML algorithms are leaving a lot on the table in terms of how much they are able to learn from each example, and there is a lot of room for improvement.
- trentmc 10y agoYou're absolutely right - there is a lot of room for improvement. One of the big research threads in ML is better unsupervised learning - to learn from data without labels. Another hot topic is adversarial networks, which generate their own training data by playing against each other. (15 years ago this was "competitive co-evolution";) > If the key to making ML useful has been huge sets of training examples BTW this is only for some ML approaches and problems. There are some problems where getting more data is just way too expensive; e.g. building a model from silicon manufacturing where each mfg. run costs $50M; i.e. each datapoint costs $50M. Guess what - there are still useful ML-y things you can do here. Less extreme, there are many problems with only 100-1000 training points available, and you can still do a lot.
- mehh 10y agoBig Data + Blockchain + AI, looks quite hand wavy, have you found a practical use case for BigchainDB yet?
- trentmc 10y agoArticles like the "AI + Blockchain" one are meant to be forward-looking, to help inspire people to build. Call it hand-wavy if you wish; I call it laying out a vision:) But we're all about real apps getting built. Many comanies are building on BigchainDB. For example, I describe some of them here: https://blog.bigchaindb.com/where-does-blockchain-scalability-matter-specific-use-cases-from-digital-art-to-hr-9cf5ad8f7042 https://blog.bigchaindb.com/where-does-blockchain-scalabilit.... There are many, many more companies that have not publicly announced what they're building yet. Stay tuned:)
- deleted 10y ago[deleted]