Paul Cunningham

Philippe Lemoisson
email: philippe.lemoisson@cirad.fr

Guillaume Surroca
email: guillaume.surroca@gmail.com

Stefano Cerri
email: cerri@lirmm.fr

Viewpoints: An Alternative Approach toward Business Intelligence

Business intelligence is crucial for synergy and competitiveness in the world of business; the challenge is to capitalize upon the experiences, relationships and knowledge of all members over time. In this paper, we address business intelligence and more generally collective intelligence through a social approach based on viewpoints. The collective knowledge is stored within a bi-partite graph populated by agents, documents and topics on one side and by viewpoints on the other side. Viewpoints consist in labelled triples (agent, document, topic). We define a semantic distance on this structure. We then engage a selectionist process: information retrieval is based on existing viewpoints while feedbacks yield new viewpoints. The implemented framework and algorithms are tested through a simulation.

Introduction

Business intelligence (BI) is crucial for synergy and competitiveness in the world of business. In a 1958 article [START_REF] Luhn | A Business Intelligence System[END_REF], IBM researcher Hans Peter Luhn used the term; in that paper he defined intelligence as: "the ability to apprehend the interrelationships of presented facts in such a way as to guide action towards a desired goal." Although the collective dimension is absent from this initial definition, BI can clearly be considered as part of a broader phenomenon called collective intelligence (CI) in our highly interconnected societies. The challenge is twofold: i) motivate people to participate to a collective endeavour based on knowledge sharing, ii) fully exploit a distributed set of resources (documents, people and computers) for producing new information and help elaborate new knowledge.

In this paper we consider the second aspect of the challenge through three basic questions:  how to help each individual find trustful documents (texts, datasets, images …) on a particular topic?  how to help her/him find the right people to exchange, argue and capitalize on a particular subject?  how to empower the emergence of new knowledge within the community? BI mostly results of the compilation of semi-structured or unstructured data (texts but also images), as stated in [START_REF] Inmon | Tapping into Unstructured Data: Integrating Unstructured Data and Textual Analytics into Business Intelligence[END_REF]; this considerably disadvantages approaches needing a rationalization of terminology. In BI or CI, the question of meaning arises in first place, especially the question of the reference to "knowledge supports owning an URI, i.e. documents".

Our "attitude" facing this question is that of H. Halprin. In [START_REF] Halpin | Social meaning on the web: from Wittgenstein to search engines[END_REF], Halprin firstly recalls a controversy between two philosophical positions: i) Kripke/ Berners-Lee asserting that "the URI means what the owner says or thinks it does", so that the URI unifies access and reference and ii) Russell/Haynes emphasizing that "reference is absolutely unconstrained except by formal semantics", so that "the relationship between access and reference is essentially arbitrary". The author then refers to Wittgenstein, depicts the historical path linking the understatement "meaning is use" to the discipline of information retrieval, and proves the benefit of "relevance feedback" [START_REF] Callan | The INQUERY retrieval system[END_REF] by experimenting on a set of 200 queries. He concludes that "finding and giving meaning to URIS on the Semantic Web can be built out of the social semantics implicitly given by the searching behaviour of ordinary users".

Among many arguments in favour of a thesis involving the humans in information retrieval is the following: if the process was to be achieved on the basis of formal semantics only, we should be facing what is defined in [START_REF] Shapiro | Encyclopedia Of Artificial Intelligence Second Edition[END_REF], [START_REF] Yampolskiy | AI-Complete CAPTCHAs as Zero Knowledge Proofs of Access to an Artificially Intelligent System[END_REF] as an "AI-complete" problem. To escape this difficulty, some kind of human arbitration during the retrieving process is necessary; an illustration can be found in [START_REF] Carlson | Toward an architecture for never-ending language learning[END_REF] where experts supervise the reading and collecting of web data by an artificial agent.

