Apache SINGA, flexible and scalable deep learning platform, developed by NUS Big Data Systems Team
As the volume, variety, and velocity of data continue to reach unprecedented levels, big data analytics has drawn significant interest. According to a recent report, the worldwide enterprise data analytics market is forecasted to grow at a 9.4% annual growth rate through 2018, reaching $59.2B.
Many organizations are keen on adopting big data techniques to analyze huge volumes of data that conventional business intelligence solutions cannot touch, and discover insightful knowledge for better decision making.
Recently deep learning, which extracts high-level abstractions from data, has emerged, and shows great potential for solving business problems. Several many startups are using deep learning techniques in their applications because it is effective for running many tasks.
OpenGov spoke to Ju Fan, Research Fellow, National University of Singapore, and Wei Wang, PhD Student, National University of Singapore, both of which are working on developing a distributed deep learning platform, Apache SINGA.
Apache SINGA is a distributed deep learning platform that entered Apache incubator in March of this year. The project is funded by the National Research Foundation, Ministry of Education, and A*STAR. SINGA is a valuable tool for big data analytics because:
- It supports various deep learning models, and thus has the flexibility to allow users to customize the models that fit their business requirements
- It provides a scalable architecture to train deep learning models from huge volumes of data
- It provides a simple programming model, making the distributed training process transparent to users.
We talked to Ju Fan and Wei Wang about their research in deep learning, how they got into the Apache incubator, case examples, and what challenges them about their research.
The very beginnings…
“For this project, we started from a research problem on multi-model data retrieval. We were to use different data from different modalities, like image data or text data. Later, I found that deep learning was really effective for extracting features from different modalities,” said Wei Wang.
He then started developing his work with deep learning and has since published papers on algorithms and retrieval problems.
His mentor, Prof Ooi, is an expert on database distributed computing and advised that Wei Wang work on the system part. Deep Learning training is very time consuming because it takes a long time to train a complex model over a large data set.
In order to train the model, Wei Wang used a Stochastic Gradient Descent algorithm, commonly used for deep learning models. This is because it updates the model parameters based on parameter gradients.
Additionally, distributed training had to be applied because datasets can be quite large and models, quite complex. This accelerates the speed of training through the use of more computing resources, which catered to running different training frameworks in a scalable manner.
After they finished the first version of SINGA, Prof Ooi suggested that they try the Apache Incubator and get more people outside NUS to contribute to this project.
Wei Wang submitted his proposal to be included in the incubator and would receive comments from Apache mentors. Within Apache, this project was the only project of its kind, focused on deep learning.
Wei Wang told us that the team is now working on improving the system. “We are working to improve this system in terms of: scalability, efficiency, and the features to support different applications,” he said.
SINGA applied to Healthcare Data Analytics
With the data analytics power of SINGA, Ju Fan explained that they are collaborating with the National University Hospital System to work with data scientists and medical specialists in the healthcare domain.
They would look at data relating to diagnosis, medications, and lab tests results, with the greater aim to reduce the cost of healthcare and improve performance of services.
“The approach we draw knowledge from the healthcare data,” stated Ju Fan, “We are carrying out two applications of SINGA: the first is to predict risk of hospital readmission, and the second is chronic disease progression modelling.”
These two applications show how SINGA is helpful in analysing electronic medical record (EMR) data because:
- Hospital readmission contributes a significant proportion of healthcare spending, while a large proportion of readmissions are potentially avoidable. Predicting risk of readmission for potentially fatal diseases can effectively yield lower costs and better healthcare quality.
- Chronic diseases tend to evolve and progress over a long time, and if their conditions are not properly managed, more serious comorbidities as well as complications may ensue. Disease progression modelling can help with the early detection and management of chronic diseases.
“Working with healthcare analytics is quite challenging because of two things: the data is sparse and personalised medications,” Ju Fan told us, “To address these problems we apply the deep learning techniques because deep learning has a good ability to find the high level abstractions from the raw data.”
The benefits of having such a personalised system are clear, patients would have better treatment, doctors would perform more efficient, and hospitals would be able to reduce the overall cost of treatment.
Going forward, Apache SINGA will continue to develop and improve as SINGA could be useful to other data types and applications. The team is currently working with a local security company on malware detection, using deep learning techniques.
The team behind Apache SINGA will release version 2 of their programming model next month, January 2016.
For more technical details and development schedule, interested readers please refer to http://www.comp.nus.edu.sg/~dbsystem/singa/
Ju Fan received his PhD in computer science from Tsinghua University, China in 2012. He is currently a research fellow in the School of Computing, National University of Singapore. His research interest includes big data analytics, crowdsourcing, and database management.
Wei Wang is a Ph.D. student in the computer science department of the National University of Singapore. Currently, he is working on an Apache incubator project (SINGA) for developing a general distributed deep learning system.