30
Outsourcing Machine Intelligence to Humans Alex Ianta

Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Outsourcing Machine Intelligence to Humans

Alex Ianta

Page 2: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

SeeingObject RecognitionGesture RecognitionFacial Recognition

FeelingTweet Emotional AnalysisNetflix RecommendationsTargeted Advertising

ThinkingOptimizationGame AI (planning)

Teaching machines to behave like humans.

Genetic Algorithms, Neural Networks, K Nearest Neighbor, Particle Swarm analysis, etc…

Page 3: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

But first…

Page 4: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,
Page 5: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,
Page 6: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,
Page 7: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Mass Effect: Andromeda (2017)

Page 8: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Levels of Abstraction

Page 9: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

It’s easy to build digital circuits that operate in two states.

ON or OFF

0 or 1

This is done using capacitors, which either have a charge, or do not.

Page 10: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

0

1

Now for some math…

Given 2 states (0,1) there are 4 possible permutations of the states.

Computation implies change. Mathematically, change is done through functions. That is, a transformation you can apply to any of the above permutations to get a new state.

0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1

F 0 NO

R

XQ NO

T P

↛ NO

T Q

XOR

NA

ND

AN

D

XN

OR

Q If/t

hen

P Then

/if

OR

F 1P Q

Page 11: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Capacitors hold the value of P and Q (0 or 1), and transistors can be set up to put a value (charge) in a different capacitor based on the rules of the function.

P Q F 0 NO

R

XQ NO

T P

↛ NO

T Q

XOR

NA

ND

AN

D

XN

OR

Q If/t

hen

P Then

/if

OR

F 1

0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

Page 12: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Conveniently all of these functions can be created through clever combinations of the NAND function.

So engineers can build any logical circuit by making a lot of NAND components and stringing them together in different ways.

Page 13: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Numbers:

0 = 0001 = 0012 = 010 3 = 0114 = 1005 = 1016 = 1107 = 111

Integers:

3 = 0002 = 0011 = 010 0 = 000-1 = 100-2 = 101-3 = 110-4 = 111

Decimals:

0100 0001 1100 1000 1111 0101 1100 0011

X = positive or negative sign (0)X = exponent (2^4)*

X = significand/mantissa (1.5700000524520874)**

Value: 25.12

IEEE-754 Floating Point

1/2

1/4

1/8

* Due to exponent bias** 1 is added to mantissa in normalized values

bit

byte

Page 14: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

What about text?

ASCII

WTF? Where are my emoticons?

Not WTF, UTF-8

Credit: Tim Whitlockapps.timwhitlock.info

128,000+ characters

Page 15: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Numbers again.

What about images? Sets of color.

What about color?

Sets of images.What about video?

(0,0,0) (255,255,255) (255,0,0) (0,255,0) (0,0,255)

Page 16: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Now for the computer to do some math…

Arithmetic Logic Unit (ALU)

Can add, subtract, divide, and multiplyCan perform logical operations (AND, OR, NOT)

Page 17: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Now store it!

Flip Flop Circuit

Need to be able to refresh an existing charge in order to store bits.

Capacitors loose charge over time.

Depending on input flip flops either keep their value or change it.

Page 18: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Source: Wikipedia

Put it all together, and you have a Central Processing Unit

Blocks of memory involved

Instruction Mnemonics

Program counter

Page 19: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Tick

pushl

Tick

movl

Tick

subl

Tick

leal

Tick

movl

Tick

leal

Tick

movl

Tick

movl

Tick

call

Tick

movl

Modern quad core processors like the Intel i7 4790K (500$) have a clock speed of up to 4.0GHz.

4,000,000,000 instructions per second….

Each core performs

Page 20: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Writing assembly code is hard.

Introducing High-Level languages:

C++ Code -> Compiler -> Assembly -> CPU -> ALU -> Function circuits -> capacitors and transistors -> 1s and 0s

Page 21: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Writing code from scratch is hard.

Introducing libraries/frameworks/interfaces:

Page 22: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

http://www.codepile1.com/presentations/mimeetup.ppt

Page 23: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Executives

• Increase market penetration by 3% in Western Canada

Mid-Management

• Marketing initiative

• Operations Expansion initiative

• DevOps

Project Managers

• Build APIs

• Follow proper business process (paperwork)

• Create Marketing Campaign

Subject Matter Experts

• Write code

• Write copy

• Provide customer services

Page 24: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Politicians• Platforms

Government

• Enact Policy

• Enact Legislation

Public sector employees

• Enforce Law

• Process Paperwork

• Campaign

Citizens

• Act

• Produce value

• Vote

Page 25: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

What is machine intelligence if not complex behavior?

Page 26: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Outsource tasks humans do well, to humans, let machines operate on higher levels of abstraction.

Introducing CodePile1.

Page 27: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

A digital market of human capability

Page 28: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service Provider

Action/ServiceNameCost

DurationInput

OutputAction/Service ProviderAction/Service

NameCost

DurationInput

OutputAction/Service Provider

Page 29: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Toronto Code Pile 1 Programming TCP1P Meetup

http://www.tcp1p.net

The Codepile Platform

APICommunity

You!Thank

Page 30: Outsourcing Machine Intelligence to Humans · 0 1 Now for some math… Given 2 states (0,1) there are 4 possible permutations of the states. Computation implies change. Mathematically,

Now for some math…

Given 2 states (0,1) there are 4 possible permutations of the states.

Computation implies change. Mathematically change is done through functions. That is, a transformation you can apply to any of the above permutations to get a new state.

P Q F 0 NO

R

XQ NO

T P

↛ NO

T Q

XOR

NA

ND

AN

D

XN

OR

Q If/t

hen

P Then

/if

OR

F 1

0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1