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] Why the Dirichlet as a prior for LDA?

It seems the Dirichlet distribution is pretty ubiquitous in its use as a prior for LDA and other types of topic models. However, in variational inference the Dirichlet doesn’t have a closed form reparameterization. What are the various properties that make the Dirichlet so successful, and are there any other distributions or methods that exhibit these properties without having to use the Dirichlet?

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

[P] LSTM implementation in C for byte level predictions

Hi folks!

I wanted to share a project I have been working on. It is a recurrent neural network that predicts bytes which can be used to mimic e.g. lyrical content (such as books). It uses Adams gradient optimization algorithm and the only requirement for using it is GCC. No third parties, just a bunch of C source files needed to be compiled. I have included some pretrained models that might be fun to play around with.

I hope this can serve as an inspiration to anyone wanting to make their own stuff “from scratch”.

Feel free to come with constructive comments on what I can add/change or any such requests. Have a great Monday!

Here is a link to the GitHub repository:

LSTM implementation (GitHub)

Don’t forget to give the repository a star if you like it, it would be really appreciated!

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

[Project] ig65m-pytorch: PyTorch 3d video classification models pre-trained on over 65 million Instagram videos

https://github.com/moabitcoin/ig65m-pytorch

https://github.com/moabitcoin/ig65m-pytorch/releases

Hey folks, we ported the r(2+1)d video classification model (from CVPR 2018, see https://arxiv.org/abs/1711.11248) and the weights pre-trained by Facebook Research on over 65 million Instagram videos (from CVPR 2019, https://arxiv.org/abs/1905.00561) to PyTorch and released architecture, weights, tools for conversion, and feature extraction example.

The official Facebook Research codebase can be found at https://github.com/facebookresearch/vmz

These models and pre-trained weights are immensly powerful e.g. for fine-tuning on action recognition tasks or extracting features from 3d data such as videos. Think: resnet+imagenet but for videos.

We hope the PyTorch models and weights are useful for folks out there and are easier to use and work with compared to the goal driven, caffe2 based, research’y official code base.

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

Transcribe speech to text in real time using Amazon Transcribe with WebSocket

Amazon Transcribe is an automatic speech recognition (ASR) service that makes it easy for developers to add speech-to-text capability to applications. In November 2018, we added streaming transcriptions over HTTP/2 to Amazon Transcribe. This enabled users to pass a live audio stream to our service and, in return, receive text transcripts in real time. We are excited to share that we recently started supporting real-time transcriptions over the WebSocket protocol. WebSocket support makes streaming speech-to-text through Amazon Transcribe more accessible to a wider user base, especially for those who want to build browser or mobile-based applications.

In this blog post, we assume that you are aware of our streaming transcription service running over HTTP/2, and focus on showing you how to use the real-time offering over WebSocket. However, for reference on using HTTP/2, you can read our previous blog post and tech documentation.

What is WebSocket?

WebSocket is a full-duplex communication protocol built over TCP. The protocol was standardized by the IETF as RFC 6455 in 2011. WebSocket is suitable for long-lived connectivity whereby both the server and the client can transmit data over the same connection at the same time. It is also practical for cross-domain usage. Voila! No need to worry about cross-origin resource sharing (CORS) as there would be when using HTTP.

Using Amazon Transcribe streaming with WebSocket

To use Amazon Transcribe’s StartStreamTranscriptionWebSocket API, you first need to authorize your IAM user to use the Amazon Transcribe Streaming WebSocket. Go to the AWS Management Console, navigate to Identity & Access Management (IAM), and attach the following inline policy to your user in the AWS IAM console. Please refer to “To embed an inline policy for a user or role” for instructions on how to add permissions.

{
    "Version": "2012-10-17",
    "Statement": [
        "Sid": "transcribestreaming",
        "Effect": "Allow",
        "Action": "transcribe:StartStreamTranscriptionWebSocket",
        "Resource": "*"
    ]
}

Your upgrade request should be pre-signed with your AWS credentials using the AWS Signature Version 4. The request should contain the required parameters, namely sample-rate, language code, and media-encoding. You could optionally supply vocabulary-name to use a custom vocabulary. The StartStreamTranscriptionWebSocket API supports all of the languages that Amazon Transcribe streaming supports today. After your connection is upgraded to WebSocket, you can send your audio chunks as an AudioEvent of the event-stream encoding in the binary WebSocket frame. The response you get is the transcript JSON, which would also be event-stream encoded. For more details, please refer to our tech docs.

To demonstrate how you can power your application with Amazon Transcribe in real time with WebSocket, we built a sample static website. On the website you can enter your account credentials, choose one of the preferred languages, and start streaming. The complete sample code is available on GitHub. JavaScript developers, among others, may find this to be a helpful start. We’d love to see what other cool applications you can build using Amazon Transcribe streaming with WebSocket!


About the authors

Bhaskar Bagchi is an engineer in the Amazon Transcribe service team. Outside of work, Bhaskar enjoys photography and singing.

 

 

 

 

Karan Grover is an engineer in the Amazon Transcribe service team. Outside of work, Karan enjoys hiking and is a photography enthusiast.

 

 

 

 

Paul Zhao is a Product Manager at AWS Machine Learning. He manages the Amazon Transcribe service. Outside of work, Paul is a motorcycle enthusiast and avid woodworker.

 

 

 

 

 

 

[D] The AI brain drain

The deep pockets of large tech companies are luring AI scientists and professors away from academia into business and for-profit endeavors. How will this affect scientific research and machine learning projects that do not necessarily aim to fatten the pockets of big tech? I discussed this in my latest column, would be happy to get your thoughts on it.

https://bdtechtalks.com/2019/09/26/artificial-intelligence-brain-drain/

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

[D] Handling noisy labels in large datasets with slight imbalance

Hey all, I have large binary classification dataset with follow counts 0: 200k 1: 500k

Now the labels are not true labels. I know the percentage of correct of each label group. By this I mean I know that 80% of 0 are correct and 85% of 1 are correct, I don’t know which.

Now I have tried the following:- ° Random first with class weight – massively overfit and if played around with max _depth parameter to reduce overfitting however I am unable to get good results. ° Tried oversampling like SMOTE etc but they take large amount of time.

Do you have any suggestions how to deal with imbalance and noisy labels?

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