<?xml version='1.0'?>
<!DOCTYPE art SYSTEM 'http://www.biomedcentral.com/xml/article.dtd'>
<art>
   <ui>1471-2105-5-78</ui>
   <ji>1471-2105</ji>
   <fm>
      <dochead>Research article</dochead>
      <bibl>
         <title>
            <p>Boosting accuracy of automated classification of fluorescence microscope images for location proteomics</p>
         </title>
         <aug>
            <au id="A1">
               <snm>Huang</snm>
               <fnm>Kai</fnm>
               <insr iid="I1"/>
               <insr iid="I3"/>
               <email>khuang@andrew.cmu.edu</email>
            </au>
            <au id="A2" ca="yes">
               <snm>Murphy</snm>
               <mi>F</mi>
               <fnm>Robert</fnm>
               <insr iid="I1"/>
               <insr iid="I2"/>
               <insr iid="I3"/>
               <email>murphy@cmu.edu</email>
            </au>
         </aug>
         <insg>
            <ins id="I1">
               <p>Department of Biological Sciences, Carnegie Mellon University,4400 Fifth Avenue, Pittsburgh, PA 15213 USA</p>
            </ins>
            <ins id="I2">
               <p>Department of Biomedical Engineering, Carnegie Mellon University,4400 Fifth Avenue, Pittsburgh, PA 15213 USA</p>
            </ins>
            <ins id="I3">
               <p>Center for Automated Learning and Discovery, Carnegie Mellon University,4400 Fifth Avenue, Pittsburgh, PA 15213 USA</p>
            </ins>
         </insg>
         <source>BMC Bioinformatics</source>
         <issn>1471-2105</issn>
         <pubdate>2004</pubdate>
         <volume>5</volume>
         <issue>1</issue>
         <fpage>78</fpage>
         <url>http://www.biomedcentral.com/1471-2105/5/78</url>
         <xrefbib>
            <pubidlist>
               <pubid idtype="pmpid">15207009</pubid>
               <pubid idtype="doi">10.1186/1471-2105-5-78</pubid>
            </pubidlist>
         </xrefbib>
      </bibl>
      <history>
         <rec>
            <date>
               <day>26</day>
               <month>1</month>
               <year>2004</year>
            </date>
         </rec>
         <acc>
            <date>
               <day>18</day>
               <month>6</month>
               <year>2004</year>
            </date>
         </acc>
         <pub>
            <date>
               <day>18</day>
               <month>6</month>
               <year>2004</year>
            </date>
         </pub>
      </history>
      <cpyrt>
         <year>2004</year>
         <collab>Huang and Murphy; licensee BioMed Central Ltd. This is an Open Access article: verbatim copying and redistribution of this article are permitted in all media for any purpose, provided this notice is preserved along with the article's original URL.</collab>
      </cpyrt>
      <abs>
         <sec>
            <st>
               <p>Abstract</p>
            </st>
            <sec>
               <st>
                  <p>Background</p>
               </st>
               <p>Detailed knowledge of the subcellular location of each expressed protein is critical to a full understanding of its function. Fluorescence microscopy, in combination with methods for fluorescent tagging, is the most suitable current method for proteome-wide determination of subcellular location. Previous work has shown that neural network classifiers can distinguish all major protein subcellular location patterns in both 2D and 3D fluorescence microscope images. Building on these results, we evaluate here new classifiers and features to improve the recognition of protein subcellular location patterns in both 2D and 3D fluorescence microscope images.</p>
            </sec>
            <sec>
               <st>
                  <p>Results</p>
               </st>
               <p>We report here a thorough comparison of the performance on this problem of eight different state-of-the-art classification methods, including neural networks, support vector machines with linear, polynomial, radial basis, and exponential radial basis kernel functions, and ensemble methods such as AdaBoost, Bagging, and Mixtures-of-Experts. Ten-fold cross validation was used to evaluate each classifier with various parameters on different Subcellular Location Feature sets representing both 2D and 3D fluorescence microscope images, including new feature sets incorporating features derived from Gabor and Daubechies wavelet transforms. After optimal parameters were chosen for each of the eight classifiers, optimal majority-voting ensemble classifiers were formed for each feature set. Comparison of results for each image for all eight classifiers permits estimation of the lower bound classification error rate for each subcellular pattern, which we interpret to reflect the fraction of cells whose patterns are distorted by mitosis, cell death or acquisition errors. Overall, we obtained statistically significant improvements in classification accuracy over the best previously published results, with the overall error rate being reduced by one-third to one-half and with the average accuracy for single 2D images being higher than 90% for the first time. In particular, the classification accuracy for the easily confused endomembrane compartments (endoplasmic reticulum, Golgi, endosomes, lysosomes) was improved by 5&#8211;15%. We achieved further improvements when classification was conducted on image sets rather than on individual cell images.</p>
            </sec>
            <sec>
               <st>
                  <p>Conclusions</p>
               </st>
               <p>The availability of accurate, fast, automated classification systems for protein location patterns in conjunction with high throughput fluorescence microscope imaging techniques enables a new subfield of proteomics, location proteomics. The accuracy and sensitivity of this approach represents an important alternative to low-resolution assignments by curation or sequence-based prediction.</p>
            </sec>
         </sec>
      </abs>
   </fm>
   <meta>
      <classifications>
         <classification type="bmc" subtype="user_supplied_xml" id="endnote"/>
      </classifications>
   </meta>
   <bdy>
      <sec>
         <st>
            <p>Background</p>
         </st>
         <p>High-throughput methods for proteomics have become necessary in order to characterize the tens of thousands of proteins expressed in each multicellular organism. Although high-throughput methods for structural proteomics <abbrgrp><abbr bid="B1">1</abbr></abbrgrp> and expression proteomics <abbrgrp><abbr bid="B2">2</abbr></abbrgrp> are available and a number of large-scale projects have been initiated to make use of them, far less attention has been paid to automating the determination of the subcellular locations of proteins.</p>
         <p>As an alternative to experimental determination, various approaches to predicting subcellular location from protein sequences have been described. These have used amino acid composition <abbrgrp><abbr bid="B3">3</abbr><abbr bid="B4">4</abbr></abbrgrp>, N-terminal signal peptide sequences <abbrgrp><abbr bid="B5">5</abbr></abbrgrp>, functional domain composition <abbrgrp><abbr bid="B6">6</abbr><abbr bid="B7">7</abbr></abbrgrp>, and combined evidence from sequence properties and expression levels <abbrgrp><abbr bid="B8">8</abbr></abbrgrp>. The limitation in these approaches to date has been the absence of a systematic, high-resolution framework for describing subcellular location. That is, since only a small number (4&#8211;12) of broad location classes have been used to train these systems, they cannot distinguish the many different distributions that proteins can have within a single organelle (or the many combinations of these distributions that may occur). The performance of these approaches cannot be significantly improved unless a large number of subcellular location patterns are determined experimentally.</p>
         <p>The spatial distribution of each protein in a cell type can be detected by various methods for fluorescently tagging a protein followed by fluorescence microscope imaging. In recent years, automated classification systems that can be used to assign proteins to the major subcellular location classes have been described <abbrgrp><abbr bid="B9">9</abbr><abbr bid="B10">10</abbr><abbr bid="B11">11</abbr></abbrgrp>. The combination of such methods with high throughput imaging systems <abbrgrp><abbr bid="B12">12</abbr></abbrgrp> holds enormous promise for automating the systematic determination of this critical aspect of protein function. The information that can be obtained from such systems can potentially be used to train improved systems for predicting location from primary sequence.</p>
         <p>High-throughput automated recognition of protein subcellular distributions requires both robust image features and accurate classifiers. Several different image feature sets have been derived for 2D and 3D fluorescence microscope images <abbrgrp><abbr bid="B9">9</abbr><abbr bid="B11">11</abbr><abbr bid="B13">13</abbr><abbr bid="B14">14</abbr></abbrgrp>, which capture information such as texture, object morphology and geometrical properties. Advanced feature reduction techniques have been used to select the most discriminative features from these feature sets <abbrgrp><abbr bid="B15">15</abbr></abbrgrp>. Ten major subcellular location patterns in 2D images and eleven in 3D images, including two that cannot be discriminated by visual inspection, can be distinguished using these features.</p>
         <p>Our group has considered two variations on this recognition problem, one in which only gray level images of the distribution of a single protein are available, and the other in which a parallel image of the DNA distribution in the same cell is also available. Our initial work made use of an artificial neural network for classification. With this classifier, we have achieved 86% average classification accuracy on 2D HeLa cell images without parallel DNA images and 88% accuracy with them <abbrgrp><abbr bid="B14">14</abbr></abbrgrp>. For 3D HeLa cell images, we have achieved 91% average accuracy for the same patterns <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>. The goal of the work described here was to improve upon these results using state-of-the-art classifiers and new features. The classifiers evaluated in this paper are described briefly below.</p>
         <sec>
            <st>
               <p>Support Vector Machines (SVM)</p>
            </st>
            <p>Support Vector Machines <abbrgrp><abbr bid="B16">16</abbr></abbrgrp> are linear classifiers that find a hyperplane between two classes which maximizes the minimum distance between the hyperplane and the data points (the maximum margin hyperplane). The hyperplane can be sparsely represented by a small amount of data lying on the boundary of the maximum margin. Theoretically, maximum-margin classifiers can minimize the classification structural risk, the upper bound on the error expected for a test set <abbrgrp><abbr bid="B17">17</abbr></abbrgrp>.</p>
            <p>SVM were first characterized in a two-class learning environment. However, they can be extended to solve multi-class learning problems by using one of three methods.</p>
            <p>&#8226; Max-win classification <abbrgrp><abbr bid="B17">17</abbr></abbrgrp> trains <it>N </it>support vector machines, each of which separates class <it>i </it>from non-<it>i</it>. The predicted class from the machine generating the highest output score is selected as the prediction.</p>
            <p>&#8226; Pair-wise classification <abbrgrp><abbr bid="B18">18</abbr></abbrgrp> trains a separate binary classifier for distinguishing each possible pair of classes. Each of these binary classifiers is given a vote and the class with the most votes is selected as the predicted class.</p>
            <p>&#8226; DAG (Directed Acyclic Graph) classification <abbrgrp><abbr bid="B19">19</abbr></abbrgrp> puts the binary classifiers trained in the pair-wise classification method into nodes of a rooted binary DAG. The output of each SVM is used to trace the graph until a leaf node that specifies the final prediction is reached. The rationale behind this method is that achieving a maximum margin classifier at each node of the classifier graph guarantees an upper bound on the generalization error <abbrgrp><abbr bid="B19">19</abbr></abbrgrp>.</p>
         </sec>
         <sec>
            <st>
               <p>Ensemble Methods</p>
            </st>
            <p>All current machine learning models have some constraints or local minima in certain application domains given limited training data <abbrgrp><abbr bid="B20">20</abbr></abbrgrp>, resulting in the fact that different learning models might perform better for different application domains. Therefore it is useful to build an ensemble expert that can combine the outputs from different classifiers in a way such that the local limitations of each individual model can be overcome in the ensemble by other models that do not have the same constraints. In practice, ensemble methods have been shown to perform better than any of the base classifiers if the output errors of each base classifier are not fully dependent <abbrgrp><abbr bid="B20">20</abbr><abbr bid="B21">21</abbr><abbr bid="B22">22</abbr><abbr bid="B23">23</abbr></abbrgrp>. However, it is still an open question whether an ensemble model consisting of base classifiers with independent errors performs better than one consisting of base classifiers with partially dependent errors <abbrgrp><abbr bid="B24">24</abbr></abbrgrp>. Many different ways of creating ensemble classifiers have been described <abbrgrp><abbr bid="B20">20</abbr><abbr bid="B25">25</abbr></abbrgrp> and we summarize some of these approaches here.</p>
            <sec>
               <st>
                  <p>AdaBoost</p>
               </st>
               <p>AdaBoost is an example of ensemble methods that create new and improved base classifiers by iteratively manipulating the training dataset <abbrgrp><abbr bid="B26">26</abbr></abbrgrp>. It generates base classifiers, such as a neural network or decision tree, at each training iteration. Every newly created base classifier is fed an adjusted distribution in which each data point in the training set is assigned a weight computed from its classification result for the previous base classifier. The rationale behind Adaboost is to force a new base classifier to focus on the data points that were incorrectly classified previously such that those hard examples can be better classified in the new base classifier <abbrgrp><abbr bid="B26">26</abbr></abbrgrp>.</p>
            </sec>
            <sec>
               <st>
                  <p>Bagging</p>
               </st>
               <p>Bagging, which stands for bootstrap aggregation, is another way of manipulating training data for ensemble methods. In each bagging iteration, the training examples are bootstrapped (resampled with replacement), to generate a different training set for the base classifier <abbrgrp><abbr bid="B20">20</abbr></abbrgrp>. On average, 63.2% of the total original training examples are retained in each bootstrapped set <abbrgrp><abbr bid="B20">20</abbr></abbrgrp>. The rational behind bagging is that unstable base classifiers, such as neural networks and decision trees whose behavior could be significantly changed by small fluctuations in the training dataset, are more likely to be stabilized after being trained with different input data and combined afterwards <abbrgrp><abbr bid="B20">20</abbr><abbr bid="B25">25</abbr></abbrgrp>.</p>
            </sec>
            <sec>
               <st>
                  <p>Mixtures-of-Experts</p>
               </st>
               <p>An ensemble method can also use a divide-and-conquer strategy to separate the training examples into many partitions, train a local base classifier (an expert) for each partition, and then combine the outputs of these local experts in a supervised-learning way <abbrgrp><abbr bid="B25">25</abbr><abbr bid="B27">27</abbr></abbrgrp>. Mixtures-of-Experts <abbrgrp><abbr bid="B27">27</abbr><abbr bid="B28">28</abbr><abbr bid="B29">29</abbr></abbrgrp> is one kind of these ensemble methods.</p>
               <p>Mixtures-of-Experts models the target data generation process as <abbrgrp><abbr bid="B27">27</abbr></abbrgrp>:</p>
               <p>
                  <graphic file="1471-2105-5-78-i1.gif"/>
               </p>
               <p>where <it>Y </it>stands for the target data, <it>X </it>is the input data, and <it>Z </it>is a representation of hidden experts that relate an input data point to a target. The target generation process can be regarded as two steps <abbrgrp><abbr bid="B27">27</abbr><abbr bid="B28">28</abbr></abbrgrp>: one is to assign every input data point to a specific expert and the other is to compute the target data given the input data point and its related expert. A gating network is used in Mixtures-of-Experts to model P(Z | X), the first step above, and local expert networks are used to model P(Y | X, Z), which is the second step above <abbrgrp><abbr bid="B27">27</abbr></abbrgrp>.</p>
            </sec>
            <sec>
               <st>
                  <p>Majority-voting Ensembles</p>
               </st>
               <p>The majority-voting ensemble classifier is one of the simplest ensemble forms that can combine the outputs of multiple classifiers. Instead of using the complicated schemes described above, we can simply choose the predicted class by plurality from a classifier pool <abbrgrp><abbr bid="B20">20</abbr><abbr bid="B25">25</abbr></abbrgrp>. Assuming that the errors made by the classifiers are not highly correlated, the samples that are not accurately classified by one classifier have a good chance to be correctly classified by a plurality of the other classifiers. The majority-voting ensemble classifier overcomes the difficulty of choosing one classifier from a pool of classifiers with similar performance. Different weighting schemes have been described to form the plurality prediction from the classifier pool <abbrgrp><abbr bid="B20">20</abbr><abbr bid="B30">30</abbr></abbrgrp>.</p>
            </sec>
         </sec>
      </sec>
      <sec>
         <st>
            <p>Results and Discussion</p>
         </st>
         <sec>
            <st>
               <p>Subcellular Image Datasets</p>
            </st>
            <p>In order to demonstrate the feasibility of recognizing the major subcellular structures in fluorescence microscope images of single cells, we have previously created large collections of 2D and 3D immunofluorescence images of HeLa cells <abbrgrp><abbr bid="B9">9</abbr><abbr bid="B11">11</abbr></abbrgrp>. The subcellular location patterns in these collections include endoplasmic reticulum (ER), the Golgi complex, lysosomes, mitochondria, nucleoli, actin microfilaments, endosomes, microtubules, and nuclear DNA. We designed sets of numerical features to describe the pattern in the images, which we term SLF (for Subcellular Location Features). When these features were used to train neural network classifiers, from 73&#8211;99% of the images could be correctly classified (depending on the pattern) <abbrgrp><abbr bid="B11">11</abbr><abbr bid="B14">14</abbr></abbrgrp>. Figure <figr fid="F1">1</figr> depicts the most typical 2D and 3D image of each pattern from correctly classified images using these neural network classifiers. (The most typical image was selected using TypIC <abbrgrp><abbr bid="B31">31</abbr></abbrgrp>, an algorithm that ranks images by their distance to the centroid of the feature space.) The goal of the work described here was to improve on the previous performance.</p>
            <fig id="F1">
               <title>
                  <p>Figure 1</p>
               </title>
               <caption>
                  <p>Representative images of each pattern from correctly classified images using previous neural network classifiers</p>
               </caption>
               <text>
                  <p>Representative images of each pattern from correctly classified images using previous neural network classifiers. Ten patterns from the 2D/3D HeLa cell image collection are depicted: endoplasmic reticulum (A/K), giantin (B/L), gpp130 (C/M), LAMP2 (D/N), mitochondria (E/O), nucleolin (F/P), actin (G/Q), transferrin receptor (H/R), tubulin (I/S), and DNA (J/T). Each false color in the 3D images represents the fluorescence intensity from labeling the target protein (green), total DNA (red), and total protein (blue). Projections that are summed upon the Z or Y axis are shown. The feature sets SLF13 (2D) and SLF10 (3D) were used both for classification and for choosing a typical image.</p>
               </text>
               <graphic file="1471-2105-5-78-1"/>
            </fig>
         </sec>
         <sec>
            <st>
               <p>Comparison of Classifier Characteristics</p>
            </st>
            <p>Our first goal was to measure the performance of the different classifiers described above with the SLF that we have used previously. Before embarking on this, we here try to provide some insight into the differences between the classifiers. For this purpose, we can describe them using three characteristics. The first characteristic is the complexity of the decision boundaries that a classifier can generate. Figure <figr fid="F2">2</figr> illustrates differences in this characteristic for a pair of Golgi proteins, giantin and gpp130, that are difficult to distinguish computationally (and essentially impossible to distinguish visually <abbrgrp><abbr bid="B14">14</abbr></abbrgrp>). There is significant overlap in the feature distributions for these classes but for illustration we selected the most discriminative pair of features for the two Golgi patterns using stepwise discriminant analysis (SDA) from the combination of SLF7 and the 6 DNA features (SLF7DNA). These were the fraction of fluorescence not in any object (SLF7.79) and the convex hull eccentricity (SLF1.16). The values of these features for each image are plotted in Figure <figr fid="F2">2</figr> along with colored regions illustrating the boundary between the two classes found by three different classifiers. While the boundaries for the neural network and mixture-of-experts classifiers are nearly linear, the boundary for the exponential-rbf-kernel SVM is much more convoluted. The accuracy of the classifiers increases with the extent of curvature, from 68.6% for the neural network, to 71.5% for the mixture-of-experts, to 75% for the exponential-rbf-kernel SVM.</p>
            <fig id="F2">
               <title>
                  <p>Figure 2</p>
               </title>
               <caption>
                  <p>Decision boundaries of various classifiers for distinguishing the patterns of two Golgi proteins</p>
               </caption>
               <text>
                  <p>Decision boundaries of various classifiers for distinguishing the patterns of two Golgi proteins. A scatterplot of the two most informative features for distinguishing images of giantin (circle) and gpp130 (triangle). These were chosen from SLF7DNA by SDA. Various classifiers were trained using just these features and maps of the class assigned to various points in the feature plane by each trained classifier were created (a zero (white) pixel corresponded to gpp130). A false color map was created by combining the decision maps for exponential-rbf kernel SVM (green), the majority-voting ensemble classifier (red), and neural networks (blue).</p>
               </text>
               <graphic file="1471-2105-5-78-2"/>
            </fig>
            <p>A second classifier characteristic is the dependence of performance on the size of the training set. This can be divided into two parts: ability to learn from limited training data, and insensitivity to the presence of outliers when training data is plentiful. Both of these can only be described in relative terms by comparing the performance of different classifiers on the same data. Figure <figr fid="F3">3</figr> shows a comparison of the major classifiers for both 2D and 3D images as a function of the amount of training data provided. For low numbers of training images, performance is similar for all 2D classifiers but varies significantly for the 3D classifiers. In particular, bagging does poorly for low numbers of training images while the majority-voting ensemble does quite well. As the amount of training data is increased, all but one of the classifiers improve their accuracy monotonically. The exception is the neural network classifier, for which the accuracy decreases. We presume that this is due to a heightened chance of including outlier images as the size of the training set increases.</p>
            <fig id="F3">
               <title>
                  <p>Figure 3</p>
               </title>
               <caption>
                  <p>Dependence of classifier performance on amount of training data</p>
               </caption>
               <text>
                  <p>Dependence of classifier performance on amount of training data. The average performances of neural network (filled circle), SVM (open diamond), AdaBoost (filled triangle), Bagging (filled square), Mixtures-of-Experts (filled diamond), and majority-voting ensemble (open square) classifiers are shown as a function of the amount of training data given to the classifier. Average performance is defined as the average fraction of images in ten (2D) or eleven (3D) classes that were correctly classified over ten cross-validation trials. A) Results for 2D images using feature set SLF13. B) Results for 3D images using feature set SLF10.</p>
               </text>
               <graphic file="1471-2105-5-78-3"/>
            </fig>
            <p>The third characteristic is the sensitivity of performance to the presence of uninformative features. This is illustrated in Figure <figr fid="F4">4</figr>, in which classification accuracy is displayed as a function of increasing numbers of features. For this purpose, the features in SLF13 and SLF10 were ranked in order of their discriminative ability by SDA. Classifiers were trained using increasing numbers of the sorted features, and when these were exhausted additional features (which can be regarded as noisy or less informative features) were randomly included from the 90-dimensional SLF7DNA and 28-dimensional SLF9. For the 2D images (Figure <figr fid="F4">4A</figr>), all classifiers except neural networks handled the increasing number of input features with little impairment from uninformative features. The decrease in accuracy for neural networks at high numbers of features, along with the large fluctuations in their performance, implies that feature selection is essential for neural network classification in the SLF7DNA feature space. For 3D images (Figure <figr fid="F4">4B</figr>), neural networks performed the best and the SVM classifier showed a significant drop in accuracy as the number of features increased. When compared to Figure <figr fid="F4">4A</figr>, the stability of neural networks as well as the instability of SVM in the SLF9 feature space implies that the ability of a classifier to adapt to more noisy features depends on the feature space itself. As will be shown later, image set classification is much less dependent on the feature space.</p>
            <fig id="F4">
               <title>
                  <p>Figure 4</p>
               </title>
               <caption>
                  <p>Dependence of classifier performance on number of input features</p>
               </caption>
               <text>
                  <p>Dependence of classifier performance on number of input features. The average performances of neural network (filled circle), SVM (open diamond), AdaBoost (filled triangle), Bagging (filled square), Mixtures-of-Experts (filled diamond), and majority-voting ensemble (open square) classifiers are shown as a function of the number of features used to train the classifier. Average performance is defined as the average fraction of images in ten (2D) or eleven (3D) classes that were correctly classified over ten cross-validation trials. The features in SLF7DNA (A) or SLF9 (B) were ranked in order of their ability to discriminate the classes using SDA and increasing numbers of the features were used to train classifiers.</p>
               </text>
               <graphic file="1471-2105-5-78-4"/>
            </fig>
            <p>Table <tblr tid="T1">1</tblr> summarizes the above three characteristics for all major classifiers. It also shows the information content (the number of parameters times the bits required for each parameter) of the model that each classifier builds from the training data. We note that the classifier with the lowest information content, the neural network, is also the most effective classifier at learning from limited training data.</p>
            <tbl id="T1">
               <title>
                  <p>Table 1</p>
               </title>
               <caption>
                  <p>Comparison of the characteristics of the classifiers used in this study. The results are derived from the data in Figures 2-4.</p>
               </caption>
               <tblbdy cols="6">
                  <r>
                     <c ca="left">
                        <p>Classifier</p>
                     </c>
                     <c ca="left">
                        <p>Ability to generate nonlinear decision boundary</p>
                     </c>
                     <c ca="left">
                        <p>Ability to learn well from limited training data</p>
                     </c>
                     <c ca="left">
                        <p>Insensitivity to outliers in training data</p>
                     </c>
                     <c ca="left">
                        <p>Insensitivity to uninformative features</p>
                     </c>
                     <c ca="left">
                        <p>Log information content* (2D/3D)</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>Neural Networks</p>
                     </c>
                     <c ca="left">
                        <p>Low</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>10.0/10.0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>Exponential-rbf-kernel SVM</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>Low</p>
                     </c>
                     <c ca="left">
                        <p>14.2/13.9</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>AdaBoost</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>Med</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>13.5/13.4</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>Bagging</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>Low</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>14.8/12.0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>Mixtures-of-Experts</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>Low</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>13.5/13.5</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>Majority-voting Ensemble</p>
                     </c>
                     <c ca="left">
                        <p>Medium</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>High</p>
                     </c>
                     <c ca="left">
                        <p>14.7/14.6</p>
                     </c>
                  </r>
               </tblbdy>
               <tblfn>
                  <p>* The natural logarithmic of the information content was calculated as described in the Methods section for the feature set SLF13 (2D) and SLF10 (3D). The classifiers were configured as detailed in Table 2.</p>
               </tblfn>
            </tbl>
         </sec>
         <sec>
            <st>
               <p>Evaluation of Eight Classifiers</p>
            </st>
            <p>With this background, we proceeded to evaluate the different classifiers using two different feature sets for 2D HeLa images, namely SLF8 and SLF13, and two different feature sets for 3D HeLa images, namely SLF10 and SLF14. Two feature sets were used for each image collection so that performance with and without DNA features could be compared. Eight classifiers, including a one-hidden-layer neural network, linear-kernel SVM, rbf-kernel SVM, exponential-rbf-kernel SVM, polynomial-kernel SVM, AdaBoost, Bagging, and Mixtures-of-Experts, were evaluated by 10-fold cross validation.</p>
            <p>Table <tblr tid="T2">2</tblr> shows the results for each classifier with its optimal parameters for each of the four feature sets. To address the statistical significance of the experiments, we conducted a paired t-test between the 10-fold cross validation results of each of the eight classifiers and those for the neural network classifier topology we described previously. Previous results have shown that the inclusion of features calculated from a parallel DNA image can improve classification accuracy. The parallel DNA channel provides an additional landmark for locating protein subcellular distributions. For instance, a nucleolar protein would be expected to overlap completely with the DNA channel, while a mitochondrial protein would be localized around but not in the nucleus. As expected, both SLF13 and SLF10 performed better than their no-DNA counterparts SLF8 and SLF14, respectively. However, the benefit from the DNA features was much larger for 3D image classification (about 6%) than for 2D image classification (about 1%). The reason for this is unclear, but could be due either to the greater amount of information present in 3D images, or to the presence of redundancy between the non-DNA and DNA features for 2D but not 3D images.</p>
            <tbl id="T2">
               <title>
                  <p>Table 2</p>
               </title>
               <caption>
                  <p>Comparison of eight classifiers for 2D and 3D image classification. The average classification accuracy on test data (from 10-fold cross-validation) is shown for the optimal parameters settings (shown in parentheses) for each classification approach. The parameters are: nhu &#8211; number of hidden nodes in neural network, stop-fract &#8211; the fraction of the training data used to stop neural network training, C &#8211; error penalty in SVMs, sigma &#8211; kernel variance in SVMs, nboost &#8211; total number of iterations in AdaBoost, nbag &#8211; total number of iterations in Bagging, nhug &#8211; number of hidden nodes in the gating network of Mixtures-of-Experts, and ne &#8211; total number of experts in Mixtures-of-Experts. The accuracies across the 10-fold cross-validation trials were compared to those for the previously described neural network configuration (nhu = 20, stop-fract = 0.3) by a paired t-test (88% for SLF13, 86% for SLF8, 93% for SLF10, and 84% for SLF14). The best performances are underscored and highlighted for each feature set. *CPU times listed for each classifier are for training and testing for all images in each cross-validation trial (training times include times calculating features), which were measured on an Athlon 1.7 GHz processor with 1.5 GB memory running Redhat Linux 7.1.</p>
               </caption>
               <tblbdy cols="6">
                  <r>
                     <c ca="center">
                        <p>Feature Set</p>
                     </c>
                     <c ca="center">
                        <p>Classifier</p>
                     </c>
                     <c ca="center">
                        <p>Classification accuracy (%)</p>
                     </c>
                     <c ca="center">
                        <p>Average training time* (s)</p>
                     </c>
                     <c ca="center">
                        <p>Average testing time* (s)</p>
                     </c>
                     <c ca="center">
                        <p>P-value</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p>SLF13 (2D DNA)</p>
                     </c>
                     <c ca="left">
                        <p>Neural Network (nhu = 16, stop-fract = 0.1)</p>
                     </c>
                     <c ca="center">
                        <p>87.8</p>
                     </c>
                     <c ca="right">
                        <p>116.3</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.001</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.43</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (linear, DAG, C = 1)</p>
                     </c>
                     <c ca="center">
                        <p>87.9</p>
                     </c>
                     <c ca="right">
                        <p>
                           <b>0.7</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.088</p>
                     </c>
                     <c ca="center">
                        <p>0.36</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (rbf, DAG, sigma = 8, C = 16)</p>
                     </c>
                     <c ca="center">
                        <p>89.4</p>
                     </c>
                     <c ca="right">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>0.470</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.03</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (exprbf, maxwin, sigma = 4, C = 4)</p>
                     </c>
                     <c ca="center">
                        <p>89.2</p>
                     </c>
                     <c ca="right">
                        <p>3.5</p>
                     </c>
                     <c ca="center">
                        <p>0.530</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.04</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (poly, maxwin, degree = 2, C = 0.01)</p>
                     </c>
                     <c ca="center">
                        <p>88.6</p>
                     </c>
                     <c ca="right">
                        <p>4.7</p>
                     </c>
                     <c ca="center">
                        <p>0.140</p>
                     </c>
                     <c ca="center">
                        <p>0.21</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Adaboost (nhu = 8, nboost = 64)</p>
                     </c>
                     <c ca="center">
                        <p>88.9</p>
                     </c>
                     <c ca="right">
                        <p>55.2</p>
                     </c>
                     <c ca="center">
                        <p>0.018</p>
                     </c>
                     <c ca="center">
                        <p>0.10</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Bagging (nhu = 64, nbag = 32)</p>
                     </c>
                     <c ca="center">
                        <p>88.9</p>
                     </c>
                     <c ca="right">
                        <p>111.0</p>
                     </c>
                     <c ca="center">
                        <p>0.078</p>
                     </c>
                     <c ca="center">
                        <p>0.09</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Mixtures-of-Experts (nhu = 16, nhug = 64, ne = 16)</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>
                              <ul>89.7</ul>
                           </b>
                        </p>
                     </c>
                     <c ca="right">
                        <p>38.3</p>
                     </c>
                     <c ca="center">
                        <p>0.010</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.02</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p>SLF8 (2D)</p>
                     </c>
                     <c ca="left">
                        <p>Neural Network (nhu = 16, stop-fract = 0.3)</p>
                     </c>
                     <c ca="center">
                        <p>86.1</p>
                     </c>
                     <c ca="right">
                        <p>139.1</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.001</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.53</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (linear, DAG, C = 1)</p>
                     </c>
                     <c ca="center">
                        <p>84.9</p>
                     </c>
                     <c ca="right">
                        <p>
                           <b>0.7</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.075</p>
                     </c>
                     <c ca="center">
                        <p>0.83</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (rbf, maxwin, sigma = 8, C = 64)</p>
                     </c>
                     <c ca="center">
                        <p>87.9</p>
                     </c>
                     <c ca="right">
                        <p>11.4</p>
                     </c>
                     <c ca="center">
                        <p>1.600</p>
                     </c>
                     <c ca="center">
                        <p>0.15</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (exprbf, maxwin, sigma = 8, C = 16)</p>
                     </c>
                     <c ca="center">
                        <p>88.1</p>
                     </c>
                     <c ca="right">
                        <p>4.0</p>
                     </c>
                     <c ca="center">
                        <p>0.540</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.02</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (poly, maxwin, degree = 2, C = 0.01)</p>
                     </c>
                     <c ca="center">
                        <p>86.7</p>
                     </c>
                     <c ca="right">
                        <p>5.2</p>
                     </c>
                     <c ca="center">
                        <p>0.170</p>
                     </c>
                     <c ca="center">
                        <p>0.37</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Adaboost (nhu = 32, nboost = 128)</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>
                              <ul>88.2</ul>
                           </b>
                        </p>
                     </c>
                     <c ca="right">
                        <p>412.0</p>
                     </c>
                     <c ca="center">
                        <p>0.190</p>
                     </c>
                     <c ca="center">
                        <p>0.12</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Bagging (nhu = 64, nbag = 64)</p>
                     </c>
                     <c ca="center">
                        <p>87.2</p>
                     </c>
                     <c ca="right">
                        <p>238.2</p>
                     </c>
                     <c ca="center">
                        <p>0.160</p>
                     </c>
                     <c ca="center">
                        <p>0.17</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Mixtures-of-Experts (nhu = 32, nhug = 16, ne = 4)</p>
                     </c>
                     <c ca="center">
                        <p>87.0</p>
                     </c>
                     <c ca="right">
                        <p>11.6</p>
                     </c>
                     <c ca="center">
                        <p>0.002</p>
                     </c>
                     <c ca="center">
                        <p>0.22</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p>SLF10 (3D DNA)</p>
                     </c>
                     <c ca="left">
                        <p>Neural Network (nhu = 32, stop-fract = 0.1)</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>
                              <ul>95.3</ul>
                           </b>
                        </p>
                     </c>
                     <c ca="right">
                        <p>740.3</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.001</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.06</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (linear, DAG, C = 8)</p>
                     </c>
                     <c ca="center">
                        <p>93.3</p>
                     </c>
                     <c ca="right">
                        <p>
                           <b>0.3</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.043</p>
                     </c>
                     <c ca="center">
                        <p>0.47</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (rbf, maxwin, sigma = 2, C = 64)</p>
                     </c>
                     <c ca="center">
                        <p>95.0</p>
                     </c>
                     <c ca="right">
                        <p>2.3</p>
                     </c>
                     <c ca="center">
                        <p>0.230</p>
                     </c>
                     <c ca="center">
                        <p>0.08</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (exprbf, DAG, sigma = 1, C = 1)</p>
                     </c>
                     <c ca="center">
                        <p>95.2</p>
                     </c>
                     <c ca="right">
                        <p>0.5</p>
                     </c>
                     <c ca="center">
                        <p>0.081</p>
                     </c>
                     <c ca="center">
                        <p>0.06</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (poly, maxwin, degree = 2, C = 1)</p>
                     </c>
                     <c ca="center">
                        <p>93.1</p>
                     </c>
                     <c ca="right">
                        <p>2.0</p>
                     </c>
                     <c ca="center">
                        <p>0.067</p>
                     </c>
                     <c ca="center">
                        <p>0.51</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Adaboost (nhu = 32, nboost = 32)</p>
                     </c>
                     <c ca="center">
                        <p>93.2</p>
                     </c>
                     <c ca="right">
                        <p>43.2</p>
                     </c>
                     <c ca="center">
                        <p>0.016</p>
                     </c>
                     <c ca="center">
                        <p>0.46</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Bagging (nhu = 64, nbag = 4)</p>
                     </c>
                     <c ca="center">
                        <p>89.4</p>
                     </c>
                     <c ca="right">
                        <p>6.8</p>
                     </c>
                     <c ca="center">
                        <p>0.003</p>
                     </c>
                     <c ca="center">
                        <p>0.99</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Mixtures-of-Experts (nhu = 32, nhug = 64, ne = 16)</p>
                     </c>
                     <c ca="center">
                        <p>92.2</p>
                     </c>
                     <c ca="right">
                        <p>45.8</p>
                     </c>
                     <c ca="center">
                        <p>0.007</p>
                     </c>
                     <c ca="center">
                        <p>0.74</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p>SLF14 (3D)</p>
                     </c>
                     <c ca="left">
                        <p>Neural Network (nhu = 32, stop-fract = 0)</p>
                     </c>
                     <c ca="center">
                        <p>88.4</p>
                     </c>
                     <c ca="right">
                        <p>172.0</p>
                     </c>
                     <c ca="center">
                        <p>0.001</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.02</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (linear, DAG, C = 32)</p>
                     </c>
                     <c ca="center">
                        <p>86.5</p>
                     </c>
                     <c ca="right">
                        <p>
                           <b>1.0</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.047</p>
                     </c>
                     <c ca="center">
                        <p>0.12</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (rbf, maxwin, sigma = 2, C = 32)</p>
                     </c>
                     <c ca="center">
                        <p>86.6</p>
                     </c>
                     <c ca="right">
                        <p>4.6</p>
                     </c>
                     <c ca="center">
                        <p>0.290</p>
                     </c>
                     <c ca="center">
                        <p>0.17</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (exprbf, maxwin, sigma = 2, C = 8)</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>
                              <ul>89.1</ul>
                           </b>
                        </p>
                     </c>
                     <c ca="right">
                        <p>1.4</p>
                     </c>
                     <c ca="center">
                        <p>0.170</p>
                     </c>
                     <c ca="center">
                        <p>0.05</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>SVM (poly, maxwin, degree = 2, C = 2)</p>
                     </c>
                     <c ca="center">
                        <p>87.3</p>
                     </c>
                     <c ca="right">
                        <p>8.3</p>
                     </c>
                     <c ca="center">
                        <p>0.068</p>
                     </c>
                     <c ca="center">
                        <p>0.05</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Adaboost (nhu = 64, nboost = 64)</p>
                     </c>
                     <c ca="center">
                        <p>87.7</p>
                     </c>
                     <c ca="right">
                        <p>144.3</p>
                     </c>
                     <c ca="center">
                        <p>0.085</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.03</b>
                        </p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Bagging (nhu = 64, nbag = 256)</p>
                     </c>
                     <c ca="center">
                        <p>82.2</p>
                     </c>
                     <c ca="right">
                        <p>505.7</p>
                     </c>
                     <c ca="center">
                        <p>0.340</p>
                     </c>
                     <c ca="center">
                        <p>0.82</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="left">
                        <p>Mixtures-of-Experts (nhu = 16, nhug = 8, ne = 2)</p>
                     </c>
                     <c ca="center">
                        <p>83.8</p>
                     </c>
                     <c ca="right">
                        <p>2.9</p>
                     </c>
                     <c ca="center">
                        <p>
                           <b>0.001</b>
                        </p>
                     </c>
                     <c ca="center">
                        <p>0.59</p>
                     </c>
                  </r>
               </tblbdy>
            </tbl>
            <p>The various parameters selected for each classifier on different feature sets suggest that the right configuration of a classifier is highly dependent on the input data. Given limited data, a classifier can only be optimized to an extent that its performance is maximized on this specific set of data. However, we can still observe some common trends in parameter selection. The pairwise method for combining binary SVMs was never selected in our experiments, although the pairwise method was reported to give good performance in some application domains. There is an assumption in this method that the binary classifier should generate an unknown prediction for classes that it cannot recognize. In other words, a binary classifier trained between classes <it>a </it>and <it>b </it>should give equal weights to both <it>a </it>and <it>b </it>given a data point from a third class <it>c</it>. However, this assumption seemed not to hold in our experiments. None of the pairwise methods gave an average accuracy over 20% for any of the four feature sets (data not shown). On the contrary, both maxwin and DAG methods gave much better results and it is hard to tell which one of the two was more advantageous. The close performance of linear-kernel SVMs with other nonlinear-kernel SVMs in most experiments suggested that the classification boundaries in the original input spaces of all four feature sets were not far from linear. This can be confirmed by the optimal choices of the polynomial degrees in the polynomial-kernel SVMs. A polynomial degree of 2 was selected for all four feature sets. The smaller the degree, the more linear the final classification boundary would be. SVMs, ranked in the top two for all four feature sets, performed generally very well among all classifiers in both 2D and 3D classifications. Ensemble methods displayed more varieties in their performances. Although two ensemble methods, Mixtures-of-Experts and AdaBoost, performed the best on the feature set SLF13 and SLF8 respectively, these methods did not perform well in 3D classifications. Among the ensemble methods, AdaBoost showed the most consistent performance.</p>
            <p>Table <tblr tid="T2">2</tblr> also shows cpu times for training and testing each classifier. Although the training and testing time of a classifier can be affected by the number of features, the data itself, and the implementation details, we observe some trends from the experimental results. As expected, the more hidden nodes in a neural network, the longer it will take to train, which can be observed in neural networks, Adaboost, Bagging, and Mixtures-of-Experts. It is also obvious that longer iterations of boosting, bagging, and larger number of experts in Mixtures-of-Experts account for more time in training classifiers. SVMs are the fastest to train among all eight classifiers, although relatively slow in the test phase. Despite various changes in its parameters, the training time of SVM stays consistent for each kernel function. Neural network is the fastest classifier in the testing phase in three out of the four experiments conducted. Three ensemble methods also show faster performance in testing than SVMs, partially because the building blocks of these methods in the experiments are also neural networks.</p>
            <p>To determine the significance of improvements in performance by individual classifiers over our previous neural network approach, we conducted a paired t-test <abbrgrp><abbr bid="B32">32</abbr></abbrgrp>, on the 10-fold cross validation results of each classifier against those of the previously configured neural networks. From Table <tblr tid="T2">2</tblr>, we can see that three, one, and two of the eight individually configured classifiers performed significantly better than the previous neural network classifiers on SLF13, SLF8, and SLF14 feature sets respectively. None of the eight classifiers could perform statistically better than the previous neural network classifier on SLF10. If a single classifier has to be selected for each of the four feature sets, a support vector machine classifier with exponential-rbf kernel function can be used given its reasonable accuracy and speed, although some fine tuning of its parameters might need to be conducted.</p>
         </sec>
         <sec>
            <st>
               <p>Optimal Majority-voting Ensembles of Eight Classifiers</p>
            </st>
            <p>More improvement might be achieved by taking a majority-voting ensemble model of all possible combinations of the eight tested classifiers. Since all eight classifiers were trained differently and were based on either different kernel functions or different theoretical justifications, their error can be regarded as mostly independent, which makes constructing a larger ensemble model possible. Table <tblr tid="T3">3</tblr> shows the statistics of pairwise-classifier-error correlation coefficients between all 8 classifiers on six different feature sets. As expected, all pairs of classifiers did not show strong error correlation. The mean error correlation coefficients from all six experiments were less than 0.15.</p>
            <tbl id="T3">
               <title>
                  <p>Table 3</p>
               </title>
               <caption>
                  <p>Analysis of error correlation between different classifiers. For each of the classifiers listed in Table 2, a list of all test images that were incorrectly classified was generated. The correlation coefficient between the incorrectly classified images was calculated for each pair of classifiers, and the minimum, maximum, mean and standard deviation of these correlations were calculated for all pairs. This process was repeated for each feature set.</p>
               </caption>
               <tblbdy cols="5">
                  <r>
                     <c ca="center">
                        <p>Feature Set</p>
                     </c>
                     <c cspan="4" ca="center">
                        <p>Pairwise-Classifier-Error Correlation Coefficients</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c cspan="4">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="center">
                        <p>Min</p>
                     </c>
                     <c ca="center">
                        <p>Max</p>
                     </c>
                     <c ca="center">
                        <p>Mean</p>
                     </c>
                     <c ca="center">
                        <p>St. dev.</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="5">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF8 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>0.01</p>
                     </c>
                     <c ca="center">
                        <p>0.22</p>
                     </c>
                     <c ca="center">
                        <p>0.09</p>
                     </c>
                     <c ca="center">
                        <p>0.06</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF15 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>0.00</p>
                     </c>
                     <c ca="center">
                        <p>0.22</p>
                     </c>
                     <c ca="center">
                        <p>0.10</p>
                     </c>
                     <c ca="center">
                        <p>0.06</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF13 (2D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>0.00</p>
                     </c>
                     <c ca="center">
                        <p>0.25</p>
                     </c>
                     <c ca="center">
                        <p>0.10</p>
                     </c>
                     <c ca="center">
                        <p>0.06</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF16 (2D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>0.00</p>
                     </c>
                     <c ca="center">
                        <p>0.26</p>
                     </c>
                     <c ca="center">
                        <p>0.10</p>
                     </c>
                     <c ca="center">
                        <p>0.07</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF14 (3D)</p>
                     </c>
                     <c ca="center">
                        <p>0.00</p>
                     </c>
                     <c ca="center">
                        <p>0.25</p>
                     </c>
                     <c ca="center">
                        <p>0.11</p>
                     </c>
                     <c ca="center">
                        <p>0.07</p>
                     </c>
                  </r>
                  <r>
                     <c ca="left">
                        <p>SLF10 (3D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>0.01</p>
                     </c>
                     <c ca="center">
                        <p>0.41</p>
                     </c>
                     <c ca="center">
                        <p>0.13</p>
                     </c>
                     <c ca="center">
                        <p>0.10</p>
                     </c>
                  </r>
               </tblbdy>
            </tbl>
            <p>There are many possible voting schemes that can be employed in a majority-voting ensemble. Some experiments have shown that a relatively simple method such as unweighted majority voting works as well as those more complicated trainable weighted voting methods <abbrgrp><abbr bid="B30">30</abbr></abbrgrp>. Therefore, we constructed an unweighted majority-voting ensemble of all possible combinations of the 8 classifiers for each feature set. Table <tblr tid="T4">4</tblr> shows the optimal majority-voting classifiers found for each feature set. The accuracies on both SLF8 and SLF13 feature sets were improved by 1% by combining three classifiers for each: exponential-rbf-kernel SVM, AdaBoost, and Bagging for SLF8; rbf-kernel SVM, AdaBoost, and Mixtures-of-Experts for SLF13. Less than 1% improvement, however, were observed on the SLF10 and SLF14 feature sets. Two of the top three classifiers for each feature set (Table <tblr tid="T2">2</tblr>) were selected in all optimal majority-voting ensembles. The same paired t-test was conducted between the majority-voting classifier and the previously configured neural network classifier for each feature set. Statistically significant improvements were obtained for all four feature sets. Compared to the individual optimal classifiers listed in Table <tblr tid="T2">2</tblr> for each feature set, the majority-voting classifiers for SLF13 also showed statistically significant improvement. Although only a marginal improvement was observed by using a majority-voting classifier for each feature set in general, it eliminates the subjective errors resulting from having to choose a single classifier for a classification problem.</p>
            <tbl id="T4">
               <title>
                  <p>Table 4</p>
               </title>
               <caption>
                  <p>Improvement in classification accuracy using majority voting ensembles. Optimal unweighted majority-voting ensemble classifiers were formed by selecting classifiers from all 8 classifiers for each feature set listed and the average classification accuracy for 10-fold cross-validation was calculated. A paired-t test was performed for each ensemble classifier against the previous neural network classifier for each feature subset (SLF15 and SLF16 were compared against the previous classifier for SLF8 and SLF13, respectively). Each ensemble classifier was also compared against the optimal classifier for each feature set listed in Table 2 (SLF15 and SLF16 were compared with the individual optimal classifiers for SLF8 and SLF13, respectively).</p>
               </caption>
               <tblbdy cols="6">
                  <r>
                     <c ca="center">
                        <p>Feature Set</p>
                     </c>
                     <c ca="center">
                        <p>Classifiers in the Optimal Majority-voting Ensemble</p>
                     </c>
                     <c ca="center">
                        <p>Average classification accuracy (%)</p>
                     </c>
                     <c ca="center">
                        <p>P-value of paired t test with previous results</p>
                     </c>
                     <c ca="center">
                        <p>P-value of paired t test with optimal single classifier</p>
                     </c>
                     <c ca="center">
                        <p>Classification Accuracy Upper Bound* (%)</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="6">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF8 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>Exprbf-kernel SVM</p>
                        <p>AdaBoost</p>
                        <p>Bagging</p>
                     </c>
                     <c ca="center">
                        <p>89.4</p>
                     </c>
                     <c ca="center">
                        <p>0.003</p>
                     </c>
                     <c ca="center">
                        <p>0.08</p>
                     </c>
                     <c ca="center">
                        <p>95.5</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF15 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>Rbf-kernel SVM</p>
                        <p>Exponential-rbf-kernel SVM</p>
                        <p>Polynomial-kernel SVM</p>
                     </c>
                     <c ca="center">
                        <p>91.5</p>
                     </c>
                     <c ca="center">
                        <p>0.0006</p>
                     </c>
                     <c ca="center">
                        <p>0.01</p>
                     </c>
                     <c ca="center">
                        <p>96.1</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF13 (2D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>Rbf-kernel SVM</p>
                        <p>AdaBoost</p>
                        <p>Mixtures-of-Experts</p>
                     </c>
                     <c ca="center">
                        <p>90.7</p>
                     </c>
                     <c ca="center">
                        <p>0.003</p>
                     </c>
                     <c ca="center">
                        <p>0.03</p>
                     </c>
                     <c ca="center">
                        <p>95.6</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF16 (2D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>Neural Network</p>
                        <p>Linear-kernel SVM</p>
                        <p>Exprbf-kernel SVM</p>
                        <p>Polynomial-kernel SVM</p>
                        <p>AdaBoost</p>
                     </c>
                     <c ca="center">
                        <p>92.3</p>
                     </c>
                     <c ca="center">
                        <p>0.003</p>
                     </c>
                     <c ca="center">
                        <p>0.02</p>
                     </c>
                     <c ca="center">
                        <p>96.6</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF14 (3D)</p>
                     </c>
                     <c ca="center">
                        <p>Neural Network</p>
                        <p>Linear-kernel SVM</p>
                        <p>Exprbf-kernel SVM</p>
                        <p>Polynomial-kernel SVM</p>
                        <p>AdaBoost</p>
                     </c>
                     <c ca="center">
                        <p>89.8</p>
                     </c>
                     <c ca="center">
                        <p>0.02</p>
                     </c>
                     <c ca="center">
                        <p>0.29</p>
                     </c>
                     <c ca="center">
                        <p>96.3</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF10 (3D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>Linear-kernel SVM</p>
                        <p>Rbf-kernel SVM</p>
                        <p>Exprbf-kernel SVM</p>
                        <p>Mixtures-of-Experts</p>
                     </c>
                     <c ca="center">
                        <p>95.8</p>
                     </c>
                     <c ca="center">
                        <p>0.02</p>
                     </c>
                     <c ca="center">
                        <p>0.35</p>
                     </c>
                     <c ca="center">
                        <p>98.2</p>
                     </c>
                  </r>
               </tblbdy>
               <tblfn>
                  <p>* The upper bound of classification accuracy for a feature set is defined as the percentage of all images that could be correctly classified by at least one of the eight tested classifiers using that feature set.</p>
               </tblfn>
            </tbl>
            <p>Assuming we were able to select the best classifier for each individual image, we can calculate the upper bounds of classification accuracy on the current feature sets. Over 95% of all images can be correctly classified by at least one of the eight tested classifiers for each of the four feature sets. SLF10, containing only 9 features, gave the closest performance to its upper bound among the feature sets. The accuracy upper bounds presumably represent the fraction of cells whose patterns were distorted by mitosis, cell death or acquisition errors.</p>
         </sec>
         <sec>
            <st>
               <p>Inclusion of New Texture Features</p>
            </st>
            <p>Having presumably identified the limits of classification accuracy using the existing SLF, we next examined whether adding new features could improve these accuracies. In looking for new features, we noted that eleven of the features selected for SLF8 and nine of the features selected for SLF13 were Haralick texture features <abbrgrp><abbr bid="B14">14</abbr></abbrgrp>. To explore the possibility that other types of texture features might provide additional descriptive power, a wavelet-based multiresolution filtering technique was used to derive two additional sets of texture features, namely Gabor texture features <abbrgrp><abbr bid="B33">33</abbr></abbrgrp> and Daubechies 4 wavelet features <abbrgrp><abbr bid="B34">34</abbr></abbrgrp>. Gabor texture features were reported to outperform a number of other wavelet transformations in a task of analyzing images with natural textures <abbrgrp><abbr bid="B35">35</abbr><abbr bid="B36">36</abbr></abbrgrp>.</p>
            <p>60 Gabor texture features and 30 Daubechies 4 wavelet features were added to the current 2D image features. In addition to the six features derived from parallel DNA images and the original 84 features from the SLF7 feature set, we ended up with 180 features in total for 2D image description. We have shown that feature reduction can significantly improve classification accuracy and reduce the training and testing time <abbrgrp><abbr bid="B15">15</abbr></abbrgrp>. Among a group of eight different feature reduction methods, stepwise discriminant analysis (SDA) was rated as the best <abbrgrp><abbr bid="B15">15</abbr></abbrgrp>. We therefore applied SDA on both the 180-feature set including 6 DNA features and the 174-feature set without DNA features. 53 ranked features were returned from the 180-feature set and 51 features from the 174-feature set. The optimal majority-voting ensemble classifiers for SLF13 and SLF8 listed in Table <tblr tid="T4">4</tblr> were applied to the 53-feature set and 51-feature set respectively to evaluate the sequential inclusion of these ranked features. Figure <figr fid="F5">5</figr> shows the sequential inclusion of the top-ranked features in both sets evaluated by the ensemble classifiers. The top 47 out of 53 features selected by SDA from the 180-feature set gave the highest accuracy on the optimal majority-voting ensemble classifier from SLF13, and we defined these as a new feature set, SLF16. The top 44 features selected by SDA from the 174-feature set gave the highest accuracy on the optimal majority-voting ensemble classifier from SLF8. We defined a new feature set containing these 44 features as SLF15.</p>
            <fig id="F5">
               <title>
                  <p>Figure 5</p>
               </title>
               <caption>
                  <p>Selection of feature subsets including Gabor and Daubechies features</p>
               </caption>
               <text>
                  <p>Selection of feature subsets including Gabor and Daubechies features. Classifiers were trained using increasing numbers of features from the ranked list selected by SDA from either the 180-feature set including DNA features (filled circle) or the 174-feature set without DNA features (filled diamond) and performance evaluated by 10-fold cross validation. The classifiers used were the optimal majority-voting ensemble classifiers for SLF13 and SLF8 respectively (see Table 4).</p>
               </text>
               <graphic file="1471-2105-5-78-5"/>
            </fig>
            <p>Both SLF16 and SLF15 were then evaluated using all eight classifiers. Table <tblr tid="T3">3</tblr> shows the pairwise-classifier-error correlation coefficients for these two new feature sets. Again, all 8 classifiers gave few dependent errors on both feature sets. Optimal majority-voting ensemble classifiers were created and found to include neural network, linear-kernel SVM, exponential-rbf-kernel SVM, polynomial-kernel SVM, and AdaBoost for SLF16, and rbf-kernel SVM, exponential-rbf-kernel SVM, and polynomial-kernel SVM for SLF15 (Table <tblr tid="T4">4</tblr>). We achieved a 92.3% average accuracy for 2D image classification by using SLF16 and 91.5% by using SLF15. These two majority-voting classifiers for SLF16 and SLF15 performed statistically better than the previously configured neural networks and the individual classifiers for SLF13 and SLF8 respectively. The benefits of including the new texture features can be represented by a 2% improvement on classifying 2D protein fluorescence microscope images both with and without DNA features. Table <tblr tid="T4">4</tblr> also showed that the accuracy upper bounds for SLF16 and SLF15 are higher than those of SLF13 and SLF8 feature sets respectively.</p>
            <p>To gain insight into the basis for the improvement, we compared the distributions in the two feature spaces of those images that were misclassified by the neural network classifier using SLF13 but were correctly classified by the ensemble classifier using SLF16. The ratio of the average distance of these images from their class mean over the average distance of all images from their class mean changed from 0.08 in the SLF13 feature space to 0.07 in that of SLF16. Thus the new features apparently moved the outlier images close enough to their class means that they could be correctly classified.</p>
         </sec>
         <sec>
            <st>
               <p>Improved distinction between similar classes</p>
            </st>
            <p>That the best classifiers described above represent improvement over previous results not only in average classification accuracy but also in the ability to discriminate similar patterns is shown by the confusion matrixes in Tables <tblr tid="T5">5A</tblr> and <tblr tid="T5">5B</tblr>. Compared to the best previous results on 2D and 3D classification <abbrgrp><abbr bid="B11">11</abbr><abbr bid="B14">14</abbr></abbrgrp>, the recognition accuracies on most patterns are significantly improved. The Golgi proteins giantin and Gpp130, which cannot be distinguished by visual inspection <abbrgrp><abbr bid="B14">14</abbr></abbrgrp>, can be distinguished over 82% of the time in 2D images using SLF16 and 96% in 3D images using SLF10. These are 12% and 15% higher than the previous best performance for 2D and 3D images respectively. The transferrin receptor pattern (TfR), which has a similar distribution to that of the lysosomal protein LAMP2 (Lam), was the least accurately classified pattern in both 2D and 3D. Its recognition was improved by 6% compared to previous results for 2D images, but not at all for 3D images. This suggests the need for future work to improve its recognition.</p>
            <tbl id="T5">
               <title>
                  <p>Table 5</p>
               </title>
               <caption>
                  <p>Confusion matrix for 2D HeLa cell (A) and 3D HeLa cell (B) images using optimal majority-voting ensemble classifier with feature set SLF16 (A) and SLF10 (B) respectively. (Due to rounding, each row may not sum to 100). The average accuracy was 92.3% for 2D images (A) and 95.8% for 3D images (B).</p>
               </caption>
               <tblbdy cols="12">
                  <r>
                     <c cspan="12" ca="left">
                        <p>A)</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="center">
                        <p>DNA</p>
                     </c>
                     <c ca="center">
                        <p>ER</p>
                     </c>
                     <c ca="center">
                        <p>Gia</p>
                     </c>
                     <c ca="center">
                        <p>Gpp</p>
                     </c>
                     <c ca="center">
                        <p>Lam</p>
                     </c>
                     <c ca="center">
                        <p>Mit</p>
                     </c>
                     <c ca="center">
                        <p>Nuc</p>
                     </c>
                     <c ca="center">
                        <p>Act</p>
                     </c>
                     <c ca="center">
                        <p>TfR</p>
                     </c>
                     <c ca="center">
                        <p>Tub</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c cspan="12">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>DNA</p>
                     </c>
                     <c ca="center">
                        <p>98.9</p>
                     </c>
                     <c ca="center">
                        <p>1.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>ER</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>96.5</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>2.3</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.2</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Gia</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>90.8</p>
                     </c>
                     <c ca="center">
                        <p>6.9</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>2.3</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Gpp</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>14.1</p>
                     </c>
                     <c ca="center">
                        <p>82.4</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>2.4</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Lam</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>88.1</p>
                     </c>
                     <c ca="center">
                        <p>1.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>9.5</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Mit</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>2.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>91.8</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>2.7</p>
                     </c>
                     <c ca="center">
                        <p>2.7</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Nuc</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>98.8</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.3</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Act</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>100</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>TfR</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>12.1</p>
                     </c>
                     <c ca="center">
                        <p>2.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>81.3</p>
                     </c>
                     <c ca="center">
                        <p>2.2</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Tub</p>
                     </c>
                     <c ca="center">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>2.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.1</p>
                     </c>
                     <c ca="center">
                        <p>94.5</p>
                     </c>
                     <c>
                        <p/>
                     </c>
                  </r>
                  <r>
                     <c cspan="12">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c cspan="12" ca="left">
                        <p>B)</p>
                     </c>
                  </r>
                  <r>
                     <c>
                        <p/>
                     </c>
                     <c ca="center">
                        <p>Cyt</p>
                     </c>
                     <c ca="center">
                        <p>DNA</p>
                     </c>
                     <c ca="center">
                        <p>ER</p>
                     </c>
                     <c ca="center">
                        <p>Gia</p>
                     </c>
                     <c ca="center">
                        <p>Gpp</p>
                     </c>
                     <c ca="center">
                        <p>Lam</p>
                     </c>
                     <c ca="center">
                        <p>Mit</p>
                     </c>
                     <c ca="center">
                        <p>Nuc</p>
                     </c>
                     <c ca="center">
                        <p>Act</p>
                     </c>
                     <c ca="center">
                        <p>TfR</p>
                     </c>
                     <c ca="center">
                        <p>Tub</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="12">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Cyt</p>
                     </c>
                     <c ca="center">
                        <p>100</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>DNA</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>98.1</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.9</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>ER</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>96.6</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.7</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Gia</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>98.2</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.9</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Gpp</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>4</p>
                     </c>
                     <c ca="center">
                        <p>96.0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Lam</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.8</p>
                     </c>
                     <c ca="center">
                        <p>1.8</p>
                     </c>
                     <c ca="center">
                        <p>96.4</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Mit</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>3.5</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>94.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.8</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Nuc</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>100</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Act</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>94.8</p>
                     </c>
                     <c ca="center">
                        <p>1.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>TfR</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>5.7</p>
                     </c>
                     <c ca="center">
                        <p>3.8</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.9</p>
                     </c>
                     <c ca="center">
                        <p>84.9</p>
                     </c>
                     <c ca="center">
                        <p>3.8</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>Tub</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>3.7</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>0</p>
                     </c>
                     <c ca="center">
                        <p>1.9</p>
                     </c>
                     <c ca="center">
                        <p>94.4</p>
                     </c>
                  </r>
               </tblbdy>
            </tbl>
            <p>The better performance achieved from the new features and the ensemble classifiers can be further seen by inspecting images that were misclassified by the original neural network classifier but could be correctly classified using the new texture features (Figure <figr fid="F6">6</figr>). We note that the images in Figure <figr fid="F6">6</figr> are much less typical of the patterns expected for the major organelles than those in Figure <figr fid="F1">1</figr>. For instance, mitochondria typically locate around the nucleus (Figure <figr fid="F1">1E</figr>) but the image shown in Figure <figr fid="F6">6E</figr> includes staining over the nucleus. The same is true for the tubulin pattern. The blurry image shown in Figure <figr fid="F6">6I</figr> is much less typical compared to the branched pattern shown in Figure <figr fid="F1">1I</figr>. Presumably, the new features that rely on texture are not confused by these visible differences. As a further example, the nucleolin pattern shown in Figure <figr fid="F6">6F</figr> only contains one big object, while that of Figure <figr fid="F1">1F</figr> includes a few round objects. Although the morphological and geometric features would be very different for these images, similar texture information can be observed in both images. Furthermore, the relatively independent errors (Table <tblr tid="T3">3</tblr>) among the classifiers of a majority-voting ensemble contribute to a more robust prediction. For instance, linear-kernel SVM, one of the five classifiers in the best performing ensemble classifier of SLF16 (Table <tblr tid="T4">4</tblr>), predicted the image of the transferrin receptor pattern in Figure <figr fid="F6">6</figr> as tubulin, while all other classifiers in the ensemble made the accurate prediction. This error would not be avoided if the linear-kernel SVM was selected as the only classifier. Therefore, the accurate recognition of these less typical images can be attributed to the new texture features that capture more frequency information from the fluorescence distribution and the ensemble classifier that enriches the prediction confidence by combining outputs from multiple classifiers.</p>
            <fig id="F6">
               <title>
                  <p>Figure 6</p>
               </title>
               <caption>
                  <p>Example 2D images that were misclassified by the original neural network classifier but could be correctly classified using the best performing ensemble classifier using SLF16</p>
               </caption>
               <text>
                  <p>Example 2D images that were misclassified by the original neural network classifier but could be correctly classified using the best performing ensemble classifier using SLF16. From among the images incorrectly classified by the neural network for each class, the image that was most frequently classified accurately during training of the ensemble classifier was chosen (a random choice was made in the case of ties). ER (A), giantin (B), gpp130 (C), LAMP2 (D), mitochondria (E), nucleolin (F), actin (G), transferrin receptor (H), and tubulin (I). The only DNA image that was misclassified by the original neural network classifier was also missed by the ensemble.</p>
               </text>
               <graphic file="1471-2105-5-78-6"/>
            </fig>
            <p>Figure <figr fid="F7">7</figr> shows example 2D images that could not be correctly classified by any of the eight classifiers using the new feature set SLF16. The giantin and gpp130 images in Figure <figr fid="F7">7</figr> show patterns that are much more diffuse than typical Golgi images. This is presumably due to the onset of Golgi breakdown prior to mitosis. The LAMP2 and mitochondria patterns in Figure <figr fid="F7">7</figr> may also be affected by mitosis (or perhaps cell death) given the extensive fluorescence in the nucleus and cytoplasm that are not usually observed (Figure <figr fid="F1">1</figr>). In future work, we plan to seek more robust features that can minimize the effect of mitotic changes and capture the common information that exists between the images in Figure <figr fid="F7">7</figr> and those in Figure <figr fid="F1">1</figr>. Of course, we expect that some images that are perturbed by cell death and other experimental artifacts may never be correctly classified.</p>
            <fig id="F7">
               <title>
                  <p>Figure 7</p>
               </title>
               <caption>
                  <p>Example 2D images that could not be correctly classified by any individual classifier using feature set SLF16</p>
               </caption>
               <text>
                  <p>Example 2D images that could not be correctly classified by any individual classifier using feature set SLF16. The image that was most frequently classified incorrectly during training of the ensemble classifier was chosen (a random choice was made in the case of ties). ER (A), giantin (B), gpp130 (C), LAMP2 (D), mitochondria (E), and transferrin receptor (F). All images in the other classes could be correctly classified by at least one of the eight classifiers.</p>
               </text>
               <graphic file="1471-2105-5-78-7"/>
            </fig>
         </sec>
         <sec>
            <st>
               <p>Tradeoffs between classification accuracy and computational cost for feature sets</p>
            </st>
            <p>To further investigate the utility of our classification systems, we examined the processing time ("cost") of each feature. Image preprocessing steps including background subtraction, cropping, thresholding, and filtering need to be conducted before calculating features for 2D images. For 3D images, similar preprocessing steps were employed except that cropping is replaced by seeded watershed segmentation <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>. Since many features are related to each other, we divided the calculation of each feature to two parts, the setup cost and the computation cost. For instance, SLF7.80&#8211;7.84 are object skeleton features <abbrgrp><abbr bid="B14">14</abbr></abbrgrp> that all require object finding as the setup cost before calculating each individual feature. Therefore, the total cost of SLF7.80&#8211;7.84 is the common setup cost plus the cost of calculating each individual feature. Since Gabor and Daubechies wavelet features involve decomposing an input image with filters that have different scales, we consider using them as a group for image classification. Table <tblr tid="T6">6</tblr> shows the time costs and performances of the six feature sets used in our experiments as well as other processing costs. The large increases in costs from SLF13 to SLF16 and SLF8 to SLF15 are from the computation of both Gabor and Daubechies wavelet features. In 3D image classification, preprocessing and segmentation dominate the total costs of a feature set. Given the relationship between performance and computation cost for each of the six feature sets, a practical system can trade performance against cost and select the optimal feature set for a given purpose.</p>
            <tbl id="T6">
               <title>
                  <p>Table 6</p>
               </title>
               <caption>
                  <p>Processing costs for calculating feature sets as well as the performance of each feature set. The costs were averaged on ten random images selected from all classes of both 2D and 3D fluorescence microscope images. Costs shown for feature sets include preprocessing (and segmentation) costs.</p>
               </caption>
               <tblbdy cols="4">
                  <r>
                     <c ca="center">
                        <p>Operation</p>
                     </c>
                     <c ca="center">
                        <p>Number of Features</p>
                     </c>
                     <c ca="center">
                        <p>CPU time (s)</p>
                     </c>
                     <c ca="center">
                        <p>Overall Accuracy (%)</p>
                     </c>
                  </r>
                  <r>
                     <c cspan="4">
                        <hr/>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>2D preprocessing</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                     <c ca="center">
                        <p>0.6</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>3D preprocessing</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                     <c ca="center">
                        <p>21.1</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>3D segmentation</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                     <c ca="center">
                        <p>6.8</p>
                     </c>
                     <c ca="center">
                        <p>N/A</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF8 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>32</p>
                     </c>
                     <c ca="center">
                        <p>13.2</p>
                     </c>
                     <c ca="center">
                        <p>89.4</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF15 (2D)</p>
                     </c>
                     <c ca="center">
                        <p>44</p>
                     </c>
                     <c ca="center">
                        <p>68.3</p>
                     </c>
                     <c ca="center">
                        <p>91.5</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF13 (2D DNA)</p>
                     </c>
                     <c ca="center">
                        <p>31</p>
                     </c>
                     <c ca="center">
                        <p>10.8</p>
                     </c>
                     <c ca="center">
                        <p>90.7</p>
                     </c>
                  </r>
                  <r>
                     <c ca="center">
                        <p>SLF16 (2D DNA)</p>
                     </c>
                     <c ca="center">