This video is about how I built a deep reinforcement learning based visual maze solving networkusing Keras. This is a followup to my second live stream (linked below) where I tried doing this and ran into some issues. I explain the whole system is detail and specifically go over a lot of the mistakes I made that others are likely to make as well.
Code Repo: https://github.com/safijari/jack-of-some-rl-journey
Slides from David Silver's Excellent Tutorial: https://icml.cc/2016/tutorials/deep_rl_tutorial.pdf
Paper referenced: https://arxiv.org/pdf/1509.06461.pdf
SOME OF MY OTHER VIDOES:
○ Deep RL Stream: https://www.youtube.com/watch?v=psDlXfbe6ok
○ Vanilla Q Learning Stream: https://www.youtube.com/watch?v=psDlXfbe6ok
○ Explaining RL to a baby: https://www.youtube.com/watch?v=GFIKtFSl1XQ
○ 5 Common Python Mistakes: https://www.youtube.com/watch?v=fMRzuwlqfzs
○ Making Python fast: https://www.youtube.com/watch?v=XW32lPcWOxg
Twitter: twitter.com/safijari
Patreon: https://www.patreon.com/jackofsome
...
https://www.youtube.com/watch?v=JwG6J-MHFfY
In this video I describe the installation, configuration, and usage of my primary text editor: Spacemacs (http://spacemacs.org/). This editor is a kit for the venerable Emacs text editor and is very suitable for programming, especially when dealing with large complex code bases.
Disclaimer: This tutorial assumes you know the basics of navigating code in Vim. If you do not, consider watching a video on the subject (this video https://www.youtube.com/watch?v=lxET5r3Xc3g is pretty good).
Note: it was pointed out to me that I forgot to go over how to create a new file. You can do it vim style ( :e filepath ) or if you try to visit a non existing file in the SPC f f menu it'll create a new file for you.
Emacs installation in ...
Ubuntu: https://bit.ly/2UXsAr4
Mac OS: https://bit.ly/2GOcNCi
Windows: https://bit.ly/2PAlqmF
Twitter: https://twitter.com/safijari
Laser Groove Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0 License
http://creativecommons.org/licenses/by/3.0/
Thumbnail from: https://spin.atomicobject.com/2016/08/30/introduction-to-spacemacs/
...
https://www.youtube.com/watch?v=fdLCuJcS2Aw
Post Editing Notes:
1. `spc spc` and then `workon` to find the command for switching virtualenvs. It's not clear in the video. Apologies for that.
2. the packages I install are flake8 isort yapf python-language-server
In this video I cover the absolute minimum setup for doing Python development in Spacemacs.
- I start off with a discussion of Python virtualenvs and how to get them set up correctly for Spacemacs.
- Then a discussion of code completion.
- Afterwards I show how to explore and fix issues found by a linter (flake8)
- And then go over how to run scripts from inside emacs.
- Finally I demonstrate a language server based completion backend.
Twitter: https://twitter.com/safijari
Channel github: https://github.com/safijari/jack-of-some/projects/1
Thumbnail Background by Dave on Upsplash: https://unsplash.com/@johnwestrock
#spacemacs #python #development
...
https://www.youtube.com/watch?v=r-BHx7VNX5s
I demonstrate how to learn a new programming language by teaching myself Julia. This is a long video so I suggest chunking your view time and using the following links to navigate.
00:45 List of Topics
04:40 Installation/toolchain
10:15 Basic Syntax
20:54 Arrays/Lists
27:50 Tuples
29:20 Dictionaries/Sets
32:41 Control flow (if/else)
33:22 Loops
35:47 Functions (+ first class)
42:00 Types, Structs
52:00 Package Management (Pkg)
55:30 Notebooks, plotting, deployment
1:01:00 Macros
1:03:23 Threading
1:05:30 Spring mass damper example (more threading)
1:17:36 Concluding thoughts
Twitter: https://twitter.com/safijari
#julia #programming #learning
...
https://www.youtube.com/watch?v=TNoShNPoEak
In this video I introduce Numba which can make your python code 100x faster. Numba is a just in time compiler for a subset of Python and Numpy. The first half of the video is dedicated to a basic intro and to highlighting a number of very common mistakes people make when using Numba. The remaining video show how to use Numba in a real world-ish simulation problem and shows the code running 1000x faster with Numba in both single and multithreaded cases, and concludes with a "reading list" for learning more about Numba.
Twitter: https://twitter.com/safijari
Find the notebook here: https://gist.github.com/safijari/fa4eba922cea19b3bc6a693fe2a97af7
MY OTHER VIDOES:
○ A.I. Learns to play Snake https://www.youtube.com/watch?v=i0Pkgtbh1xw
○ 5 Common Python Mistakes: https://www.youtube.com/watch?v=fMRzuwlqfzs
○ 5 Amazing Python Libraries: https://www.youtube.com/watch?v=eILeIEE3C8c
○ Making Python fast: https://www.youtube.com/watch?v=XW32lPcWOxg
○ Learning programming language Julia: https://www.youtube.com/watch?v=TNoShNPoEak
Deeper topics to discover here
https://numba.pydata.org/numba-doc/dev/user/5minguide.html#other-things-of-interest
Supported python and numpy features
https://numba.pydata.org/numba-doc/dev/reference/pysupported.html
https://numba.pydata.org/numba-doc/dev/reference/numpysupported.html
Important differences from python https://numba.pydata.org/numba-doc/dev/reference/pysemantics.html
Defining types to compile at definition time: http://numba.pydata.org/numba-doc/latest/user/jit.html#eager-compilation
Function factories https://numba.pydata.org/numba-doc/dev/user/generated-jit.html
Experimental version of jitted classes https://numba.pydata.org/numba-doc/dev/user/jitclass.html
Debugging https://numba.pydata.org/numba-doc/dev/user/troubleshoot.html
Dealing with types https://numba.pydata.org/numba-doc/dev/reference/types.html
Ahead of time compilation for deployment https://numba.pydata.org/numba-doc/dev/user/pycc.html
Using approximate fastmath https://numba.pydata.org/numba-doc/dev/user/performance-tips.html#fastmath
Deeper control of threading via tbb and/or omp https://numba.pydata.org/numba-doc/dev/user/threading-layer.html
Easily put your computation on a GPU!
https://numba.pydata.org/numba-doc/dev/cuda/index.html
https://numba.pydata.org/numba-doc/dev/roc/index.html
F.A.Qs https://numba.pydata.org/numba-doc/dev/user/faq.html
#numba #programming #python
...
https://www.youtube.com/watch?v=x58W9A2lnQc
In part two of my DQN series we will focus on optimizations. I will put the model and training onto my GPU, we will make a replay buffer that will no longer do any order N operations whereby increasing the speed of sampling, and finally go through some hyperparameter tuning for the cartpole problem.
1:00 Discussion of Stream goals
5:30 Putting network and parameters on GPU, some tuning
21:40 Speeding up replay buffer
37:41 Messing around with the breakout environment as cartpole trains in the background
49:00 A discussion of frame stacking for breakout
57:00 Making a frame stacking wrapper for a gym environment
1:12:00 Checking in on cartpole training, more fiddling with params
1:31:00 Testing breakout wrapper
MY OTHER VIDOES:
○ A.I. Learns to play Snake https://www.youtube.com/watch?v=i0Pkgtbh1xw
○ Explaining RL to a baby: https://www.youtube.com/watch?v=GFIKtFSl1XQ
○ 5 Common Python Mistakes: https://www.youtube.com/watch?v=fMRzuwlqfzs
○ Learning programming language Julia: https://www.youtube.com/watch?v=TNoShNPoEak
○ Making Python fast: https://www.youtube.com/watch?v=XW32lPcWOxg
Twitter: https://twitter.com/safijari
Patreon: https://www.patreon.com/jackofsome
#pytorch #deeplearning #machinelearning
...
https://www.youtube.com/watch?v=WVBp4Cj2lXo
#python #cplusplus
You voted, so here it is. I tried to condense everything you might need to know to get going with writing Python interfaces to C++ code. The breakdown is
0:00 Intro
0:39 Absolute minimum example
2:28 Exploration of generated module
3:25 Classes
4:49 STL containers, Python types
6:20 Numpy support
7:24 Properties
8:00 The GIL
All the code for this can be found here: https://gist.github.com/safijari/f7aec85b89906b4b90a8f33039c11263
Join the subreddit at reddit.com/r/JackOfSome
...
https://www.youtube.com/watch?v=_5T70cAXDJ0
This is the first video in a series I'm calling "Absolute Minimum". I go over what I consider to be the minimum amount of knowledge you need to work with Org mode in Spacemacs.
Prerequisite: Basics of Spacemacs https://www.youtube.com/watch?v=fdLCuJcS2Aw
Final Org File: https://gist.github.com/safijari/d9b1ed8a3f4cd10e632e04353c6abdfe
Orgmode Website: https://orgmode.org/
Orgmode Spacemacs Documentation: http://spacemacs.org/layers/+emacs/org/README.html
Twitter: https://twitter.com/safijari
Laser Groove Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0 License
http://creativecommons.org/licenses/by/3.0/
...
https://www.youtube.com/watch?v=S4f-GUxu3CY
So this is a bit random (and not a video about python packaging, sorry). I've wanted to make this for a while and it was a good case study for the new editing software I just bought (I don't like it so far). Hope it's useful to someone.
...
https://www.youtube.com/watch?v=KrS94hG4VU0