-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsimple.tex
1582 lines (1278 loc) · 78.3 KB
/
simple.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
\documentclass[12pt]{article}
\usepackage{hyperref}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage[xindy, acronym ,toc]{glossaries}
\graphicspath{ {images/} }
\title{Artificial Intelligence}
\author{
Henry Huck \\
Master Specialisé - HEC \\
\and
Romain Lapeyre\\to
Grande Ecole - HEC\\
}
\date{\today}
\makeglossaries
\makeindex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Glossary Definitions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newacronym{NLP}{NLP}{Natural Language Processing}
\newacronym{AGI}{AGI}{Artificial General Intelligence}
\newacronym{ASI}{ASI}{Artificial Super Intelligence}
\newacronym{ANI}{ANI}{Artificial Narrow Intelligence}
\newglossaryentry{neuralLabel}
{
name={Neural Network},
description={Also called neural net. A computer model designed to simulate the
behavior of biological neural networks, as in pattern recognition, language
processing, and problem solving, with the goal of self-directed information
processing} }
\newglossaryentry{petaflops}
{
name={petaFLOPS},
description={One petaflop is $10^15$ floating operations per second}
}
\newglossaryentry{deeplearning}
{
name={Deep Learning},
description={is a branch of machine learning based on a set of algorithms that
attempt to model high-level abstractions in data by using numerous processing
layers}
}
\newglossaryentry{reinforcementLearning}
{
name={Reinforcement Learning},
description={is a concept in machine learning, where the learning agent is taking action
as to maximize a cumulative reward. Thus the agent is learning from its own actions thanks to the
output resulting from it}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Title Page %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle
\thispagestyle{empty}
\pagenumbering{gobble}
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Quote Page %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\phantom{TEXT}
\thispagestyle{empty}
\pagenumbering{arabic}
\vspace{200pt}
\begin{quotation}
\noindent \textbf{Human:} \textit{\lq What is the purpose of emotions ?\rq }
\\
\noindent \textbf{Machine:} \textit{\lq I don't know.\rq}
\end{quotation}
\vspace{200pt}
\begin{flushright}
From Google's research paper \lq A Neural Conversation Model\rq. \cite{seq2seq}
\end{flushright}
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Table of contents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\smallskip
\tableofcontents
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Acknowledgements %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Acknowledgments}
\addcontentsline{toc}{section}{Acknowledgments}
\bigskip
\bigskip
I would like to thank Guillaume Wenzek, tutor for this thesis, for the help and
the resources he provided during the redaction of this paper. \\
\bigskip
\noindent I would like to thank Romain, who I've been working with on the subject and who
proved to be a great partner to work with.\\
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Intro %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Introduction}\label{introduction}
\addcontentsline{toc}{section}{Introduction}
\smallskip
{\em \lq Can machines think ?\rq }. This is the question Alan Turing raised in
his paper {\em The Imitation Game} \cite{Turing}. In order to answer this
question, Turing designed a test, a Game, that a {\em thinking} machine would be
able to pass. Very simply, a machine would pass this test, if a human
interrogator giving written questions to subjects in two different rooms, one
subject being a machine, and the other one being a human, would not be able to
tell in which room the machine is by examining its answers. \\
An AI simulating a 13 years old Ukrainian boy is said to have pass this famous
test \footnote{\href{http://www.bbc.com/news/technology-27762088} {BBC - Eugene
Goostman}}. However, this result was highly controversial due to the setting of
the test (short Q\&A sessions), and the deceptive strategy adopted in order to
pass the test. (i.e. pretending to be a child). According to those critics,
we're still far from creating an Artificial Intelligence that could perform as
well as a Human in every domain, and not only in \gls{NLP}. We'll call such an
AI an \gls{AGI}, as it has the same intelligence as a human. \\
But, are we really far from building human like AI ? In his book {\em The
Singularity is near} \cite{Kurzweil}, futurist Ray Kurzweil bases his theory
upon the fact that technological progress follows the Moore's Law
\footnote{\href{https://en.wikipedia.org/wiki/Moore\%27s_law} {Wikipedia -
Moore's Law} }, and as such, is exponential. According to him, we're accustomed
to think linearly, and subsequently not able to handle exponential progress.
Kurzweil explains that the rise of an \gls{AGI} is inevitable, and those saying
the contrary are just not thinking exponentially. Moreover, the rise of an
\gls{AGI} means that we'll have created a machine with the same level of
intelligence as a standard Human, but with a much greater computational power.
If the machine is capable of self improvement, it won't be long before it
evolves into an \gls{ASI}, an artificial intelligence with capacities so great,
that it is impossible to predict what could happen. This explosion of
intelligence is called a technological singularity. Irvin Good, a mathematician
who worked with Turing was one of the first to write about it: \\
\smallskip
\begin{quotation}
Let an ultra-intelligent machine be defined as a machine that can far surpass
all the intellectual activities of any man however clever. Since the design
of machines is one of these intellectual activities, an ultra-intelligent
machine could design even better machines; there would then unquestionably be
an \lq intelligence explosion\rq , and the intelligence of man would be left
far behind. Thus the first ultraIntelligent machine is the last invention
that man need ever make \cite{Good}.
\end{quotation}
However, these theories are highly controversial, and scientists strongly
disagree on those issues. Even Turing's test is disputed. John Searle challenged
it in a thought experiment known as the Chinese Room \cite{ChineseRoom}. If an
english speaking person was put in a room, with very precise instruction (i.e. a
programm) in English, to translate a set of characters (chinese questions) into
another set of characters (the answers to those questions), so that Chinese
observers would be convinced to speak with a Chinese person, would that mean
that the person in the room {\em actually} speaks Chinese? Or would he just
simulate the ability to understand it ? For Searle, the latter is true, and a
machine who would pass the Turing Test could not be considered a {\em thinking}
machine. \\
When IBM's computer, Watson, won at the Question \& Answer game Jeopardy, Searle
called Watson \textit{\lq An ingenous program, not a computer that can
think\rq} \footnote{
\href{http://cacm.acm.org/magazines/2012/1/144824-artificial-intelligence-past-and-future/fulltext}
{Artificial Intelligence: Past and Future}}. Nevertheless, IBM's computer Watson
{\em did} manage to win at Jeopardy!, and to beat the best players in the world.
The argument that Watson is not thinking, because it was not able to know and
realize it has won is true. However, the technical feat is here. Watson is
definitely not an \gls{AGI}, but it is a spectacular example of \gls{ANI}. \\
So even if we're not yet close to building an \gls{AGI}, we've managed to build
great \gls{ANI}s in various domains. Watson and Deep blue were good examples.
Another astonishing one is an AI developed at Google that learns to play video
Games \cite{Atari}. The team behind it used a mix of two methods, \gls{deeplearning}
and \gls{reinforcementLearning}, and the resulting AI was able to learn to play on
old Atari Games. It only used the video signal inputs, the final score and the
possible actions, \lq just as a human player would\rq. It managed pretty well on
games where reaction prevails, just like in Break Out
\footnote{\href{https://www.youtube.com/watch?v=cjpEIotvwFY} {Here is a video
demonstrating this}}, but failed to achieve similar succes where planning is
necessary. This example shows how it is possible to interact in an adaptive
maner with more complex environnments where the input is a video. \\
Speaking of more complex environment, another example of very good \gls{ANI} is
the self driving car. It is much better than human at driving, and it can do it
non-stop and in a safely way. The google car has now driven over 1 million
miles, and has been involved in only 14 accidents. The car was even not
responsible in those accidents, or was being manually driven by a google
employee. Self driving cars are to become a reality, and is a perfect example of
\gls{ANI}. \\
Right now, Artificial Intelligence may not be able to {\em think}, but several
ANIs already excel in specific areas. This means there are opportunities to
disrupt existing industries. One field of AI we deemed particularly interesting
is the Natural Language Processing. The aim of NLP is to teach human language to
machines, and make them able to understand queries formulated with natural
language. This is an important aspect of AI in order to pass the Turing test we
discussed earlier. \\
The purpose of this paper is to give a general overview of the recent
improvements in Artificial Intelligence studies. It is not intended to be a
highly technical paper, and the reader should only have minimal notions about
computer science and mathematics to understand what is being discussed.
Nonetheless, we'll provide an overview of the state of the art techniques in
Artificial Intelligence and Machine Learning, and what is being made possible
thanks to those. Thanks to this knowledge, we'll be able to discuss various
disruptive business ideas, and the impact of AI on the entrepreneurial
ecosystem. \\
Firstly, we will present a brief history of Artificial Intelligence studies, from
Turing original paper on artificial intelligence, (though the term was coined
later), to the latest models used in Natural Language Processing and their
applications.
\noindent Then, we'll examine the implications of Artificial Intelligence
progress for the Entrepreneurial Ecosystem, and the businesses that could benefit
from the latest strides. In particular, we'll see the impact on the car
industry, and the impact it may have on interfaces and the way we interact with
machines thanks to the progresses made in Natural Language Processing.
\noindent Lastly, we'll see what are today's limitations, and what remains to be
achieved before all these breakthroughs start being fully usable. We'll question
the possible rise of an \gls{ASI}, and what are the caveats
expressed by some members of the scientific community.
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% First part %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Recent improvements in ML technologies}
Artificial Intelligence has made tremendous progress over the last few years.
Compared to other disciplines, it is still relatively young, and there is still
plenty of things to be discovered. We'll present a brief history of Artificial
Intelligence studies, along with some basics concepts and results that will
allow us to understand the models discussed after. We'll then see how access to
faster computer and to Big Datasets has allowed some progress in Artificial
Intelligence.
\subsection{A bit of History}
\smallskip
Before designing his famous test, Turing laid the ground of modern computer
science, proving that every mathematical computation that could be represented
with an algorithm was possible thanks to an hypothetical machine, manipulating
a tape with zeros and ones. Now called Turing Machines, they are the ancestor
of modern computers.\cite{Turing1936}
Results in neurology research showing that the brain was a vast networks of
neurons, sending discrete electrical signal, inspired the idea of artificial
neural neurons. In 1951 Minsky and Edmonds built the SNARC, the first neural net
machine with a hardware relying on vacuum tubes. This machine modeled the
behavior of a rat searching his way through a maze, and was made of 40 neurons,
with synapses (i.e. connections) that adapted their weights after measuring the
success of the task: Finding the exit.
\begin{figure}[ht]
\centering
\includegraphics[width=\textwidth]{SNARC}
\caption{A neuron unit, part of the Stochastic Neural Analog Reinforcement Computer}
\label{fig:snarc}
\end{figure}
The discipline of Artificial intelligence itself was founded later, during the
summer of 1956. It was organized by Minsky and McCarthy, and two senior
scientists of IBM. It was held at Dartmouth College, and the scientists
attending the project were to become major authors and influencers for the
decades to come. \cite{DartMouth}\\
The early programs created by the newborn field of AI used what is essentially a
tree exploration program. For a maze exploration, or a proof of a theorem, the
algorithm is simply moving forward the possibilities trying to reach a goal (the
exit of the maze, or the conclusion of the theorem). The program is turning
back when it reaches a dead end, or can abandon a whole path and the
possibilities behind it if it is deemed unpromising. It proved successful on a
number of simple problems, where the number of possibilities, or search space,
is limited. But on larger problems, the search space would simply explode making
it impossible to explore. The idea was then to estimate sub-goals thanks to
heuristics functions specific to each problem.
\begin{figure}[ht]
\centering
\includegraphics[width=\textwidth]{chess-tree}
\caption{A chess exploration tree}
\label{fig:chess_tree}
\end{figure}
\smallskip
They also focused on solving \gls{NLP}. Joseph Weizenbaum designed ELIZA, a
program giving simple canned phrases as answers. The chatterbot worked thanks to
simple pattern matching and keyword substitution, but the result was of great
effect on some users.
Scientists were extremely confident at the time in the success of their research.
H.A. Simon declared in 1958, that \lq within ten years, a computer would be the
world's chess champion.\rq IBM's Deep Blue computer defeated Garry Kasparov only,
in 1997. They failed to properly estimate the difficulty of the problems they were
facing for many reasons.
They focused on studying logical problems, or theorem proving, problems considered
difficult for a human mind. Thus, they considered that {\em simple} tasks such as
vision would be easy to reverse engineer once more high-level problems had been
solved. This is known as the Moravec's paradox:
\begin{quotation}
Encoded in the large, highly evolved sensory and motor portions of the human
brain is a billion years of experience about the nature of the world and how
to survive in it. The deliberate process we call reasoning is, I believe, the
thinnest veneer of human thought, effective only because it is supported by
this much older and much more powerful, though usually unconscious,
sensorimotor knowledge. We are all prodigious olympians in perceptual and
motor areas, so good that we make the difficult look easy. Abstract thought,
though, is a new trick, perhaps less than 100 thousand years old. We have not
yet mastered it. It is not all that intrinsically difficult; it just seems so
when we do it. \cite{Moravec}
\end{quotation}
The lack of hardware resource and computational power was also one of the reason
they could not deliver what they had promised. Their examples worked on simple
cases but did not achieve significant results on more complex, real-world
applications.\\
During the same period, work continued on neural nets and their possible
applications. The Perceptron algorithm, created in 1957 by Frank Rosenblatt, was
a promising linear classifier. However 1969 Minsky and Papert published {\em
Perceptrons}, criticizing the possibilities offered by Perceptrons, and stating
that a single artificial neuron was not able to implement a certain logical
function, the exclusive-or function. This would have grandly limited the mathematical
possibilities of the structure, but it turned out it is actually possible. However
this result, combined with the disillusion of AI research, led to was is known as
the first AI Winter.
The generous funding of the first years were cut, and AI researched focused on
symbolic and logic programming rather than neural networks and machine learning.
In the UK, the lighthill report, evaluating the state of AI in the country,
criticized what had been accomplished, and led to a major collapse in AI
research.
AI research was now forced to focus on specific projects, and achieve results on
clear objectives. Expert Systems were one of the success of AI. It focused on
specific fields of knowledge, associating databases with logical rules
inferred from experts in those fields. It helped AI revive in the 80's, as expert
systems helped large corporation in saving millions of dollars.\\
The domain of neural network was also revived by the discovery of the back
propagation algorithm, a technique used to train neural networks. Neural
networks would start to provide commercial success in the 90's, when they
started to be applied to character recognition and speech recognition.
Money returned to finance AI research, with several large projects, the most
emblematic being the fifth Generation Computer project, a Japanese 10 years
project aiming at revolutionizing AI thanks to super computer and highly
parallelized computations. The expectations were so high the program was doomed
to failure.
The second AI Winter came during the early 90's with the fall of expert system
and specialized hardware. Once again, excitations was built around first
results, and disappointment followed. However, progresses made during this
period were real, and laid the basis for modern AI.\\
A lot of techniques and research developed in the AI field actually filtered
into other industries, and became widespread. In fact, those applications that
have become mainstream stopped being called AI. It is part of the AI effect,
that states that \lq When we know how a machine does something {\em
intelligent}, it ceases to be regarded as intelligent.\rq
\footnote{\href{http://www.washingtontimes.com/news/2006/apr/13/20060413-105217-7645r/}
{Fred Reed}}\\
Very Recently, some great results have been achieved with the use of
\gsl{deeplearning}, especially in the field of image classification. Google has
achieved some astonishing results in image classification, being able to
label image extremely precisely, and sometimes with a precision and a degree
of accuracy close to or greater than what a human would achieve.
Facebook has been using the same technique very recently to improve the
accessibility of its services to its visually impaired users. Clicking on
pictures in accessibility modes now gives a short description of what's actually
in the picture, giving more context for those who can't precisely what's in it.
\subsection{Why is AI progressing faster and faster?}
One of the major reason of AI first disappointments was the lack of hardware
powerful enough to crack on the problems they were facing. Today's progress
have made hardware powerful enough to solve certain problem or achieve
significant results. How is this, and the access to large training datasets
helping artificial intelligence ?
\subsubsection{Hardware progress}
Kurzweil's theory about the singularity may be controverted, he's right about
something: We do witness exponential progress in terms of computing power. This
is known as the Moore's Law. It states that the number of transistor on dense
integrated circuits double every two years. Hence, it can be approximately said
that the computational power available at a given price double every two years.
\begin{figure}[ht]
\centering
\includegraphics[width=\textwidth]{moore}
\caption{Moore's Law}
\label{fig:moore}
\end{figure}
We're getting access to better and better hardware, but where do we stand
compared to a human brain ? This is a bit of an apple and orange comparison, so
this is just to give an idea of what has been achieved. The world's fastest
supercomputer is Tianhe-2, in Guangzhou. It has a speed of 33.86 \gls{petaflops}
and cost about \$390 millions. During summer 2013, the largest neural network
simulation was run on a super computer a bit less powerful, on the K computer,
with a speed of about 10 petaflops.\footnote{\href{http://www.sciencedaily.com/releases/2013/08/130802080237.htm}
{Largest neuronal network simulation to date achieved using Japanese
supercomputer}} The simulation represented about 1\% of the brain, and was able
to simulate the brain activity during one second. This does not give us the
processing speed of a human brain, and does not allow to compare directly the
brain to those computer in term of raw power, but we can extrapolate, and
estimate that we would need a super computer with a speed in the exaflops, which
is $10^{18}$ flops. According to the Moore's Law, this {\em should} happen around
2020.\\
\begin{figure}[ht]
\centering
\includegraphics[width=\textwidth]{fartogo}
\caption{When will super computer be equivalent to human brain ?}
\label{fig:fartogo}
\end{figure}
%% moved later
%% power. The Tianhe-2 uses $24MW$ with its cooling system. The brain uses 20 W.
One other promising lead is the parallelization of computing. Thanks to more and
more performant GPUs\footnote{Too make it simple, a GPU is a computational unit
capable of handling a large number of simple, parallel tasks.}, associated with the use of cloud
computing \cite{cloud}, it helps training neural networks on large datasets.
This access to better hardware, and more computing power partly explains the
successes in Artificial Intelligence we're witnessing today. For tree
exploration problems, like in chess, or in strategic planning, it allows the
machine to evaluate the positions a bit deeper, making it possible to foresee
more problems, or choose solutions were the reward is not immediate, but the
final outcome better. Deep Blue's victory over Kasparov has been criticized for
being brute force rather than an improvement of the search algorithm. Regarding
neural networks, it allows researchers to build larger networks and better train
them, with huge datasets.
\subsubsection{Access to big datasets}
As a matter of fact, size of training data is important when it comes to the
training of neural networks. As explained in the first part that neural networks were
inspired by the network structure of neurons in the brain. More precisely A \gls{neuralLabel} is a class of statistical
functions, that contains processing units, called neurons, linked together by
adaptive weights, that are adjusted with the help of a learning algorithm.
The input neurons are linked to output neurons, traversing one or more hidden
layers of neuron. We find various models of neural networks, depending on the
overall structure, the way neuron are connected to each others, the size of
the networks and the way the network is learning its parameters.
\begin{figure}[ht]
\centering
\includegraphics[width=0.8\textwidth]{ann}
\caption{A simple representation of an artificial neural network}
\label{fig:ann}
\end{figure}
Simple models often perform better when trained on bigger datasets
\cite{moreData} than complex models trained on much smaller sets. The N-gram
models, which is used notably in Natural Language Processing, is a simple model
that looks at N words at a time, and check if those words form a correct
sentence. It can be trained on very large datasets of sentences. It can
virtually be trained on all data available in this domain, which is about
trillions of words \cite{ngram}.
This is also true in image classification. Large and high-quality datasets of
millions of image are available to train the latest algorithm in image
recognition and classification. All this is possible thanks to the recent
explosion of data in many fields.
However, adding always more data may not result in better results. For certain
models, it can harm the predictive power of the network if the data is too noisy
or unlabeled. \cite{trainingData} Moreover, in certain domain like speech
recognition, the size of high-quality annotated speech retranscription is fairly
low, only just millions of word. Thus, more complex models are needed in order
to improve quality of the results.
\subsubsection{Progress in Models}
The progresses made in machine learning techniques and model are also
responsible for the last progresses we're witnessing. The back-propagation
algorithm, is a method to train neural networks in supervised learning, where
the desired outputs are known.\footnote{It can also be applied to some
unsupervised learning examples, which aims at finding unknown patterns in the
data.} It was first published in 1969 \cite{backpropagation}, and was applied to
the field of neural networks only in 1974 and later, before becoming one of the
most used technique to train neural networks.
%% redondant avec le texte
\footnote{\lq The most popular
method for learning in multilayer networks is called Back-propagation. It was
first invented in 1969 by Bryson and Ho, but was largely ignored until the
mid-1980s.\rq \cite{RusselAI}}
We've seen that neural network can have one or more hidden layers. When each
hidden layer is used as the input layer for the next one, we can talk about
feedforward neural networks: There is no loop or cycle in the network. On the
contrary, recurrent neural network do present such loops. A neural network
will be qualified deep if it has more than two layers of non-linear neurons.
\gls{deeplearning} has been highly popular recently, but it has been around since the late
80's. Yann LeCun successfully applied the back-propagation algorithm to deep neural
networks in 1989, in order to recognize handwritten zip Codes \cite{lecun}.
However the network was pretty long to train (about 3 days), and the lack of computing
power was one of the reason it took some time to become popular. It is now
used in domains such as image and speech recognition, as well as NLP.
\pagebreak
\subsection{Modern Models and their applications}
There are a various number of models in artificial intelligence and machine learning,
and they are evolving at a fast pace. Thus, we decided first to describe what a learning
agent is giving a general idea of what a IA software is, and then give a few
example of some recent models without entering in too much technicalities.
\subsubsection{Intelligent Agent}
The intelligent Agent paradigm is pretty recent in the history of Artificial
intelligence. It started to be accepted in the late 90's and was popularized by
Norvig and Russel \cite{RusselAI}. It is an attempt to encapsulate the various
problems encountered in Artificial Intelligence, from Graph exploration problems
like in chess, to the automated driving of a car. Thus, it defines Artificial
Intelligence as the study of intelligent agents.
\lq An agent is something that perceives and acts in an environment. The agent
function for an agent specifies the action taken by the agent in response to
any percept sequence \cite{RusselAI} .\rq The environment as well as the agent
vary in form and complexity. Simple reflex agent, using defined if-then rules to
perform their actions will therefore be considered \lq intelligent\rq. Environments
can be extremely simple: a space of discrete positions for a player in a maze,
or very complex: a car evolving in the real world.
Intelligent agents can be classified in distinct categories:
\begin{itemize}
\item Reflex Agents
\item Model Based Agents
\item Goal Based Agents
\item Utility Based Agents
\item Learning Agents
\end{itemize}
A model base agent will maintain a certain structure of its observable
environment, giving it more complexity than the reflex agent which does not
store anything about it. The goal based agent builds upon the model agent, but
tries to reach a certain goal (For example: Finding the exit of a maze, or
defeating the adversary in a Chess game), while the utility based agent is
optimizing a certain utility function along the path of its actions
\footnote{Utility functions come from the world of economics, and map states of
the world to a certain utility, giving a measure of the happiness of the agent}.
Finally, learning agents will explore their environment, and improve their
actions by learning of their mistakes.
\subsubsection{Deep Learning}
We've already defined what deep neural networks was in the last section, neural
networks with 2 or more hidden layers. \gls{deeplearning} refers to the use of such
networks in machine learning. Something important about \gls{deeplearning} is that
each layer get to have a certain representation of the data being learn. The
data is a composition of multiple factors, each factor being learned by a layer
in the network. This can be particularly well observed in image recognition,
and was recently demonstrated by Google in an attempt to better understand
neural networks:
\footnote{\href{http://googleresearch.blogspot.co.uk/2015/06/inceptionism-going-deeper-into-neural.html}
{Going Deeper into Neural Networks}}
\begin{quote}
One of the challenges of neural networks is understanding what exactly goes on
at each layer. We know that after training, each layer progressively extracts
higher and higher-level features of the image, until the final layer
essentially makes a decision on what the image shows. For example, the first
layer maybe looks for edges or corners. Intermediate layers interpret the
basic features to look for overall shapes or components, like a door or a
leaf. The final few layers assemble those into complete interpretations—these
neurons activate in response to very complex things such as entire buildings
or trees.
\end{quote}
They managed to extract images from neural networks trained to classify images, by
giving them images of random noise and transforming them into what the network
consider to be a certain object. The figure \ref{fig:classvis} shows some example of
such image generation.
\begin{figure}[ht]
\centering
\includegraphics[width=0.8\textwidth]{classvis}
\caption{Different classes of objects seen by a deep neural network}
\label{fig:classvis}
\end{figure}
This gives insight on what the network actually learn, checking for learning errors
and gaining a better understanding on what's happening in the hidden layers.
They also fed images to the network, and extracted what was perceived in a
specific layer, amplifying what was detected. Low level layers amplify generic
features such as edges, contrasts or color-clusters. High-level layers have much
more precise representation of objects and complex features.
They also used this in order to generate image by recursively feeding the network with
an image, and selecting specific layers to amplify the results. The code for this
software, called deep dream, has been made public and a wide range of example are
available.
\footnote{\href{https://twitter.com/search?q=\%23deepdream&src=tyah\&lang=en}{Search DeepDream on twitter}}
\begin{figure}[ht]
\centering
\includegraphics[width=0.8\textwidth]{deepdream}
\caption{An image recursively generated from random noise on a neural network trained on architecture images}
\label{fig:deepdream}
\end{figure}
\pagebreak
\subsubsection{Word Vectors}
Word vector is a technique used to represent a set of words, or vocabulary, into
vectors. Some very interesting properties are captured into those vectors.
The first immediate result is that similar word tend to be clustered together:
Words which are semantically close end up to be close in the space of vectors.
\footnote{The popular \href{https://code.google.com/p/word2vec/}{word2Vec} tool provided by google gives some examples.}
Checking the closest neighbors of the word France will output a list of european
countries, the first being neighboring countries of France.\\
Another, less immediate result, is that it captures linguistics regularities
\cite{continuousWordVec}. The representation in term of vectors allows to make
some linear operations on the vector representations of words. For example,
the vector: $\vec{\textbf{King}} - \vec{\textbf{Man}} + \vec{\textbf{Woman}}$ will be very close to the vector
representation of the word \lq Queen\rq.
Figure \ref{fig:wordpair} shows some more example of such relationships. By
computing the distance between countries and their capital, it can exhibit the
capital of other countries found in the training corpus. Some other examples
show grammatical similarities between words. The same distance is observed
between adjectives and their superlatives: small-smallest and tall-tallest.
\begin{figure}[ht]
\centering
\includegraphics[width=0.8\textwidth]{vectors}
\caption{Example of word pairs relationship. From {\em Efficient Estimation of Word Representations in
Vector Space} \cite{wordVec}}
\label{fig:wordpair}
\end{figure}
Word vectors need to be of high quality in order to be used in real world applications.
It has been used to improve machine translation \cite{translation}, and in sentiment analysis, which aims
at extracting subjective informations from the source.\cite{sentiment}
\pagebreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Second Part %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{The impact of AI on the entrepreneurial ecosystem}
Now that we've seen the improvements of AI technology, we're going to look at
the impact those technologies can have on the entrepreneurial ecosystem.
Our approach will be the following: we'll explore a few applications of AI
technologies, and propose startup ideas related to this.
Of course, some companies, including startups, are already leveraging the latest
progress in AI to offer a commercial service, or are expected to do so.
We'll therefore start by reviewing the first AI commercial progress in the
space. Then, we'll look at other area to expend our analysis
\subsection{Impact on startup ideas}
\subsubsection{Self-driving cars}
\paragraph{A bit of context}
The first autonomous cars appeared back in the 1980's with the Canergie Mellon
University Navlab project in 1984, and a similar project by Mercedes Benz in
1987. Those project were were considered pure exploration at the time.
But things have changed. In 2005, DARPA launch a Grand Challenge which was won
by a team of engineers at Stanford, who created a first self-driving car
prototype. Since then, the team has been hired by Google to create the first
autonomous that has started hitting the road of California in the spring 2015 \footnote{\href{http://www.google.com/selfdrivingcar/}
{Google car}}.
A few others are following this way: Uber \footnote{\href{http://www.businessinsider.com/why-uber-is-investing-in-autonomous-cars-2015-8?IR=T}
{Why Uber is investing in autonomous cars}}, Tesla and potentially Apple to name
a few.
\paragraph{Technology behind those cars}
Let's look at the technology behind those.
First, autonomous car include a ton of sensors to gather data about their
environment. Let's look into those.
The position of the car is determined with a classic GPS, to which are added
tachometers, altimeters and gyroscopes to enrich the only GPS data. Then come
radar sensors that are located all around the car to localize potential
obstacles. Usually, there are 4 of those: 3 at the front and 1 at the back of
the car. On the sides of the car, there are ultra sonic sensors which are a bit
different, they're used to locate objects close to the car. Think about parking
for instance. When you think about it, all this information gathered by these sensors,
if properly interpreted, will give far more precision and safety to an autonomous car
than a regular car driven by a Human.\\
\noindent On top of this, a video camera points to the front. It aims to detect
traffic lights and road signs. The central element among all those sensors is
the LIDAR: Light detection and ranging. This element is located at the top of
the car. It identifies the edges of the road, and provides a 360 projection of
the environment around the car.
\smallskip
\begin{figure}[ht]
\centering
\includegraphics[width=\linewidth]{car-diagram}
\caption{A self-driving car and its sensors}
\label{fig:car}
\end{figure}
\smallskip
Second, the car includes a powerful computer to analyze all these parameters
and actually \lq drive\rq the car. Let's take the example of Google's software
called \lq Chauffeur \rq . It's composed of two parts. One is hard-coded
(road signs, traffic lights colors), and one is a learning part. Every mile is
logged and provides additional data on how the car should drive itself.
Therefor, the car is able to predict the behavior of surrounding elements
(both car, bikes, pedestrians). Such things are based on \gls{neuralLabel} being
fed with the driving data of million of other cars
that Google has been collecting. This video by Google provides a great example
of how the car perceives its environment and can make decisions.\\
\smallskip
\begin{figure}[ht]
\centering
\includegraphics[width=\linewidth]{google-car}
\caption{How the Google car perceives its environment.
\href{https://www.youtube.com/watch?v=dk3oc1Hr62g}{More in this video}}
\label{fig:google_car}
\end{figure}
\smallskip
\paragraph{Car industry disruption}
The disruption is happening at several levels: some startups are building add-ons
to current cars, so they can get self-driving functionalities. For instance,
a Californian company called Cruise
\footnote{\href{http://www.getcruise.com}{Cruise Website}}
enhances a car's capabilities by seamlessly integrating self-driving car
capabilities to your existing car. It works by adding sensors and a computer to
the car, and works in a similar fashion as the Google car. The idea is that you
can add those features to your car for about \$ 15,000 depending on the vehicle
you have.
Google has a similar approach: according to several journalistic
sources, they intend to resell their self-driving technologies to automotive
companies. Though, many people fear that Google will have a significant
bargaining advantage, as those car companies don't have the technology yet.\\
Some other companies intend to replace current car makers. Tesla is the best
example in the category. Though the company CEO, Elon Musk, is confident
self-driving cars will hit the market by 2020, there were no public statement
about Tesla building such cars. \footnote{\href{http://my.teslamotors.com/fr_CH/forum/forums/tesla\%E2\%80\%99s-musk-sees-fully-autonomous-car-ready-5-years}
{Elon Musk sees fully automated cars in 5 years}} In a recent video, he was asked whether Tesla
would be willing to provide Uber with self-driving cars, and declined to answer.
Many reporters concluded that Tesla will likely be the first company to sell
autonomous cars, that were built in-house. Similar to Tesla, there could be new
car giants rising by leveraging the opportunity to build both a new type of car
and a powerful self-driving technology. \footnote{\href{http://www.forbes.com/sites/chunkamui/2014/08/04/5-reasons-why-automakers-should-fear-googles-driverless-car/}
{Five reasons why automakers should fear Google's driver less car}}\\
Finally, the most ambitious model is probably the one by Uber. The idea behind
it is that using UberX costs about \$ 2.15 per mile (source: AKA research).
Owning a personal car is \$ 0.76. Uber wants to create Car-As-a-Service.
The idea is similar to what Uber is today, but without the drivers. Think about
it for a moment. The car driver accounts for most of the cost of an UberX ride.
Therefore, if you can remove the driver, the cost would be \$ 0.25 per mile.
It's not only about replacing the driver, it's about making the car available
for customers at any time, on any day. Whereas a driver takes some rest and
parks their car, a self-driving car could be on the road almost 24/7.
\medskip
\begin{figure}[ht]
\centering
\includegraphics[width=\linewidth]{vehicle-cost}
\caption{Cost of a car per mile for different scenario}
\label{fig:cost_of_car}
\end{figure}
\smallskip
No matter who's leading that change, it's likely that our own definition of the
car is going to change. Mercedes has shown an example of a car being similar to
a living room: the Mercedes-Benz F 015. Travelers could sleep, chat, browse the
Internet as if they were at home. The car has been driving around San Francisco
this year.\\
\smallskip
\begin{figure}[ht]
\centering
\includegraphics[width=\linewidth]{mercedes}
\caption{\href{http://www.entrepreneur.com/article/243751}
{Mercedes Benz F 015 A driving living room}}
\label{fig:mercedesBenz}
\end{figure}
\smallskip
Another big change would be the oil station network. Since the car could drive
themselves to refill, or could be fully electricity powered, it will most likely
be the end of oil stations as we know them. Those will be probably automated as
well, and moved to non-residential areas.
\subsubsection{Speech \& natural-language recognition}
The speech recognition movement has been initiated to the large public with a
startup bought by Apple, Siri. This startup was initiated a DARPA project as
well named CALO. Essentially, it works by transcribing speech to text, and then
parses the text to perform actions. Google has launched a similar service called
Google now. Both these system can perform actions based on the user's speech.
This technology enables the user to perform actions on the service of his
choosing (OpenTable, Yelp), without having to use any interface. The speech is
the communication tool.
\\
\paragraph{Technology behind it}
Personal assistant technologies rely on three parts.
The first one is about extracting the meaning of the speech to figure out which
action to perform. In that case, Siri uses for instance part of speech tagging,
noun-phrase chunking, dependency \& constituent parsing. On the other side,
such service should plug into third party services. The complexity lies in the
ability to connect with very various systems (AirBnb, HotelTonight, Couch-surfing
,Bookking.com only to make a hotel reservation). Once this has been done, Siri
needs to communicate back with the user, converting API responses to oral \&
human communication.
\paragraph{Use cases}
Plenty of services have followed the Siri path, usually in a more advanced
fashion. It's interesting to note that some services are built with technology
at its core (Siri \& Google Now), whereas others are human-based at first. The Y
Combinator startup called \lq Magic\rq is the exact opposite. The service only
includes the written language recognition. For instance, a user can text Magic
asking for anything they'd like, and then the service will connect to third
party services (in a similar fashion than Siri) to provide the service live. The
complexity therefore lies on relying on a very large number of 3rd party
services to provide a very large offering to the user. When a regular supermarket
has a limited inventory, Magic, as a personal assistant, needs to be able to
deliver anything the user wants. The second part of the complexity is scaling.
When you have human handling each operation at the beginning, you need to
progressively create processes to better handle certain tasks, and eventually
automate entire parts of the workflow.\\
Combining AI and diversity of requests doesn't seem to be possible today. Such
startups are having trouble to scale. The current solution is to combine a mix
of the two. Facebook Messenger recently launched a service called M that
illustrates it: they've leveraged the purchase of the French startup Wit.ai and
a team of personal assistants that handle manually some request to provide this
personal assistant service.\\
This market is likely a winner takes all one. Since these personal assistant
platforms are about connecting people with services, their model is similar to
Google's search engine. If you are the entry point for the customer, it's very
hard for competitors to make the users switch. Startups like Magic benefited
from their speed of execution, but the ability to scale requires to leverage AI
technology. It's not clear today whether startups or giants will succeed in that
field. Though it's interesting to see that the 2 opposite approach are now converging
to a similar solution.\\
Additional services from startup in that space intend to focus on one vertical
only. A good example of it are personal assistant focused on organizing meetings
between to person who want to schedule an appointment. To name a few, players in
that space are x.ai, assistant.ai or Juliedesk. These companies are managing to
live up to their promise, but the complexity once again lies in the ability to
scale. They are strongly investing in AI to replace human services that they
first relied on.\\
Finally, we could imagine two models for that space.
One would be a model built by a major tech company (among Facebook, Google or
Apple) that would provide any kind of service by levering a strong AI
technology, and would plug into a very large number of APIs from company that
provide food delivery, order delivery, or pretty much anything.
The second model would be a platform one. A company like Magic could be the
entry point for the user. Then, if a calendar request is made to Magic, it would
just have to tag it as so and to route it to a Calendar booking service such as
x.ai.\\
The former seems more likely as concentrating the efforts in Machine Learning is
probably the best approach to achieve the best results, though the two are
possible.
\subsubsection{Death of interfaces}
The most natural interface of communication between Human beings is the spoken language.
Other forms of interface were created to allow people to use machines in the simplest way as
possible. However, an interface, even if well designed, will never be as immediate and
easy to use as spoken language.
Consequently, the main benefit of a personal assistant for the user is that it's a very easy way to
communicate with a machine, in order to get a service. Think about the
User-Experience behind it. If you use a speech recognition, you would just
have to say: \lq Book me a table for 2 in a historic area of Paris, where I
can eat Italian
food.\rq. That will do the trick.
If the user was to do it on their laptop or on their phone, they'll need to:
\begin{itemize}
\item Find the right service to search on (TripAdivisor, OpenTable, Yelp?).
\item Perform the search.
\item Make a choice
\item Go through the reservation process.
\end{itemize}
The former is way faster. Another benefit is in what we would call \lq unique\rq
cases. Say you want to book a laser-tag party in Paris, and you've never done it
before. You don't know where to look, so you're going to spend time figuring out
how to book a good laser-tag game. You'll probably need to benchmark a few,
look at the review, etc.\\
A strong case in favor of speech-based application is that you don't need to
learn about the existence of the service, and you don't need to use any
interface. UX designers often struggle to make an app available to all. No
interface is probably the most efficient. Even a 80 year-old who has never used
an app in their life would be able to use it. We can then imagine that, instead
of having dozens of apps on our phone or dozens of websites pinned on our
browsers a single personal assistant app could do the job. Just like Google
does for search today. This user experience part make those personal assistant
particularly appealing in the long-run, because the friction to start using them
is very low. A good example of it we saw is about forwarding professional
expenses to the company's accountant. The mainstream service for it today is
Expensify. You just need to install an app on your phone (meaning, if you have
1000 people in the company, they all need to install it), then you can take a
picture of a receipt and it will automatically be sent to the company's
accountant. Right now the picture is manually treated behind the scenes, and the
process is only half-automated, taking several hours to process a picture.
This would be a lot easier with a speech or written language
recognition app. You could just send over the receipt's picture via text to the
company AI bot. It will recognize what it is, potentially ask a few question
about the expense and done.
Time will tell, but usually the service that provides the simplest user
experience wins. And it's likely that the personal assistant user experience is
the simplest.