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

[R] Capacitron: Effective Use of Variational Embedding Capacity in Expressive End-to-End Speech Synthesis

Paper: https://arxiv.org/abs/1906.03402

Audio Examples: https://google.github.io/tacotron/publications/capacitron (best consumed in conjunction with reading the paper).

Capacitron is the Tacotron team’s most recent contribution to the world of expressive end-to-end speech synthesis (e.g., transfer and control of prosody and speaking style). Our previous Style Tokens and prosody transfer work implicitly controls reference embedding capacity by modifying the encoder architecture, thereby targeting a trade-off between text-specific transfer fidelity and text-agnostic style generality. Capacitron treats embedding capacity as a first class citizen by targeting a specific value for the representational mutual information via a variational information bottleneck.

We also show that by modifying the stochastic reference encoder to match the form of the true latent posterior, we can achieve high-fidelity prosody transfer, text-agnostic style transfer, and natural-sounding prior samples in the same model. The modified encoder also addresses the pitch range preservation problems we observed during inter-speaker transfer in our past work.

Lastly, we show the capacity of the embedding can be decomposed hierarchically, allowing us to control the amount of sample-to-sample variation for transfer use cases.

To appreciate the results fully, we recommend listening to the audio examples in conjunction with reading the paper.

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

[P] apricot: submodular selection for machine learning in Python

Hello everyone!

I just posted a preprint of our overview of apricot, a Python package that implements submodular selection for machine learning. You can find it here: https://arxiv.org/abs/1906.03543

While submodular optimization is a very broad field, when applied to large data sets it can be used to select representative subsets that are useful for training machine learning models. Because these subsets are selected specifically to be non-redundant, you can frequent get comparable model accuracy with only a small fraction of the number of examples. A natural application of submodular selection in this setting is to remove correlated examples. For example, when applied to a video, submodular selection will frequently select frames that capture very different scenes.

I’ve worked hard to make apricot both easy to use and very fast. It has the API of a scikit-learn transformer, meaning that it can be dropped in to most current ML pipelines (including the literal sklearn pipeline object!) and can summarize massive data sets in only a few minutes.

The GitHub repo is here: https://github.com/jmschrei/apricot You can get it using pip install apricot-select.

I give an overview of some of the major features with some pretty pictures in this thread here: https://twitter.com/jmschreiber91/status/1138286268503085056 Would love to get any feedback.

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

[P] Tensorflow implementation of WaveGlow with VQVAE

code and samples: https://github.com/jaywalnut310/waveglow-vqvae

Hi, I am newbie in here.

Anyway, I am currently working on combining VQVAE and WaveGlow.

WaveGlow is a great model to synthesize speech in a parallel way.

VQVAE is known to good at disentangling speaker identity and linguistic features from raw audio.

As I want to make an efficient multi-speaker voice synthesizer, I have been trying combining those two models.

There are a lot of remaining works though.

So far, What I found from my implementation is

– For single speaker, it works quite well

– For multi speakers, it doesn’t seem to disentangle speaker identity and linguistic features.

I am trying to solve this issue at now, So if you have any idea, please let me know.

Additionally I slightly modified pure VQVAE method with Soft-EM like gradient descent method.

For now, it seems work quite well avoiding hyper parameter tuning and index collapse.

For more information, please see my repository

and if you’re interested, please give me critic comments !

submitted by /u/jaywalnut-310
[link] [comments]

[R] BlockSwap: Fisher guided block substitution for network compression

[R] BlockSwap: Fisher guided block substitution for network compression

Many networks are composed of blocks. For compression, Moonshine [1] proposed substituting all blocks for a single type of substitute. We propose a method (BlockSwap) for choosing mixed block-type configurations.

Paper: https://arxiv.org/abs/1906.04113

PyTorch Code: https://github.com/BayesWatch/pytorch-blockswap

TL;DR: Compress overparameterised networks using Fisher information to rank randomly proposed alternatives.

Abstract:

The desire to run neural networks on low-capacity edge devices has led to the development of a wealth of compression techniques. Moonshine is a simple and powerful example of this: one takes a large pre-trained network and substitutes each of its convolutional blocks with a selected cheap alternative block, then distills the resultant network with the original. However, not all blocks are created equally; for a required parameter budget there may exist a potent combination of many different cheap blocks. In this work, we find these by developing BlockSwap: an algorithm for choosing networks with interleaved block types by passing a single minibatch of training data through randomly initialised networks and gauging their Fisher potential. We show that block-wise cheapening yields more accurate networks than single block-type networks across a spectrum of parameter budgets.

[1] Crowley, Elliot J., Gavin Gray, and Amos J. Storkey. “Moonshine: Distilling with cheap convolutions.” Advances in Neural Information Processing Systems. 2018.

submitted by /u/jw-turner
[link] [comments]

Lyft Data Science Interview Questions

As of January 2018, Lyft could count 23 million users.

Lyft currently offers services in 350 US cities, and Toronto and Ottawa in Canada. It was launched in 2012, as a part of long-distance car-pooling business Zimride — the largest such app in the US (named for transportation culture in Zimbabwe). It was renamed as Lyft later. Launched in Silicon Valley, Lyft spread from 60 US cities in April 2014 to 300 in January 2017, to 350 today — plus the two aforementioned Canadian cities. With 350 cities, millions of users and billions of rides the data generated at Lyft is huge. The product achieves economies of scale deploying Data Science. Hence, data science is a core part of the product and not just an added feature.

Photo by Austin Distel on Unsplash

Interview Process

The interview process starts with a phone interview with a Data Scientist. It is around an in depth conversation about your resume and past projects. That interview is followed by a take home test which is usually around a ride sharing data set. As part of the take home test, there is a presentation which has to be created for the onsite interview. The onsite interview consists of 4–5 interviews. One of those is presentation of the take home test. It also includes a SQL test, stats and probability and business case. There is a final core values interview to know if you fit within the Lyft culture. The interview is challenge but the reward when you clear the interview is totally worth it.

Important Reading

Source: From shallow to deep learning in fraud

Data Science Related Interview Questions

  • Find expectations of a random variable with basic distribution. How would you construct a confidence interval? How would you estimate a probability of ordering a ride? What assumptions do you need in order to estimate this probability?
  • What optimization techniques are you familiar with and how do they work? How would you find the optimal price given a linear demand function?
  • Coin got x heads during y flips. How can we test if this is a fair coin?
  • What are some metrics for monitoring supply and demand in Lyft market?
  • Explain correlation and variance.
  • What is the lifetime value of a driver?
  • Implement k nearest neighbour using a quad tree.
  • What are the different factors that could influence a rise in average wait time of a driver?
  • Explain what are the best ways to achieve pool matching?
  • How do you reduce churn on the supply side?

Reflecting on the Questions

The Data Science team at Lyft moves very quickly. The Data sets are huge and problems so wide in nature that the team explores different types of models which can provide higher precision for same recall and feature set. The questions reflect the tough problems which the team faces day to day. There is a mix of model building along with complex coding questions. As I mentioned before the interviews are tough but they are well worth it for getting to work in an excellent team. Hard work can surely get you a job in one of the world’s largest transportation companies!

Subscribe to our Acing AI newsletter, I promise not to spam and its FREE!

Acing AI Newsletter – Revue

Thanks for reading! 😊 If you enjoyed it, test how many times can you hit 👏 in 5 seconds. It’s great cardio for your fingers AND will help other people see the story.

The sole motivation of this blog article is to learn about Lyft and its technologies helping people to get into it. All data is sourced from online public sources. I aim to make this a living document, so any updates and suggested changes can always be included. Please provide relevant feedback.


Lyft Data Science Interview Questions was originally published in Acing AI on Medium, where people are continuing the conversation by highlighting and responding to this story.

[R] Stupid question about training/test data to check feature importance.

Hi, I’m fairly new to this and planning on using random forests to try and see which variables most affect the outcome of another variable.

In this case, I can’t exactly see what the training data would be used for.

https://towardsdatascience.com/explaining-feature-importance-by-example-of-a-random-forest-d9166011959e

I don’t really understand what splitting my data would achieve, can someone explain?

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