Research

The internet of things, mobile applications, social media and production processes are generating increasing amounts of data, which have an important competitive impact. Based on these data, business processes can be optimized and new business models can be created. More and more companies recognize the potential of their data and begin to redefine themselves as “data-driven” companies.

New technologies such as in-memory database systems or big data technologies allow for advances analytical processing such as identifying patterns (data mining) or forecasts (predictive analytics). In addition, the integration of data sources like social media or internet of thing enables new application scenarios.

The Institute for Machine Learning and Analytics (IMLA) is dedicated to different aspects of intelligent analysis of (large) data in companies.

Autonomous Systems

An autonomous system is a system that can make decisions autonomously. To achieve this, it has to perceive its environment, develop a model of the environment based on its perceptions and act autonomously using this model. It makes decisions which are then implemented in planned actions, which in turn affect the environment. Often, an autonomous system interacts with other autonomous systems.

Examples include autonomous vehicles or autonomously acting robots, which are not programmed rigidly but have to react to changes in their environment. At Offenburg University, projexts involving autonomous systems include the Audi Autonomous Driving Cup and Shell Eco Marathon Autonomous Challenge (autonomous driving) and Sweaty (robot soccer).

Big Data

Big Data

In the area of Big Data we study how very large amounts of structured and semi-structured data can be stored and analysed efficiently. For projects and proofs of concept, IMLA has a compute cluster including GPUs for data analysis using Hadoop, R and Spark. The individual components of Hadoop and Spark each have their special usage scenarios but often are combined with other tools and external systems in order to solve more complex tasks. For example, the application area of the platform can be extended with tools for machine learning.

As part of an industry project, a big data platform was designed and implemented for storing and analysing production line data. The existing relational database technologies were extended by Hadoop components, enabling faster (ad-hoc) analyses as well as machine learning using the data.

Business Analytics

Business Analytics

Business Analytics describes the application of machine learning and statistical analysis for business management tasks. Ranging from target group analysis and campaign optimization in marketing, to sales forecasts and analysis of production processes based on sensor data. Our research also includes traditional topics of data analytics and storage, business intelligence and data warehousing, as well as complementing them with machine learning methods. Processing natural language and other unstructured data will become increasingly important for business management processes in the future.

Learning Analytics

Learning Analytics

Learning Analytics describes the measurement, collection, analysis and evaluation of data about learners and learning processes in order to offer better support for learning and teaching. A great variety of machine learning methods and techniques are employed in this area. The underlying data are typically generated in electronic learning environments and digital exam systems. Examples include exam results, learning documents, online discussion, tests and exercises. An important aspect concerning all activities in learning analytics is the protection of the identity and sensitive data of the learners.

Machine Learning

Machine Learning

Machine learning enables computers to learn to solve complex tasks autonomously, based on data, i.e. without being explicitly programmed for the task. Machine learning algorithms make use of historical test and training data in order to identify patterns and learn a model for automatically making future decisions. The main goal is to make computers learn without human interaction and adapt its actions.

There is a number of different machine learning methods that can be subdivided into supervised, unsupervised, and reinforcement learning. At IMLA we use all types of machine learning, including – in particular – deep learning.

Multimedia Databases

Multimedia Databases

Other than traditional, structured databases, multimedia databases store unstructured data, especially images, audio and video, but also free text. While users can understand the content of a picture or video, the meaning is inaccessible to a computer. Hence, search and retrieval of multimedia contents in a database can only be provided if semantic metadata are available that describe the contents. Today such metadata can be generated using deep learning. Examples include objects in images and video or faces/persons and their emotions. This enables the search for images, audio and video containing, for instance, a tiger.

Parallel Computing

Parallel Computing

Parallel computation is a prerequisite for the practical application of many machine learning techniques. For example, the time required for training a deep neural network may be reduced from weeks to a few days or even hours, which is the basis for making deep learning practically useful. Many other machine learning methods are also computationally expensive and require parallel or distributed processing.

At IMLA, we work with massively parallel systems such as graphics processing units (GPUs) and develop algorithms tailored towards them, for instance, in the area of data clustering. IMLA hosts several servers equipped with NVIDIA Tesla GPUs for highly parallel data processing.

Smart Mobile Devices

Smart Mobile Devices

Machine learning methods can also be used in mobile scenarios, in particular on smartphones. This can be achieved using different system architectures: algorithms can be run on servers completely, and data to be analyzed have to be transferred from the smartphone to the server via suitable interfaces, which requires permanent connectivity with the server. Alternatively, only the compute-intensive tasks such as training of neural networks could be run on servers, while the trained network is downloaded to the smartphone and used locally for inferencing (cf. TensorFlow Lite). A further approach is to run machine learning applications completely on the smartphone, using, for example, hardware-specific SDKs such as ARCore (Android), or AR Kit (iOS).