ABOUT THE SPEAKER
Joseph Redmon - Computer scientist
Joseph Redmon works on the YOLO algorithm, which combines the simple face detection of your phone camera with a cloud-based AI -- in real time.

Why you should listen

Computer scientist Joseph Redmon is working on the YOLO (You Only Look Once) algorithm, which has a simple goal: to deliver image recognition and object detection at a speed that would seem science-fictional only a few years ago. The algorithm looks like the simple face detection of a camera app but with the level complexity of systems like Google's Deep Mind Cloud Vision, using Convolutional Deep Neural Networks to crunch object detection in realtime. It's the kind of technology that will be embedded on all smartphones in the next few years.

Redmon is also internet-famous for his resume.

More profile about the speaker
Joseph Redmon | Speaker | TED.com
TED2017

Joseph Redmon: How computers learn to recognize objects instantly

Joseph Redmon: Kako računalo uči trenutačno prepoznavati objekte

Filmed:
2,471,805 views

Prije deset godina, istraživači su mislili da je gotovo nemoguće naučiti računalo prepoznati razliku između mačke i psa. Danas sustavi računalnog vida to rade s više od 99 posto točnosti. Kako? Joseph Redmon radi na sustavu YOLO (You Only Look Once), metodi detekcije objekata otvorenog koda koja može prepoznati predmete u slikama i videozapisima - od zebre do zaustavnih znakova - munjevitom brzinom. U izvanrednom demo prikazu, Redmon pokazuje ovaj važan korak naprijed za aplikacije poput autonomnih automobila, robotike, pa čak i otkrivanja raka.
- Computer scientist
Joseph Redmon works on the YOLO algorithm, which combines the simple face detection of your phone camera with a cloud-based AI -- in real time. Full bio

Double-click the English transcript below to play the video.

