the computer science
                                behind




Friday, April 16, 2010
Friday, April 16, 2010
Friday, April 16, 2010
how to make video
                         download or upload
                          more efficiently?



Friday, April ...
24
                             hours of
                         video uploaded
                          every minute
  ...
700,000
                           video viewed
                           every minute
                          (october...
700,000 x 480
                         seconds of video viewed
                               per minute




Friday, April...
average 8 minutes


              700,000 x 480
                         seconds of video viewed
                         ...
700,000 x 480
                  x 328
                         kilobits of video served
                                pe...
229 TB
                         of video served
                          per seconds




Friday, April 16, 2010
how to make video
                         download or upload
                          more efficiently?



Friday, April ...
700,000 x 480
                  x 328
                         kilobits of video served
                                pe...
quality




                            bytes / second
Friday, April 16, 2010
better compression
                  quality




                                       bytes / second
Friday, April 16, 2...
how video compression works?




Friday, April 16, 2010
pixel:
                         location (150,40)
                         color (1,129,166)




Friday, April 16, 2010
group into 8x8 pixels




Friday, April 16, 2010
principle: donʼt store details that
                           our eye cannot see (details)




Friday, April 16, 2010
Friday, April 16, 2010
principle: store differences




Friday, April 16, 2010
Friday, April 16, 2010
compression:

                how to store information in
                fewest number of bits

                how to th...
Friday, April 16, 2010
135.4 million
                         US users in January 2010




Friday, April 16, 2010
12.7 billions
                         video watched in January 2010




Friday, April 16, 2010
Web     Internet   viewer
                         server




Friday, April 16, 2010
I want this



                          Web     Internet   viewer
                         server




Friday, April 16, 2...
here it is




                          Web              Internet   viewer
                         server




Friday, Ap...
I want to
                                               share this



                          Web     Internet   viewer...
I want
                                                I want to    watch this
                                           ...
how to support
                         many many viewers
                         and not have them
                     ...
have many many servers

                   Web                                viewer
                 Web                 ...
distribute all over the world
                                           Web
                                          Web...
popular videos are duplicated
                                        Web
                                       Web
     ...
where to put video servers?

                         which video store where?



Friday, April 16, 2010
who has this video?

                         who is closest to the user?



Friday, April 16, 2010
need to adapt to:

                         network condition,
                         popularity of videos



Friday, Ap...
distributed systems

             how multiple computers,
             communicating over a network,
             can achi...
Friday, April 16, 2010
how to identify interesting
                    and informative frame as
                    thumbnail?




              ...
Friday, April 16, 2010
Friday, April 16, 2010
need to understand
                         the content of the video




Friday, April 16, 2010
(0,0):(1,244,39)
                  (0,1):(1,243,38)
                                         is there a
                  ...
is there a
                  (0,0):(1,244,39)
                  (0,1):(1,243,38)
                                         ...
is the scene
                  (0,0):(1,244,39)
                  (0,1):(1,243,38)
                                       ...
Friday, April 16, 2010
need to detect duplicates




Friday, April 16, 2010
but length, size, quality,
                              colors, content
                          may change slightly



...
Friday, April 16, 2010
Friday, April 16, 2010
Friday, April 16, 2010
one possible method:

          compute color histogram for
          each frame




Friday, April 16, 2010
construct sequence of color
          histograms for videos




Friday, April 16, 2010
perform approximate matching




Friday, April 16, 2010
how to do it fast enough?




Friday, April 16, 2010
understanding content is
                also useful for

                detecting inappropriate video
                (e...
multimedia content analysis

        how to reason about the content
        of image, video, and audio?



Friday, April ...
Friday, April 16, 2010
need to predict what
                         a user likes to watch




Friday, April 16, 2010
Observe pattern: many users
       who viewed X, also viewed Y

       if a user is viewing X, the user
       might like ...
Friday, April 16, 2010
Friday, April 16, 2010
Friday, April 16, 2010
Friday, April 16, 2010
Friday, April 16, 2010
User U may like video V if

       there is a short path between U and V
       there are many paths between U and V
     ...
1 Million Dollars Prize
Friday, April 16, 2010
machine learning

        how to recognize pattern and
        learn information from data



Friday, April 16, 2010
Friday, April 16, 2010
each video has many properties:

       who has viewed it
       who likes it
       who commented what about it
        :...
~250,000,000
                         videos on YouTube
                            (my estimate)




Friday, April 16, 20...
need to store, search, retrieve, and
          update metadata about video
          efficiently




Friday, April 16, 2010
database

        how to manage large amount of
        data



Friday, April 16, 2010
compression
                          distributed systems
                         media content analysis
                ...
computational methods to
                                   store
                                  retrieve
             ...
computer science




Friday, April 16, 2010
the computer science
                                behind




Friday, April 16, 2010
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
The Computer Science behind YouTube
Upcoming SlideShare
Loading in …5
×

The Computer Science behind YouTube

1,748 views

Published on

A Talk for High School Students

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,748
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The Computer Science behind YouTube

  1. 1. the computer science behind Friday, April 16, 2010
  2. 2. Friday, April 16, 2010
  3. 3. Friday, April 16, 2010
  4. 4. how to make video download or upload more efficiently? Friday, April 16, 2010
  5. 5. 24 hours of video uploaded every minute (april 2010) Friday, April 16, 2010
  6. 6. 700,000 video viewed every minute (october 2009) Friday, April 16, 2010
  7. 7. 700,000 x 480 seconds of video viewed per minute Friday, April 16, 2010
  8. 8. average 8 minutes 700,000 x 480 seconds of video viewed per minute Friday, April 16, 2010
  9. 9. 700,000 x 480 x 328 kilobits of video served per minute average bitrate Friday, April 16, 2010
  10. 10. 229 TB of video served per seconds Friday, April 16, 2010
  11. 11. how to make video download or upload more efficiently? Friday, April 16, 2010
  12. 12. 700,000 x 480 x 328 kilobits of video served per minute Friday, April 16, 2010
  13. 13. quality bytes / second Friday, April 16, 2010
  14. 14. better compression quality bytes / second Friday, April 16, 2010
  15. 15. how video compression works? Friday, April 16, 2010
  16. 16. pixel: location (150,40) color (1,129,166) Friday, April 16, 2010
  17. 17. group into 8x8 pixels Friday, April 16, 2010
  18. 18. principle: donʼt store details that our eye cannot see (details) Friday, April 16, 2010
  19. 19. Friday, April 16, 2010
  20. 20. principle: store differences Friday, April 16, 2010
  21. 21. Friday, April 16, 2010
  22. 22. compression: how to store information in fewest number of bits how to throw away bits without loosing information Friday, April 16, 2010
  23. 23. Friday, April 16, 2010
  24. 24. 135.4 million US users in January 2010 Friday, April 16, 2010
  25. 25. 12.7 billions video watched in January 2010 Friday, April 16, 2010
  26. 26. Web Internet viewer server Friday, April 16, 2010
  27. 27. I want this Web Internet viewer server Friday, April 16, 2010
  28. 28. here it is Web Internet viewer server Friday, April 16, 2010
  29. 29. I want to share this Web Internet viewer server Friday, April 16, 2010
  30. 30. I want I want to watch this share this viewer to I want viewer viewer this share viewer Web viewer viewer server Internet viewer viewer viewer I want viewer viewer watch this viewer viewer I want to viewer viewer I want share this viewer watch this Friday, April 16, 2010
  31. 31. how to support many many viewers and not have them wait too long? Friday, April 16, 2010
  32. 32. have many many servers Web viewer Web viewer Web server viewer Web server viewer Web server Internet viewer Web server viewer server viewer server viewer viewer viewer viewer viewer viewer viewer Friday, April 16, 2010
  33. 33. distribute all over the world Web Web server viewer server viewer Web viewer Web viewer server Internet viewer server viewer viewer viewer Web viewer Web viewer server viewer server viewer viewer viewer Friday, April 16, 2010
  34. 34. popular videos are duplicated Web Web server viewer server viewer Web viewer Web viewer server Internet viewer server viewer viewer viewer Web viewer Web viewer server viewer server viewer viewer viewer Friday, April 16, 2010
  35. 35. where to put video servers? which video store where? Friday, April 16, 2010
  36. 36. who has this video? who is closest to the user? Friday, April 16, 2010
  37. 37. need to adapt to: network condition, popularity of videos Friday, April 16, 2010
  38. 38. distributed systems how multiple computers, communicating over a network, can achieve a common goal? Friday, April 16, 2010
  39. 39. Friday, April 16, 2010
  40. 40. how to identify interesting and informative frame as thumbnail? frame 1 frame 900 Friday, April 16, 2010
  41. 41. Friday, April 16, 2010
  42. 42. Friday, April 16, 2010
  43. 43. need to understand the content of the video Friday, April 16, 2010
  44. 44. (0,0):(1,244,39) (0,1):(1,243,38) is there a (0,2):(2,243,27) variety in (0,3):(95,34,221) : the colors? : easy Friday, April 16, 2010
  45. 45. is there a (0,0):(1,244,39) (0,1):(1,243,38) face inside? (0,2):(2,243,27) (0,3):(95,34,221) : is it the : same face? doable Friday, April 16, 2010
  46. 46. is the scene (0,0):(1,244,39) (0,1):(1,243,38) an important (0,2):(2,243,27) one, based (0,3):(95,34,221) : on the text : description? very hard Friday, April 16, 2010
  47. 47. Friday, April 16, 2010
  48. 48. need to detect duplicates Friday, April 16, 2010
  49. 49. but length, size, quality, colors, content may change slightly Friday, April 16, 2010
  50. 50. Friday, April 16, 2010
  51. 51. Friday, April 16, 2010
  52. 52. Friday, April 16, 2010
  53. 53. one possible method: compute color histogram for each frame Friday, April 16, 2010
  54. 54. construct sequence of color histograms for videos Friday, April 16, 2010
  55. 55. perform approximate matching Friday, April 16, 2010
  56. 56. how to do it fast enough? Friday, April 16, 2010
  57. 57. understanding content is also useful for detecting inappropriate video (e.g., porn) better search (e.g., find video of sunsets) Friday, April 16, 2010
  58. 58. multimedia content analysis how to reason about the content of image, video, and audio? Friday, April 16, 2010
  59. 59. Friday, April 16, 2010
  60. 60. need to predict what a user likes to watch Friday, April 16, 2010
  61. 61. Observe pattern: many users who viewed X, also viewed Y if a user is viewing X, the user might like Y too. Friday, April 16, 2010
  62. 62. Friday, April 16, 2010
  63. 63. Friday, April 16, 2010
  64. 64. Friday, April 16, 2010
  65. 65. Friday, April 16, 2010
  66. 66. Friday, April 16, 2010
  67. 67. User U may like video V if there is a short path between U and V there are many paths between U and V not going through high-degree nodes Friday, April 16, 2010
  68. 68. 1 Million Dollars Prize Friday, April 16, 2010
  69. 69. machine learning how to recognize pattern and learn information from data Friday, April 16, 2010
  70. 70. Friday, April 16, 2010
  71. 71. each video has many properties: who has viewed it who likes it who commented what about it : Friday, April 16, 2010
  72. 72. ~250,000,000 videos on YouTube (my estimate) Friday, April 16, 2010
  73. 73. need to store, search, retrieve, and update metadata about video efficiently Friday, April 16, 2010
  74. 74. database how to manage large amount of data Friday, April 16, 2010
  75. 75. compression distributed systems media content analysis machine learning database Friday, April 16, 2010
  76. 76. computational methods to store retrieve transmit process display interact with information Friday, April 16, 2010
  77. 77. computer science Friday, April 16, 2010
  78. 78. the computer science behind Friday, April 16, 2010

×