We therefore consider a combination of AI (artificial intelligence) techniques such as classifiers, machine learning and DHC (distributed human computation). An emblematic use of DHC is discussed in [START_REF] Von Ahn | recaptcha: Human-based character recognition via web security measures[END_REF]: humans' micro efforts to recognize characters are integrated by an artificial agent in charge of book digitization. Among many illustrations of this new paradigm, we can cite two: DHC helps and solve the co-reference resolution problem in [START_REF] Yang | Distributed human computation framework for linked data co-reference resolution[END_REF], it is also adopted in [START_REF] Togia | and reference: the role of folksonomy in formal ontology matching[END_REF] where semantic matching is done with the help of folksonomies. To describe this new collaboration paradigm, the metaphor of a global brain has been used by many authors, such as Bernstein, Klein and Malone: "As the scale, scope, and connectivity of these human-computer networks increase, we believe it will become increasingly useful to view all the people and computers on our planet as constituting a kind of global brain" [START_REF] Bernstein | Programming the global brain[END_REF]. It must be noted however that a full implementation of this metaphor would require the emergence of new knowledge, and even of "new levels of understanding", which according to [START_REF] Gruber | Collective knowledge systems: Where the social web meets the semantic web[END_REF] has not been assessed yet.

Our paper addresses the emergence of new knowledge within a community sharing information. We propose a conceptual framework intended to help and answer the three questions above, and simultaneously open the way for an graphical assessment of collective learning. Our approach is based on three ideas:

1. We consider a "knowledge space" where agents, documents and topics are symmetrically considered as "objects". Within this structure, we consider triples (agent x , object 1 , object 2 ) labelled by +1 or -1. We call these labelled triples "viewpoints" and interpret them in the following way : +1 means "agent x believes that object 1 and object 2 are "semantically close" ; -1 means "agent x believes that object 1 and object 2 are "semantically distant". 2. We take advantage of this "semantic relatedness" for information retrieval. 3. We engage a selectionist process. The coevolution of viewpoints is ruled by the agents' feedbacks to information retrieval: retrieval is based on existing viewpoints while feedbacks yield new viewpoints.

According to this vision, users are agents located within a knowledge ecosystem: a network of documents, topics and other agents. The foundational chunk of information is not a binary link between a document and a topic but a ternary relation including the agent that emits the viewpoint. The building of knowledge is cumulative in a fashion similar to what occurs in the Open Source movement: when capitalizing on someone else's viewpoints previously expressed, we engage in offering our own viewpoints for the benefit of future users. The reputation of agents, the relevance of documents with respect to particular topics, the proximity or importance of topics will continuously evolve according to the interplay of viewpoints. The knowledge space reflects in real time the evolution of both the outside world and of the community knowledge.

Objectives

In this paper, we have two objectives:  to enter in the details of the conceptual framework supporting our approach;  to test the use of the "semantic distance" in information retrieval by simulating the coevolution of viewpoints in the context a community of artificial agents.

Methodology

Our representational basis for the knowledge space is "purely topological": it consists in a graph linking people, documents and topics through viewpoints. This representation does not involve formal semantics, nor relies on vector spaces (see [START_REF] Sahlgren | The Word-space model[END_REF] for an extended analysis of the semantical exploitation of high dimensional vector spaces), nor necessitates (but it can benefit from it) a previously built lexical database such as WordNet. Therefore the semantic distances such as those analysed in [START_REF] Budanitsky | Semantic distance in WordNet: An experimental, applicationoriented evaluation of five measures[END_REF] do not apply; instead we define a socially constructed -distance playing the role of "semantic distance". A decisive improvement in information retrieval (IR) is expected from the topology itself and the use of the -distance.

-The knowledge space

The knowledge space is a bipartite graph KG populated with two classes of nodes: class "O" and class "V". There are three subclasses of "O":  the objects of subclass A are interpreted as "agents"; those can be human or artificial (e.g. topic miners or embedded logics). The concept of agent unifies all knowledge providers.  the objects of subclass D are interpreted as "documents". The concept of document unifies all knowledge supports (texts, maps, videos…).  the objects of subclass T are interpreted as "topics". The concept of topic unifies all knowledge descriptors, i.e. all means of describing agents, documents, or subjects of enquiry.

The objects of class V are viewpoints; they express beliefs. They are formalized below:

-The -distance

The basic concept in the definition of the -distance is the notion of "jump". A "jump" is a triple (o 1 , v, o 2) where o 1 is adjacent to v and o 2 is adjacent to v in KG; o 1 and o 2 are said to be "-adjacent" in O. A path in O is a sequence of "-adjacent" objects. This leads to the following definition1 : Definition 3: i. -distance (o i , o k ) = the smallest path-distance between o i and o k along all sequences of -adjacent objects. ii. m Neighbourhood (o i ) = {o j such that -distance (o i , o j ) ≤ m}. Neighbourhood (o i ) contains at least 'o i '.

-distance (o i , o k ) will be called the "semantic distance2 " between o i and o k in O.

-A protocol for simulating the coevolution of viewpoints

