Developing Machine Learning Applications with TensorFlow
Talk conducted during Campus DevCon at MSU-IIT Iligan, School of Computer Studies at Andres Bonifacio Ave, Iligan City, Lanao del Norte on May 5, 2018.
• 3rd Year BS Computer Science • Creative Lead at GDG Cagayan de Oro • Likes The Purge (The First Purge is coming soon in theaters in July) • Loves cats Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
in the field of computer gaming and artificial intelligence, coined the term “Machine Learning” in 1959 while at IBM. • “A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E” (Mitchell, 1997) Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
with example inputs and their desired outputs, given by a “teacher”, and the goal is to learn a general rule that maps inputs to outputs. • Unsupervised learning No labels are given to the learning algorithm, leaving it on its own to find structure in its input. Unsupervised learning can be a goal in itself (discovering hidden patterns in data) or a means towards an end (feature learning) Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
• Sentiment analysis (“I do not like that book”) • Language detection • Image recognition • Cat or dog, model of car, types of objects in frame • Facial recognition (group photos by individual) • Hotdog or not hotdog? • Prediction • Trends (weather, stocks, product sales) • Agents • Automated game players, chatbots Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
processing in Python: Parts of speech, named entities, parse trees • TensorFlow • Open source software library for numerical computation • Flexible architecture • Originally made by researchers and engineers at Google Brain • TensorFlow Lite: Machine Learning apps for android Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
for dataflow programming across a range of tasks. It is a symbolic math library, and also used for machine learning applications such as neural networks. • In May 2017 Google announced a software stack specifically for Android development, TensorFlow Lite, beginning with Android Oreo. Portions of this presentation are use Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
Statistics, Linear Algebra (Matrix Operations, Tensors), Calculus • Programming • Knowledge in Python, Scala, Java, or R • Domain Knowledge • Know your problem and your data • Software Engineering • Questions about performance and integration of ML models • Burning passion to pursue ML • Don’t get frustrated if you don’t get it the first time • Practice, practice, practice • Read books Portions of this slide is using Algorithmia’s Machine Learning presentation. Visit https://blog.algorithmia.com/building-intelligent-applications/ for details.
imperative programming environment that evaluates operations immediately, without building graphs. • Operations return concrete values instead of constructing a computational graph to run later.
tf sess = tf.InteractiveSession() a = tf.constant(3) b = tf.constant(5) multiply = tf.multiply(a, b) print(multiply) # prints Tensor("Mul_2:0", shape=(), dtype=int32) multiply.eval(feed_dict={a: 3, b: 5}) # prints 15 Eager Execution import tensorflow as tf tf.enable_eager_execution() tf.executing_eagerly() # Prints true a = 3 b = 5 multiply = tf.multiply(a, b) print(multiply) # prints 15
lesser file size for faster processing • Your images should be of the same dimensions; machine learning works on image datasets of the same sizes • Check the version of the data visualization library you’re using • Choosing the right activation function and Machine Learning algorithm for your ML projects (LSTM for NLP, SVM for Image Processing Classification, etc)
intelligent pest and crop monitoring system via drone imaging • Analyze crop health and whether crops are infested by gathering image data and analyzing them with image processing