Inverse Feature Learning: Feature learning based on Representation Learning of Error
Abstract
This paper proposes inverse feature learning as a novel supervised feature learning technique that learns a set of high-level features for classification based on an error representation approach. The key contribution of this method is to learn the representation of error as high-level features, while current representation learning methods interpret error by loss functions which are obtained as a function of differences between the true labels and the predicted ones. One advantage of such learning method is that the learned features for each class are independent of learned features for other classes; therefore, this method can learn simultaneously meaning that it can learn new classes without retraining. Error representation learning can also help with generalization and reduce the chance of over-fitting by adding a set of impactful features to the original data set which capture the relationships between each instance and different classes through an error generation and analysis process. This method can be particularly effective in data sets, where the instances of each class have diverse feature representations or the ones with imbalanced classes. The experimental results show that the proposed method results in significantly better performance compared to the state-of-the-art classification techniques for several popular data sets. We hope this paper can open a new path to utilize the proposed perspective of error representation learning in different feature learning domains.
Index Terms:
Representation Learning of Error, Inverse Feature Learning, Classification.I Introduction
Recent feature learning trend and its branches such as deep learning have offered remarkable performance in image, speech, and natural language processing. Supervised or unsupervised representation learning are generally based on elements such as restricted Boltzmann machines (RBMs) [1], autoencoder [2, 3], convolutional neural networks (ConvNets) [4], sparse coding [5, 6], and clustering methods [7, 8, 9]. In the majority of existing supervised learning and representation learning methods, the term error refers to a function of the differences between the true and the predicted labels (i.e., loss functions). The error is utilized to optimize the training process or the learned features (e.g., optimizing the weights of neural nets). However, the notion of error can be considered in a more general term as a dynamic quantity that can capture the relationships between the instances and the predicted labels. Here, we develop a new framework for error generation and analysis called as error representation learning to learn an additional set of impactful high-level features.
In this paper, we introduce the concept of error representation learning and propose inverse feature learning as a feature learning method based on error representation. This method is inspired by human’s decision-making process that involves analysis and inference of results of its decisions. We believe proper error analysis to interpret error in the form of high-level knowledge is one of the missing puzzle pieces in the literature of feature learning. Such a perspective is somehow inspired by inverse reinforcement learning [10], which attempts to learn the reward function instead of the optimal policies. The idea behind the proposed inverse feature learning method as a supervised feature learning technique is to learn a new set of high-level features using a trial approach that investigates the impact of assigning the instances to different labels. This inverse feature learning method interprets error representation in the form of several variables which depend on the predicted labels and the instances rather than the traditional notion of scalar values (e.g. loss functions).
To the best of our knowledge, the proposed method is the first work that performs feature leaning based on the perception of error representation. This method proposes a new framework of learning by analyzing the interactions of instances and classes in a trail approach. During this trail phase, all possible labels are assigned to a test instance in order to generate the required perspective between the instances and each label in the form of new features. The key motivation of this paper is to introduce a new perspective for error representation in representation learning, and this basic proposed model can be improved in several levels and be applied in other domains.
II Related Works
The current methods in supervised or unsupervised representation learning are developed based on the representation of data. Some of the popular representation learning methods include ConvNets, RBMs, autoencoder, clustering methods, and sparse coding [1, 2, 3, 4, 5, 6, 7, 8, 9]. Supervised representation learning typically refers to a class of feature learning methods where the features are learned using the labeled data in a closed-loop manner. Deep learning techniques, as a subcategory of representation learning, learn a set of compact and high-level features of each class through multiple layers.
In recent representation learning methods, the unsupervised feature learning is usually used for pre-training nets, generally for deep networks, or for extracting high-level features, denoising, and dimensionality reductions. The authors in [11] used unsupervised learning for pre-training deep supervised networks, deep belief networks. Convolutional deep belief networks have been used for audio data in [12] and image processing in [7]. The authors in [8] used K-means as clustering for each layer sequentially in a bottom-up approach and in an end-to-end way in [13].

