Skip to main content

Blog

Learn About Our Meetup

5000+ Members

MEETUPS

LEARN, CONNECT, SHARE

Join our meetup, learn, connect, share, and get to know your Toronto AI community. 

JOB POSTINGS

INDEED POSTINGS

Browse through the latest deep learning, ai, machine learning postings from Indeed for the GTA.

CONTACT

CONNECT WITH US

Are you looking to sponsor space, be a speaker, or volunteer, feel free to give us a shout.

Author: torontoai

[D] A 2019 guide to 3D Human Pose Estimation

Human Pose estimation is an important problem that has enjoyed the attention of the Computer Vision community for the past few decades. It is an important step towards understanding people in images and videos. This post covers the basics of 3D Human Pose Estimation and reviews the literature on the topic.

Article Link: https://blog.nanonets.com/human-pose-estimation-3d-guide/

submitted by /u/cbsudux
[link] [comments]

[D] Chris Lattner: Compilers, Swift, TPU, and ML Accelerators | Artificial Intelligence Podcast

[D] Chris Lattner: Compilers, Swift, TPU, and ML Accelerators | Artificial Intelligence Podcast

Chris Lattner is a senior director at Google working on several projects including CPU, GPU, TPU accelerators for TensorFlow, Swift for TensorFlow, and all kinds of machine learning compiler magic going on behind the scenes. He is one of the top experts in the world on compiler technologies, which means he deeply understands the intricacies of how hardware and software come together to create efficient code. He created the LLVM compiler infrastructure project and the CLang compiler. He led major engineering efforts at Apple, including the creation of the Swift programming language. He also briefly spent time at Tesla as VP of Autopilot Software during the transition from Autopilot hardware 1 to hardware 2, when Tesla essentially started from scratch to build an in-house software infrastructure for Autopilot.

Video: https://www.youtube.com/watch?v=yCd3CzGSte8

https://i.redd.it/avi1bwpo70y21.png

Outline:

0:00 – Introduction

1:30 – First program, BASIC, Pascal, C

4:20 – Compilers, LLVM, CLang

37:30 – Apple – LLVM, Objective-C, Swift

45:30 – Google – Swift, Swift for TensorFlow, compilers, Colab

57:32 – TPU & TensorFlow, hardware/software co-design

1:00:30 – MLIR (Multi-Level Intermediate Representation) framework

1:02:40 – Open sourcing of TensorFlow

1:05:10 – Tesla – transition from HW1 to HW2

1:07:24 – Elon Musk and time at Tesla

1:08:45 – Working hard

1:10:40 – Dragons

submitted by /u/UltraMarathonMan
[link] [comments]

[D] Why does deep reinforcement learning not generalize?

Multiple groups agree on this issue:

“Assessing Generalization in Deep Reinforcement Learning” https://bair.berkeley.edu/blog/2019/03/18/rl-generalization/

We present a benchmark for studying generalization in deep reinforcement learning (RL). Systematic empirical evaluation shows that vanilla deep RL algorithms generalize better than specialized deep RL algorithms designed specifically for generalization. In other words, simply training on varied environments is so far the most effective strategy for generalization.

“Quantifying Generalization in Reinforcement Learning” https://openai.com/blog/quantifying-generalization-in-reinforcement-learning/

Generalizing between tasks remains difficult for state of the art deep reinforcement learning (RL) algorithms. Although trained agents can solve complex tasks, they struggle to transfer their experience to new environments. Even though people know that RL agents tend to overfit — that is, to latch onto the specifics of their environment rather than learn generalizable skills — RL agents are still benchmarked by evaluating on the environments they trained on. This would be like testing on your training set in supervised learning!

Why is this issue specific to deep RL? Is it just simply the evaluation metrics the field has been using (training on the test set)?

submitted by /u/FirstTimeResearcher
[link] [comments]

[D] Is the new Snapchat gender filter GAN-based?

I originally figured it was just some landmark-based filtering/graphics tricks like most of the other filters, but looking at people’s selfies a bit closer, there seem to be a lot of GAN-like generative artifacts (especially in the hair) that I feel wouldn’t be there if it is just a graphics effect:

https://twitter.com/Midbeast/status/1126769681312862208

If it is a GAN, I have no idea how they would do it in real time, though. Thoughts?

submitted by /u/aDutchofMuch
[link] [comments]

[D] Dynamic density estimation: looking for literature

Hi,

