<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>TenTseonrsoDr eDceocmomppoossititiioonn ffoorr33DDBBarasrPsrPobrloemblem</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jan Platosˇ</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jana Kocˇ´ıbova´</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pavel Kro¨mer</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pavel Moravec</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Va´clav Sna´sˇel Jan Platoˇs</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jana Koˇc´ıbov´a</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pavel Kr¨omer</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pavel Moravec</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>V´aclav Sn´aˇsel</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science</institution>
          ,
          <addr-line>FEECS, V S</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>ersity of Ostrava</institution>
          ,
          <addr-line>17. listopadu 15, 708 33 Ostrava-Poruba</addr-line>
          ,
          <country country="CZ">Czech Republic</country>
        </aff>
      </contrib-group>
      <fpage>49</fpage>
      <lpage>60</lpage>
      <abstract>
        <p>In this paper, we compare performance of several dimension reduction techniques, namely SVD, NMF and SDD.The qualitative comparison is evaluated on a collection of bars. We compare the quality of these methods from on the base of the visual impact. We also compare dimension reduction techniques SVD and HO-SVD on tensors - 3D bars. V. Sn´aˇsel, K. Richta, J. Pokorny´ (Eds.): Dateso 2008, pp. 49-60, ISBN 978-80-248-1746-0.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>In order to perform object recognition (no mater which one) it is necessary to learn
representations of the underlying characteristic components. Such components correspond
to object-parts, or features. These components can occur in different configurations to
form many distinct images. Identifying the underlying components which are combined
to form images is thus essential for learning the perceptual representations necessary for
performing object recognition.</p>
      <p>
        The application area of feature extraction on binary datasets addresses many
problem areas, such as association rule mining, itemsets used for market basket analysis,
discovery of regulation patterns in DNA microarray experiments, etc. For simplicity
sake we used the wellk-nown bars problem (see e.g. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]), where we try to isolate
separate horizontal and vertical bars from images containing their combinations.
      </p>
      <p>In this paper we will concentrate on the last category – other feature extraction
methods which use known dimension reduction techniques and clustering for automatic
feature extraction.</p>
      <p>
        In this paper we will use the bars collection as a benchmark collection. The bars
problem (and its variations) is a benchmark task for the learning of independent image
features (Fo¨ildia´k [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]; Spratling [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ];). In the standard version of the bars problem, as
defined by Fo¨ildia´k [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], training data consists of 8 by 8 pixel images in which each
of the 16 possible (one-pixel wide) horizontal and vertical bars can be present with a
probability of 1 . Typical examples of training images are shown in Figure 1.
      </p>
      <p>8</p>
      <p>One of the well-known methods of feature extraction is the singular value
decomposition (SVD) which was already successfully used for automatic feature extraction.</p>
      <p>We extended the bars problem to 3 dimensions, using planes instead of lines. The
input cube contains several planes, which may or may not be parallel to x, y and z axes.</p>
      <p>
        The straightforward approach to image indexing is to transform the 2D images into
a single vector. This is often done by concatenating all the rows of an image into a
single image vector [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] (although a more sophisticated method can be used). We will
use similar approach for 3D bars and classic SVD, combining two dimensions into one,
so that we can compare the original and reconstructed matrices based on the visual
impact and Frobenius norm.
      </p>
      <p>The rest of this paper is organized as follows. The second section explains
dimension reduction methods, which were used for classic 2D bars problem. The third section
mentions CubeSVD, which was originaly used for the 3D bars problem. Then in the
fourth section we describe experimental results and finally in the section five we made
some conclusions.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Dimension Reduction</title>
      <p>We used four promising methods of dimension reduction for our comparison – Singular
Value Decomposition (SVD), Semi-Discrete Decomposition (SDD) and Non-negative
Matrix Factorization (NMF). All of them are briefly described bellow.
2.1</p>
      <sec id="sec-2-1">
        <title>Singular Value Decomposition</title>
        <p>
          SVD [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] is an algebraic extension of classical vector model. It is similar to the PCA