In order to simulate the use of the "semantic distance" in information retrieval, we implement the co-evolution of viewpoints in the context a community of artificial agents.

We consider fixed sets of artificial agents (A), documents (D) and topics (T); O=ADT.

We initialize the community knowledge by building an initial set V 0 of viewpoints of the type (a i →{o j , o k },+1), where (a i , o j , o k ) is randomly chosen in A×O×O.

Let KG be the bipartite graph built upon O and V 0 .

Let β be a "permeability" parameter characterizing the average ratio of acceptance of new viewpoints by an agent; β belongs to [0, 1]3 .

Let us call a "run" the following sequence:

1. an agent a i is chosen at random 2. an object o q is chosen at random, o q stands for the query made by a i 3. the answer to the query is computed by using the semantic distance (see section 5); it consists in all the objects of O situated at a distance smaller than 'm' from 'o q '. Let R= m Neighbourhood(o q ) be the answer. 4. we call known R the part of R consisting in the objects 'o k ' about which a i had already emitted viewpoints of the type (a i →{o q , o k },+1) or (a i →{o q , o k },-1) 5. let new R = R -known R the part of the answer which is new for a i 6. a i emits 4 a viewpoint for each object o k in new R; this viewpoint is (a i →{o q , o k },+1) with the probability β and (a i →{o q , o k },-1) with the probability (1-β) 7. we call "satisfaction 5 " the proportion of accepted objects within new R 8. we call "relevance6 " the proportion of objects (either in known R or in new R) associated to a positive viewpoint within R One "go" consists in X "runs" potentially involving as many different agents; we compute the average "satisfaction" and "relevance" at the end of each "go". A "simulation" consists in Y "gos".

Technology

The implementation has been done using Java, the JUNG graph display API and JOpenChart.

Developments

The m Neighbourhood algorithm presented below is inspired from Dijkstra's algorithm. We label the objects of KG with a computed semantic distance which plays the role of the weights of Dijkstra's algorithm. The worst case complexity of the algorithm is O( |V|²|O|² ) with |V| = number of Viewpoints and |O| = number of objects. However this complexity is never reached as the spreading is limited to the exact and sufficient amount of expands to compute the m Neighbourhood.

m Neighbourhood ( KnowledgeGraph kg, Object searchedObject) Queue todo ← { searchedObject } ; List neighbourhood ← { }; Init() ; // sets all nodes distances to infinity ; all lists to "empty" ; all variables to "null" or 0

While todo ≠ { } Object o i ← pop( todo ) ; For each Viewpoint v j ∈ o i .neighbours If v j ∉ o i .referentViewpoints v j .pred ← o i ; For each Object o k ∈ v j .neighbours If o k ≠ o i o k .referentViewpoints ∪ { v j } ; s u m ← ∑( { Viewpoint v l | v l .pred = o i } ) ; I f s u m > 0 j u m p D i s t ← 1 / sum ; n e w D i s t ← o i .dist + jumpDist ; If( newDist < o k .dist OR o k .dist < 0 OR V j .pertinence = -1 ) o k .dist ← newDist ; todo ∪ { o k } ; I f o k .dist ≤ m neighbourhood ∪ { o k }
Figure 1 illustrates the m Neighbourhood algorithm applied to the agent 'a 3 '. Each node is labelled as follows: <node name> | d = <distance>; d < 0 is equivalent to "disconnected".

According to the distances labeling the nodes:  0,5 Neighbourhood (a 3 ) ={a 3 , d 0 }  1 Neighbourhood (a 3 ) ={a 3 , d 0 , t 2 , d 3 , a 0 , d 4 , a 2 }  2 Neighbourhood (a 3 ) ={a 3 , d 0 , t 2 , d 3 , a 0 , d 4 , a 2 , a 4 , t 0 , a 1 , t 1 , t 3 }

Results

The KG structure and IR algorithm depicted above have been used in 3 successive simulations, using the parameters detailed in Table 1; only the β parameter differs from one simulation to the other: "permeability" parameter for simulation 1 β2= 10% "permeability" parameter for simulation 2 β3= 30% "permeability" parameter for simulation 3

This set of parameters leads to reasonable computational times (less than 300 seconds with 3 Ghz quadcore). The following curves provide three main results:

