salesforce / TransmogrifAI

TransmogrifAI (pronounced trăns-mŏgˈrə-fī) is an AutoML library for building modular, reusable, strongly typed machine learning workflows on Apache Spark with minimal hand-tuning
https://transmogrif.ai
BSD 3-Clause "New" or "Revised" License
2.24k stars 392 forks source link

Deep Learning in TransmogrifAI #248

Open LakshKD opened 5 years ago

LakshKD commented 5 years ago

Problem I am thinking that can we start incorporating some deep learning models as well in TransmogrifAI.

Solution I am happy to collaborate, if there is any plan or I can discuss also in order to start some deep learning stuff in TransmogrifAI.

Additional context We can start with some basic models like Multi-Layer Perceptron etc.

LakshKD commented 5 years ago

@tovbinm Any ideas regarding this :-) ?

tovbinm commented 5 years ago

@LakshKD yes, we are planning to add some DL support for TransmogrifAI, in particular integration with TensorFlow runtime. Do you have a particular use case you want to solve with TransmogrifAI?

LakshKD commented 5 years ago

@LakshKD yes, we are planning to add some DL support for TransmogrifAI, in particular integration with TensorFlow runtime. Do you have a particular use case you want to solve with TransmogrifAI?

I was looking at TransmogrifAI and I thought that it will be great if we can extend it more and start including Deep Learning related things. I don't have a use case right now but I want to contribute to TransmogrifAI by starting some Deep Learning stuff. I would love to discuss this tensorflow integration and will be very happy to contribute as well.
I will be very glad if you can suggest me how to start.

tovbinm commented 5 years ago

In order to add TensorFlow support we would need roughly the following:

  1. research and evaluate which libraries can be used to provide TensorFlow model training on Spark (if not training then at least loading pre-trained models & scoring)
  2. investigate how to integrate it with TransmogrifAI's estimator or transformer
  3. actually implement it ;)
a1pha commented 5 years ago

Hello everyone, I was interested in working on this issue/feature request, as a first issue with TransmogrifAI. I have some familiarity with working with Tensorflow and deep learning models. I was wondering if we should start with common models such as MobleNetV2, VGG, ResNet, etc. To allow users to load these models from checkpoints/pre-trained weights for transfer learning. Please let me know what are the next steps I can take to help out, if possible. Cheers, Abhi

py-ranoid commented 5 years ago

Hi @a1pha The models you've suggested are for object recognition (from images) and can't be applied to the current type hierarchy.

tovbinm commented 5 years ago

For binary data we have Base64 type.

LakshKD commented 5 years ago

In order to add TensorFlow support we would need roughly the following:

1. research and evaluate which libraries can be used to provide TensorFlow model training on Spark (if not training then at least loading pre-trained models & scoring)

2. investigate how to integrate it with TransmogrifAI's estimator or transformer

3. actually implement it ;)

@tovbinm I have started following the above steps, will discuss soon.

LakshKD commented 5 years ago

Let's start adding Deep Learning to TransmogrifAI. :-)

LakshKD commented 5 years ago

Hello everyone, I was interested in working on this issue/feature request, as a first issue with TransmogrifAI. I have some familiarity with working with Tensorflow and deep learning models. I was wondering if we should start with common models such as MobleNetV2, VGG, ResNet, etc. To allow users to load these models from checkpoints/pre-trained weights for transfer learning. Please let me know what are the next steps I can take to help out, if possible. Cheers, Abhi

@a1pha let me first complete the steps on which I am working on then I will ping you for help, if required. Meanwhile you can look at other issues in this project. :-)

LakshKD commented 5 years ago

@tovbinm I am thinking to first include a simple MLP and training it on MNIST data after that on the way we will add more things once this will get pushed. I am able to run it separately as a Scala Project and now working on to make it work with the TransmogrifAI project. Once completed I will raise a Pull Request.

tovbinm commented 5 years ago

Hmm, are you trying to use MLP with TF?

Because we already have MLP implementation from Spark ML.

And as for MNIST problem in particular @ajayborra tried solving it with existing multi class classifier. Check it out.

LakshKD commented 5 years ago

@tovbinm yes, I am trying with tensorflow, to be precise MLP with MNIST and MLP with Iris both with TF. I am thinking to also put the code to load already trained models like inception and do inferencing.

vishal2106 commented 5 years ago

Hey everyone, I am very much interested to work in the deep learning part of TransmogrifAI, if anyone can give me a direction, where should I head to first? Thank you.

LakshKD commented 5 years ago

@vishal2106 I will let you know for help in the future. Currently, I am working on it from a long time and will soon going to raise the pull request for having some tensorflow related stuff as part of TransmogrifAI. :-)

anushalihala commented 5 years ago

If help is needed in the future, please let me know as well - would love to contribute towards this 😊 @LakshKD

cry2133 commented 5 years ago

Hello everyone,I was interested in this future,Can we use tensorflowonspark for this future?