As outlined in my previous post, blockchain faces number of fundamental – technological, cultural, and business – issues before it becomes mainstream. However, potential of blockchain, especially if it were coupled with AI, cannot be ignored. The potent combination of blockchain and AI can revolutionise healthcare, science, government, autonomous driving, financial services, and a number of key industries.
Discussions continue about blockchain’s ability to lift people out of poverty through mobile transactions, improve accounting for tourism in second-world countries, and make governance transparent with electronic voting. But, just like the complementary – and equally hyped – technologies of AI, IoT, and big data, blockchain technology is emerging and yet unproven at scale. Additional, socio-political as well as economic roadblocks remain to blockchain’s widespread adoption and application:
1. Disparity of computer power and electricity distribution
Bitcoin transactions on blockchain require “half the energy consumption of Ireland”. This surge of electricity use is simply impossible in developing countries where the resource is scarce and expensive. Even if richer countries assist and invest in poorer ones, the UN is concerned that elite, external ownership of critical infrastructure may lead to a digital form of neo-colonialism.
2. No mainstream trust for blockchain
Bitcoin inspired the explosive attention on blockchain, but there isn’t currently much trust in the technology – as it’s relatively new, unproven and has technical problems and limitations – outside of digital currencies. With technologies still in their infancy, blockchain companies are slow to deliver on promises. This turtle pace does not satisfy investors seeking quick ROI. Perhaps the largest, challenge to blockchain adoption is the massive transformation in architectural, regulatory, and business management practices required to deploy the technology at scale. Even if such large-scale changes are pulled off, society may experience a culture shock from switching to decentralised, automated systems after a history of only centralised ones.
3. Misleading and misguided ‘investments’
Like the Internet, blockchain technology is most powerful when everyone is on the same network. The Internet grew in fits and starts, but was ultimately driven by the killer app of email. While Bitcoin and digital currencies are the “killer app” of blockchain, we’ve already seen aggressive investments in derivative cryptocurrencies peter out.
Many technologies also call themselves “blockchain” to capitalise on hype and capture investment, but are not actual blockchain implementations. But, even legitimate blockchain technologies suffer from the challenge of timing, often launching in a premature ecosystem unable to support adoption and growth.
4. Cybersecurity risks and flaws
The operational risks of cybersecurity threats to blockchain technology make early adopters hesitate to engage. Additionally, bugs in the technology are challenging to detect, yet caused outsized damage. Getting the code right is critical, but this requires time and talent.
While relatively more known Bitcoin’s PoW-based blockchain systems and Ethereum see limelight and PR, there are number of alternative blockchain protocols and approaches, which are scalable and solve many of fundamental challenges the incumbents face.
PoW and Ethereum alternatives
Disclaimer: I neither condone, engage nor promote any of the below alternatives but simply provide information as found on websites, articles and social media of relevant entities and therefore not responsible whether the information thus provided is accurate and realistic.
1. BitShares, SteemIt (based on Steem) and EOS white papers which are all based on Delegated Proof of Stake (DPOS). DPOS enables BitShares to process 180k transactions per second, which is more than 5x NASDAQ transactions/s. Steem and Bitshares process more transactions/day than the top 20 blockchains combined.
In DPOS, each 2 seconds – Bitcoin’s PoW generates a new block each 10 minutes – a new block is created, through witnesses (stakeholders can elect any number of witnesses to generate blocks – currently 21 in Steem and 25 in BitShares). DPOS is using pipelining to increase scalability. Those 20 witnesses generate their own block in a specified order, that holds for a few rounds (hence the pipelining), after the order is changed. DPOS confirms transactions with 99.9% certainty in an average of just 1.5 seconds while degrading in a graceful, detectable manner that is trivial to recover from. It is easy to increase the scalability of this schema, by introducing additional witnesses either by increasing the pipeline length or using sharding to allow to generate in a deterministic/verifiable way few blocks during the same epoch.
2. IOTA (originally designed to be financial system for IoT) is a new blockless distributed ledger which is scalable, lightweight and fee-less. It’s based on DAG, and its performance INCREASES the bigger the networks gets.
3. Ardor solves the common (to all blockchains) bloat problem, relying on an innovative parent/child chain architecture and pruning of the child chain transactions. It shares some similarities with plasma.io, based on NXT blockchain technology and already running on testnet.
4. LTCP uses State Channels by stripping 90% of the transaction data from the blockchain. LTCP combined with RSK’s Lumino network or Ethereum’s Raiden network can serve 1 billion users in both retail and online payments.
5. Stellar runs off of Stellar Consensus Protocol (SCP) and is scalable, robust, got a distributed exchange and is easy to use. SCP implements “Federated Byzantine Agreement,” a new approach to achieving consensus in a real-world network that includes faulty “Byzantine” nodes with technical errors or malicious intent. To tolerate Byzantine failures, SCP is designed not to require unanimous consent from the complete set of nodes for the system to reach agreement, and to tolerate nodes that lie or send incorrect messages. In the SCP, individual nodes decide which other participants they trust for information, and partially validate transactions based on individual “quorum slices.” The systemwide quorums for valid transactions result from the individual quorum decisions by individual nodes.
6. A thin client is a program which connects to the Bitcoin network but which doesn’t fully validate transactions or blocks, i.e it’s a client to the full nodes on the network. Most thin clients use the Simplified Payment Verification (SPV) method to verify that confirmed transactions are part of a block. To do this, they connect to a full node on the blockchain network and send it a filter (Bloom filter) that will match any transactions affecting the client’s wallet. When a new block is created, the client requests a special lightweight version of that block: Merkle block, which includes a block header, a relatively small number of hashes, a list of one-bit flags, and a transaction count. Using this information—often less than 1 KB of data—the client can build a partial Merkle tree to the block header. If the hash of the root node of the partial Merkle tree equals the hash of Merkle root in the block header, the SPV client has cryptographic proof that the transaction was included in that block. If that block then gets 6 confirmations at the current network difficulty, then the client has extremely strong proof that the transaction was valid and is accepted by the entire network.
The only major downside of the SPV method is that full nodes can simply not tell the thin clients about transactions, making it look like the client hasn’t received bitcoins or that a transaction the client broadcast earlier hasn’t confirmed.
7. Mimir proposes a network of Proof of Authority micro-channels for using in generating a trustless, auditable, and secure bridge between Ethereum and the Internet. This system aims to establish Proof of Authority for individual validators via a Proof-of-Stake contract registry located on Ethereum itself . This Proof-of-Stake contract takes stake in the form of Mimir B2i Tokens. These tokens serve as collateral that may be repossessed in the event of malicious actions. In exchange for serving requests against the Ethereum blockchain, validators get paid in Ether.
8. Ripple’s XRP ledger already handles 1,500 transactions/second on-chain, which keeps on being improved (was 1,000 transactions/sec at the beginning of 2017).
9. QTUM, a hybrid blockchain platform whose technology combines a fork of bitcoin core, an Account Abstraction Layer allowing for multiple Virtual Machines including the Ethereum Virtual Machine (EVM) and Proof-of-Stake consensus aimed at tackling industry use cases.
10. Blocko, which has enterprise and consumer grade layers and has already successfully piloted/launched products (dApps) with/for Korea Exchange, LotteCard and Huyndai.
11. Algorand uses “cryptographic sortition” to select players to create and verify blocks. It scales on demand and is more secure and faster than traditional PoW and PoS systems. While most PoS systems rely on some type of randomness, algorand is different in that you self-select by running the lottery on your own computer (not on cloud or public chain). The lottery is based on information in the previous block, while the selection is automatic (involving no message exchange) and completely random. Thanks David Deputy for pointing out this platform!!!
12. NEO, also called “Ethereum of China,” is a non-profit community-based blockchain project that utilizes blockchain technology and digital identity to digitize assets, to automate the management of digital assets using smart contracts, and to realize a “smart economy” with a distributed network.
As you know, goal of AI learning is generalisation, but one major issue is that data alone will never be enough, no matter how much of it is available. AI systems need both data and they need to learn based on data in order to generalise.
So let’s look at how AI systems learn. But before we do that, what are the few different and prevalent AI approaches?
Neural networks model a brain learning by example―given a set of right answers, a neural network learns the general patterns. Reinforcement Learning models a brain learning by experience―given some set of actions and an eventual reward or punishment, it learns which actions are ‘good’ or ‘bad,’ as relevant in context. Genetic Algorithms model evolution by natural selection―given some set of agents, let the better ones live and the worse ones die.
Usually, genetic algorithms do not allow agents to learn during their lifetimes, while neural networks allow agents to learn only during their lifetimes. Reinforcement learning allows agents to learn during their lifetimes and share knowledge with other agents.
Consider learning a Boolean function of (say) 100 variables from a million examples. There are 2100 ^ 100 examples whose classes you don’t know. How do you figure out what those classes are? In the absence of further information, there is no way to do this that beats flipping a coin. This observation was first made (in somewhat different form) by David Hume over 200 years ago, but even today many mistakes in ML stem from failing to appreciate it. Every learner must embody some knowledge/assumptions beyond the data it’s given in order to generalise beyond it.
This seems like rather depressing news. How then can we ever hope to learn anything? Luckily, the functions we want to learn in the real world are not drawn uniformly from the set of all mathematically possible functions. In fact, very general assumptions—like similar examples having similar classes, limited dependences, or limited complexity—are often enough to do quite well, and this is a large part of why ML has been so successful to date.
AI systems use induction, deduction, abduction and other methodologies to collect, analyse and learn from data, allowing generalisation to happen.
Like deduction, induction (what learners do) is a knowledge lever: it turns a small amount of input knowledge into a large amount of output knowledge. Induction (despite its limitations) is a more powerful lever than deduction, requiring much less input knowledge to produce useful results, but it still needs more than zero input knowledge to work.
Abduction is sometimes used to identify faults and revise knowledge based on empirical data. For each individual positive example that is not derivable from the current theory, abduction is applied to determine a set of assumptions that would allow it to be proven. These assumptions can then be used to make suggestions for modifying the theory. One potential repair is to learn a new rule for the assumed proposition so that it could be inferred from other known facts about the example. Another potential repair is to remove the assumed proposition from the list of antecedents of the rule in which it appears in the abductive explanation of the example – parsimonious covering theory (PCT). Abductive reasoning is useful in inductively revising existing knowledge bases to improve their accuracy. Inductive learning can be used to acquire accurate abductive theories.
One key concept in AI is classifier. Generally, AI systems can be divided into two types: classifiers (“if shiny and yellow then gold”) and controllers (“if shiny and yellow then pick up”). Controllers also include classify-ing conditions before inferring actions. Classifiers are functions that use pattern matching to determine a closest match. They can be tuned according to examples known as observations or patterns. In supervised learning, each pattern belongs to a certain predefined class. A class can be seen as a decision that has to be made. All the observations combined with their class labels are known as data set. When a new observation is made, it is classified based on previous experience.
Classifier performance depends greatly on the characteristics of the data to be classified. The most widely used classifiers use kernel methods to be trained (i.e. to learn). There is no single classifier that works best on all given problems – “no free lunch“. Determining an optimal classifier for a given problem is still more an art than science.
The following formula sums up the process of AI learning.