You explain things SO well. I'm about a month into Android development and the commenting on your code has really helped me grasp the concepts I've been coding. Thanks
I remember the days when these videos would be like 10 minute videos and always ran out of breath to catch the hyper active Siraj. But now I can finally take a sigh of relief and learn on my own pace, Thanks, I do appreciate it man.
U were the one who introduced me into this wonderful world of machine learning. I'm seriously inspired and have found something part of my life's purpose. I now extremely happy to finally find a detailed video on implementing tensorflow into android
I'm really starting to love these videos!! Please never leave youtube siraj p.s Thank you for going in detail about android, I haven't really ever touched it. Would have been way more confusing if you skimmed it over.
Hi Siraj, I love your videos, I'm an Android developer, You are rock star, you took so much pain to write comments for the project imports too. Wow! Hats off to you!
Adding " compile 'org.tensorflow:tensorflow-android:+' " to the dependencies section of the gradle file automatically downloaded the AAR file. Thanks Siraj for this awesome tutorial!!
When you flatten the layer to a vector, you don't have probability values like you said in the video. You apply the softmax function to get that, which you did in the last fully connected layer.
Awesome video! This was the first video that had a better paste for me. I've watched several videos that has been uploaded from you, but as a new programmer in this field I felt lost after 15 sec. But instead of getting lost this time, I got excited to start working with ML. Keep it up!
Thanks for the great video. Very useful. Note for those who may run into a multi dex error: I got the following error: "Error:Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files define Lorg/tensorflow/Session$Runner;" Apparently the gradle.build had the following line added at the end: compile project(':tensorflow') Solution: just delete that line and the app works fine.
hi siraj! thanks alot for the much needed video. btw, i would like to know few things as im pretty much a noob at ML. 1. can we use this model to build a speech recognition algorithm? 2. how to upload this into a server ? 3. what is the best ANN type to process natural language (what a user speaks) and response accordingly? CNN or RNN 4. can you clarify how to build the connection between the android app and the tensorflow (which is deployed in a server) I would be extremely grateful if you could reply. Thanks for all the videos you have done. and please do more. specially android based ML & NLP. cheers!
Hey Siraj really great video. I think these are my favorite video style, the 5 minute videos are interesting, but this is the type of video I can actually learn to do something from.
hey Mr. Siraj , i love ur videos .The current video on how to run tensorflow model on android was awesome but it is quit old in 2019. So can you make new video on this topic like how to run "tensorflow models on android using tensorflow lite(tflite) " Thank you for your hard work :) keep making this kind of stuff ..your genuine subscriber : )
Sir thanks alot for this even in I haven't right learn Android Developpment or write on code of TenserFlow project but it's really exciting to see you do it and also motivating so THANKS SIR
Nice video, with a great explanation. This tutorial will save me hours in my project. Hopefully, i would be able to integrate my CNN with Android app faster. Thanks a lot Siraj for this video..
Hey Siraj! I absolutely love your videos and your personality. This is the only thing I can find of substance Regarding Android and ML. How is that possible? The biggest industries in tech, Mobile and AI and they have TONs of uses I imagine but we haven't imagined them yet. Please do more about Mobile and AI and maybe an observational video about what we might expect? Thanks again my dude!
First thanks for the video. Even though its android its what I have been looking for, for a while. A small end to end example that actually returns a value. Gentle suggestions when you were explaining the TensorFlowInferenceInterface and the create method the names inputname would it be better as PBFileName and imagesize maybe pixelwidth so you can get how its flowing, I say this because by this time I had to go back write down what was passed in and figure it out. The Android explanation was necessary. Never touched that code so thanks for that too. I love your energy so another BIG thank you.
Hey... I am new to Deep Learning. Can you please tell me that in the python export model. How did he named the input_node_names and output_node_names. My model is different so what changes should I make in those names? I am confused there.
Damn, you're funny! And informative. And you got yourself a new subscriber! Good vid bro, I was looking around about how to deploy tf models to my phone, I only found videos about deploying it to servers. This vid was nice! How about to normal computers? I've only seen people recommending Kubernetes or Docker, but it seems overkill.
Hey Siraj, how you could differentiate between a real road sign and someone wearing a T-shirt of a road-sign?? What kind of neural net structure will filter out the possibilities?
For a problem like this the network structure would not be as important as the dataset you trained it on. You would want a dataset that consists of two classes. Class 1) People wearing road sign t-shirts (and other sorts of fake road signs) and Class 2) Genuine road signs. As for architecture, most of the common generic CNN architectures would work well (i.e. inception, alexnet etc).
First of all it is amazing, thank u :D Second , i copy the code from GitHub and test it on my smartphone but the results are very bad , i don't know why
I still didn't understood how will the Android code put the input(i.e. the pixels list) in the .pb model. Like you added these lines : tfHelper.feed(inputName, pixels, 1, inputSize, inputSize, 1); //probabilities if (feedKeepProb) { tfHelper.feed("keep_prob", new float[] { 1 }); } //get the possible outputs tfHelper.run(outputNames); //get the output tfHelper.fetch(outputName, output); -- So what parameters was it expecting for... and then how this is passed to the model inside the pb.... its really magical. Please help me :) Thanks in advance. BTW I am a android developer first and then a Python dev.
Thanks for the awesome tutorial. I'm really looking forward for a android tutorial "how to use tensorflow image recognition with pictures from your gallery" Would be awesome if you could do one
I understand the concept here and I have done quite a lot of android development in the past. I built my own version of this using kotlin (I also expanded the model to alpha chars). I was unable, however, to get the build to open on any of devices both virtual or physical. I had to go back and look at the original source code from the video you played at the beginning and then build all of the tensor-flow stuff from scratch myself to get it to work. After I did that, I cloned your repository and built your source code but again I ran into the same exact problems that I had myself with my own codebase. Even after fiddling around with various tensorflow AAR/JAR files it didn't seem to want to work for me. I feel like your instructions are either missing a step or perhaps I am just not reading them correctly; either way the source code doesn't seem to want to build on my computer. Ill do a little more debugging and see if I can find a specific cause (that way if it is on your end you can fix your code and if it is on mine, then I can learn from it). I did consider the fact that I am building on a windows machine where as you are building on a mac, but usually that's not an issue with android or java. Regardless, good video. I've been really wanting to add some of my AI models to the mobile apps that I build, but I've had to do it with Bazel mostly or through using web-servers. Its much easier to be able to just train a model and then preload it into an app then have to setup a server that hosts the information and does the computations.
Actually I am working on a project "Plant Disease Detection " that has two parts: A website developed in PHP to input image An image classification module which is created by using the Tensor flow Both modules are working fine individually, I want to know how can I integrate them in a single application (Website) to get the required results. The python module uses tensor flow. Any help regarding the issue will be greatly appreciated.Please tell me how can I deploy this module in php based Website?Must reply me Sir
This is a great video. I just would echo another comment...what would anyone recommend for someone wanting to use a Keras API with Android in December 2020? Is Firebase an option?
hey Siraj, can you dedicate a video to all the dimensional dependencies we have to take care of to deal with inputs. I'm doing recurrent nns but the input dimensions really confuses me. How about a small video dedicated to that?
Here's the instruction codelabs.developers.google.com/codelabs/tensorflow-for-poets-2-tflite/#6 If you have problem converting the model, this may help: stackoverflow.com/questions/51374273/importerror-no-module-named-tensorflow-contrib-lite-python-tflite-convert/54742492#54742492
Hey @siraj, it would be great if you make a tutorial on how to make specific object detection Android app based on tensor flow because many guys need it.
please, can you do series of how to actually developed android app with tensorflow because here you just speak but showing exactly what you have to do. for a beginer like me, you have lost me already from the beginning
can you go a little more in depth on how to download and set the dependencies? You just kinda said "that's it right there" but I wasn't sure what you were talking about.
I am sorry I am just a beginner in ML but around @25:15 you mention that you used keras and tf both classifiers, but in your keras videos you said that keras uses tf in background. I do not understand how the classifiers will show different outputs. Thank you.
Hey Siraj.... one question. How did you named your Input_node_names and output_node_names. My model is different and I want to export it. So what changes should I do in those names? Please help me out someone.
I have to do a regression prediction for different users using the app. The data will come from App sqlite. Regression model will be different for different users. How do I do that?
Please help me answer this question, this is my model in Keras: model = Sequential() model.add(Dense(784, input_dim=784, kernel_initializer='normal', activation='relu')) model.add(Dense(10, kernel_initializer='normal', activation='softmax')) model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy']) So what value should I put in the "input_node_names" and "output_node_name" variables in the "export_model" function? (file mnist_convnet_keras.py)
The python training code had a few steps of preprocessing (like converting to grayscale etc) those steps are not in the Android app. How is preprocessing handled in Android studio ?
Hi .... bro Kia hm tenser flow ko use krtey hoye ek android base disease prediction application bna sktey he Kia? Can u help in this kindly it's urgent
Hey Siraj, I have trained a model of Handwritten characters in Bangla of 60 Label. I have trained them and then exported the .pb file in android. But I am continuously getting Error initializing classifiers!
To export to a .pb model, is input_node_names always equal to ["conv2d_1_input"] regardless of how many layers you have? Is output_node_name always equal to the number of Dense layers plus the output activation function that was used?
Hey, is it possible to create a classifier that would interpret my smart wrist band's accelerometer sensor data when I am swimming, and tell me how many lengths, and what styles I had been swimming? How do I change simple 3-axis measurements so it can be interpreted, and tell a network, that this time I had been swimming one style?
You explain things SO well. I'm about a month into Android development and the commenting on your code has really helped me grasp the concepts I've been coding. Thanks
I remember the days when these videos would be like 10 minute videos and always ran out of breath to catch the hyper active Siraj. But now I can finally take a sigh of relief and learn on my own pace, Thanks, I do appreciate it man.
raffan1 lol man
U were the one who introduced me into this wonderful world of machine learning. I'm seriously inspired and have found something part of my life's purpose. I now extremely happy to finally find a detailed video on implementing tensorflow into android
I'm really starting to love these videos!! Please never leave youtube siraj
p.s Thank you for going in detail about android, I haven't really ever touched it. Would have been way more confusing if you skimmed it over.
Seconded
Fourthed lol
love u i wont leave
Leave bkl
Hi Siraj, I love your videos, I'm an Android developer, You are rock star, you took so much pain to write comments for the project imports too. Wow! Hats off to you!
I think this is one of the best guides I've ever seen. You have something special!! Thank you, seriously it has been very useful
Adding " compile 'org.tensorflow:tensorflow-android:+' " to the dependencies section of the gradle file automatically downloaded the AAR file. Thanks Siraj for this awesome tutorial!!
Can you please tell me, where it gets downloaded. I don't find the aar file anywhere
i have tried that but it does not work
At 1:14 I reflexively reached out for the mouse. Over fitting is a problem for meat brains too.
Chase Graham yeah me too. lol
Chase Graham the weird thing is that I had already seen that it was more than 45 minutes long and I still also gave in to reflex
Savage :D
Siraj dropped a video:
Pause the video Disable AdBlock Refresh the video Learn & Live.
important to pay tuition when it's of this quality
so sweetu love u
Siraj Raval...te amamos mas eres demasiado impresionante
This guy.. always keeping it real!
This is exactly what I have been looking for ever since I started playing with Neural Nets. Thank you Siraj.
I love Siraj. His in-depth videos are appreciated.
When you flatten the layer to a vector, you don't have probability values like you said in the video. You apply the softmax function to get that, which you did in the last fully connected layer.
Awesome video! This was the first video that had a better paste for me. I've watched several videos that has been uploaded from you, but as a new programmer in this field I felt lost after 15 sec. But instead of getting lost this time, I got excited to start working with ML. Keep it up!
Thanks for the great video. Very useful.
Note for those who may run into a multi dex error:
I got the following error:
"Error:Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files define Lorg/tensorflow/Session$Runner;"
Apparently the gradle.build had the following line added at the end:
compile project(':tensorflow')
Solution:
just delete that line and the app works fine.
hi siraj! thanks alot for the much needed video. btw, i would like to know few things as im pretty much a noob at ML.
1. can we use this model to build a speech recognition algorithm?
2. how to upload this into a server ?
3. what is the best ANN type to process natural language (what a user speaks) and response accordingly? CNN or RNN
4. can you clarify how to build the connection between the android app and the tensorflow (which is deployed in a server)
I would be extremely grateful if you could reply. Thanks for all the videos you have done. and please do more. specially android based ML & NLP. cheers!
Exactly Siri is worse as compared to Cortana and Google Assistant :) And the best is Siraj Raval.
Nice work keeping the vibe upbeat and informal. So many programming tutorial youtubers are so boring/hard to listen to.
thx
Interesting stuff Siraj! Love how you make this accessible. Great work!
thanks man. I was looking for references everywhere and you made a video for this. Great work
you are the coolest dude in the world .. thank you so much
damn remember when this channel was at 20k subs . Good job
This guide was published in 2017. Which changes would you make to a 2019 update?
tflite
Sir you have just won a life time subscriber
Your videos are interesting becos way you present.. making learning as fun is mantra. that your doing very good job. Good job Siraj Raval..
thx
I just published an android app, it's 2:28 AM here and just got in bed. Then I see Siraj talking android and tensors, and now I'm back on my laptop.
Hey Siraj really great video. I think these are my favorite video style, the 5 minute videos are interesting, but this is the type of video I can actually learn to do something from.
can you make a introduction or a guide for the tensorflow lite ?
with custom data for image detection (boxes)
hey Mr. Siraj , i love ur videos .The current video on how to run tensorflow model on android was awesome but it is quit old in 2019. So can you make new video on this topic like how to run "tensorflow models on android using tensorflow lite(tflite) " Thank you for your hard work :)
keep making this kind of stuff
..your genuine subscriber : )
hi bro. do u know how to use pandas and numpy in android? any links or github repositories u have? pls share if u can
I'm gonna be quoting u, Siraj: " You can do anything you dream... With the right amount of computation and training." :D
Oh hey dude... Real talk... I think I love u! Thank you for doing these awesome video's!!
Stay awesome!!
Xx
This channel is gold! Keep the good work
Congratulations for your work Siraj!
Sir thanks alot for this even in I haven't right learn Android Developpment or write on code of TenserFlow project but it's really exciting to see you do it and also motivating so THANKS SIR
Nice video, with a great explanation. This tutorial will save me hours in my project. Hopefully, i would be able to integrate my CNN with Android app faster. Thanks a lot Siraj for this video..
Hey Siraj! I absolutely love your videos and your personality.
This is the only thing I can find of substance Regarding Android and ML.
How is that possible?
The biggest industries in tech, Mobile and AI and they have TONs of uses I imagine but we haven't imagined them yet.
Please do more about Mobile and AI and maybe an observational video about what we might expect?
Thanks again my dude!
First thanks for the video. Even though its android its what I have been looking for, for a while.
A small end to end example that actually returns a value.
Gentle suggestions when you were explaining the TensorFlowInferenceInterface
and the create method the names inputname would it be better as PBFileName and imagesize maybe pixelwidth so you can get how its flowing, I say this because by this time I had to go back write down what was passed in and figure it out.
The Android explanation was necessary. Never touched that code so thanks for that too.
I love your energy so another BIG thank you.
Hey... I am new to Deep Learning. Can you please tell me that in the python export model. How did he named the input_node_names and output_node_names. My model is different so what changes should I make in those names? I am confused there.
Damn, you're funny! And informative. And you got yourself a new subscriber! Good vid bro, I was looking around about how to deploy tf models to my phone, I only found videos about deploying it to servers. This vid was nice!
How about to normal computers? I've only seen people recommending Kubernetes or Docker, but it seems overkill.
Hey Siraj, how you could differentiate between a real road sign and someone wearing a T-shirt of a road-sign?? What kind of neural net structure will filter out the possibilities?
For a problem like this the network structure would not be as important as the dataset you trained it on. You would want a dataset that consists of two classes. Class 1) People wearing road sign t-shirts (and other sorts of fake road signs) and Class 2) Genuine road signs. As for architecture, most of the common generic CNN architectures would work well (i.e. inception, alexnet etc).
Its liveliness detection problem, but i'm sure you would have figured that out by now
I just love your channel. Every time I find something new on about ML and want to see a video about it, you have it. Thanks a lot!!!!
Dude, great job, seriously man keep up the good work.
Will soon be 1 year since uploaded but still worth watching. Thanks Siraj
Hey Siraj, do you have a video on real time object detection for Android application using tensor flow?
Thank you Siraj, Great videos...you are the best!!!!
First of all it is amazing, thank u :D Second , i copy the code from GitHub and test it on my smartphone but the results are very bad , i don't know why
The most import video for me , given that i am an android developer
I still didn't understood how will the Android code put the input(i.e. the pixels list) in the .pb model. Like you added these lines :
tfHelper.feed(inputName, pixels, 1, inputSize, inputSize, 1);
//probabilities
if (feedKeepProb) {
tfHelper.feed("keep_prob", new float[] { 1 });
}
//get the possible outputs
tfHelper.run(outputNames);
//get the output
tfHelper.fetch(outputName, output);
-- So what parameters was it expecting for... and then how this is passed to the model inside the pb.... its really magical. Please help me :) Thanks in advance. BTW I am a android developer first and then a Python dev.
Hey Siraj! Love your videos man, you are the best! Since now iOS 11 has CoreML waiting for similar tutorial for iOS!!
thanks! yes yes i need to for sure.
Thanks for the awesome tutorial. I'm really looking forward for a android tutorial "how to use tensorflow image recognition with pictures from your gallery" Would be awesome if you could do one
Thanks to good explained tutorial on mindorks, I was able to implement it myself. If anyone has question, message me:)
wow nice! a full detail video :D thanks siraj
I understand the concept here and I have done quite a lot of android development in the past. I built my own version of this using kotlin (I also expanded the model to alpha chars).
I was unable, however, to get the build to open on any of devices both virtual or physical. I had to go back and look at the original source code from the video you played at the beginning and then build all of the tensor-flow stuff from scratch myself to get it to work.
After I did that, I cloned your repository and built your source code but again I ran into the same exact problems that I had myself with my own codebase. Even after fiddling around with various tensorflow AAR/JAR files it didn't seem to want to work for me.
I feel like your instructions are either missing a step or perhaps I am just not reading them correctly; either way the source code doesn't seem to want to build on my computer. Ill do a little more debugging and see if I can find a specific cause (that way if it is on your end you can fix your code and if it is on mine, then I can learn from it). I did consider the fact that I am building on a windows machine where as you are building on a mac, but usually that's not an issue with android or java.
Regardless, good video. I've been really wanting to add some of my AI models to the mobile apps that I build, but I've had to do it with Bazel mostly or through using web-servers. Its much easier to be able to just train a model and then preload it into an app then have to setup a server that hosts the information and does the computations.
Siraj, would you please create a video on running Tensorflow on raspberry pi 3. Thank you so much! Love your videos!
Actually I am working on a project "Plant Disease Detection " that has two parts:
A website developed in PHP to input image
An image classification module which is created by using the Tensor flow
Both modules are working fine individually, I want to know how can I integrate them in a single application (Website) to get the required results.
The python module uses tensor flow. Any help regarding the issue will be greatly appreciated.Please tell me how can I deploy this module in php based Website?Must reply me Sir
Ay same.
This is a great video. I just would echo another comment...what would anyone recommend for someone wanting to use a Keras API with Android in December 2020? Is Firebase an option?
hey Siraj, can you dedicate a video to all the dimensional dependencies we have to take care of to deal with inputs. I'm doing recurrent nns but the input dimensions really confuses me. How about a small video dedicated to that?
Could you please make video on conversion of graph(trained model) to lighter version user tensor flow lite, bazel and TOCO api ?
www.tensorflow.org/lite/devguide well here is this
Here's the instruction
codelabs.developers.google.com/codelabs/tensorflow-for-poets-2-tflite/#6
If you have problem converting the model, this may help:
stackoverflow.com/questions/51374273/importerror-no-module-named-tensorflow-contrib-lite-python-tflite-convert/54742492#54742492
great work Siraj keep up the good work
Hey @siraj, it would be great if you make a tutorial on how to make specific object detection Android app based on tensor flow because many guys need it.
please, can you do series of how to actually developed android app with tensorflow because here you just speak but showing exactly what you have to do. for a beginer like me, you have lost me already from the beginning
@Siraj Raval does the optimize_for_inference library still work?
You rock Siraj! Thank you
How to determine what is input and output names ? they always give error as not in the graph.
We can also use api to develop AI app on Android we can integrate with web app api like django rest framework
can you go a little more in depth on how to download and set the dependencies? You just kinda said "that's it right there" but I wasn't sure what you were talking about.
can we use keras as framework on android studio..if yes then how?
Excellent video. A question is there the possibility to create my own detection of objects with convolutional neural networks some documentation?
Great effort. Learned so much....... thanks
Where is jupyternotebook ?
I am sorry I am just a beginner in ML but around @25:15 you mention that you used keras and tf both classifiers, but in your keras videos you said that keras uses tf in background. I do not understand how the classifiers will show different outputs. Thank you.
Best tutorial sir
42:32 - evidence of overfitting
Hey Siraj.... one question. How did you named your Input_node_names and output_node_names. My model is different and I want to export it. So what changes should I do in those names? Please help me out someone.
Could you do a similar tutorial for keras?
Great video by the way!
Hello sir can you create a one more video on the object detection
please.....?
Good tutorials man really helped me alot to deploy mine..
Hey Siraj! Really Great VIDEOS!!! Can I suggest another video? like making a plant classification app with TensorFlow or the ML Kit from Firebase?
y'know like identifying plant species and details
I have to do a regression prediction for different users using the app. The data will come from App sqlite. Regression model will be different for different users. How do I do that?
Thanks for video Siraj, very informative. Do you have a similar video on how to use a .h5 Keras model in an android app
Why was there no livestream?
Do you have video where the training happens on the mobile coz the data will keep updating after every user use?
Please help me answer this question, this is my model in Keras:
model = Sequential()
model.add(Dense(784, input_dim=784, kernel_initializer='normal', activation='relu'))
model.add(Dense(10, kernel_initializer='normal', activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
So what value should I put in the "input_node_names" and "output_node_name" variables in the "export_model" function? (file mnist_convnet_keras.py)
How do you add the AAR file? when it says find your file, im confused which file is that?
Please Help!!
I would recommend to also post on steemit. You will get paid when people upvote your posts.
im subscribing all my youtube account to you hahaha. this was a great video, thanks a lot!!!
Always the hero Siraj
Hey Siraj... what if the image is not grayscale but a colorful... RGB image. Then what changes to make?
The python training code had a few steps of preprocessing (like converting to grayscale etc) those steps are not in the Android app. How is preprocessing handled in Android studio ?
How to detect image label after capturing the pic
How do you train the model ?? great video.
This is awesome. Thanks for this. Also, is it possible to train data on mobile phones? Are they powerful enough?
Sudhanva Narayana you can, but will be very, very slow
hello Sir...How to use machine learning in business and what are the products
Great tutorial... Can you please tell me how to recognize sign languages in android?
Hi did you used TFlite or TF? and did you used JAVA?
Hi .... bro Kia hm tenser flow ko use krtey hoye ek android base disease prediction application bna sktey he Kia? Can u help in this kindly it's urgent
how can i change that image detector to a image capture and predicting the image ?
Hey Siraj, I have trained a model of Handwritten characters in Bangla of 60 Label. I have trained them and then exported the .pb file in android. But I am continuously getting Error initializing classifiers!
Is sign language recognition a multi class classification?
To export to a .pb model, is input_node_names always equal to ["conv2d_1_input"] regardless of how many layers you have? Is output_node_name always equal to the number of Dense layers plus the output activation function that was used?
Hey, is it possible to create a classifier that would interpret my smart wrist band's accelerometer sensor data when I am swimming, and tell me how many lengths, and what styles I had been swimming?
How do I change simple 3-axis measurements so it can be interpreted, and tell a network, that this time I had been swimming one style?
does someone know how can I convert an image .jpg, .png or similar to the vector of float[] that the model need for identify the number?
This is Awesome, But how is the Compatibility across different hardware, Smartphones have GPU's too.....
Akash Mishra its cpu only
but we need to make it GPU compatible soon enough...