This post is also available in: עברית (Hebrew)
MATLAB enables the simple and agile development of advanced deep learning networks with higher speed, better results and less memory.
Currently, almost every company integrates Artificial Intelligence into its products, including deep learning. “The availability of current computing power, alongside labeled databases and trained networks that can be easily adapted for solving new problems – these are the factors that helped the deep learning field to finally grow”, said Roy Fahn, who leads the deep learning field at Systematics, the distributor of MATLAB software in Israel, and more.
Fahn gave a presentation at the Video Analytics Conference organized by iHLS for the seventh year. Elaborating on the advanced capabilities of deep learning, Fahn also presented the challenges in the field.
“One challenge is the labeling of the data – images, video, audio signals or other one-dimensional signals,” Fahn said. “Deep learning requires labeled data, and a lot of it, but nobody likes labeling data. It is also not simple to manage such huge quantities of data as required. Another problem is the use of powerful computing – not everyone knows how to operate GPU or has experience in sending tasks to the cloud. Another challenge – in many cases, it is hard to achieve an operating network after a first course of training.”
“Another challenge is the difficulty to change a trained network and make it solve our own problems of interest. And finally – we don’t train networks in order to leave them in our computer but rather we want to download them to GPU, CPU, FPGA, etc., but not all of us have the time and know-how.”
Fahn is a graduate of the Technion Israel Institute of Technology, with second degree in Electrical Engineering and more than a decade of experience in the high-tech sector. Several years ago, he joined public activity at his home town, Petah Tikva, and for more than two years has been volunteering as a City Council member, including responsibility for the computing and information systems department.
Image reflects results of Semantic Segmentation achieved by MATLAB. On the left – the original image. On the right – the matching map created, in which every pixel is tagged according to its classification to one of the various calsses in the original image – route, building, lane marking, vehicle, etc.
At his presentation at the Conference, Fahn demonstrated how MATLAB software helps cope with all the challenges, turning deep learning into a more simple and accessible field.”Engineers and researchers need tools in order to leave them time for the important tasks,” he said in a special interview to iHLS, “the MATLAB environment is the right solution.”
How does MATLAB helps deal with deep learning challenges?
“Regarding data labeling, MATLAB environment offers tools that help mark objects in images through Bounding Box, or pixel-level labeling for Semantic Segmentation, or the labeling of audio or other one-dimensional signals – MATLAB environment includes friendly and powerful graphic interfaces that even enable the automation of the process.”
Image simulates one of the tagging tools existing in MATLAB environment, enabling a convenient and rapid tagging of the various pixels in the image for the training of a detector at the Bounding Box level or pixel level.
“For example, if an object was marked in certain video frame, it is possible to define a way to detect it in the next frames, thus label hundreds of images by just a few clicks. MATLAB interface can also offer possible markings of the objects in the images that were not yet labeled.”
“With MATLAB, it is very simple to manage the data. Special objects enable to refer all the hundreds and thousands of images or audio files as one entity, loading them through a single line of code, using another line of code to divide the database into sub-sets of training, validation, and testing.”
“Regarding the use of hardware to accelerate training and inference, MATLAB makes it very simple. In fact, GPU use is the default of the software.”
“Regarding visualization and debugging capabilities, this has always been the advantage of the MATLAB environment, and it hasn’t changed in the case of deep learning. MATLAB can present accuracy and loss graphs with the advance of the training, show the activations of the various layers in response to various entrances, create deep dream images, show the features, use techniques such as class activation mapping and occlusion sensitivity, prepare advanced confusion matrix, and can even enable to design the network using graphic interface.”
What are MATLAB’s advantages over Python and free deep learning environments?
According to Fahn, Python was not designed for technical computing, while MATLAB was engineered for it and has been fulfilling this role for already 36 years. “First of all, models developed in free environments can be transferred conveniently into MATLAB and vice versa. However, in the end of the day, the majority of engineers and researchers look for rapid solutions, and this is where MATLAB has substantial advantages, including its convenient labeling tools, data management capabilities, its excellent documentation that includes useful examples from various fields, and the simplicity of the hardware use for operations acceleration.”
“Just as MATLAB is faster than Python in technical computing, it is also more agile in the deep learning field, e.g. some training processes are four-times faster with MATLAB compared to with Python.”
What about the running time of the trained network over hardware?
“Through tools that convert MATLAB code to C++ code or CUDA it is currently possible to automatically download all the trained networks to Nvidia’s GPUs, Intel’s processors, ARM platforms, etc. and get an especially efficient code. Frames rate with MATLAB is double the one achieved through TensorFlow and PyTorch, as I demonstrated at our booth at the iHLS Video Analytics Conference and Exhibition.”
So what about price considerations?
“Students at academic institutions enjoy free access to the software, and current prices for the industry are not high compared to past prices, and there are even special programs for startups. Finally, the value for money is a more rapid, simple and quality research or development process. Also from the learning possibilities – the company supplies a wide array of free instructions around the country and on the web.”
Finally, what to expect regarding MATLAB for deep learning in 2020?
“As annually, two major versions will be launched also in 2020, with many innovations in MATLAB in general, and in deep learning in particular, a field that will continue to enjoy special emphasis. After in the previous versions, advanced augmentation capabilities were added to the audio and image fields, a tool for Reinforcement Learning, automatic suggestion of optimal training parameters, custom layers building interface, and more – we are developing a capability that would enable automatic conversion of the trained networks from MATLAB to a code run on FPGA, a convenient interface for experiment management, deep learning for point clouds, etc.”
“There is certainly a reason why a few months ago, Gartner information technologies consultancy and research company marked the MATLAB environment as a leading software in the field, both from its current and future capabilities.”