What is Multi-Instance Machine learning? New Approaches
Multi-instance machine learning (MIL) refers to a supervised learning approach that focuses on training a machine learning model in accordance with large labeled data sets that are known as bags, as opposed to training such a model in conjunction with individual instances of data, hence the name. Due in large part to the massive costs associated with creating the labeled datasets that supervised machine learning algorithms require to adequately function, multi-instance machine learning is one way in which software developers can leverage a limited or weak set of training data to create a machine learning model that will still identity objects or information in an accurate and efficient manner.
How does MIL work?
To provide an example of the ways in which multi-instance learning works, consider a group of employees that all have their own keychains. Generally speaking, most people will hold a variety of different keys on their keychains, ranging from their house and car keys to their work keys, among other things. To this point, the keys that are present within a particular keychain are similar to the pieces of data that make up a dataset. For example, a dataset that contains pictures of farm animals will contain pictures of cows, horses, and sheep, in addition to various other animals. In keeping with this comparison, traditional machine learning approaches hinge on the training of a model to recognize all of the individual keys that make up a key chain. Likewise, this model will also be trained to recognize a specific farm animal, such as a cow or house.
This being said, multi-instance learning instead focuses on training a model to identify training data that has essentially been grouped together, just as a working person would put all of their keys onto a single key chain. Likewise, this keychain in the context of MIL is called a bag, and the algorithm that is being trained will be looking to predict whether this bag contains a certain portion of labeled training data, in contrast to training a model to identify individual portions of this data. In other words, a part of the whole will be used to identify the whole, making it easier for a software engineer to stretch their training data, as they can place weaker inputs with stronger inputs into a single group, under the assumption that the algorithm they are training will be able to recognize these stronger inputs amidst the larger group.
Artificial neural networks
To achieve the bag level-labeling of training data that multi-instance learning is predicated on, software developers will often utilize an artificial neural network (ANN). As neural networks are based on the functionality that is embedded in the human brain, these networks can be configured to receive inputs and outputs in a variety of ways. To this end, a neural network that has been trained using multi-instance learning will contain a layer for numerous different instances that contain training data, a pooling layer that will group this data together, and a “bag-level score” layer that will determine whether the model has made an accurate prediction as it relates to this training data. Moreover, other forms of neural networks can also be utilized to train a multi-instance learning algorithm.
Applications of multi-instance learning
As is the case with many machine learning techniques and approaches, multi-instance learning has a number of applications in the current business landscape. For example, one application of MIL in the business world is medical imaging, as computer-aided diagnosis programs can be trained to recognize medical images in which only diseased portions of the human body have been photographed, as opposed to local annotated images. Alternatively, document classification is another way in which MIL can be applied to a specific business context, as the words on a particular web page can be grouped into a larger overreaching topic, such as multiple retail websites that are a part of a larger online marketplace such as Amazon or eBay, among others.
As is the case when looking to develop almost any form of a machine learning model, the quality and quantity of the training data that a developer has at their disposal will invariably be the number one factor that determines the effectiveness of the algorithm. Subsequently, multi-instance machine learning represents one of the many techniques that a software engineer or developer can use when looking to get the most out of their training data, in an attempt to mitigate the prohibitive costs that have traditionally been associated with obtaining this data. In this way, MIL opens the world of machine learning to developers and businesses that may have not been able to afford to train an algorithm using more traditional means and methods.