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

[P] Feedback on research problem

Hi everyone,

I have been working on a home energy management problem, in which I want to schedule a series of domestic appliances over a period of time in a way that minimizes overall electricity costs. As not all domestic appliances are controllable, fixed household demands need to be taken into account.

As a preliminary exploration of this problem, I was able to schedule appliance operations by solving an instance of a job scheduling problem, although assuming that those fixed demands are known throughout the scheduling horizon.

Naturally, this is an unrealistic approach, as we cannot perfectly forecast the future. As such, I am thinking of considering a stochastic optimization approach, generating several load profiles (scenarios) over the fixed horizon. Then I would solve an optimization problem instance that minimizes average costs over all generated scenarios.

Does this approach seems viable? Is there anything seriously wrong with this?

Furthermore, i was considering applying Gaussian Processes to forecast loads over the scheduling horizon. The thing that attracted me to this technique is the fact that we can get a distribution for predictions, rather than simply the values. Thus, I could use this to generate the different load scenarios for stochastic optimization. However, I am unsure if this is an adequate fit for time series forecasting, particularly when forecasting multiple time instants. I did (admittedly not very extensive) some research on time series forecasting using Gaussian Processes and some authors report quite poor results with this technique, stating that GPs are not very well suited for multi-step forecasting.

Can anyone give some feedback on these ideas? Are there alternative approaches (perhaps best suited for my problem)?

Thanks in advance

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

[D] Giving OpenAI Five the capacity to adapt to the opponent

Hi,

Because it takes 45,000 years of gameplay experience to train OAI5, changing the behavior of the AI for each player opponent is currently not possible. The thing is that the AI try to learn the best way to play and to win overall rather than trying to win against a particular opponent, this approach already give amazing results but I would like to consider what would it takes to give the agents the capability to change their behaviors according to the opponent player.

I have one suggestion for this and would love to get your feedback about it. I was thinking about trying to come up during the game with a latent space that aims to encode the opponent behavior. Thus, each agent would take actions not only from the observation of the world but also from the latent space encoding the behavior of the opponent. We can think of this additional observation as the latent space of one auto-encoder that gives an encoded vector representation of the inputs.

Train such representation could be done by a self-supervised manner. During the training, each agent would have an additional LSTM that try to predict what is the next actions the opponent in the observation space is up to do. Once this LSTM starts to be trained properly, the inner representation of the LSTM would encode in some way the behavior of the opponent’s agents observed by each agent. Because each agent perceived different observations during the game, the 5 LSTM inner states can be combined and used as an additional input for each agent. This combined representation would encode the behavior of the opponent team overall. This representation would be similar to the way a Human team can communicate and adapt about the other team during the game.

Thus, the observation is no longer the observation each agent is perceiving around. But each agent is now taking action with respect to the opponent behavior. That would give OAI5 the capacity to adapt to the opponent during the game. But also to reuse the same representation if the same game is run against the same opponent.

Do you think this proposition make sense? Also, I would be interested to know your propositions and what are for you the best papers that might bring a solution to this problem for the future of the field?

Thanks

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

[P] Can you solve this High School ML problem?

As a high school senior I have the task of coming up with a way to reorganize my school’s parking lot in order to make the traffic flow more efficient.

Here is a picture of the parking lot with labels. From 7:00am to 7:50am there is a high surge of traffic which flows through aisles 4, 5, 6, and 7. Using something like NEAT (any other ideas?), I would give a neural net the control of opening/closing gates 1-7, gates X and Y, as well as the exact times that the crossing guards allow traffic to pass. Using these variables I’m trying to let an AI improve the rate of traffic flow. Although I’m not too familiar with Tensorflow, that’s what I’m using. Should I implement a neural net with Keras, or something else, and maybe use a totally different method too?

I appreciate any help.

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

[D] Machine Learning meets Functional Programming: Nubank open-sources ML library

Hi everyone,

We just open-sourced our library we are using at Nubank (Fintech company in Latin America) for developing machine learning model. We are big fans of functional programming and applied a lot of concept from it to develop this library.

Machine Learning is frequently done by using object-oriented python code, and that’s the way we used to do it at Nubank as well. Back then, the process of building machine learning models and putting them into production was tiresome and often full of bugs. We’d deploy a model only to find that predictions made in production didn’t match the ones seen during validation. What’s more, validation was often impossible to reproduce, frequently being done in stateful Jupyter Notebooks.

Functional programming helps fix these issues by:

  • Making it easy to build pipelines where the data transformations that happen during training match the models in production.
  • Allowing for safer iteration in interactive environments (e.g. Jupyter Notebooks), preventing mistakes caused by stateful code and making research more reproducible.
  • Allowing us to write very generic validation, tuning and feature selection code that works across model types and applications, making us more efficient overall.

You can have a longer description here: https://medium.com/building-nubank/introducing-fklearn-nubanks-machine-learning-library-part-i-2a1c781035d0

And the github is here: https://github.com/nubank/fklearn

We don’t expect fklearn to replace current standards in ML, but we hope it starts interesting conversations about the benefits of functional programming for Machine Learning.

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

[D] What is your best practice to write long equations in two columns format

[D] What is your best practice to write long equations in two columns format

I am currently writing a paper for two columns format which is kind of annoying because most of the equations look like that even I put them in `footnotesize`

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

The obvious solution to this problem is to break down the equation into several lines. This can become a bit ugly and hard to follow. I was wondering what is your to go preference considering this.

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

[Discussion] NLP, on numbers inside word embeddings

Let me preface by saying that I am new to NLP, so it is very likely that a good solution to my problem already exists and in that case, I would really appreciate being pointed in the right direction 🙂

I am working on a machine reading comprehension task where the inputs often contain numbers in addition to words. I initially wanted to use pre-trained word embeddings, but I am not sure how the numerical data are represented when numbers are treated as words and are multiplied by an embedding matrix. What is worse, only numbers that occurred in the training set would have a representation, unless I am missing something.. I could extract numbers from sentences before putting the non-numerical words through an embedding layer, and treat them separately but it would be easier if a pre-trained word embedding layer(s) could take care of it all.

As far as I can tell, the optimal way to represent both numbers and words via embedding vectors would be to introduce two extra dimensions: one that would specify the type (1 for numerical vs 0 for vocab), and one that would contain a floating point representation of the original number. At the level of the embedding matrix, this suggests that the matrix can be put in a block-diagonal form, but if it is not, it should not be a problem – I figure the rest of the network would be able to learn that if the 1st component of the embedding vector for a certain word is 1, it should ignore all components but the second one, and vice versa.

This solution is similar to treating numerical and non-numerical data separately, but the advantage is that the pre-trained embedding takes care of it, and once you are past it, you’ve got an N-dimensional representation for every word in your sentence, including digits and numbers written in text, without loosing any information of those numbers.

I can go ahead and implement this, but as I have not seen this solution in existing projects (could very well be that I was not looking at the right place), I wonder if there are better ways of representing numbers + words in deep NNs. Any thoughts?

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