Classical Formal Concept Analysis (FCA) deals with data which describe a relationship between a set of objects and a set of attributes and provides methods to derive a concept hierarchy or formal ontology in them 
. FCA is a powerful tool for revealing dependencies in data and is commonly applied to data mining (in particular, text mining), machine learning, knowledge management, semantic webs, software development, and biology.
As a natural extension of FCA, Triadic Concept Analysis (TCA) manages triadic data in a form of objects, their attributes, and conditions under which these objects have certain attributes . A common example is a social network analysis with a context including users (objects), events they take part in (attributes) and interests (which might be regarded as conditions under which a user participates in a certain event).
As the task of finding all concepts or triconcepts is computationally challenging, certain relaxations of these terms have been introduced: biclusters  and triclusters . Here we address triclusters, i.e. combinations of sets of objects, their attributes, and conditions where not every object must have each attribute. Triclustering provides an output in the form of object clusters with similar attributes under similar conditions. Therefore, it is applied to mining users with common interests, applicants with similar competences or books labelled by close tags , . Triclustering is also a basis for a certain type of recommender systems , .
Visual analytics is an increasingly popular branch of Computer Science which combines both human and computer qualities to solve a range of problems that might lay beyond the power of man or machine separately. Actually, it is a subdomain of data analysis focusing on decision-making through data preprocessing, data mining and interactive user interfaces. For instance, Siemens PLM software allows developers to collect, process, visualize report data in the 3D engineering environment, and make real-time decisions in the process of developing new vehicles. The same method is used in situational and decision-making centres, in nuclear power energetics, and in crime investigations.
In this paper, we explore these topics and describe a framework which uses visual analytics to solve some problems in FCA.
2 Visual analytics
2.1 Definition and specificity
Visual analytics is a subdomain of data analysis focusing on analytical reasoning on the basis of interactive user interfaces in process of data mining, data preprocessing, knowledge representation, discovering dependencies, and decision-making.
Let us further consider core peculiarities of visual analytics and the tasks it is designed to solve: 
Visual analytics usually deals with complicated problems with big amounts of data requiring both human and machine resources.
The final goal of visual analysis is to enable users to obtain deep insight in problems to be solved which might include processing of large amounts of data from various sources. For this purpose visual analytics combines both human and technological resources. On one hand, data mining and statistics are the driving force of any automatic data analysis. On the other hand, human brain’s aptitude for information perception and discovering dependencies in data complies to machine techniques and thus turns visual analytics into a promising sphere for further development.
In its development, visual analytics fosters in its turn the development of data mining, data representation and visualization, and analytical reporting.
Visual analytics also deals with human cognition, information perception, Computer Science, interactive and graphical design.
Visual analytics combines methods of information visualization and graphical data representation where visualization fosters human perception by the following means:
Enlarging data resources capacities makes user memorize less
Reducing search, such as by representing a large amount of data in small space
Enhancing recognition of patterns, such as when information is organized in space by its time relationships
Supporting easy relationship inference
Monitoring large amounts of potential events
Providing techniques for dynamic data monitoring
Siemens uses visual analytics techniques in its product lifecycle management (PLM) software enabling developers to collect, process, visualize report data in the 3D engineering environment, and make real-time decisions in the process of developing new vehicles. 111http://www.plm.automation.siemens.com
The crucial point is that this system allows real-time visual interaction. This speeds up the processes of testing production for meeting given criteria, and eliminating product quality problems.
2.3 Supernova modelling
A highly powerful implementation of visual analytics paradigm was fulfilled by astrophysicists in Terascale Supernova Initiative (TSI) project. 222science.energy.gov//media/ascr/ascac/pdf/meetings/mar03/Mezzacappa.pdf The goal of the project is to give scientists from various fields access to powerful computation resources in order to produce knowledge in the sphere of fundamental science. In particular, the question of supernova birth was studied which encompassed 3D turbulence, gravitation and magnetic field modelling. The scale of the investigation was impressive - the modelling resulted in terabytes of data. The analysis of such amount of data lays beyond human power but combining human and machine capabilities allowed to make some inferences from all the bulk of data.
3 Formal Concept Analysis and OA-biclustering
3.1 Main definitions
A formal context in FCA is a triple where is a set of objects, is a set of attributes, and the binary relation shows which object possesses which attribute. denotes that object has attribute . For subsets of objects and attributes and Galois operators are defined as follows:
A pair such that and , is called a formal concept of a context . The sets and are closed and called the extent and the intent of a formal concept respectively. For the set of objects the set of their common attributes describes the similarity of objects of the set and the closed set is a cluster of similar objects (with the set of common attributes ).
The number of formal concepts of a context can be quite large ( in the worst case), and the problem of computing this number is #P-complete . There exist some ways to reduce the number of formal concepts, for instance, choosing concepts by stability, index or extent size .
An alternative way is to make a relaxation of the definition of a formal concept. One of them is an OA-bicluster .
If , then is called an object-attribute bicluster with the density
Bicluster density represents the percent of object-attribute pairs from the initial context in a certain bicluster.
Here are the main properties of OA-biclusters:
For any bicluster it is true that ,
An OA-bicluster is a formal concept if ,
If is a bicluster, then .
A bicluster is called dense if its density is greater than a predefined minimum threshold, i.e. . The above mentioned properties show that OA-biclusters differ from formal concepts since unit density is not required. Below follows an illustrative example for triconcepts and triclusters.
4 Triadic FCA and OAC-triclustering
As a solution for three-way data in FCA, Triadic Concept Analysis (TCA) was introduced .
A triadic context consists of sets (objects), (attributes), (conditions), and ternary relation . An incidence shows that the object has the attribute under condition .
We denote a triadic context by . A triadic context gives rise to the following dyadic contexts:
The derivation operators (or prime operators) induced by are denoted by . For each induced dyadic context we have two kinds of derivation operators. That is, for with and for and , the (i)-derivation operators are defined by:
are related by for all ,
are related by for all
A triadic concept of a triadic context is a triple of , , such that for every with we have .
and are called the extent, the intent and the modus of .
A set for a triple is called an OAC-tricluster (or object-attribute-condition tricluster or just tricluster) based on prime operators. Here
The density of a tricluster of a triadic context is
given by the fraction of all triples of in the tricluster, that is
The tricluster is called dense if its density is greater than a predefined minimum threshold, i.e. .
Just similarly to biclusters, triclusters have the following properties:
For every triconcept of a triadic context with nonempty sets and we have ,
For every tricluster of a triadic context with nonempty sets and we have .
Let us consider a sample context , where Ed, Leo, Max is a set of users, soccer, hockey — their interests, soccer.com, nhl.com, fifa.com, hockeycanada.ca — sites they have added to bookmarks, is a ternary relation between which can be expressed by Table 1:
Here, generally, we have triples to analyze. But actually, this number is reduced to , as there are lots of void triples present.
Actually, users Ed, Leo and Max share the same interests and almost the same sites (all the difference is that Leo has not bookmarked hockeycanada.ca). The idea of clustering here is presented by a tricluster
with density .
It is just one pattern to analyze instead of 11 in case of triples.
5 Implemented algorithms
The algorithms, described below, were implemented in Python 2.7.3 on a 2-processor machine (Core i3-370M, 2.4 HGz) with 3.87 GB RAM. One can find a description of testing procedure for these algorithms in  and .
5.1 OAC-prime triclustering algorithm
The hard core of the algorithm is quite simple: for all incidences for a triadic context we build a tricluster . If a tricluster is unique and its density exceeds a predefined minimum threshold then it is added to an array of triclusters. A pseudocode of algorithm for OAC-triclustering based on prime operators is presented below.
5.2 Recommender algorithm based on triclustering
The recommender algorithm applied to sets of a tricontext is analogous to the one described in . It takes as an input a context of three sets (objects, attributes, conditions), and the set of triclusters obtained as a result of the OAC-prime triclustering algorithm. For each user among all triclusters the one most similar to triples with this user is selected. The similarity of triclusters and triples is defined by function . The algorithm returns sets - tag and resource recommendations for all users.
6 The challenge and visual tricluster analysis framework
The challenge of the problem of triclustering (as of clustering on the whole) is to output meaningful, well-interpreted clusters. Actually, the term "meaningful" is not formally defined and is used by people to express their own subjective opinion on how well the task of clustering is solved, i.e. how similar the objects in same clusters are, how distant - in different ones, how it corresponds to real world problems etc. Therefore, here an expert opinion might be useful, and a prototype of a visual analytics framework, described below, provides visual feedback for expert, and gives him ability to explore clusters in details.
In figure 2, we can see a map of triclusters produced by algorithm 1 for a context of 20 users, 20 tags, and 200 resources. The map is projected on the User-Tag plane. The more a certain user-tag pair is presented in triclusters the darker the corresponding square. A user-tag pair , for instance, is included in 73 triclusters (a dark red square) while - just in 1 (a red square), and no triclusters have a pair (a grey one).
All triclusters including a certain user-tag pair can be listed by clicking on the "Triclusters" menu label. Similarly, triconcepts can be listed. One can also highlight the biggest tricluster with a certain user-tag pair or output all triclusters of the initial context ordered by density. Moreover, through the "Recommend attributes" context menu option an analyst can depict the results of recommender algorithm for a certain user (in this case, to show recommended tags).
The tool is intended to help an analyst to grasp the results of triclustering and recommender algorithms, and to make decisions on meaningfulness of certain triclusters and recommendations. The map helps the expert to quickly detect the concentrated regions (dark squares) and visualize dense triclusters including the corresponding triples. Further, it helps to make the decision whether the selected dense tricluster is meaningful or not, i.e. if it really combines similar users, tags, and resources.
7 Further work
There are several important issues to be regarded:
Limited human contribution: human contribution to triclustering in this visual analytics approach is limited and might only reach some hundreds of decisions on certain triclusters (less plausible, a thousand). Therefore, machine learning approach might help to learn the algorithm to classify meaningful clusters. The distance metric on triclusters should be carefully chosen.
Scalability: the issue of scalability is quite challenging in the described technique, and is to be solved. In current state, the application can support only contexts with one long dimension, for instance, a context of 20 users, 20 tags, and 400000 resources which can be projected onto a user-tag plane. One possible way to address the scalability issue is to perform preliminary clustering of objects, attributes, and conditions separately, and then choose representatives from each cluster.
Extending the idea of a human-machine approach to other problems in FCA or data mining, such as exploring implications and association rules in order to find meaningful ones.
Visual analytics, as one of the flourishing domains of data analysis, can be useful in mining objects with similar attributes under similar conditions in a context of social network data. A special algorithm was developed for uniting such objects, attributes, and conditions in triclusters. The program framework under development is intended to graphically display the results of this algorithm and to empower an analyst to decide on the meaningfulness of clusters and tags or resources recommendations for objects.
The author would like to thank his colleagues from Higher School of Economics Sergei Kuznetsov and Dmitry Ignatov for their well-timed advice and support during this work. He also expresses gratitude to Stanislav Klimenko from Moscow Institute of Physics and Technology for consulting in visual analytics.
-  Ganter, B., Wille, R.: Formal concept analysis: Mathematical foundations. Springer, Berlin (1999)
-  Lehmann F., Wille R.: A triadic approach to formal concept analysis. Springer-Verlag, London (1995)
-  Mirkin, B. G.: Mathematical Classification and Clustering. Kluwer Academic Press, Dordrecht (1996)
-  Ignatov, D. I., Kuznetsov, S. O., Poelmans, J., Zhukov, L. E.: Can triconcepts become triclusters? International Journal of General Systems. 42, 572—593 (2013)
-  Gnatyshak, D. V., Ignatov, D. I., Semenov, A., Poelmans, J.: Analysing online social network data with biclustering and triclustering. In: Proceedings of the "Concept Discovery in Unstructured Data" conference, vol. 871, pp. 30—39. Katholieke Universiteit Leuven, Leuven (2012)
-  Ignatov, D. I., Kuznetsov, S. O., Poelmans, J.: Concept-Based Biclustering for Internet Advertisement. In: ICDM Workshops, pp. 123—130 (2012)
-  Venjega, A. B., Gnatyshak, D. V., Ignatov, D. I., Konstantinov, A. V.: Recommender system for perfumes and their tags based on triclustering. In: Proceedings of the "Intellectual data processing" conference, pp. 601—605. Torus Press, Moscow (in Russian) (2012)
-  Ignatov, D. I., Poelmans, J., Zaharchuk, V.: Recommender System Based on Algorithm of Bicluster Analysis RecBi. In: CEUR Workshop proceedings of the "Concept Discovery in Unstructured Data" conference, vol 757, pp. 122—126 (2011)
-  Keim, D., Andrienko, G. et. al.: Visual analytics: Definition, process, and challenges. In: Information Visualization, vol. 4950, pp. 154—175 (1999)
-  Thomas, J., Cook, K.: Illuminating the Path: Research and Development Agenda for Visual Analytics. IEEE-Press, New York (2005)
-  Kielman, J., Thomas, J.: Special Issue: Foundations and Frontiers of Visual Analytics. In: Information Visualization, vol. 8, pp. 239—314 (2009)
-  Kuznetsov, S. O.: On Computing the Size of a Lattice and Related Decision Problems. Order, vol. 18, no. 4, pp. 313—321 (2001)
Kuznetsov, S. O.
: On stability of a formal concept. Annals of Mathematics and Artificial Intelligence. 49, 101—115 (2007)
-  Gnatyshak, D. V., Ignatov, D. I., Kuznetsov, S. O.: From Triadic FCA to Triclustering: Experimental Comparison of Some Triclustering Algorithms. In: CLA 2013 Proceedings, pp. 249—260. University of La Rochelle (2013)
-  Kashnitsky, Y. S.: Visual analytics for multidimensional data triclustering. Proceedings of MIPT, vol. 6, no. 2(22) (in Russian, to be published) (2014)