Here, we would like to point out the distinctions of the proposed inverse feature learning techniques related to some common trends in machine learning. The proposed error representation learning method learns high-level features depending on the instances and classes. This inverse feature learning method generates error by trial and calculates the resultant representation of the error. The proposed method is considerably different from existing techniques in the literature since they focus on data representation learning and calculate errors by the loss functions that take the difference between the predicted labels and true labels.
This proposed method is different from generative adversarial nets (GANs) [14], which use two separate neural networks competing against each other with the ultimate goal of generating synthetic data similar to the original data inputs through the generator. This proposed method is also different from similarity learning [15], which learns a similarity function to measure how similar two objects are, in the sense that it extracts the relationships between the objects and the classes. Self-supervised learning methods are based on finding patterns inside of input instances [16].
The semi-supervised learning and active learning methods that utilize a combination of classification and clustering are based on the assumption that the instances which are in the same cluster have the same label and using this assumption toward predicting the labels for new instances [17, 18, 19, 20]. In these methods, the instances near the center of clusters are considered as the most representative objects to determine the labels. Other approaches including [21, 22] utilized clustering for active learning in several different ways. The proposed inverse feature learning technique utilizes clustering for error representation learning in an innovative framework. Error representation learning is based on error generation and analysis scheme in which the instances are included in different classes and then clustered to different clusters in order to observe the relationships between the inserted instances and different members of each class and the caused effects of that insertion.
Metric learning, similarity learning, techniques in semi-supervised learning, and adversarial autoencoders like GANs learning are based on data representation learning with the same traditional notion of error that refers to calculating the differences between the true labels and the predicted ones. However, our proposed method learns the representation of error that is intentionally generated in a trail process to generate an error for each class and to process this novel notion of class-dependent error in the form of features. The aforementioned methods do not generate and process representation of error for each and all classes simultaneously as a reference but rather use the error as a by-product of true and predicted labels. Therefore, our method develops a novel concept for error representation.
III Inverse Feature Learning
In this section, we introduce the proposed inverse feature learning mechanism that learns the representation of error using a trial approach. The operation of this method for training and test instances is described in the following sub-sections III-A and III-B, respectively. The overall block-diagram of this method is shown in Figure 1.
III-A Error Representation Learning for Training Instances
The objective of the inverse feature learning method is to learn a set of additional features per sample by trial to extract the relations between the sample and the classes. This process is performed during two phases for the training and test sets. In each phase, the samples are assigned to the set of samples of the available classes one at a time and the changes in the characteristics of data before and after adding each sample are analyzed. Here, we provide an overview of the proposed method.

