Tuesday, October 11, 2016

Hugo Larochelle's neural network & deep learning tutorial videos, subtitled & screengrabbed

Like a lot of data scientists (I consider myself more of a data spelunker, but I aspire to data science), I try my best to keep up with the latest discoveries in a very fast-changing field; and probably nothing has been as game-changing as the advent of deep learning.

Deep Learning, explained to a five-year-old (okay, maybe fifteen-year-old): Data science been really good for a while now at data that can be explained in Excel spreadsheets, i.e. columns and rows: one row per observation, one column per variable. This is called structured data. Deep Learning allows us to create rows of column variables that describe a representation of unstructured data, like images or text. It's as if you had an automatic algorithm that could look through all your images, and create one column based on the likelihood the image contains a cat, another the likelihood it contains a shovel -- without having to tell the algorithm what a cat or shovel is, or what they look like, or determine that there are cats and shovels at all before running the algorithm.
Deep Learning is rather math-intensive, and involves neural networks, a family of algorithms that's been around for a long time but has now come into its own. Unlike some skills, you can't learn it as a black box and then slowly come to understand it as you use it. There are foundations you need to acquire; tutorials you need to absorb.

I live in Montreal, which recently hosted its annual Deep Learning Summer School; I couldn`t attend, but I heard great things about the lecture by Université de Sherbrooke's Hugo Larochelle.

There's just one thing; I hate listening to videos. It's why I don't take Coursera classes now that I only have a short commute to work every day. I need to learn at my own pace. And I prefer to read.

So when I realized Larochelle's lecture was based on a series of 92 videos on his YouTube channel, I wrote a Python script to add a black bar beneath them, burn subtitles into it, and take screenshots of every subtitle slide and make a pdf out of it so I can read them. I like to read.

Here's an example screenshot:


I'm sharing the fruits of my labor with you here: Videos with subtitles, pdfs of subtitled screenshots, and Python code I used to make them.



Hugo Larochelle neural network lecture videos
& pdfs with subtitles


These are zip files of subtitled videos and pdfs of screenshots made from Hugo Larochelle's (University of Sherbrooke) YouTube playlist of 92 videos in 10 parts on neural networks.


Videos with subtitles:

  1. Subtitled MP4s for Part 01, Feedforward neural networks [zip, 108.5 MB]
  2. Subtitled MP4s for Part 02, Training neural networks [zip, 238.6 MB]
  3. Subtitled MP4s for Part 03, Conditional random fields [zip, 250.2 MB]
  4. Subtitled MP4s for Part 04, Training CRFs [zip, 106.6 MB]
  5. Subtitled MP4s for Part 05, Restricted Boltzmann Machine [zip, 169.1 MB]
  6. Subtitled MP4s for Part 06, Autoencoder [zip, 136.8 MB]
  7. Subtitled MP4s for Part 07, Deep Learning [zip, 226.8 MB]
  8. Subtitled MP4s for Part 08, Sparse coding [zip, 152.8 MB]
  9. Subtitled MP4s for Part 09, Computer vision [zip, 191.4 MB]
  10. Subtitled MP4s for Part 10, Natural Language Processing [zip, 289.5 MB]


PDFs of screenshots:

  1. PDFs for Part 01, Feedforward neural networks [zip, 120.9 MB]
  2. PDFs for Part 02, Training neural networks [zip, 287.0 MB]
  3. PDFs for Part 03, Conditional random fields [zip, 284.2 MB]
  4. PDFs for Part 04, Training CRFs [zip, 132.7 MB]
  5. PDFs for Part 05, Restricted Boltzmann Machine [zip, 189.8 MB]
  6. PDFs for Part 06, Autoencoder [zip, 161.1 MB]
  7. PDFs for Part 07, Deep Learning [zip, 307.9 MB]
  8. PDFs for Part 08, Sparse coding [zip, 200.9 MB]
  9. PDFs for Part 09, Computer vision [zip, 239.8 MB]
  10. PDFs for Part 10, Natural Language Processing [zip, 371.6 MB]



In a Python script (which you can see here: Part 1, Part 2), I:
  • used requests and BeautifulSoup to parse the YouTube playlist;
  • used youtube-dl to download the videos and WEBVTT subtitles;
  • used pycaption to convert subtitles to SRT format;
  • used ffmpeg (from a subprocess call) to add a black letterbox below each video, burn the subtitles into that box and then save png screenshots wherever there was a new subtitle line;
  • used imagemagick to bundle pngs into pdfs;
  • used zipfile to zip similar files together and deleted the originals.



I'm David Taylor, aka prooffreader. About me


• • •

30 comments:

  1. Wow thank you this is fantastic

    ReplyDelete
    Replies
    1. I'm a fan of your blog and as always I liked the post. Please keep us updated as we love your blog. noyasystem

      Delete
  2. Wow thank you this is fantastic

    ReplyDelete
  3. Thanks a lot for this initiative!!

    ReplyDelete
  4. I just see the post i am so happy to the communication science post of information's.So I have really enjoyed and reading
    your blogs for these posts.Any way I’ll be replay for your great thinks and I hope you post again soon...
    SEO Company in Chennai

    ReplyDelete
  5. Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates
    with excellent care and we take your comments to heart.As always, we appreciate your confidence and trust in us
    SEO Company in India
    Digital Marketing Company in India

    ReplyDelete
  6. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.

    Best Dental Clinic in Chennai | Best Dentists in Chennai | Dental Hospital in chennai

    ReplyDelete
  7. This blog is having the general information. Got a creative work and this is very different one.We have todevelop our creativity mind.This blog helps for this. Thank you for this blog. This is very interesting and useful...
    Best Dental Clinic In Ashoknagar

    ReplyDelete
  8. Excellent and very cool idea and the subject at the top of magnificence and I am happy to this post..Interesting post! Thanks for writing it.What's wrong with this kind of post exactly? It follows your previous guideline for post length as well as clarity..
    Android Training in Chennai

    ReplyDelete
  9. Great and really helpful article! Adding to the conversation, providing more information, or expressing a new point of view...Nice information and updates. Really i like it and everyday am visiting your site..
    Interior Decorators in Chennai
    Home Interior Designers in Chennai
    Home Interiors in Chennai

    ReplyDelete

  10. Wonderful blog.. Thanks for sharing informative Post. Its very useful to me.

    Installment loans
    Payday loans
    Title loans

    ReplyDelete
  11. Wonderful bloggers like yourself who would positively reply encouraged me to be more open and engaging in commenting.So know it's helpful.
    Python Training in Chennai

    ReplyDelete
  12. It's interesting that many of the bloggers to helped clarify a few things for me as well as giving.Most of ideas can be nice content.
    Thanks for sharing information.Well, got a good knowledge. seo training institute

    ReplyDelete

  13. This information is impressive; I am inspired with your post writing style & how continuously you describe this topic.


    Pawn Shop

    Pawn Loans

    Pawn Shops

    Pawn Loan

    Pawn Shop near me

    ReplyDelete
  14. Thank you for taking the time and sharing this information with us. It was indeed very helpful and insightful while being straight forward and to the point.
    mcdonaldsgutscheine | startlr | saludlimpia

    ReplyDelete
  15. I read the post and I have really enjoyed your blogs posts.looking for the next post.
    Digital Marketing Training In Bangalore.

    ReplyDelete
  16. https://edshow.ir/طراحی-و-راه-اندازی-سایت-در-تبریز/

    ReplyDelete
  17. You have undoubtedly done a very great job Content URL which is visible from the results that you provided for us in this article.

    ReplyDelete
  18. Thank You very very nice

    وردپرس فارسی - وردپرس - قالب وردپرس - افزونه وردپرس - پشتیبانی وردپرس

    فروشگاه اینترنتی - فروشگاه اینترنتی - فروشگاه آنلاین

    سایت اپل - سایت آیفون - سایت آیپد

    جستجو گر - جستجوگر - فوچ

    سرویس وبلاگدهی - وبلاگدهی - وبلاگدهی وردپرس

    ردیاب - ردیاب خودرو - ردیاب شخصی

    فروشگاه - فروشگاه آنلاین - ردیاب شخصی زدکا

    مجله اینترنتی - مجله آنلاین - مجله اینترنتی 

    ReplyDelete
  19. Wow, absolutely fantastic blog. I am very glad to have such useful information.

    ดูหนังออนไลน์

    ReplyDelete
  20. It's a very nice post thank you for sharing this post.
    Best IT Training in Bangalore

    ReplyDelete