method, which was originally used for the generation of eigenfaces in image retrieval.
Informally, SVD discovers significant properties and represents the images as linear
combinations of the base vectors. Moreover, the base vectors are ordered according
to their significance for the reconstructed image, which allows us to consider only the
first k base vectors as important (the remaining ones are interpreted as ”noise” and
discarded). Furthermore, SVD is often referred to as more successful in recall when
compared to querying whole image vectors [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
        </p>
        <p>Formally, we decompose the matrix of images A by singular value decomposition
(SVD), calculating singular values and singular vectors of A.</p>
        <p>We have matrix A, which is an n × m rank- r matrix (where m ≥ n without loss
of generality) and values σ1, . . . , σr are calculated from eigenvalues of matrix AAT
as σi = √λi. Based on them, we can calculate column-orthonormal matrices U =
(u1, . . . , un) and V = (v1, . . . , vn), where U T U = In a V T V = Im, and a diagonal
matrix Σ = diag(σ1, . . . , σn), where σi &gt; 0 for i ≤ r, σi ≥ σi+1 and σr+1 = · · · =
σn = 0.</p>
        <p>The decomposition</p>
        <p>A = U ΣV T
is called singular decomposition of matrix A and the numbers σ1, . . . , σr are singular
values of the matrix A. Columns of U (or V ) are called left (or right) singular vectors
of matrix A.</p>
        <p>Now we have a decomposition of the original matrix of images A. We get r nonzero
singular numbers, where r is the rank of the original matrix A. Because the singular
values usually fall quickly, we can take only k greatest singular values with the
corresponding singular vector coordinates and create a k-reduced singular decomposition
of A.</p>
        <p>Let us have k (0 &lt; k &lt; r) and singular value decomposition of A</p>
        <p>A = U ΣV T ≈ Ak = (UkU0)
We call Ak = UkΣkVkT a k-reduced singular value decomposition (rank- k SVD).
Instead of the Ak matrix, a matrix of image vectors in reduced space Dk = ΣkVkT is
used in SVD as the representation of image collection. The image vectors (columns in
Dk) are now represented as points in k-dimensional space (the feature-space ). represent
the matrices Uk, Σk, VkT .
2.2</p>
      </sec>
      <sec id="sec-2-2">
        <title>Semi-discrete Decomposition</title>
        <p>
          The SDD is one of other LSI methods, proposed recently for text retrieval in [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. As
mentioned earlier, the rank- k SVD method (called truncated SVD by authors of
semidiscrete decomposition) produces dense matrices U and V , so the resulting required
storage may be even larger than the one needed by the original term-by-document
matrix A.
        </p>
        <p>To improve the required storage size and query time, the semi-discrete
decomposition was defined as</p>
        <p>A ≈ Ak = XkDkYkT ,
(3)
where each coordinate of the matrices Xk and Yk is constrained to have entries from the
set ϕ = {−1, 0, 1}, and the matrix Dk is a diagonal matrix with positive coordinates.</p>
        <p>The SDD does not reproduce A exactly, even if k = n, but it uses very little storage
with respect to the observed accuracy of the approximation. A rank- k SDD (although
from mathematical standpoint it is a sum on rank- 1 matrices) requires the storage of
k(m + n) values from the set {−1, 0, 1} and k scalars. The scalars need to be only
single precision because the algorithm is self-correcting. The SDD approximation is
formed iteratively.</p>
        <p>The optimal choice of the triplets (xi, di, yi) for given k can be determined using
greedy algorithm, based on the residual Rk = A − Ak−1 (where A0 is a zero matrix).
2.3</p>
      </sec>
      <sec id="sec-2-3">
        <title>Non-negative Matrix Factorization</title>
        <p>
          The NMF [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] method calculates an approximation of the matrix A as a product of two
matrices, W and H. The matrices are usually pre-filled with random values (or H is
initialized to zero and W is randomly generated). During the calculation the values in
W and H stay positive. The approximation of matrix A, matrix Ak, can be calculated
as Ak = W H.
        </p>
        <p>The original NMF method tries to minimize the Frobenius norm of the difference
between A and A0k using Wm,iHn ||V − W H||2F as the criterion in the minimization
problem.</p>
        <p>
          Recently, a new method was proposed in [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], where the constrained least squares
problem is the criterion in the minimization
min{||Vj − W Hj ||2 − λ||Hj ||22}
        </p>
        <p>Hj
problem. This approach is yields better results for sparse matrices.</p>
        <p>Unlike in SVD, the base vectors are not ordered from the most general one and we
have to calculate the decomposition for each value of k separately.
A tensor is a higher order generalization of a vector. Vector is a first order tensor and
a matrix is a second order tensor. The order of a tensor A ∈ RI1×I2×···×IN is N.
Elements of A is denoted as ai1...in...iN where 1 ≤ in ≤ IN . Two basic operations
are for calculation of CubeSVD: the unfolding of a tensor A A(n) and the mode-n
product of a tensor A and matrix M A ×(n) M .</p>
        <p>
          The operation unfolding unfolds the tensor A into matrix A(n) along order N. Each
column of tensor A(n) is composed of ai1...in...iN where in varies and the order indices
are fixed. The operations unfolding are illustrated in Figure 2 for third order tensor. See
[
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] for details on operation unfolding of a tensor A.
        </p>
        <p>The n-mode product of a tensor A ∈ RI1×I2×···×IN by a matrix M ∈ RJn×In is
an I1 × I2 × · · · × In−1 × Jn × In+1 × · · · × IN -tensor of which the entries are given
by
(A ×n M )i1···in−1jnin+1···iN =</p>
        <p>
          X ai1···in−1inin+1···iN mjnin
in
See [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] for details on operation mode-n product of a tensor A and matrix M.
        </p>
        <p>
          Matrix SVD can be rewritten as A = Σ ×1 V (1) ×2 V (2) in terms of n-mode
products. CubeSVD is a generalization of SVD and was described in [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Tensor A can
be written as the n-mode product [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]
        </p>
        <p>A = S ×1 V1 ×2 V2 ×3 · · · ×N VN
as illustrated in Figure 3 for N = 3.</p>
        <p>
          S is called core tensor. S is in general a full tensor, instead of being pseudodiagonal
(this would mean that nonzero elements could only occur when the indices i1 = i2 =
· · · = iN ). S has the property of all-orthogonality [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. V\ contains the orthonormal
vectors. They called n-mode singular vectors. The Frobenius-norms kSin=ik are
nmode singular values of A. Their order is
        </p>
        <p>kSin=1k ≥ kSin=2k ≥ · · · ≥ kSin=Ink ≥ 0
4</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Experimental Results - 2D Bars</title>
      <p>For testing of above mentioned methods, we used generic collection of 1600 32 × 32
black-and-white images containing different combinations of horizontal and vertical
lines (bars). The probabilities of bars to occur in images were the same and equal to
10/64, i.e. images contain 10 bars in average. An example of several images from
generated collection is shown in Figure 4.</p>
      <p>Many of tested methods were able to generate a set of base images or factors, which
should ideally record all possible bar positions. However, not all methods were truly
successful in this.</p>
      <p>With SVD, we obtain classic singular vectors, the most general being among the
first. The first few are shown in Figure 5. We can se, that the bars are not separated and
different shades of gray appear.</p>
      <p>The NMF methods yield different results. The original NMF method, based on the
adjustment of random matrices W and H provides hardly-recognizable images even for
k = 100 and 1000 iterations (we used 100 iterations for other experiments). Moreover,
these base images still contain significant salt and pepper noise and have a bad contrast.
The factors are shown in Figure 6. We must also note, that the NMF decomposition will
yield slightly different results each time it is run, because the matrix(es) are pre-filled
with random values.</p>
      <p>The SDD method differs slightly from previous methods, since each factor contains
only values {−1, 0, 1}. Gray in the factors shown in Figure 8 represents 0; −1 and 1
are represented with black and white respectively.</p>
      <p>The base vectors in Figure 8 can be divided into three categories:
1. Base vectors containing only one bar.
2. Base vectors containing one horizontal and one vertical bar.
3. Other base vectors, containing several bars and in some cases even noise.
5</p>
    </sec>
    <sec id="sec-4">
      <title>Experimental result - 3D Bars</title>
      <p>For testing of CubeSVD method, we use several collections of 8 × 8 × 8 3-dimensional
cubes. We create 2 types of test collections. The first type contains 2 collections with
15 cubes each which were used for local feature extraction (each cube was decomposed
separately). The first collection contains cubes which are crossed by 2 perpendicular
planes (Figure 9a). The second collection contains cubes crossed by 3 planes - 2
perpendicular and 1 skewed (Figure 9b). The resulting number of singular values was between
1 and 8 (full CubeSVD).</p>
      <p>The second type contains 4 collections with 1000 cubes each which were used for
collection-based feature extraction. The first collection contains cubes with one skewed
plane, second collection contains cubes with 2 skewed planes and so on. Example cubes
for each collection is depicted in Figure 10.</p>
      <p>As a measure for comparing similarity between original and reduced cubes we used
the Frobenius norm (without calculating the square root)</p>
      <p>F 2(O, R) = X X X(O[i, j, k] − R[i, j, k])2
i
j</p>
      <p>k
5.1</p>
      <sec id="sec-4-1">
        <title>Local feature extraction</title>
        <p>In the first experiment we applied CubeSVD and SVD algorithm on the first two
collections for extracting local features. Results for the first collection with 2 perpendicular
planes are depicted in Figure 11 for 6 singular values and are depicted on Figure 12 for
2 singular values. Values of Frobenius norm are shown in tables 1 and 2.</p>
        <p>It can be seen CubeSVD extracts all of the original bars in Figure 11, while the
SVD with the same rank ignored one of the bars, while reconstructing the other two
more sharply. This is even more visible in Figure 12, where all bars in CubeSVD are
slightly recorded, but classic SVD reconstructs one of the bars perfectly, adding noise
to other areas. We see, that this behavior leads to lower Frobenius norm in Tables 1 and
2 for th classic SVD, which satisfies the condition that the value for SVD should be
minimal for given rank k.
6</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>Since the CubeSVD method provided only one singular value for planes parallel to the
axes, which was to be expected, the experiments were done on planes both
perpendicular and skewed.</p>
      <p>It seems, that the original SVD performed better than CubeSVD, based on the
Frobenius norm, but the visual inspection of reduced tensors shows the reason – whilst
the horizontal bars were reconstructed nearly perfectly, the vertical ones deteriorated
more quickly. On the other hand, the CubeSVD tried to minimize the overall error.</p>
      <p>We are currently studying the collection-based feature extraction of 3D bars, where
the number of singular values ranges from 1 to 512 for 8 × 8 × 8 cubes, compared to 8
singular values for high-order SVD. The classic SVD results for 1 to 8 singular values
mentioned in previous section are not satisfactory.</p>
      <p>We are currently extending our CubeSVD implementation to support tensors of 4
and mode dimensions and preparing to test the High-order SDD and NMF methods
against their 2D counterparts.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>M.</given-names>
            <surname>Berry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Dumais</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Letsche</surname>
          </string-name>
          .
          <article-title>Computational Methods for Intelligent Information Access</article-title>
          .
          <source>In Proceedings of the 1995 ACM/IEEE Supercomputing Conference</source>
          , San Diego, California, USA,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>P.</given-names>
            <surname>Fo</surname>
          </string-name>
          <article-title>¨ldia´k. Forming sparse representations by local anti-Hebbian learning</article-title>
          .
          <source>Biological cybernetics</source>
          ,
          <volume>64</volume>
          :22, pages
          <fpage>165</fpage>
          -
          <lpage>170</lpage>
          ,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>T. G.</given-names>
            <surname>Kolda and D. P. O'Leary</surname>
          </string-name>
          .
          <article-title>Computation and uses of the semidiscrete matrix decomposition</article-title>
          .
          <source>In ACM Transactions on Information Processing</source>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>L. D.</given-names>
            <surname>Lathauwer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. D.</given-names>
            <surname>Moor</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Vandewalle</surname>
          </string-name>
          .
          <article-title>A multilinear singular value decomposition</article-title>
          .
          <source>SIAM J. Matrix Anal. Appl.</source>
          ,
          <volume>21</volume>
          (
          <issue>4</issue>
          ):
          <fpage>1253</fpage>
          -
          <lpage>1278</lpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>F.</given-names>
            <surname>Shahnaz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Berry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pauca</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Plemmons</surname>
          </string-name>
          .
          <article-title>Document clustering using nonnegative matrix factorization</article-title>
          .
          <source>Journal on Information Processing and Management</source>
          ,
          <volume>42</volume>
          :
          <fpage>373</fpage>
          -
          <lpage>386</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>M. W.</given-names>
            <surname>Spratling</surname>
          </string-name>
          .
          <article-title>Learning Image Components for Object Recognition</article-title>
          .
          <source>Journal of Machine Learning Research</source>
          ,
          <volume>7</volume>
          :
          <fpage>793</fpage>
          -
          <lpage>815</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>M.</given-names>
            <surname>Turk</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Pentland</surname>
          </string-name>
          .
          <article-title>Eigenfaces for recognition</article-title>
          .
          <source>Journal of Cognitive Neuroscience</source>
          ,
          <volume>3</volume>
          (
          <issue>1</issue>
          ):
          <fpage>71</fpage>
          -
          <lpage>86</lpage>
          ,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>