<!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>Triclustering Toolbox</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Dmitrii Egurnov</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>National Research University Higher School of Economics</institution>
          ,
          <addr-line>Moscow</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Triclustring Toolbox is a collection of triclustering methods consolidated into a single interface. It provides access to both box- and prime-based OAC (Object-Attribute-Condition) triclustering, Spectral triclustering and features implementations of DataPeeler and Trias. The application also contains algorithms for mining triclusters of similar values: NOAC and Tri-K-Means. Quality of triclusters is measured in terms of density, diversity, coverage, and variance, if applicable. Formats for input and output data of all the methods are universal, which makes comparison and interpretation of the results easier. The code is written in C# (.Net 4.5) and runs on Windows. Triclustring Toolbox was used to provide experimental results in several articles on triclustering.</p>
      </abstract>
      <kwd-group>
        <kwd>Triadic Formal Concept Analysis triclustering</kwd>
        <kwd>Real-valued context</kwd>
        <kwd>Software</kwd>
        <kwd>Triclustering</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Triadic Formal Concept Analysis (3-FCA) was introduced by Lehman and
Wille [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and is aimed at analysis of object-attribute-condition relational data.
However, in some cases its strict requirements may be relaxed, that is we could
search for less dense structures called triclusters instead of triconcepts [
        <xref ref-type="bibr" rid="ref4 ref6">6, 4</xref>
        ].
Such patterns found to be useful in several domains, among those mining
communities in folksonomies and (multimodal) social networks [
        <xref ref-type="bibr" rid="ref5 ref6">6, 5</xref>
        ] and semantic
frame induction in computational linguistics [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>The remainder of the paper consists of three sections: Section 2 brie y
introduces basic notions, Section 3 describes our Triclustering Toolbox, and Section 4
concludes the paper with future prospects of triclustering software development.</p>
    </sec>
    <sec id="sec-2">
      <title>Triadic Contexts and Triclusters</title>
      <p>De nition 1. Let G, M and B be arbitrary sets. Subset of their Cartesian
product de nes a triadic relation I G M B. The quadruple K = (G; M; B; I)
is called a triadic formal context, or tricontext. The sets G, M and B are called
set of objects, set of attributes, and set of conditions, respectively.</p>
      <p>For each triple (g; m; b) I, where g 2 G, m 2 M , and b 2 B, it is said that
\object g has attribute m under condition b". In case of numeric context we add
a value function: V : I ! R.</p>
      <p>Now we de ne a tricluster in its most general form:
De nition 2. Let An k l be a three-dimensional binary matrix. Let sets G =
fg1; g2; : : : ; gng, M = fm1; m2; : : : ; mkg, and B = fb1; b2; : : : ; blg be index sets
of A. Then for some arbitrary sets X G, Y M and Z B submatrix
AXY Z = faxyz j x 2 X; y 2 Y; z 2 Zg is called a tricluster. Sets X, Y and Z are
called respectively extent, intent and modus of the tricluster.</p>
      <p>Various constraints may be applied to triclusters. Usually they feature
structure requirements, cardinality restrictions on extent, intent and modus, and
limitations of other parameters. For example, the most common conditions, which
eliminate small and meaningless structures from the output, are minimal support
condition (jXj sX ; jY j sY ; jZj sZ ) and minimum density threshold:
(AXY Z ) =</p>
      <p>PjXj PjY j PjkZ=j1 axiyjzk
i=1 j=1
jXjjY jjZj
min:</p>
      <p>In case of numeric triclusters we can also measure variance of the values of
triples in the tricluster. Lower variance means that values are more similar. If
we consider each tricluster T = (X; Y; Z) as an independent sample S(T ) =
fV (g; m; b) j (g; m; b) 2 I \ X Y Zg, then unbiased estimate of the variance
is:
2(S) =</p>
      <p>Ps2S s
jSj
2
1</p>
      <p>S2
3</p>
    </sec>
    <sec id="sec-3">
      <title>Triclustering Toolbox description</title>
      <p>
        Triclustring Toolbox is a Windows Forms UI application. It was programmed in
C# using .Net Framework 4.5. The program takes an input le that contains a
triadic context as set of triples. Each triple is described in a separate line with
its tab-separated components, which are members of the context's respective
modalities. For numerical tricontexts lines also contain the triple's value. The
path to the le should be speci ed in the "Context le" eld of the interface.
Other parameters are:
{ Output folder, where the results and log les of the processing will be placed.
{ Limited context uploading. If only several rst triples of the context should
be processed, the number of triples should be speci ed.
{ Selection of triclustering method:
OAC-triclustering [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
Spectral triclustering [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
Box triclustering [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]
DataPeeler [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
Trias [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]
NOAC [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
      </p>
      <p>
        Tri-K-Means [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
{ Algorithm-speci c options and additional constraints on the output.
      </p>
      <p>When all of the necessary options are set, user can press the \Start" button.</p>
      <p>For example, let us look at speci c options for numerical triclustering
algorithms. For NOAC it is the parameter , which is set to 0 by default. It also
supports minimal density thresholds for extent, intent, and modus. Tri-K-Means
requires the number of clusters k and parameter , which de nes degree of
extending the tricluster over closeness of its values. User can also set upper bound
for the number of steps the algorithm takes before terminating and the manner
of initialization for centroids, which can be random or prede ned. The options
are delimited by commas, decimals are separated with a dot. In case several
experiments are planned, the sets of options are separated by semicolon.</p>
      <p>The program writes two les in the output folder. The rst one contains a list
of the extracted triclusters along with calculated measures. The rst string of the
le contains a header, explaining the order of values: Density, Variance, Average
Coverage, Objects coverage, Attributes coverage, Conditions coverage, Extent,
Intent, and Modus. Then, in separate lines, the triclusters follow in the format
described in the header. Name of the le is composed automatically, using names
of the method, input le and the set of options. The second le is a log le. If it
already exists in the folder, it will be appended by new execution information.
Each line of the le corresponds to a separate experiment and contains the set
of options, execution time, number of found triclusters, total coverage of the
context by the tricluster set, as well as coverage of extent, intent and modus.</p>
      <p>Figure 1 shows an example of Triclustering Toolbox application interface
with all described controls.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Future work</title>
      <p>With recent development of the C# programming language the application may
be easily transferred to a cross-platform framework, namely .Net Core 2.0, but
only as a console application. UI options are announced in upcoming .Net Core
3.0 release. We would also like to support more recent triclustering methods and
provide extension possibilities for other developers.</p>
      <p>
        Another possible important direction is using distributed and parallel
computing [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>Acknowledgements We would like to thank Dmitry V. Gnatyshak for his
valuable help with the initial development of the toolbox and Engelbert Mephu
Nguifo for the inspiration. The work of Dmitry I. Ignatov (contributed to all
the sections) was supported by the Russian Science Foundation under grant
17-11-01294 and performed at National Research University Higher School of
Economics, Russia.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Cerf</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Besson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robardet</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Boulicaut</surname>
            ,
            <given-names>J.F.</given-names>
          </string-name>
          :
          <article-title>Data peeler: Contraint-based closed pattern mining in n-ary relations</article-title>
          .
          <source>In: SDM</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Egurnov</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ignatov</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nguifo</surname>
            ,
            <given-names>E.M.:</given-names>
          </string-name>
          <article-title>Mining triclusters of similar values in triadic real-valued contexts</article-title>
          .
          <source>In: 14th International Conference on Formal Concept Analysis - Supplementary Proceedings</source>
          . pp.
          <volume>31</volume>
          {
          <issue>47</issue>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ignatov</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gnatyshak</surname>
            ,
            <given-names>D.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuznetsov</surname>
            ,
            <given-names>S.O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mirkin</surname>
            ,
            <given-names>B.G.</given-names>
          </string-name>
          :
          <article-title>Triadic formal concept analysis and triclustering: searching for optimal patterns</article-title>
          .
          <source>Machine Learning</source>
          <volume>101</volume>
          (
          <issue>1-3</issue>
          ),
          <volume>271</volume>
          {
          <fpage>302</fpage>
          (
          <year>2015</year>
          ). https://doi.org/10.1007/s10994-015-5487-y, http://dx.doi.org/10.1007/s10994-015-5487-y
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ignatov</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuznetsov</surname>
            ,
            <given-names>S.O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Magizov</surname>
            ,
            <given-names>R.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhukov</surname>
            ,
            <given-names>L.E.</given-names>
          </string-name>
          :
          <article-title>From triconcepts to triclusters</article-title>
          . In: Rough Sets, Fuzzy Sets,
          <source>Data Mining and Granular Computing - 13th International Conference, RSFDGrC</source>
          <year>2011</year>
          , Moscow, Russia, June 25-27,
          <year>2011</year>
          . Proceedings. pp.
          <volume>257</volume>
          {
          <issue>264</issue>
          (
          <year>2011</year>
          ). https://doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -21881- 1 41, http://dx.doi.
          <source>org/10.1007/978-3-642-21881-1 41</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Ignatov</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Semenov</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Komissarova</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gnatyshak</surname>
            ,
            <given-names>D.V.</given-names>
          </string-name>
          :
          <article-title>Multimodal clustering for community detection</article-title>
          . In: Missaoui,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Kuznetsov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.O.</given-names>
            ,
            <surname>Obiedkov</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.A</surname>
          </string-name>
          . (eds.)
          <source>Formal Concept Analysis of Social Networks</source>
          , pp.
          <volume>59</volume>
          {
          <fpage>96</fpage>
          . Lecture Notes in Social Networks, Springer (
          <year>2017</year>
          ). https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -64167-6 4, https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -64167-6 4
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. Jaschke, R.,
          <string-name>
            <surname>Hotho</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schmitz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ganter</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stumme</surname>
          </string-name>
          , G.:
          <article-title>TRIAS - an algorithm for mining iceberg tri-lattices</article-title>
          .
          <source>In: Proceedings of the 6th IEEE International Conference on Data Mining (ICDM</source>
          <year>2006</year>
          ),
          <fpage>18</fpage>
          -
          <lpage>22</lpage>
          December 2006,
          <string-name>
            <given-names>Hong</given-names>
            <surname>Kong</surname>
          </string-name>
          , China. pp.
          <volume>907</volume>
          {
          <issue>911</issue>
          (
          <year>2006</year>
          ). https://doi.org/10.1109/ICDM.
          <year>2006</year>
          .
          <volume>162</volume>
          , http://dx.doi.org/10.1109/ICDM.
          <year>2006</year>
          .162
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wille</surname>
            ,
            <given-names>R.:</given-names>
          </string-name>
          <article-title>A triadic approach to formal concept analysis</article-title>
          .
          <source>In: Conceptual Structures: Applications</source>
          , Implementation and Theory, Third International Conference on Conceptual Structures, ICCS '95,
          <string-name>
            <surname>Santa</surname>
            <given-names>Cruz</given-names>
          </string-name>
          , California, USA,
          <year>August</year>
          14-
          <issue>18</issue>
          ,
          <year>1995</year>
          , Proceedings. pp.
          <volume>32</volume>
          {
          <issue>43</issue>
          (
          <year>1995</year>
          ). https://doi.org/10.1007/3-540- 60161-9 27, http://dx.doi.
          <source>org/10.1007/3-540-60161-9 27</source>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Mirkin</surname>
            ,
            <given-names>B.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kramarenko</surname>
            ,
            <given-names>A.V.</given-names>
          </string-name>
          :
          <article-title>Approximate bicluster and tricluster boxes in the analysis of binary data</article-title>
          . In: Kuznetsov,
          <string-name>
            <given-names>S.O.</given-names>
            ,
            <surname>Slezak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Hepting</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.H.</given-names>
            ,
            <surname>Mirkin</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.G</surname>
          </string-name>
          . (eds.) Rough Sets, Fuzzy Sets,
          <source>Data Mining and Granular Computing - 13th International Conference, RSFDGrC</source>
          <year>2011</year>
          , Moscow, Russia, June 25-27,
          <year>2011</year>
          .
          <source>Proceedings. Lecture Notes in Computer Science</source>
          , vol.
          <volume>6743</volume>
          , pp.
          <volume>248</volume>
          {
          <fpage>256</fpage>
          . Springer (
          <year>2011</year>
          ). https://doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -21881- 1 40, https://doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -21881-1 40
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Ustalov</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Panchenko</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutuzov</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Biemann</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ponzetto</surname>
            ,
            <given-names>S.P.</given-names>
          </string-name>
          :
          <article-title>Unsupervised semantic frame induction using triclustering</article-title>
          . In: Gurevych,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Miyao</surname>
          </string-name>
          ,
          <string-name>
            <surname>Y</surname>
          </string-name>
          . (eds.)
          <article-title>Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics</article-title>
          ,
          <string-name>
            <surname>ACL</surname>
          </string-name>
          <year>2018</year>
          , Melbourne, Australia,
          <source>July 15-20</source>
          ,
          <year>2018</year>
          , Volume
          <volume>2</volume>
          :
          <string-name>
            <given-names>Short</given-names>
            <surname>Papers</surname>
          </string-name>
          . pp.
          <volume>55</volume>
          {
          <fpage>62</fpage>
          .
          <article-title>Association for Computational Linguistics (</article-title>
          <year>2018</year>
          ), https://aclanthology.info/papers/P18-2010/p18-
          <fpage>2010</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Zudin</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gnatyshak</surname>
            ,
            <given-names>D.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ignatov</surname>
            ,
            <given-names>D.I.</given-names>
          </string-name>
          :
          <article-title>Putting oac-triclustering on mapreduce</article-title>
          . In: Yahia,
          <string-name>
            <given-names>S.B.</given-names>
            ,
            <surname>Konecny</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the Twelfth International Conference on Concept Lattices and Their Applications</source>
          , Clermont-Ferrand, France,
          <source>October 13-16</source>
          ,
          <year>2015</year>
          .
          <source>CEUR Workshop Proceedings</source>
          , vol.
          <volume>1466</volume>
          , pp.
          <volume>47</volume>
          {
          <fpage>58</fpage>
          . CEURWS.org (
          <year>2015</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1466</volume>
          /paper04.pdf
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>