Suppose we want to estimate the distribution of entities in one dimension x and how the distribution evolves over time. For the sake of example the dimension can represent the spatial position of the entities, e.g. in east-west direction. Unfortunately the entities do not have identifiers, so we can not tell if two measurements x_1 and x_2 belong to the same entity or not if they arrive at different times.

The observability of the entities is limited which means that current x positions are not known at all times. Measurements of x arrive with varying temporal density. Thus, binning by time would lead to some time bins having few, others having a lot of data points.

If we assume that the total number fof entities is constant, how could we estimate the distribution over x, given t, in such a way that the temporal density is accounted for? I’d imagine a system where measurements in times of low density have a longer time-to-live, i.e. contribute to the density estimation for longer times compared to times when a lot of measurements arrive.

Is this a stochastic filtering problem? I’d be grateful for any hints what papers or textbook chapters to read to understand this issue better. My experience in the field is mostly limited to classification and regression with only limited exposure to density estimation and unsupervised learning. So, apologies if the question is trivial, I currently just don’t know where to start reading.

Thanks!

submitted by /u/kaivalya
[link] [comments]

[Discussion] Poll on useful algos Python packages are lacking in

Hey Redditors!

I maintained HyperLearn ( https://github.com/danielhanchen/hyperlearn Faster ML algos on Python ), but from Feb – May I was a bit busy with uni + work. But since stuff has calmed down, I was just asking everyone here on what fast and useful ML algos people would like to see, where maybe other packages lack in.

My main aims for HyperLearn are:

  1. Delete all C/C++ dependencies, and rely solely on Numba + Scipy LAPACK.
  2. Focus on specific algos that are extremely relevant.

And on algos, I wanted to focus on:

a. Randomized + Dense PCA on Sparse Matrices (without converting sparse to dense). decomposition.PCA [people tend to use pure SVD, but it “can” have different results than without removing mean”]

b. Porting Eigendecomposition via MRRR for the top K eigenvectors. [Scipy still hasn’t..] decomposition.EIGH

c. Fixing all memory copies for SVD, and support Randomized SVD on sparse matrices. decomposition.SVD

d. Fix up LinearSolve and place it into 1 module with LSMR (super fast sparse solve), combine with Cholesky, SVD, Eig, etc solving + Ridge. linear_model.solve

e. And finally, introduce a Python only modified version of Spotify’s ANNOY library (a limited nearest neighbor KD-Tree based on other heuristics I found to be useful).

I’m just “guessing” the top 5 seem useful, as I myself have had many issues / struggles with other package algos. I’m aiming to make the final package easily installable with only Scipy + Numba as it’s prereqs (no more C/C++).

If anyone else has opinions on what algos people want to see, but current packages lack in, please do! [Notice my field of knowledge is also limited….] If you want to help, PLEASEEE MSG me!!! I wantttt help!

Finally, check out NVIDIA’s cuML https://github.com/rapidsai/cuml ! I’m part of their team making GPU algos super fast! For eg – UMAP runs in 2 minutes or so vs 15 minutes for Fashion MNIST.

Thanks!!! 🙂

**PS Interesting find – If you decorrelate your data / apply whitening / cholesky whitening, it can *sometimes improve your neural net training!

submitted by /u/danielhanchen
[link] [comments]

Large-Scale Long-Tailed Recognition in an Open World

Existing Computer Vision Setting v.s. Real-World Scenario

One day, an ecologist came to us. He wanted to use modern computer vision
techniques to perform automatic animal identification in his wildlife camera
trap image datasets. We were so confident because it sounded just like a basic
image classification problem. However, we failed. The dataset he provided was
extremely long-tailed and open-ended. As usual, when we did not have enough
training data, we asked if it was possible to provide more data for the tail
classes and just ignore the open classes that might appear in the testing
dataset. Unfortunately, collecting more data was not the option. It could take
an extremely long time for these ecologists to take photos of rare and secluded
animals in the wild. For some endangered animals, they even had to wait for
years for one single shot. At the same time, new animal species kept coming in,
and old animal species kept leaving. The total class number was never fixed in
such a dynamic system. Moreover, the identification of rare and new animals has
more conservational values than abundant animals. If we could only do well on
the abundant classes, the method would never be practically usable. We tried
all possible methods we could think of (data augmentation, sampling techniques,
few-shot learning, imbalanced classification, etc.); but none of the existing
methods could handle abundant classes, scarce classes and open classes at the
same time (Fig. 1).



Figure 1: There exists a considerable gap between the existing computer vision
setting and the real-world scenario.

Continue reading