First, in inner folding phase, we partition the training instances to inner-training and inner-test sets during each fold in such a way that each training instance is considered as inner-test instance once. Then, in layer 1 of the proposed inverse feature learning, the inner-training samples with the same labels are grouped together. Next, the groups of samples (i.e., the samples with the same label) are clustered to a pre-determined number of clusters. The representation of these clusters for each label are calculated in the form of several intermediate features. In layer 2, each inner-test sample is intentionally assigned to all available classes, and then one of two described strategies are performed to extract and analyze a notation of error as a means to learn a new set of high-level features. In layer 3, regardless of the fact that the sample has been assigned to the right or wrong classes, we measure two sets of metrics per sample for each class. These two sets of learned metrics are then added to the original data as the learned features. Since these features are learned per class, the features belonging to different classes need to be separated from one another. Therefore, we embed the corresponding classes of these feature sets in them by multiplying the corresponding features of each class to a different large number. The model is trained and evaluated by adding the learned features per instance to the set of the primary features of the corresponding instance for both of training and test instances, respectively. In the feature learning for training instances, the features are only learned for inner-test samples, in which their labels are not considered in the process. The reason is because we aim to develop a unified framework for feature learning during the training and test phases in classification, where the test instances do not have labels.
To formulate the problem, the input training data set is presented with , in which indicates the set of input training instances and shows the number of input instances in the training partition. Each instance consists of features. The label set is denoted by , where is a vector corresponded with data set . Thus, shows the corresponding label for . Since we focus on classification, the labels are categorical. = shows the set of classes, in which indicates the number of classes. denotes the test set in which refers to the number of test instances. Notation indicates the number of instances in set . In continue, we describe the building blocks of this method with more details, as depicted in Figure 2.
Inner Folding
The first step is to find the representation of samples belonging to different classes for both training and test sets. It is simple to obtain the representation of each class for the test samples as we can simply partition the training samples to different classes in order to obtain the representation of each class. However, the equivalent process of partitioning is more computationally complex for training samples, since each sample of the training set should be considered against all remaining samples with a strategy similar to leave-one-out cross-validation. In each case, the number of remaining samples to learn the class representation is , in which denotes the number of training instances. Hence, this process involves a large number of repetitions of the feature learning process (i.e., times) that is not scalable to large data sets. Therefore, we instead apply a folding mechanism, here called as inner folding to only perform the feature learning process for a limited number of runs (i.e., -runs, where ). During each round of inner folding, the training samples are divided into two partitions of inner-training and inner-test samples.
We introduce inner folding as a partitioning mechanism that works similar to -fold cross-validation in terms of partitioning data, but the objective of this inner folding is different from typical cross-validation folding methods. Inner folding is a framework that partitions to folds. It runs times, wherein each run, folds are used for training and 1 fold is used for test. Here, each fold is considered as a test fold only one time. The training and test partitions in each run are called as inner-training and inner-test, respectively. Thus, inner folding is different from cross-validation since it is used as a mechanism to evaluate the characteristics of one test sample of inner-test against the inner-training samples in each run.
The inner-training and inner-test sets of the -run of the inner folding are shown with , and , respectively. Clearly, for each . The trail process involves assigning each test instance, , to each available label, , that exists in . In continue, we describe the three layers of error representation for each run of the inner-folding process.
Layer 1: Clustering and Extracting Intermediate Features
As mentioned before, the proposed inverse feature learning method is designed based on the analysis of error representation. The error is measured using different metrics after assignment of the inner-test samples to different classes in order to investigate the variations in the relative relations among the samples. To do that, first, the instances of each class are clustered to a pre-determined number of clusters using -means algorithm as an unsupervised learning method. K-means algorithm is selected as the clustering technique since it is very fast and can be scaled to high-dimensional data sets [23]. However, we understand that -means algorithm does not perform well in cases, where the instances have different densities or the instances are distributed in non-spherical forms. We should note that the proposed inverse feature learning method is generic and can be implemented with other clustering techniques.
During each round of the inner-folding process, the instances of are first categorized based on their labels, , to , in which shows the number of labels in . The corresponding input instances and labels of group during round , , are shown with . Then, the samples of each class , , are clustered to clusters. These clusters are ordered based on the number of their member instances and shown with .
During the clustering, each object is assigned to the cluster that has the nearest centroid as a mean of its instances based on a distance metric. The objective function of K-means is considered to find the in order to minimize the objective function, , as described in (1).
(1) |
where denotes the number of instances in group with label , and denotes the instance that belongs to cluster .
Mean-group is a metric defined as the mean of each group, . This metric, as described in algorithm 1, is a vector denoted by that its -element is calculated as the average of features of all instances that belong to this group.
In order to evaluate the characteristics of the clusters of each class, we define three other metrics of confidence, mean, and centroid, as described in algorithm 1. These measures act similar to kernel functions of ConvNets to extract the representation of each cluster. The centroid indicates the center of a cluster that is obtained by the clustering method. The Confidence is a singular scalar value and defined as the ratio of the number of instances of each cluster to the number of all instances of that class. In other words, the confidence metric is a membership value that shows the probability that an instance belongs to a particular class. The mean is a vector with length that calculates the average of features of all instances that belong to a cluster. The calculation of these measures in layer 1 captures the baselines to learn the error as defined in layer 2.
Layer 2: Error Generation
In machine learning methods, error is the result of differences between the predicted output and true output that is measured by loss functions and used to train the model. In a simple case, the error is “one” when a predicted label is incorrect, and the error is “zero” when the predicted label is correct. In the proposed inverse feature learning method, instead of using this traditional notion of error, the error is measured based on resultant representation of assigning the instances to different classes in a trail approach.
As mentioned earlier, the instances that belong to each group of = have the same label. In layer 1, the representation of each class and its clusters were measured using several intermediate features (e.g. the mean of a class, and the centroid, the mean, and the confidence of the clusters). The goal of layer 2 is to evaluate the changes in these intermediate features, and in a more general sense, the representation of each class using the formed clusters by adding the test samples of inner-test. In other words, we assign the samples of the inner-test set to the existing labels one at a time. Therefore, the term trail refers to the process of inserting a new inner-test sample, , to a group of samples with the same label, and generating a new set of ().
We have considered two strategies to evaluate the characteristics of data after addition of new inner-test samples. In the first strategy, the similarity between the instance and the centers of clusters of each class is measured to find the closest one in order to assign that instance to this closest cluster. In other words, this sample is added to the closest cluster. Thus, in the first strategy, which is the simpler option, is to calculate the distances between the sample of inner-test, , () and the centers of all clusters in (obtained in algorithm 1), and then assign to the closest cluster of the class . This cluster is denoted by . After that the confidence, centroid, and mean are only calculated for the nearest cluster. This strategy is described in Algorithm 2.
In the second strategy, the formed clusters of layer 1, , are no longer used. Instead, in the this strategy, the set of instances in each class including the primary and new instances are clustered again. The first strategy involves less computations, however, it does not necessarily perform as well as the the second strategy of re-clustering when the density of clusters are considerably different. For instance, when there exists several outliers in the original groups.
Layer 3: Error Calculation
The purpose of layer 1 was to capture the representation of classes in the form of clusters before the trial process. In layer 2, the representation of each inner-test instance and classes after the trial was captured when each inner-test instance is added to a cluster of each class. Now in layer 3, the representation of error is learned through several high-level features by non-linear modules as described in following. These features capture the relationships between the inner-test samples and the clusters through two feature sets. The definition of these features are summarized in Algorithm 3.
Feature Set 1: The distances between the new instance and the clusters of each label
This feature set captures the representation of error inside of each class including the distance of this instance to its closest adjacent instance in the class (), the distance of the instance with the mean-group () as well as the distance of the inner-test sample with the centers of all clusters for each class (feature set: ), the distance of the inner-test sample with the means of all clusters of each class (feature set: ).
Feature Set 2: The changes in class representations before and after inserting the new inner-test sample
To capture the effects of error in the level of classes, the distances between the means and confidences of the clusters of each class, formed in layer 1 and layer 2, are calculated. Also, the distances between the centers and means of clusters that were formed in layer 1 and layer 2 within each class are measured. We also measure the difference between the confidence metric of original cluster formed in layer 1 and the cluster including the sample in layer 2 that represents the membership value denoted by .
Each instance in the training is considered as the inner-test instance for one time and then these features are calculated for this sample. The learned features in layer 3 are added to the set of the primary features of that inner-test instance. Thus, the output of the inner folding is a set of features per instance of the training. Since these features are calculated per class, they need to be differentiated from each other. Therefore, the features of each class are multiplied by the class ID to be separated from each other. For example, if we have three classes, a, b, and c, the learned features of these classes are multiplied to 1, 10, and 20, respectively to be distinguished from each other. Such separation of learned features of different classes cannot be easily handled by some classification methods, therefore, we utilized ensemble decision tree as the classifier for our approach to best treat this proposed embedded distance mechanism. In the following section, the process of feature learning for the test instances has been described.
III-B Error Representation Learning for Test Instances
In this phase, as is shown in Figure 1, the entire training set along with its additional learned features can be used as the training instances in the feature learning method (i.e., the inner folding process is no longer required). Therefore, the training and test instances are fed to the three-layer feature learning method to learn corresponding features for the test instances. We would like to note that the training instances are grouped based on their labels and then clustered. The test instances, which their labels are not available, are assigned to the proper cluster of each label and then the features are learned for each test instance. Hence, this step does not require the labels of test instances. Finally, the extended training and test data sets with the learned features are fed to the classifier.
IV Time Complexity
The proposed inverse feature learning method is developed based on clustering the data set using -means algorithm through a trial process to learn several high-level features based on representation of error. For the sake of simplicity, this process is explained in a sequential way (algorithm 1), however, the process of clustering for different instances can be performed simultaneously. Therefore, the time complexity of this method would be a function of time complexity of the underlying -means clustering algorithm.
The time complexity of Lloyd’s algorithm of -means is , in which is the number of iteration, is the number of clusters, is the number of instances, and is the number of features [24]. Since the number of iterations, , the number of features, , and the number of clusters, , are constant, the time complexity of this algorithm is linear. In the second strategy of error generation, the samples in each class are clustered again after adding a new test sample as described in Section III. Hence, the -means clustering method is performed times during the inner folding process, in which the number of runs, , is a constant number. Thus, the time complexity of the feature learning process is linear. Obviously, the time complexity of the first strategy in error generation, where the new instance is added to the cluster with the closest center is also linear.
V Experimental Results
In this section, we evaluate the performance of the proposed inverse feature learning method using several popular binary and multi-class data sets. To do so, we compared its performance versus several classification methods that only use the original features. We embed the corresponding classes of learned feature sets of instances by multiplying the corresponding features of each class to a different number. All of those features of different classes are added to the corresponding original set of features of instances. Although, this multiplication and adding the learned features per class to the original ones may worsen the performance of some classifiers as they are required to deal with a bigger set of features including the original and learned features. Thus, the classifiers that consider the whole features as a unified set are subject to a weak performance here. Therefore, we used boosting decision trees as the main classifier for the proposed method because it works based on several decision trees that can better handle a bigger set of features of learned and original features corresponding to different classes compared to other classifiers. Different metrics including accuracy and F1 scores are used to evaluate the performance of our method. Also, we compared the performance of this inverse feature learning versus several deep representation learning approaches, as described in [25], such as Linear ELM [26], Deep Belief Networks [27], Stacked Auto-Encoder [11] for pre-training weights of the deep network alongside a softmax classifier [28], DrELM [25], and [25]. The results are reported using “Statistics and Machine Learning Toolbox” of MATLAB ®.
Data sets | #instances | #features | #class |
---|---|---|---|
Cryotherapy | 90 | 7 | 2 |
Diabetes | 768 | 8 | 2 |
Heart | 270 | 13 | 2 |
credit | 30000 | 23 | 2 |
Segment | 1500 | 19 | 7 |
Ionosphere | 351 | 34 | 2 |
Glass | 214 | 9 | 6 |
Spam | 4601 | 57 | 2 |
magic | 19020 | 10 | 2 |
# | Data sets | Naive Bayes | KNN | Decision Tree | Ensemble | Inverse Feature learning | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
F1 | Accuracy | F1 | Accuracy | F1 | Accuracy | F1 | Accuracy | F1 | Accuracy | ||
1 | Cryotherapy | 0.9109 | 0.9098 | 0.8994 | 0.9054 | 0.9221 | 0.9321 | 0.8656 | 0.8791 | 0.9666 | 0.9667 |
2 | Heart | 0.7910 | 0.7864 | 0.7975 | 0.8115 | 0.7627 | 0.7827 | 0.7773 | 0.7890 | 0.8567 | 0.8593 |
3 | Segment | 0.8898 | 0.8844 | 0.9607 | 0.9600 | 0.9393 | 0.9439 | 0.9762 | 0.9761 | 0.9804 | 0.9807 |
4 | Glass | 0.5396 | 0.6155 | 0.7477 | 0.7512 | 0.6571 | 0.6925 | 0.7085 | 0.7470 | 0.7809 | 0.7850 |
5 | magic | 0.6907 | 0.7603 | 0.8013 | 0.8244 | 0.8084 | 0.8214 | 0.8549 | 0.8699 | 0.8597 | 0.8753 |
6 | Diabetes | 0.6797 | 0.7193 | 0.6569 | 0.6950 | 0.6825 | 0.7118 | 0.6883 | 0.7181 | 0.7456 | 0.7721 |
7 | Ionosphere | 0.9019 | 0.8961 | 0.8956 | 0.9011 | 0.8691 | 0.8835 | 0.9243 | 0.9257 | 0.9564 | 0.9601 |
8 | Spam | 0.5147 | 0.5241 | 0.9129 | 0.9184 | 0.9127 | 0.9186 | 0.9464 | 0.9552 | 0.9562 | 0.9583 |
9 | credit | 0.4979 | 0.7193 | 0.6110 | 0.7276 | 0.6238 | 0.7394 | 0.6714 | 0.8072 | 0.6783 | 0.8109 |
Data sets | Segment | Diabetes |
---|---|---|
Linear ELM [26] | 0.8661 | 0.7459 |
Deep Belief Networks [27] | 0.9551 | 0.7805 |
Stacked Auto-Encoder [11] | 0.9568 | 0.7783 |
DrELM | 0.9530 | 0.7763 |
0.9579 | 0.7822 | |
Inverse Feature Learning | 0.9807 | 0.7721 |
We evaluated the results of our method over several runs for different data sets and the results showed very small variances. Theoretically speaking, since we just added a number of features and used the common classifiers that do not depend on stochastic behaviors; therefore, the results only have very small variances over different runs. The only stochastic part of the method is the clustering, where the clustering methods such as k-means can be easily stabilized [29, 30] and are used in feature learning methods [8, 9].
A number of common data sets with a different number of instances, features, and classes are used in this study including Cryotherapy, Heart, Segment, Magic, Letter, Credit, Spam, and Ionosphere [31]. The characteristics of these data sets are summarized in Table I. The reported results are obtained using -fold cross-validation. Let us first describe the parameters involved in the proposed method before presenting the results.
As described in Section III, the feature learning process for training data is based on a -fold inner folding process, where shows the number of folds. Each round of inner folding involves clustering the training data set using -means, in which is the number of clusters. The clustering can be performed using various distance metrics such as Minkowski, Euclidean, Cosine, Jaccard, City Block among other distance metrics. The corresponding parameters used in the proposed inverse feature learning method for the results in Table IV are described. The number of folds for cross-validation of the baseline classifier in Table II is selected as 5 or 10 as used for the proposed method in the second column of Table IV.
The reported results are based on using the first strategy of error generation (i.e., assigning the test instances to the closest cluster). The results are reported for the case that the proposed inverse feature learning method is performed over boosting decision trees classifier. The reason behind selecting the boosting decision trees is its robust performance versus different feature sets per class since we embedded the label of each class in the learned features of that class. Different baseline classifiers such as Naive Bayes (NB), Decision Tree, -nearest neighbors (KNNs), and an Ensemble Classifier in form of boosting decision trees, as the same classifier that we used for inverse feature learning, are used for the sake of comparison.
As it can be seen in Table II, the proposed feature learning method provides considerably better results in different data sets compared to the known classifiers that only work with original features. It means that the learned features using our method can significantly improve the results of popular classifiers. The parameters of the proposed feature learning method are fine-tuned based on the data sets as described in Table IV. In Table IV, the third column describes the set of learned features (as described in Algorithm 3) that are used for each dataset. The fourth column of this table describes the underlying distance metric used for clustering. In this table, refers to the layer, and its following number refers to the levels of layers. For example, refers to layer 1. The distance metrics are abbreviated. For example, ‘CB’ refers to City Block, ‘JA’ stands for Jaccard and ‘EU’ represents Euclidean distance.
Data sets | k-fold | feature set | distance metrics | ||
---|---|---|---|---|---|
Cryotherapy | 10 | 5 | 5 | 2.2 | L1,3:CB, L2:Ja |
Heart | 10 | 2 | 3 | 1.0, 1.2, 1.3 | L1:Eu, L2: CB |
Segment | 10 | 5 | 5 | 1.0, 1.1, 2.1, 2.4 | L1,3:CB, L2:Ja |
Glass | 5 | 5 | 3 | 1.1 | L1:EU, L2,3:Ja |
magic | 10 | 5 | 10 | 2.1, 2.4 | L1,3:Eu, L2:Ja |
Diabetes | 5 | 2 | 10 | 2.1, 2.4 | L1,3:Eu, L2:Ja |
credit | 10 | 5 | 10 | 1.0, 1.1 | L1,3:CB, L2:Ja |
Ionosphere | 5 | 5 | 5 | 1.0 | L1:CB, L2:Ja, L3:EU |
Spam | 10 | 3 | 15 | 2.3 | L1:EU, L2,3: Ja |
We also compared the result of the proposed method in terms of accuracy with several most known approaches that learn deep representation in Table III. As it can been seen in the table, the proposed method can provide comparable results with these methods or outperform for some data sets, while it is worth noting that our method can learn new classes in an incremental manner without modifying the learned features of previous classes. However, the deep representation learning generally cannot be easily scaled-up to learn new classes without re-training. Based on the well-known “no free lunch” theorem, there is no method that is superior to other methods over all data sets. As it can be seen in Table III, for Diabetes data set, the accuracy of the inverse feature learning is just about below than [25] and the accuracy for Segment data set is better than the known deep representation leanings as the-state-of-art in recent literature.
We should note that we evaluated the performance of this inverse feature learning method using other clustering techniques such as spectral clustering (e.g., DBSCAN [32]). Using this clustering method led to better results since it can handle different data densities in better forms. However, this clustering works based on graph Laplacian matrix that requires a considerable memory to operate, therefore, it was not easily feasible for large scale data sets.
VI Conclusion
In this paper, we propose error representation learning as a new feature learning trend that deals with error as a dynamic component that can disclose a valuable set of information about the relations of the instances and the classes. To the best of our knowledge, current machine learning methods interpret the error in a simple notion of a constant scalar that evaluates the differences between the true and the predicted labels. In this paper, we propose a general concept of error representation that can evaluate the error in several new levels in order to learn high-level and explicable features by trial. The proposed feature learning method based on error representation, called as inverse feature learning adds the set of learned features to the set of primary features. The inverse feature learning method is performed in a hierarchical structure by evaluating the results of adding each instance of interest to available classes using several different metrics. The experimental results show the significant performance of this feature learning method compared to several state-of-the-art classification methods and some of the most known deep representation learning methods.
References
- [1] S. Paul, “Information processing in dynamical systems: Foundations of harmony theory,” COLORADO UNIV AT BOULDER DEPT OF COMPUTER SCIENCE, Tech. Rep., 1986.
- [2] H. Bourlard and Y. Kamp, “Auto-association by multilayer perceptrons and singular value decomposition,” Biological cybernetics, 59, no. 4-5, pp. 291–294, 1988.
- [3] G. E. Hinton and R. S. Zemel, “Autoencoders, minimum description length and helmholtz free energy,” in Advances in neural information processing systems, 1994, pp. 3–10.
- [4] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner, “Gradient-based learning applied to document recognition,” Proceedings of the IEEE, 86, no. 11, pp. 2278–2324, 1998.
- [5] B. A. Olshausen and D. J. Field, “Sparse coding with an overcomplete basis set: A strategy employed by v1?” Vision research, 37, no. 23, pp. 3311–3325, 1997.
- [6] H. Lee, A. Battle, R. Raina, and A. Y. Ng, “Efficient sparse coding algorithms,” in Advances in neural information processing systems, 2007, pp. 801–808.
- [7] H. Lee, R. Grosse, R. Ranganath, and A. Y. Ng, “Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations,” in Proceedings of the 26th annual international conference on machine learning. ACM, 2009, pp. 609–616.
- [8] A. Coates and A. Y. Ng, “Learning feature representations with k-means,” in Neural networks: Tricks of the trade. Springer, 2012, pp. 561–580.
- [9] J. Xie, R. Girshick, and A. Farhadi, “Unsupervised deep embedding for clustering analysis,” in International conference on machine learning, 2016, pp. 478–487.
- [10] A. Y. Ng, S. J. Russell et al., “Algorithms for inverse reinforcement learning.” in Icml, 2000, pp. 663–670.
- [11] Y. Bengio, P. Lamblin, D. Popovici, and H. Larochelle, “Greedy layer-wise training of deep networks,” in Advances in neural information processing systems, 2007, pp. 153–160.
- [12] H. Lee, P. Pham, Y. Largman, and A. Y. Ng, “Unsupervised feature learning for audio classification using convolutional deep belief networks,” in Advances in neural information processing systems, 2009, pp. 1096–1104.
- [13] M. Caron, P. Bojanowski, A. Joulin, and M. Douze, “Deep clustering for unsupervised learning of visual features,” arXiv preprint arXiv:1807.05520, 3, 2018.
- [14] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, and Y. Bengio, “Generative adversarial nets,” in Advances in neural information processing systems, 2014, pp. 2672–2680.
- [15] M. Koestinger, M. Hirzer, P. Wohlhart, P. M. Roth, and H. Bischof, “Large scale metric learning from equivalence constraints,” in Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012, pp. 2288–2295.
- [16] V. R. de Sa, “Learning classification with unlabeled data,” in Advances in neural information processing systems, 1994, pp. 112–119.
- [17] O. Chapelle, B. Scholkopf, and A. Zien, “Semi-supervised learning (chapelle, o. et al., eds.; 2006)[book reviews],” IEEE Transactions on Neural Networks, 20, no. 3, pp. 542–542, 2009.
- [18] K. Benabdeslem and M. Hindawi, “Efficient semi-supervised feature selection: constraint, relevance, and redundancy,” IEEE transactions on knowledge and data engineering, 26, no. 5, pp. 1131–1143, 2014.
- [19] M. Seeger, “Learning with labeled and unlabeled data,” Tech. Rep., 2000.
- [20] O. Chapelle, J. Weston, and B. Schölkopf, “Cluster kernels for semi-supervised learning,” in Advances in neural information processing systems, 2003, pp. 601–608.
- [21] Z. Xu, K. Yu, V. Tresp, X. Xu, and J. Wang, “Representative sampling for text classification using support vector machines,” in European Conference on Information Retrieval. Springer, 2003, pp. 393–407.
- [22] H. T. Nguyen and A. Smeulders, “Active learning using pre-clustering,” in Proceedings of the twenty-first international conference on Machine learning. ACM, 2004, p. 79.
- [23] A. Coates, A. Ng, and H. Lee, “An analysis of single-layer networks in unsupervised feature learning,” in Proceedings of the fourteenth international conference on artificial intelligence and statistics, 2011, pp. 215–223.
- [24] S. Lloyd, “Least squares quantization in pcm,” IEEE transactions on information theory, 28, no. 2, pp. 129–137, 1982.
- [25] W. Yu, F. Zhuang, Q. He, and Z. Shi, “Learning deep representations via extreme learning machines,” Neurocomputing, pp. 149, 308–315, 2015.
- [26] G.-B. Huang, Q.-Y. Zhu, and C.-K. Siew, “Extreme learning machine: a new learning scheme of feedforward neural networks,” in Neural Networks, 2004. Proceedings. 2004 IEEE International Joint Conference on, vol. 2. IEEE, 2004, pp. 985–990.
- [27] G. E. Hinton and R. R. Salakhutdinov, “Reducing the dimensionality of data with neural networks,” science, 313, no. 5786, pp. 504–507, 2006.
- [28] W. H. Greene, Econometric analysis. Pearson Education India, 2003.
- [29] L. I. Kuncheva and D. P. Vetrov, “Evaluation of stability of k-means cluster ensembles with respect to random initialization,” IEEE transactions on pattern analysis and machine intelligence,28, no. 11, pp. 1798–1808, 2006.
- [30] A. Rakhlin and A. Caponnetto, “Stability of -means clustering,” in Advances in neural information processing systems, 2007, pp. 1121–1128.
- [31] D. Dheeru and E. Karra Taniskidou, “UCI machine learning repository,” 2017. [Online]. Available: http://archive.ics.uci.edu/ml
- [32] M. Ester, H.-P. Kriegel, J. Sander, X. Xu et al., “A density-based algorithm for discovering clusters in large spatial databases with noise.” in Kdd, vol. 96, no. 34, 1996, pp. 226–231.