30
@EclipseScout by @ZimMatthias Machine Learning, Blockchain and Eclispe Scout

Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

@EclipseScout by @ZimMatthias

Machine Learning, Blockchain and Eclispe Scout

Page 2: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep
Page 3: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Eclipse Scout

Page 4: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

What is Eclipse Scout?

Business Appliation Framework

Based on Java and HTML5

Multi Device support, Modular Apps, …

Framework Goals

Long Term Strategy (enterprise apps live > 10 years)

Boosts Productivity (producing software in Switzerland …)

Easy to learn (new team members productive in 1-2 weeks)

Page 5: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Java Application Model Clean Business Code High Maintainability

Eclipse Scout Application Model

Page 6: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Current Standards HTML5, CSS3, JavaScript Flexible Styling Theming

Eclipse Scout HTML5 Rendering

Page 7: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Eclipse Scout Commercial Application

Page 8: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Eclipse Scout Hello World

Page 9: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Machine Learning Deeplearning4j demo

Page 10: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Machine learning (ML) actually starts to work … Many robust ML libraries / frameworks to choose from Innovation driven by Open Source People able to replicate results Open Source software Open Data Collections Open Publications (arXiv)

What’s behind the Hype?

Page 11: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Games Backgammon 1979, chess 1997, Jeopardy! 2011, Atari games 2014, Go 2016 Visual Face recognition 2007, traffic sign reading 2011, lip-reading 2016 Other Personality judgement via social media2014, conversational speech recognition 2016

ML performance >= Human Levels (2017)

Page 12: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Deep Learning Library Java (most are Python) Good documentation Open Source

Features Full GPU support Distributed deep learning Runs with Hadoop + Spark

Deeplearning4j

https://github.com/deeplearning4j/deeplearning4j

Page 13: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

The ML «Hello World» Recognition of handwritten digits

1998 Gradient-based Learing for Document Recognition, Y. LeCun

Page 14: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep
Page 15: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Blockchain web3j demo with Ethereum

Page 16: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Blockchain Bitcoin here since 2009 Cheap, fast, reliable, efficient (compare with T+3 and high fees) Ethereum adds smart contracts Increasing amounts of money …

Main Challenges Scalability Privacy

Blockchain «Micro-Intro»

Page 17: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep
Page 18: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

What is a Ethereum Smart Contract? Piece of (byte) code Is executed by the Ethereum Virtual Machine (EVM) Has an owner Has a life cycle

Example: «Truly» autonomous cars

Smart Contracts

Page 19: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Smart contract: To order car to transport people (by paying to contract) Smart contract: Car pays for energy/services

«Truly» Autonomous Cars

Page 20: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Ethereum and Application Integration

Ethereum Client Geth/TestRPC/…

Ethereum Peer-to-Peer Network

Interface http://localhost:8545 JSON-RPC

JavaScript

web3 web3j

Java

Page 21: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Library to interact with Ethereum (its peer-to-peer clients) Java Good documentation Open Source

Features JSON-RPC client API implementation Command line tools to generate Java contract wrappers

web3j

https://github.com/web3j/web3j

Page 22: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Deploying and using Smart Contracts 1. Write contract in high level language (eg. Solidity) 2. Compile contract to EVM byte-code 3. Pack byte code into a contract creation TX and sent to the network 4. The TX gets ist own contract address 5. Invoke contract methods

Smart Contracts Life Cycle

Page 23: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

«Hello World» (greeter.sol)

Page 24: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Solidity Compiler (online)

byte code (EVM) to deploy contract

Deploy script (JS)

Page 25: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

From Solidity to Java Contract Class 1. Compile greeter.sol (e.g using online compiler)

greeter.bin, greeter.abi

2. Create contract wrapper class (use Web3j command line tool)

Greeter.java

1. Use Greeter.java in your Java code

web3j: greeter.sol Greeter.java

Page 26: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Generated Contract Wrapper

Page 27: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Trading Network Demo Currency Hedging: Buy orders and Sell orders (€ / US$)

Classical Business App

− Idendity Management for mapping real persons Blockchain addresses

− User Interface

Blockchain Benefits

− Efficiency: No central organization/infrastructure

− Trust: Tampering-proof ledger, trust by blockchain technology

Ethereum, web3j + Eclipse Scout

Page 28: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

PostgreSQL

Ethereum Client TestRPC

web3

Eclipse Scout Backend

web3j JDBC

Eclipse Scout UI (web application)

Page 29: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep
Page 30: Machine Learning, Blockchain and Eclispe Scout · Other Personality judgement via social media2014, conversational speech recognition 2016 ML performance >= Human Levels (2017) Deep

Thanks! @ZimMatthias