00:12
TenDeset yearsgodina agoprije,
0
825
1151
Prije deset godina,
istraživači računalnog vida mislili su
da je naučiti računalo
00:14
computerračunalo visionvizija researchersistraživači
thought that gettinguzimajući a computerračunalo
1
2000
2776
kako razlikovati između mačke i psa
00:16
to tell the differencerazlika
betweenizmeđu a catmačka and a dogpas
2
4800
2696
00:19
would be almostskoro impossiblenemoguće,
3
7520
1976
gotovo nemoguće,
00:21
even with the significantznačajan advancenapredovati
in the statedržava of artificialUmjetna intelligenceinteligencija.
4
9520
3696
čak i uz značajan napredak
u razvoju umjetne inteligencije.
00:25
Now we can do it at a levelnivo
greaterviše than 99 percentposto accuracytočnost.
5
13240
3560
Sad to možemo učiniti
s više od 99 posto točnosti.
00:29
This is calledzvao imageslika classificationklasifikacija --
6
17680
1856
To se zove klasifikacija slike -
00:31
give it an imageslika,
put a labeloznačiti to that imageslika --
7
19560
3096
dati sliku, staviti oznaku na sliku -
00:34
and computersračunala know
thousandstisuća of other categorieskategorije as well.
8
22680
3040
a računala znaju
i tisuće drugih kategorija.
00:38
I'm a graduatediplomirani studentstudent
at the UniversitySveučilište of WashingtonWashington,
9
26680
2896
Ja sam postdiplomac
na Sveučilištu u Washingtonu
00:41
and I work on a projectprojekt calledzvao DarknetDarknet,
10
29600
1896
i radim na projektu pod nazivom Darknet,
00:43
whichkoji is a neuralživčani networkmreža frameworkokvir
11
31520
1696
što je neuronska mrežna struktura
00:45
for trainingtrening and testingtestiranje
computerračunalo visionvizija modelsmodeli.
12
33240
2816
za obuku i testiranje
modela računalnog vida.
00:48
So let's just see what DarknetDarknet thinksmisli
13
36080
2976
Pa pogledajmo što Darknet misli
00:51
of this imageslika that we have.
14
39080
1760
o ovoj slici koju imamo.
00:54
When we runtrčanje our classifierklasifikatora
15
42520
2336
Kad smo pokrenuti naš klasifikator
00:56
on this imageslika,
16
44880
1216
na ovoj slici,
00:58
we see we don't just get
a predictionproricanje of dogpas or catmačka,
17
46120
2456
ne dobivamo samo predviđanja
je li to pas ili mačka,
01:00
we actuallyzapravo get
specificspecifično breedvrsta predictionspredviđanja.
18
48600
2336
nego čak i određena predviđanja pasmine.
01:02
That's the levelnivo
of granularityzrnatost we have now.
19
50960
2176
To je razina zrnatosti koju imamo sada.
01:05
And it's correctispravan.
20
53160
1616
I to je točno.
01:06
My dogpas is in factčinjenica a malamuteMalamut.
21
54800
1840
Moj pas je doista malamut.
01:09
So we'veimamo madenapravljen amazingnevjerojatan stridesnapredak
in imageslika classificationklasifikacija,
22
57040
4336
Napravili smo nevjerojatne pomake
u klasifikaciji slike,
ali što se događa kad
pokrenemo klasifikator
01:13
but what happensdogađa se
when we runtrčanje our classifierklasifikatora
23
61400
2000
01:15
on an imageslika that looksizgled like this?
24
63424
1960
na sliku koja izgleda ovako?
01:19
Well ...
25
67080
1200
Dobro ...
01:24
We see that the classifierklasifikatora comesdolazi back
with a prettyprilično similarsličan predictionproricanje.
26
72640
3896
Vidimo da je klasifikator vraća
uz prilično slična predviđanja.
01:28
And it's correctispravan,
there is a malamuteMalamut in the imageslika,
27
76560
3096
I to je točno, na slici je malamut,
01:31
but just givendan this labeloznačiti,
we don't actuallyzapravo know that much
28
79680
3696
ali samo s tom oznakom
ne znamo mnogo
01:35
about what's going on in the imageslika.
29
83400
1667
o tome što se događa na slici.
01:37
We need something more powerfulsnažan.
30
85091
1560
Trebamo nešto snažnije.
01:39
I work on a problemproblem
calledzvao objectobjekt detectionotkrivanje,
31
87240
2616
Radim na problemu koji se zove
otkrivanje objekta,
01:41
where we look at an imageslika
and try to find all of the objectsobjekti,
32
89880
2936
gdje gledamo sliku i
pokušavamo pronaći sve objekte,
01:44
put boundingna kopnu boxeskutije around them
33
92840
1456
staviti okvire oko njih
01:46
and say what those objectsobjekti are.
34
94320
1520
i reći ono što ti predmeti su.
01:48
So here'sevo what happensdogađa se
when we runtrčanje a detectordetektor on this imageslika.
35
96400
3280
Evo što se događa kad pokrenemo
detektor na ovoj slici.
01:53
Now, with this kindljubazan of resultproizlaziti,
36
101240
2256
Ovakvom vrstom rezultata
možemo napraviti puno više
s algoritmima računalnog vida.
01:55
we can do a lot more
with our computerračunalo visionvizija algorithmsalgoritmi.
37
103520
2696
01:58
We see that it knowszna
that there's a catmačka and a dogpas.
38
106240
2976
Vidimo da zna da su tu mačka i pas.
02:01
It knowszna theirnjihov relativerođak locationslokacije,
39
109240
2256
Zna njihove relativne položaje,
02:03
theirnjihov sizeveličina.
40
111520
1216
njihovu veličinu.
02:04
It maysvibanj even know some extraekstra informationinformacija.
41
112760
1936
Čak može znati neke dodatne informacije.
U pozadini je knjiga.
02:06
There's a bookrezervirati sittingsjedenje in the backgroundpozadina.
42
114720
1960
02:09
And if you want to buildizgraditi a systemsistem
on topvrh of computerračunalo visionvizija,
43
117280
3256
Ako želite izgraditi sustav
na osnovi računalnog vida,
02:12
say a self-drivingself-vožnje vehiclevozilo
or a roboticrobotski systemsistem,
44
120560
3456
recimo autonomno vozilo
ili robotski sustav,
02:16
this is the kindljubazan
of informationinformacija that you want.
45
124040
2456
ovo je vrsta informacija koje želite.
02:18
You want something so that
you can interactinterakcija with the physicalfizička worldsvijet.
46
126520
3239
Želite nešto da možete
komunicirati s fizičkim svijetom.
02:22
Now, when I startedpočeo workingrad
on objectobjekt detectionotkrivanje,
47
130759
2257
Kad sam počeo raditi na
prepoznavanju objekata,
02:25
it tookuzeo 20 secondssekundi
to processpostupak a singlesingl imageslika.
48
133040
3296
trebalo je 20 sekundi
za obradu jedne slike.
02:28
And to get a feel for why
speedubrzati is so importantvažno in this domaindomena,
49
136360
3880
A kako biste dobili osjećaj zašto je
brzina ovdje tako važna,
02:33
here'sevo an exampleprimjer of an objectobjekt detectordetektor
50
141120
2536
evo primjera detektora objekta
02:35
that takes two secondssekundi
to processpostupak an imageslika.
51
143680
2416
koji treba dvije sekunde za obradu slike.
02:38
So this is 10 timesputa fasterbrže
52
146120
2616
Dakle ovo je 10 puta brže
02:40
than the 20-seconds-per-image-sekunde po slici detectordetektor,
53
148760
3536
od detektora kojem treba
20 sekundi po slici,
i možete vidjeti da se za vrijeme
dok on učini predviđanja,
02:44
and you can see that by the time
it makesmarke predictionspredviđanja,
54
152320
2656
02:47
the entirečitav statedržava of the worldsvijet has changedpromijenjen,
55
155000
2040
promijenilo čitavo stanje u svijetu,
02:49
and this wouldn'tne bi be very usefulkoristan
56
157880
2416
i to ne bi bilo vrlo korisno
02:52
for an applicationprimjena.
57
160320
1416
za neku primjenu.
02:53
If we speedubrzati this up
by anotherjoš factorfaktor of 10,
58
161760
2496
Ako ovo gore ubrzamo
još jednom za faktor 10,
02:56
this is a detectordetektor runningtrčanje
at fivepet framesokviri perpo seconddrugi.
59
164280
2816
to je detektor koji radi
na pet sličica u sekundi.
02:59
This is a lot better,
60
167120
1536
To je puno bolje,
03:00
but for exampleprimjer,
61
168680
1976
ali, na primjer,
03:02
if there's any significantznačajan movementpokret,
62
170680
2296
ako postoji bilo kakav značajan pokret,
03:05
I wouldn'tne bi want a systemsistem
like this drivingvožnja my carautomobil.
63
173000
2560
ne bih želio da sustav poput ovog
vozi moj auto.
03:09
This is our detectionotkrivanje systemsistem
runningtrčanje in realstvaran time on my laptoplaptop.
64
177120
3240
Ovo je naš sustav otkrivanja
u realnom vremenu na mom laptopu.
03:13
So it smoothlyglatko trackspjesme me
as I movepotez around the frameokvir,
65
181000
3136
Glatko me prati kako se krećem kroz kadar,
03:16
and it's robustrobustan to a wideširok varietyraznolikost
of changespromjene in sizeveličina,
66
184160
3720
i otporan je na razne promjene veličine,
03:21
posepoza,
67
189440
1200
položaja,
03:23
forwardnaprijed, backwardunatrag.
68
191280
1856
naprijed, natrag.
03:25
This is great.
69
193160
1216
Ovo je super.
03:26
This is what we really need
70
194400
1736
To je ono što stvarno trebamo
03:28
if we're going to buildizgraditi systemssustavi
on topvrh of computerračunalo visionvizija.
71
196160
2896
ako ćemo graditi sustave
na osnovi računalnog vida,
03:31
(ApplausePljesak)
72
199080
4000
(Pljesak)
03:36
So in just a fewnekoliko yearsgodina,
73
204280
2176
U samo nekoliko godina
03:38
we'veimamo goneotišao from 20 secondssekundi perpo imageslika
74
206480
2656
došli smo od 20 sekundi po slici
03:41
to 20 millisecondsmilisekundi perpo imageslika,
a thousandtisuću timesputa fasterbrže.
75
209160
3536
do 20 milisekundi po slici,
tisuću puta brže.
03:44
How did we get there?
76
212720
1416
Kako smo došli dovde?
03:46
Well, in the pastprošlost,
objectobjekt detectionotkrivanje systemssustavi
77
214160
3016
Nekada su sustavi za otkrivanje predmeta
03:49
would take an imageslika like this
78
217200
1936
uzimali sliku poput ove
03:51
and splitSplit it into a bunchmnogo of regionsregije
79
219160
2456
i podijelili je na hrpu područja
03:53
and then runtrčanje a classifierklasifikatora
on eachsvaki of these regionsregije,
80
221640
3256
i zatim pokrenuli klasifikator
na svakom od tih područja.
03:56
and highvisok scoresrezultate for that classifierklasifikatora
81
224920
2536
Visoki rezultati za taj klasifikator
03:59
would be consideredsmatra
detectionsotkrivanje in the imageslika.
82
227480
3136
smatrali su se detekcijom u slici.
04:02
But this involvedumiješan runningtrčanje a classifierklasifikatora
thousandstisuća of timesputa over an imageslika,
83
230640
4056
No, to je značilo rad klasifikatora
tisuće puta na slici,
04:06
thousandstisuća of neuralživčani networkmreža evaluationsprocjene
to produceproizvoditi detectionotkrivanje.
84
234720
2920
tisuće procjena neuronskih mreža
kako bi dobili detekciju.
04:11
InsteadUmjesto toga, we trainedobučen a singlesingl networkmreža
to do all of detectionotkrivanje for us.
85
239240
4536
Umjesto toga smo naučili jednu mrežu
da učini sve detekcije za nas.
04:15
It producesproizvodi all of the boundingna kopnu boxeskutije
and classklasa probabilitiesvjerojatnosti simultaneouslyistovremeno.
86
243800
4280
Ona istodobno proizvodi sve okvire
i klase vjerojatnosti.
04:20
With our systemsistem, insteadumjesto of looking
at an imageslika thousandstisuća of timesputa
87
248680
3496
S našim sustavom, umjesto da
gledate sliku tisuće puta
04:24
to produceproizvoditi detectionotkrivanje,
88
252200
1456
kako bi postigao detekciju,
04:25
you only look oncejednom,
89
253680
1256
gledate samo jednom,
04:26
and that's why we call it
the YOLOYOLO methodnačin of objectobjekt detectionotkrivanje.
90
254960
2920
zato ga zovemo YOLO metoda
za detekciju objekta.
04:31
So with this speedubrzati,
we're not just limitedograničen to imagesslika;
91
259360
3976
Dakle, ovom brzinom
nismo ograničeni samo na slike;
04:35
we can processpostupak videovideo in realstvaran time.
92
263360
2416
možemo obraditi video u realnom vremenu.
04:37
And now, insteadumjesto of just seeingvidim
that catmačka and dogpas,
93
265800
3096
Sad, umjesto da samo vidimo mačku i psa,
04:40
we can see them movepotez around
and interactinterakcija with eachsvaki other.
94
268920
2960
vidimo kako se kreću
i međusobno komuniciraju.
04:46
This is a detectordetektor that we trainedobučen
95
274560
2056
To je detektor koji smo obučili
04:48
on 80 differentdrugačiji classesklase
96
276640
4376
na 80 različitih klasa
04:53
in Microsoft'sMicrosoft je COCOCoco datasetskup podataka.
97
281040
3256
u Microsoftovoj zbirci podataka COCO.
04:56
It has all sortsvrste of things
like spoonžlicom and forkvilicom, bowlzdjela,
98
284320
3336
Ona ima svašta, poput žlice
i vilice, zdjele,
04:59
commonzajednička objectsobjekti like that.
99
287680
1800
obične predmete poput tih.
05:02
It has a varietyraznolikost of more exoticegzotične things:
100
290360
3096
Ima raznih egzotičnijih stvari:
05:05
animalsživotinje, carsautomobili, zebraszebre, giraffesžirafe.
101
293480
3256
životinje, automobili, zebre, žirafe.
05:08
And now we're going to do something funzabava.
102
296760
1936
A sada idemo učiniti nešto zabavno.
05:10
We're just going to go
out into the audiencepublika
103
298720
2096
Samo ćemo otići u publiku
05:12
and see what kindljubazan of things we can detectotkriti.
104
300840
2016
i vidjeti što možemo otkriti.
05:14
Does anyonebilo tko want a stuffedpunjeni animalživotinja?
105
302880
1620
Želi li tko plišanu životinju?
05:18
There are some teddyMedo bearsmedvjedi out there.
106
306000
1762
Tamo ima nekih medvjedića.
05:22
And we can turnskretanje down
our thresholdprag for detectionotkrivanje a little bitbit,
107
310040
4536
Možemo malo smanjiti prag detekcije,
05:26
so we can find more of you guys
out in the audiencepublika.
108
314600
3400
tako da možemo naći više vas u publici.
05:31
Let's see if we can get these stop signsznakovi.
109
319560
2336
Da vidimo možemo li dobiti
ove znakove STOP.
05:33
We find some backpacksruksaci.
110
321920
1880
Nalazimo neke ruksake.
05:37
Let's just zoomzum in a little bitbit.
111
325880
1840
Zumirajmo samo malo.
05:42
And this is great.
112
330320
1256
I to je super.
05:43
And all of the processingobrada
is happeningdogađa in realstvaran time
113
331600
3176
Sva obrada se događa u stvarnom vremenu
05:46
on the laptoplaptop.
114
334800
1200
na laptopu.
05:49
And it's importantvažno to rememberzapamtiti
115
337080
1456
I to je važno zapamtiti
da je ovo sustav za detekciju objekta
opće namjene,
05:50
that this is a generalgeneral purposesvrha
objectobjekt detectionotkrivanje systemsistem,
116
338560
3216
05:53
so we can trainvlak this for any imageslika domaindomena.
117
341800
5000
možemo ga trenirati za bilo koju domenu.
06:00
The sameisti codekodirati that we use
118
348320
2536
Isti kod koji koristimo
06:02
to find stop signsznakovi or pedestrianspješaci,
119
350880
2456
za pronaći znakove STOP ili pješake,
06:05
bicyclesbicikli in a self-drivingself-vožnje vehiclevozilo,
120
353360
1976
bicikle u autonomnim vozilima,
06:07
can be used to find cancerRak cellsStanice
121
355360
2856
može se koristiti
kako bi pronašli stanice raka
06:10
in a tissuetkivo biopsyBiopsija.
122
358240
3016
u biopsiji tkiva.
06:13
And there are researchersistraživači around the globeGlobus
alreadyveć usingkoristeći this technologytehnologija
123
361280
4040
A znanstvenici diljem svijeta već
koriste ovu tehnologiju
06:18
for advancesnapredak in things
like medicinelijek, roboticsRobotika.
124
366240
3416
za napredak u medicini, robotici.
06:21
This morningjutro, I readčitati a paperpapir
125
369680
1376
Jutros sam pročitao članak
06:23
where they were takinguzimanje a censuspopis
of animalsživotinje in NairobiNairobi NationalNacionalne ParkPark
126
371080
4576
o popisu životinja u
Nacionalnom parku Nairobi
06:27
with YOLOYOLO as partdio
of this detectionotkrivanje systemsistem.
127
375680
3136
koristeći YOLO u sustavu detekcije.
06:30
And that's because DarknetDarknet is openotvoren sourceizvor
128
378840
3096
A to je zato što je Darknet open source,
06:33
and in the publicjavnost domaindomena,
freebesplatno for anyonebilo tko to use.
129
381960
2520
u javnoj domeni, besplatan
svakomu za korištenje.
06:37
(ApplausePljesak)
130
385600
5696
(Pljesak)
06:43
But we wanted to make detectionotkrivanje
even more accessibledostupan and usablekorisna,
131
391320
4936
No, željeli smo napraviti detekciju
još dostupnijom i korisnijom
06:48
so throughkroz a combinationkombinacija
of modelmodel optimizationOptimizacija,
132
396280
4056
pa smo kombinacijom optimizacije modela,
06:52
networkmreža binarization. binarization and approximationaproksimacija,
133
400360
2296
binarizacije mreže i aproksimacije
06:54
we actuallyzapravo have objectobjekt detectionotkrivanje
runningtrčanje on a phonetelefon.
134
402680
3920
dobili detekciju objekata
koja radi na mobitelu.
07:04
(ApplausePljesak)
135
412800
5320
(Pljesak)
07:10
And I'm really exciteduzbuđen because
now we have a prettyprilično powerfulsnažan solutionriješenje
136
418960
5056
A ja sam stvarno uzbuđen
jer sada imamo moćno rješenje
07:16
to this low-levelniske razine computerračunalo visionvizija problemproblem,
137
424040
2296
problema računalnog vida
na osnovnoj razini,
07:18
and anyonebilo tko can take it
and buildizgraditi something with it.
138
426360
3856
i svatko ga može uzeti
i graditi nešto njime.
07:22
So now the restodmor is up to all of you
139
430240
3176
Sad je sve ostalo do vas
07:25
and people around the worldsvijet
with accesspristup to this softwaresoftver,
140
433440
2936
i ljudi diljem svijeta
s pristupom tom softveru,
07:28
and I can't wait to see what people
will buildizgraditi with this technologytehnologija.
141
436400
3656
jedva čekam vidjeti što će
ljudi učiniti s ovom tehnologijom.
07:32
Thank you.
142
440080
1216
Hvala vam.
(Pljesak)
07:33
(ApplausePljesak)
143
441320
3440
Translated by Ivan Nekić
Reviewed by Sanda Liker

▲Back to top

ABOUT THE SPEAKER
Joseph Redmon - Computer scientist
Joseph Redmon works on the YOLO algorithm, which combines the simple face detection of your phone camera with a cloud-based AI -- in real time.

Why you should listen

Computer scientist Joseph Redmon is working on the YOLO (You Only Look Once) algorithm, which has a simple goal: to deliver image recognition and object detection at a speed that would seem science-fictional only a few years ago. The algorithm looks like the simple face detection of a camera app but with the level complexity of systems like Google's Deep Mind Cloud Vision, using Convolutional Deep Neural Networks to crunch object detection in realtime. It's the kind of technology that will be embedded on all smartphones in the next few years.

Redmon is also internet-famous for his resume.

More profile about the speaker
Joseph Redmon | Speaker | TED.com