1. the average satisfaction of the agents is equal to their permeability. This was strongly expected since both correspond to the acceptance of new viewpoints; the only interest of the "satisfaction" curves is to show the dispersion of the random tries. 2. when the permeability is null (β=0%), the relevance grows from 0 to 0.5; this growth is approxatively linear. It can be explained by the fact that all the unknown retrieved objects (those generating negative viewpoints in KG) become more distant; the algorithm therefore provides less and less answers and this leads to an increased proportion of relevant ones. 3. when the agents accept to learn from the community the increase in relevance grows in proportion with their permeability; this was somewhat expected. The maximum relevance reaches 0.6 (=0.5+0.1) when β=10%, it reaches 0.8 (=0.5+0.3) when β=30%. The above results demonstrate the operationality and confirm the expected behaviour of the -distance. They also demonstrates however that simulations based on probabilistic behaviours can provide no more than variations around a probabilistic equilibrium ; they do not open to the study of the self-structuring ability of the graph.

Business Benefits

In business, considerable economic interests depend on the capacity of companies to engage their employees into a collective retrieval of salient information among tons of public data on market, clients and competitors. Face of this situation, the need for collective intelligence is crucial, especially the ability to provide quick and relevant answers to the questions listed in the introduction. Moreover the opportunity of intergenerational transmission of knowledge is priceless, especially at a turning moment when baby-boomers retire.

Our approach deals with all these questions in a unified way. We have demonstrated simple requests about a single object, the approach applies as well (by intersecting neighbourhoods in KG) to complex requests involving several objects such as "I remember my colleague 'a' recommending some documents in complement of document 'd' about the topic 't', please help me find these documents."

Once a smart interface for emitting viewpoints is designed and implemented, the approach will hopefully appear as little demanding and much rewarding; it is therefore expected to yield a structured knowledge space well suited for Business Intelligence.

Conclusions

In this paper, we have presented a conceptual framework aimed at empowering Business Intelligence. We have formalized the notion of "viewpoint" in a knowledge space populated by agents, documents and topics; we have defined a semantic distance within this knowledge space; we have implemented an IR algorithm based on the semantic distance.

We have tested the algorithm computing the distance by simulating a cycle of information retrieval and feedbacks in a society of virtual agents. This simulation demonstrates a positive correlation between the "permeability" of the agents and the average subjective relevance.

Our current objectives are to study of the self-structuring ability of the graph in the context of a real-life scenario and then to take advantage of sophisticated analytics such as those defined in [START_REF] Halpin | The complex dynamics of collaborative tagging[END_REF] in order to assess collective learning.

Definition 1 :Definition 2 :

 12 We call viewpoint a pair v = (u, α) i. u is a couple consisting in on agent (the emitter of the viewpoint) and a pair of objects of O; u = (a 1 , {o 2 , o 3 }) means: "agent a 1 has something to say about the pair {o 2 , o 3 }". It is denoted u = a 1 →{o 2 , o 3 }.ii. α Є {-1, +1} is the evaluation given by agent a 1 about the semantic proximity between the objects o 2 and o 3 ; α = +1 means "semantically close" ; α = -1 means "semantically distant ". The knowledge space is a directed graph built upon O and V. It is denoted KG: the elements of O  V provide the vertices of KG  the elements of V are labelled by (α)  the edges of OG are the directed links built from the elements of V: each v = a 1 →{o 2 , o 3 } provides three directed edges: a 1 → v, v → o 2 and v → o 3 .

Figure 1 :

 1 Figure 1: the semantic distance in O, resulting from a computation in KG

Figure 2 :

 2 Figure 2: simulation results with various values for permeability β

Table 1 :

 1 parameters for the simulations 1,2 and 3

	Card(A) = 20	Fixed number of agents
	Card(D)=10	Fixed number of documents
	Card(T)=20	Fixed number of topics
	Card(V 0 )=10	Initial number of viewpoints
	m=1	Parameter of the	m Neighbourhood
	X=10	Number of "runs"
	Y=50	Number of "gos"
	β1= 0%

in order to keep this part concise, we skip the progressive steps of the formalization.

if we consider a class "Emotion" as a subclass of "Topic" then the distance also deals with the "proximity with emotions".

β=1 would mean that a i accepts all the proposed objects, and is therefore very « permeable » to the others'viewpoints; on the contrary β=0 would mean that a i refuses all that she/he does not already know.

in the implemented algorithm, the viewpoints are stored in a buffer and emitted at the end of each go.

we consider that the satisfaction of the agent only depends of the relative relevance of new objects

the relevance is computed on the basis of the whole answer to the query; an answer can be relevant even if nothing new is proposed