Google's TensorFlow has been a hot topic in deep learning recently. The open source software, designed to allow efficient computation of data flow graphs, is especially suited to deep learning tasks. It is designed to be executed on single or multiple CPUs and GPUs, making it a good option for complex deep learning tasks. In it's most recent incarnation – version 1.0 – it can even be run on certain mobile operating systems. This introductory tutorial to TensorFlow will give an overview of some of the basic concepts of TensorFlow in Python. These will be a good stepping stone to building more complex deep learning networks, such as Convolution Neural Networks and Recurrent Neural Networks, in the package. We'll be creating a simple three-layer neural network to classify the MNIST dataset. This tutorial assumes that you are familiar with the basics of neural networks, which you can get up to scratch with in the neural networks tutorial if required. To install TensorFlow, follow the instructions here. The code for this tutorial can be found in this site's GitHub repository. First, let's have a look at the main ideas of TensorFlow.
I recently stumbled across an old Data Science Stack Exchange answer of mine on the topic of the "Best Python library for neural networks", and it struck me how much the Python deep learning ecosystem has evolved over the course of the past 2.5 years. The library I recommended in July 2014, pylearn2, is no longer actively developed or maintained, but a whole host of deep learning libraries have sprung up to take its place. Each has its own strengths and weaknesses. We've used most of the technologies on this list in production or development at indico, but for the few that we haven't, I'll pull from the experiences of others to help give a clear, comprehensive picture of the Python deep learning ecosystem of 2017.
We're surrounded by more and more connected devices we're calling the Internet of Things. We can turn our heating on from our phones on the commute home. Pegs can tell us when to bring the washing in so it doesn't get wet. Cars know the hazards ahead and warn us before we get there so that we can avoid them. Many of the'things' have been manufactured within the'Industrial Internet of Things' or'Industry 4.0'. But where did the 4.0 came from? What was 3.0, and why are you going to hear about it more and more? Welcome to the fourth industrial revolution!
It is approximately 50 years since the first computational experiments were conducted in what has become known today as the field of Genetic Programming (GP), twenty years since John Koza named and popularised the method, and ten years since the first issue appeared of the Genetic Programming & Evolvable Machines journal. In particular, during the past two decades there has been a significant range and volume of development in the theory and application of GP, and in recent years the field has become increasingly applied. There remain a number of significant open issues despite the successful application of GP to a number of challenging real-world problem domains and progress in the development of a theory explaining the behavior and dynamics of GP. These issues must be addressed for GP to realise its full potential and to become a trusted mainstream member of the computational problem solving toolkit.