Sirinya On-At
email: sirinya.on-at@irit.fr

Marie-Françoise Canut
email: canut@irit.fr

André Péninou
email: peninou@irit.fr

Florence Sèdes
email: sedes@irit.fr

Deriving User's Profile from Sparse Egocentric Networks Using Snowball Sampling and Link Prediction

Keywords: User modeling, social network analysis, link prediction, snowball sampling I

 proposes an algorithm enabling to compute user's interests using information from egocentric network extracted communities. Therefore, mining information from a small or a sparse network remains challenging because there is not enough information to enrich a relevant user's profile. So, one of the main lock is to cope with the lack of information that is considered as an important issue to extract a relevant community and could lead to misinterpretations in the user's profile modeling process. We aim to improve the performance of [1], regarding the lack of information problem, in the case of a small and/or a sparse network. We propose to add more information (i.e. relations) into user's network before extracting the data and enriching his profile. To achieve this enrichment, we suggest using snowballsampling technique to identify and add user's distance-2 neighbors (friends of a friend) into the user's egocentric network. Our experimentation conducted in DBLP demonstrates the interest of node integration into small and sparse network. This leads to the study of link prediction that enables us to provide better performances and results compared to the existing work.

INTRODUCTION

With social content sharing explosion, the amount information shared becomes a rich source of knowledge but sometimes superfluous for a user. To propose information adapted to the user's specific needs, information adaptive mechanisms (e.g. recommendation, personalization) rely on user's profile modeling enabling to collect and identify his personal information and interests.

As social networks are growing in terms of active users, resources and interactions, several studies are interested in using this kind of information to enrich user' profile (e.g. [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF]- [START_REF] Bonhard | Knowing Me, Knowing You' -Using Profiles and Social Networking to Improve Recommender Systems[END_REF]). In this context, one of our contributions [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF] proposes a community-based algorithm to derive user's profile from his egocentric network (a social network widely used in sociology that focuses on user's neighbor's immediate interconnections). This algorithm computes user's interests using information from communities extracted from his egocentric network. We are interested in improving the results of this work in case of small and/or sparse networks. In fact, communities that are detected from such characteristics of network are usually proved irrelevant. Thus, this could lead to misinterpretations in the user's profile's modeling process.

To overcome these drawbacks, we focus on the user's egocentric network construction phase, in order to provide a relevant user's egocentric network before applying [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF]'s proposed algorithm. We propose to integrate more users' neighbors into user's egocentric network, in order to facilitate the community extraction phase. There are two techniques considered in our works. Firstly, we propose using snowball sampling to integrate the distance-2 neighbors (friends of a friend) of the user into the network. Secondly, in order to filter and add the relevant ties and individuals into the user's egocentric network, we apply link prediction technique on the extended egocentric network computed from the first approach.

Our evaluation has been conducted in the co-authors network DBLP. This evaluation allows us to demonstrate the interest of integrating the distance-2 neighbors of the user into very small and/or sparse networks before running the user's profiling process. However, the technique does not perform well in other networks having larger size. This leads us to combine the first technique with the link prediction that enable to provide better performances and results compared to the first technique and the existing work.

The rest of this paper is structured as follows: in the next section we present related works. In the third section we describe a preliminary study on snowball sampling and link prediction that leads to our proposed extended approach. In section four, we illustrate the experimentation. In section five, we present and comment the results of our experiments. The last section concludes and presents the perspectives of our work.

II. RELATED WORKS

A. User profiling from social network

User's profile is generally represented with weighted user's interests in one or several domain (e.g. sport, music). It can contain also the user contextual information (e.g. location, time). In an information system, a user's profile is built and enriched over time upon his interactions with the systems (e.g. sharing information, annotating resources, publishing scientific papers). Nevertheless, the profile of new or less-active user could be empty and do not contain any useful interests for a mechanism of personalization or recommendation. This problem is identified as the cold start problem [START_REF] Massa | Trust-aware Recommender Systems[END_REF].

To solve this problem, it's necessary to find additional user information in order to complete non-existent/missing profile. One of effective techniques is to use information from user's social network. Different approaches of user's profile enrichment using user's social network information have been proposed. [START_REF] Cabanac | Accuracy of Inter-researcher Similarity Measures Based on Topical and Social Clues[END_REF]- [START_REF] Bonhard | Knowing Me, Knowing You' -Using Profiles and Social Networking to Improve Recommender Systems[END_REF] select individually the user's social network to describe his interests. Each approach strongly depends on underlying mechanism that uses built profiles and on each application domain (e.g. search engines, products recommendation), not much has been done to build a generic profile that can be applied independently of the application mechanisms.

A. User profiling from egocentric network

Instead of considering only some individually selected people in the user's social network to describe the user, [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF] proposes a community (extracted from his egocentric network) based algorithm to enrich user's interests. This algorithm can be reused in any application context and in any mechanism. Obviously, this work considers that the user is better described by communities of people around him, especially the people that are directly connected to him as demonstrated in [START_REF] Sinha | Comparing Recommendations Made by Online Systems and Friends[END_REF], [START_REF] Bhattacharyya | Analysis of user keyword similarity in online social networks[END_REF]. We describe the ego-centric network of a user as follows: for each user (u) we consider the undirected graph G(u) = (V, E) where V is the set of nodes directly connected to u, and E is the set of relationships between each node pair of V. We emphasize that u is not included in V.

[1] presents a user's profile as a vector of weighted user's interests. Each user's profile is composed of two dimensions. Firstly, the user dimension which contains user's interests computed by using only the user behavior. Secondly, the social dimension which contains user's interests computed by using the behavior of people in the user's egocentric network (G). This work introduced a user' social dimension building process (named CoBSP -Community based Social Profile), consisting of four steps:

Step 1 consists in extracting communities from the user's egocentric network. This phase is realized by applying iLCD algorithm [START_REF] Cazabet | Automated Community Detection on Social Networks: Useful? Efficient? Asking the Users[END_REF] which performs very well with overlap and outperforms other algorithms particularly for egocentric networks.

Step 2 consists in computing the profile of each community found in the first step. The profile of a community is computed by analyzing the behavior of all members of this community.

Step 3 consists in computing the weight of each interest in the social dimension of the user's profile. The weight of an interest i in the community c depends on structural score and semantic score vary with the parameter α as presented in the following formula.

w(i,c) = α Struct_Score(c) + (1-α)Semantic_score(i,c) (1)
Finally, we derive the social dimension according to the weights calculated in the third step.

The performance of CoBSP algorithm has been proved with empirical results. Therefore, their experiment considered only the users having at least 50 persons in their egocentric network because the information from the smaller egocentricnetwork is considered insufficient. We are interested in extending this existing work so that the algorithm performs better in such environment. We suggest adding more relevant relations into the user's egocentric graph.

III. EXTENSION APPROACHES

A. Preliminary study

Our contribution leads to the study of snowball sampling and link prediction that allow us to integrate more relations into the user' egocentric network and select only the relevant ones.

1) Snowball sampling

"Snowball sampling" is a sampling technique mainly used in research to locate further information in order to increase research sample's member. This method allows collecting information like a small snowball rolling on a snow-covered space and pick up more and more snow as it rolls. The process consists in searching for additional members of a research sample by using the existing members: we use existing members of the sample to identify the other external individuals who are, then, used to refer to other individuals until we reach the (significant) sample size [START_REF] Goodman | Snowball Sampling[END_REF]- [START_REF] Biernacki | Snowball Sampling: Problems and Techniques of Chain Referral Sampling[END_REF]. In the other hand, we can consider this technique as transitive trust chain mining [START_REF] Erickson | Some problems of inference from chain data[END_REF], [START_REF] Ziegler | Investigating interactions of trust and interest similarity[END_REF]. Based on the knowledge transfers chain, we can identify people who share the same interest or information.

With the same concept, in social network, we can take advantage of interactions links between individuals in the network to identify ones who are in the same target (i.e. linktracking). [START_REF] Erickson | Some problems of inference from chain data[END_REF] uses the snowball sampling technique to build the egocentric networks of a user with the following principle: given k, the distance between two nodes in the network, we start from the user and search for others individuals whom he has connection with (k=1). Then, we start from the latter one to search for the others individuals (k=2) and so on, until the sample size is reached. If the size is not defined, we utilize the random number as the maximum size of the sample.

Snowball sampling has been widely used in sociology researches to sample hard-to-reach population (e.g. criminals, isolated people, prostitutes, HIV patients…). The technique can be also used to cope with the lack of information or population [START_REF] Biernacki | Snowball Sampling: Problems and Techniques of Chain Referral Sampling[END_REF].

In our approach, we aim to use snowball sampling to extend user's egocentric network, for small or sparse networks, by seeking the individuals linked with the existing user's neighbors. However snowball sampling is not enough accurate as stand-alone tool. In order to obtain relevant information, we have to combine this method with other information selection technique. In this case, we propose to filter population by using a so-called "friends of friends" property. Based on [START_REF] Sinha | Comparing Recommendations Made by Online Systems and Friends[END_REF], [START_REF] Bhattacharyya | Analysis of user keyword similarity in online social networks[END_REF], we consider that apart from the direct contacts of user, the direct contact of contacts (i.e. friends of friends) can be the second meaningful source to describe the user.

However, we need to emphasize that the most important objective of using snowball sampling in our work is to gain more sample population in the case of the lack of information. The representativeness of the sample obtained with this technique is not always guaranteed because we have no idea of the true distribution of the population and of the sample. As we can see in the real world, it is not always certain that we know all the friens of our friends.

In such case, we need to select only the signifcant nodes. This leads us to the study of the techniques that enable to idenfity and take into account the most relevant nodes in our work. In the social network context, link prediction is one that fits well to this requirement.

2) Link prediction

Link prediction is a technique widely used in graph mining and network analysis. It consists in predicting, from a given network, which pairs of nodes are likely to link together. This technique is used to predict new links that could be formed between nodes in the future. In this case, the task can be defined as follows: given a pair of nodes n1 and n2, from a graph G, that have never connected at timestamp t1, we compute probability that these two form a link at timestamps ti (i>1). Furthermore, we can use link prediction to discover the links that couldn't be directly observed in the network but are likely to exist. This one is useful to complete and extend the network with relevant information. The link prediction has a variety of application: detecting novel relations in social network [START_REF] Pavlov | Finding Experts by Link Prediction in Co-authorship Networks[END_REF], identifying the collaboration in the organization, identifying suspicious links in the network [17][18].

Due to its broad applicability, a variety of approaches and algorithms are proposed [START_REF] Lichtenwalter | New Perspectives and Methods in Link Prediction[END_REF]- [START_REF] Liben-Nowell | The Link Prediction Problem for Social Networks[END_REF]. The most popular ones are based on node features, probabilistic model and topological. The probabilistic approach consists in building a model using the observed social network. Examples of models in this approach are Relational Markov Networks, Relational Bayesian Networks. In the node features based approaches, we compute similarity measures by using their content or semantics. The topological based approach consists in computing similarity scores between two nodes by exploring structural pattern of the network in the analysis. The latter one is the most widespread due to its effectiveness and simplicity. That is why our proposed approach is based on this approach.

[25] studied various methods of link prediction using topological features extracted from coauthorship network including neighborhood based methods, path based methods and some height level approaches. We are interested in our work, the neighborhood methods including common neighbor, Jaccard's coefficient, Adamic/Adar. The common neighbor is a number of neighbors that are shared by a pair of nodes in the network. The Adamic/Adar measure [START_REF] Adamic | Friends and neighbors on the Web[END_REF] weights the importance of a common neighbor by the rarity of relationships between other nodes and this one (i.e. a node pair having a common neighbor that is not common to several nodes is considered more important). Jaccard's coefficient is a normalized measure of common neighbor by dividing with the number of total neighbors. Finally, the preferential attachment method [START_REF] Newman | Clustering and preferential attachment in growing networks[END_REF] which indicates that new links are more likely to be formed with higher degree nodes. The similarity score is the product of the degrees of the two nodes.

The effectiveness of theses methods was evaluated in [START_REF] Liben-Nowell | The Link Prediction Problem for Social Networks[END_REF] by calculating the prediction accuracy improved over a random predictor. The results show that, in spite of its simplicity, Adamic/Adar perform well in term of accuracy. The similarity scores is presented by the following formula.

(2)

B. Proposed approach

The aim of this work is to extend the algorithm CoBSP proposed in [28], in order to apply efficiently the communityextracting algorithm to a tiny and/or sparse network. At first, we propose to increase the size and the density of the network by adding new significant nodes. Thus, this work is located in the step 0 of the CoBSP process (i.e. the eccentric network preparation step before applying CoBSP process).

1) Network extension

Based on the snowball sampling technique, we take into account the individuals at stage k>1 in the user's egocentric network. We pretend that these individuals are directly connected with the user. Following the user's egocentric graph G(u) defined in section 2, we consider k, the distance between the user u and V . With k = 1, we consider only the individuals directly connected with the user. With k=2, we also integrate the individuals connected with the user at distance 2 (friends of friends) in the set of his neighbors and so on.

We present our user's egocentric extended graph as followed: for each user (u) we consider the undirected graph G(u) = (V k ,E k ) where V k is the set of individuals connected to u at distance k ∈ N and E is the set of interactions between the members of V k .. We propose in the first time to define the tiny value of k (k=2).

After extending the user's egocentric network from the first step, we obtain a graph G 2 (u) = (V 2 ,E 2 ), the user's egocentric network composing of his distance-1 and distance-2 neighbors. With this technique, the graph's nodes increase exponentially. We can obtain sufficient user's egocentric nodes before applying CoBSP algorithm. Note that we can also obtain, in this extended network, a large number of distance-2 neighbors (It's possible that the user's directed neigbors posssessed in his turn a lot of neigbors). And one more, it is possible that ones of them are not relevant.

To avoid taking into account the non-relevant nodes in the user profiling process, we propose to apply the link prediction method, on the extended user's egocentric network.

2) Selection of relevants individuals using link prediction technique

After studying several link prediction methods in social networks, we are interested in topological based methods. Based on the comparison of the methods of predictions of links from [START_REF] Liben-Nowell | The Link Prediction Problem for Social Networks[END_REF], we adopt Adamic/Adar method in our work.

We propose then, to combine the link prediction technique with our previous approach based on snowball sampling technique. Thus, we propose to apply link prediction method on the extended egocentric network G 2 (u). Given a graph G 2 (u) = (V 2 ,E 2 ), we apply to each node pair v x , v y ∈ V 2, the Adamic/Adar method:

(3)
The next step is to rank the node pairs according to their similarity score. To avoid the information overload issue as described above, we suggest limiting the number of nodes that we will take into account in the user's profile building process.

The considered relevant node pairs are computed by using the top-n elements of the rank. To start, we define the value of n = 75, based on the average of users' neighbors number in the experimentation of [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF].

We obtain in the final step, for the user u, the user's egocentric network represented by the graph G 2 '(u) = (V 2 ',E 2 '), |V 2 '| = n. We can then use this network in user's profile (social dimension) building process.

IV. EXPERIMENTATION

The objective of evaluation is to compare our approach resulting with one of CoBSP and ones of individual based algorithms in literary works:

• Individual based algorithm 1 (IBSP1): this approach computes the weight of an interest in the social dimension of the user by simply summing the semantic scores of this interest for each individual in the community.

• Individual based algorithm 2 (IBSP2) [START_REF] Cabanac | Accuracy of Inter-researcher Similarity Measures Based on Topical and Social Clues[END_REF][5]: this approach use individual people (rather than communities) selected in the user's social network. Individual people are selected according to the strength of their tie with the user [START_REF] Carmel | Personalized Social Search Based on the User's Social Network[END_REF]or to their centrality values [START_REF] Cabanac | Accuracy of Inter-researcher Similarity Measures Based on Topical and Social Clues[END_REF].

We conducted the experiment on co-authorship network. In this network nodes represent the authors. Two authors can be connected if they publish together. The interest of users from the titles of their publications was calculated. The collected data from this social network will be analyzed and integrated into the social dimension and user dimension.

The strategy of evaluation consists in looking among the algorithms CoBSP, IBSP1, IBSP2 and our approach, the one which allows to build a social dimension which is the closest to the real profile of the user (user dimension).

A. Experimentation setup

It is necessary to avoid using identical data sources in these two dimensions. In fact, the publications of an author could also exist in list of his co-authors. This could lead us to fault interpretation of the result. Thus, we have decided to adopt two distinct data sources to build the two dimensions (DBLP for the social dimension and Mendeley for the user dimension).

1) Data acquisition

We adopted in our experiment, the authors who exist in both DBLP and Mendeley and have a number sufficient of interest indicated in their Mendeley profile so that we can compare the results correctly. Subsequently, we have decided to take into account in our evaluation, the authors that have at least 6 interests explicitly indicated in their mendeley profile.

Following our contribution, the authors studied in our work have to possess the poor number of co-authors. The authors considered relevant to the experiment of [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF] have at least 50 coauthors (ones who possess less co-authors could lead us to the lack of information issues as previously described). In our work, we considered the authors having less than 45 co-authors as the users possess a tiny and sparse network that we aim to improve the relevant of their dimension profile. Thus, an author corresponds to our data test set if he indicates more than 6 interests in his mendeley profile and if he possess less than 45 co-authors.

In order to study the factor of user's co-authors number, the authors studied in our test data are split into several groups according to the number of their co-authors. Our dataset is presented by several groups of authors: 50 authors with a very small network possessing less than 10 co-authors (as a community has to possess at least 2 individuals to apply the iLCD algorithm, we take into account authors having at least 3 coauthors in our work), 50 authors having 10-20 co-authors, 50 authors having 20-30 co-authors and 50 authors having 30-45 co-authors.

2) Building profiles process

We adopt in this work, the methodology process of building and evaluating authors' profiles from DBLP and Mendeley presented in [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF].

a) Social dimension construction

The first stage consists in generate user's social dimension in the egocentric network with value of k=1. Interests are detected by mining texts that appear in the title of publications of communities or individuals according to the algorithm used to derive social dimension (CoBSP, IBSP1 and IBSP2).

To built social dimension of our approach, apart from the egocentric preparation step, we use the same social dimension building process as one of the existing work [START_REF] Tchuente | A community-based algorithm for deriving users' profiles from egocentrics networks: experiment on Facebook and DBLP[END_REF] by applying CoBSP algorithm to the prepared user egocentric network. We generate for our approach, 2 social dimensions that built after integrating distance-2 coauthors of the user. The first consider all distance-2 coauthors (COBSPk2). The second one takes in to account only the co-authors considered relevant after applying link prediction method (COBPkL).

b) User dimension construction

The user dimension in this experiment consists in representing the real interests of the user. The dimension is build by mining keywords in the list of interests he explicitly indicated in his Mendeley profile, using the same process of text mining as adopted in the social dimension construction.

c) Evaluation

To evaluate the relevance of each social dimension we use the precision and the recall measure. The precision and the recall consist in measuring the capacity of the system to compute and propose relevant items.

The precision represents the proportion of relevant founded items and the total number of items. In our experimentation context, the precision formula is presented as follow:

(4)
The recall represents the proportion of relevant founded items compared to the total number of relevant items. It measures the capacity of the system to be restored. In our experimentation context, the precision formula is presented as follows:

(5)

To compute the precision and the recall, we only consider the most relevant interests. The total number of interests in the user dimension top N(User's interests) + m firsts interests obtained after building the social dimension (m=5 in this experiment). For example, if the user dimension of an author's profile contains 10 interests, we will consider the social dimension as only the top 15 firsts interests computed in the social dimension.

V. RESULTS AND DISCUSSION Fig. 3. Graphics comparing (precision, recall) the user dimension with the social dimensions built by algorithm CoBSP, IBSP1, IBSP2 and the social dimensions of our approach (CoBSPk2 and CoBSPkL)

The figure showed above presents comparative curves (precision, recall) of theses algorithms for all 200 authors' egocentric networks studied in this works, separated in different groups.

For the group of networks possessing few individuals especially with a number of co-authors lower than 10, CoBSPk2 outperforms CoBSP and IBSP2 in term of precision. This can be explained by the fact that in a very sparse network, there is not enough content to be mining in significant ways. After integrating more nodes into the network, we have more data source available to mining. This one demonstrates the interest of integrating more individual into user's egocentric network before applying CoBSP process, in the case of very tiny or sparse networks. However, compared to the algorithm based on the individuals IBSP1, CoBSPk2 produces less good results.

CoBSPk2 provides the worst accuracy when co-authors exceed 20. This can be explained by the fact that sometimes, by adding individuals to the distance k=2, the number of relations increases in exponential way and it could be possible that the new added nodes at such distance are not relevant (In the real world, it can be possible that the co-author of the studied author publish with another authors who are not at all in the same research field as this authors). More the author has existing co-authors more he risk to gain the non-relevant distance 2-coauthors.

After applying link prediction technique, we clearly see that CoBSPkL outperforms the CoBSP and CoBSPk2 in all groups of dataset. The link prediction technique does not provide better accuracy comparing to IBSP1. Nevertheless, the result could demonstrate the benefit of using link prediction to selection only relevant nodes into user's egocentric network before applying the user profiling process.

VI. CONCLUSION AND FUTURE WORK

In this paper, we have presented the extension technique to improve the results of existing community-based algorithm (CoBSP) in small and sparse networks. We proposed the extension approach based on snowball sampling technique and link prediction. The empirical study proved the benefit of integrating more individuals (individuals at distance 2) into a very small/sparse network. To solve the problem remain existing in other groups of network having more than 10 neighbor nodes, we propose to apply link prediction that enabled us to provide the better performances compared to the existing work. This one also allows us to demonstrate the advantage of link prediction in social network mining for user modeling process.

Our short term perspective consist in adopting different link prediction algorithms and conducting the evaluation on other data sources such as Twitter data so that we can compare and select the prediction algorithms relevant to the type of social network. Another important perspective is to take into account the dynamic of social network in our analysis process. We could notice while working on the DBLP data that some scientists change their research field and/or their collaborations over time. The old research field should become less significant than the new one. When analyzing the interactions or information, it would be more effective if highest weight were assigned to the recent interaction and/or recent publications. The long term perspective consists in proposing a platform that extracts the information and designs the user social dimension according to the type and the specific characteristics of adopted social networks (e.g. spars, dense…) by taking into account their evolution.

Fig. 1 .

 1 Fig. 1. Exemple of CoBSP's process using α = 0.01

Fig. 2 .

 2 Fig. 2. Evaluation process


Pierrick Marie

Léon Lim

Atif Manzoor

Sophie Chabridon

Denis Conan

Thierry Desprats

QoC-Aware Context Data Distribution in the Internet of Things

Keywords: IoT, Middleware, Distributed Event-Based Systems, Quality of Context

The Internet of Things (IoT) is a very dynamic and heterogeneous environment that generates plethora of sensor data, accessible to develop new smart pervasive applications. However, the substantial amount of effort required to collect and disseminate context data with sufficient quality prevents the context consumers to take advantage of the IoT to its full potential. Consequently, novel research efforts are required to design middleware solutions able to deliver relevant context data to consumer applications while hiding the complexity of data distribution in heterogeneous and large-scale environments. This paper presents the INCOME framework that enables context producers to express the level of Quality of Context (QoC) they are able to provide and context consumers to set thresholds on the QoC they expect in order to determine how to distribute context data. Our experiments show that context data can be annotated with QoC metadata and distributed from producers to consumers with a reasonable additional cost even on resource-constrained devices such as Raspberry Pi.

INTRODUCTION

By connecting any kind of things, the Internet of Things (IoT) paradigm allows the design of new applications in domains such as smart cities, smart homes, transportation and logistics. In addition to the communication standards proposed by the IETF (6LoWPAN, CoAP, etc.), the development of these applications will benefit from abstraction layers, and more specifically from concepts dealing with Quality of Context (QoC) aware context data distribution, that typically fall within the role of middleware. Since many of these smart things interact by pushing events, the publish/subscribe communication model [START_REF] Eugster | The Many Faces of Publish/Subscribe[END_REF] that is at the root of distributed event-based systems (DEBS) [START_REF] Mühl | Distributed Event-Based Systems[END_REF] is an important enabler: Their loosely-coupled interaction model decouples in space and time the things that produce events from applications that consume these events.

The IoT enables the collection of a large variety of context data, coming from local ambient sensors or remote sources such as cloud services. These context data can then be exploited by pervasive applications to detect the current situation of the users and provide them with the relevant services corresponding to their precise needs. However, context data are known to be imperfect and uncertain by nature [START_REF] Henricksen | Modelling and using Imperfect Context Information[END_REF]. Not underestimating the uncertainty of context data is crucial for enabling pervasive applications to behave properly. One way to limit this uncertainty is to manipulate additional knowledge associated to context data in the form of metadata. These metadata then represent the Quality of Context (QoC) [START_REF] Buchholz | Quality of Context Information: What it is and why we Need it[END_REF] and allow to improve the operational value of the context [START_REF] Hönle | Benefits of Integrating Meta Data into a Context Model[END_REF] through various QoC criteria such as freshness, precision or correctness.

Even though event uncertainty has been recognized in DEBS, only a few works have made some proposals regarding this concern [START_REF] Kuka | Quality matters: supporting quality-aware pervasive applications by probabilistic data stream management[END_REF][START_REF] Wasserkrug | Efficient Processing of Uncertain Events in Rule-Based Systems[END_REF]. This paper builds on our previous work on QoC modeling [START_REF] Marie | QoCIM : a Meta-model for Quality of Context[END_REF] and leverages the publish/subscribe model with QoC-based filtering. Our contribution consists in a content-based context data distribution framework where context producers express their QoC guarantees in advertisement filters and context consumers specify their QoC requirements in subscription filters. A matching mechanism specifically designed to consider context events with QoC metadata is then used at publication time.

The structure of the paper is the following. Section 2 presents a motivational scenario for our framework, which is then described in Section 3. Section 4 exposes the results of our evaluation of the cost of QoC-based filtering. Section 5 discusses some related works and Section 6 concludes the paper and expresses some perspectives.

MOTIVATION

Bob arrives in Bordeaux to visit the city. He likes to walk or ride a bike. However, he is an asthma patient and very allergic to the polluted air. His host in Bordeaux advises him to install a pollution monitoring application to keep track of the air quality in the city streets. His host tells him that thanks to the INCOME framework, a lot of context-aware applications are now available in Bordeaux to inform and help the citizens about the current situation concerning different aspects of their life in the city. All those applications are using the INCOME framework for context collection and distribution.

Bob installs an application that receives INCOME context feeds about the air quality in the city streets. The INCOME framework uses QoC metrics to extract and aggregate the context information and generates high quality context feeds before sending notifications to concerned applications. This way applications get relevant information about the pollution level in the city streets. Bob configures the application according to his preferences and starts walking through the city streets following the application notifications. Bob visits Bordeaux historical places walking through the streets with good air quality and is very happy with his experience. The INCOME framework enables programmers to develop many interesting context-aware applications without investing any effort, time and money to collect context information and analyze the quality of the collected context information.

THE INCOME FRAMEWORK

The INCOME framework, as shown in Figure 1, consists of two major parts, muDEBS and muContext. muDEBS takes over the context data distribution meanwhile muContext deals with context management entities and their data models. muContext comprises context collectors, context processing capsules and context-aware applications. The context collector and the context capsule are inspired from the elements of the Context Toolkit [START_REF] Dey | Understanding and Using Context[END_REF] and of the Contextor [START_REF] Coutaz | Foundations for a theory of contextors[END_REF] in that they are basic building blocks. In Section 2, context collectors, in collaboration with the city management services, collect raw sensor data (e.g. proportion of gases in the atmosphere) and metadata (e.g. location of sensors, precision of the measurements). Context processing capsules use sensor data to extract high level context information, such as the air quality at different locations in the city estimated as good, moderate, unhealthy for sensitive groups, unhealthy, very unhealthy and hazardous. They use the metadata to compute QoC indicators for that context information evaluated as low, medium, and high.

Context processing capsules also work as context producers and publish the high quality context information along with QoC indicators to muDEBS, according to context contracts registered as advertisement filters.

Finally, context information along with QoC indicators is provided to subscribed context consumers according to their requirements. This means that Bob can register a subscription filter indicating he wants to be notified when the air becomes unhealthy for sensitive groups and when this information is tagged with a correctness QoC indicator equals to medium.

The remainder of this section details the concerned part of the INCOME framework.

Context distribution

muDEBS is a framework offering content-based routing and is responsible for distributing context data. It is generic in the sense that it is data-model agnostic (data models are manipulated in muContext). The interface of muDEBS is the one of a distributed event-based system. Architecture elements called "producers" declare the kind of data they are willing to produce in "advertisements". Then, they publish these data in what are called "notifications" or "publications".

Other architecture elements called "consumers" declare the information they want to receive and react to notifications delivered to them through "subscriptions".

muDEBS organises an overlay network of brokers that connect producers and consumers.

Producers and consumers are collectively called clients.

A client is connected to only one broker at a time; this broker is called the access broker. In content-based filtering, the filters managed by brokers in their routing tables evaluate predicates on the whole content of notifications [START_REF] Eugster | The Many Faces of Publish/Subscribe[END_REF]. In other words, there is no addition of routing metadata to notifications as done in topic-based filtering. muDEBS assumes that the data are semi-structured records serialised as XML schemas. The rationale for the choice of XML is its openness to allow approaches such as sensors as a service or ontology-based inference engines that often bring to play XML languages like RDF. It follows that we use XPath to navigate through XML data as standardized by the W3C.

An advertisement, which expresses the set of publications that a producer is allowed to publish, is kept local to the producer's access broker. Figure 2 shows the interaction between a producer and its access broker B1. The filter F , which is uniquely identified by id, is advertised through the call to the operation advertise. The access broker registers the advertisement filter. Thereafter, when the producer publishes the notification n in the context of the filter identified by id, the access broker filters out n if n does not match F . In Figure 2, the advertisement filter is intuitively drawn as an "input filter". In practise, an advertisement filter is a function, written in JavaScript, that evaluates XPath expressions and returns false when the notification does not match the filter, or returns true when it matches the filter.

A subscription expresses the set of publications that a consumer wants to consume. Figure 3 shows the interaction between the consumer and its access broker (and indirectly with the brokers of the overlay network) during a subscription. The subscription filter F ′ identified by id ′ is installed on every broker and leads to the formation of a spanning DAG (Directed Acyclic Graph) directed towards the consumer. The DAG is built so that producers can connect to any broker and so that their notifications will reach the consumers when they match F ′ . Therefore, when a producer publishes a notification n ′ associated to the advertisement filter id, the access broker of the producer applies the advertisement filter F . If n ′ matches F , then the access broker of the producer evaluates all the subscription filters it is aware of. When n ′ matches a subscription filter, let say F ′ , the notification n ′ is forwarded towards the subscriber of F ′ via the access broker of the subscriber, which is notified of n ′ . In Figure 3, the subscription filter is intuitively drawn as an "output filter".

Software entities for QoC management

muContext involves three categories of software entities (see Figure 1): context collectors, context processing capsules, and context-aware applications. These categories implement a functional part of context management.

Context collectors and QoC management

Contracting QoC

We take into account QoC requirements and guarantees through the notion of contract. Context producers express guarantees on the quality of the data they produce (symbolized by the arrow labelled GQoC in Figure 1).

Conversely, consumers express QoC requirements (symbolized by the arrow labelled RQoC). These requirements and guarantees are then formalized in the form of context contracts on both the producer and consumer sides. Decoupled contracting is based on advertisement and subscription filters. An advertisement filter allows to express guarantees related to one or more QoC indicators, while a subscription filter specifies a requirement concerning some QoC indicators.

The specification of contracts and their translation into filters is of the responsibility of muContext while their implementation and evaluation are of the responsibility of muDEBS. muDEBS relying on content-based filtering, filters are stored in the routing tables of the brokers and are evaluated as predicates on the notifications to be sent. These filters can relate to QoC indicators. muDEBS is agnostic of the data model, allowing to manipulate any model, for instance based on QoCIM filters.

EVALUATION OF THE COST OF QOC-BASED FILTERING

This section highlights the impact of QoC management on the performance of the INCOME framework. We first perform an experimental evaluation of the execution time of routing filters. We then present a quantitative analysis of an upper bound of the size of notification messages handled by the framework. Based on these results, a set of recommendations to write notifications and routing filters concludes this section.

Execution time of context and QoC-based routing filters

We relate in this section the experimental evaluation we have conducted on a prototype implementation of muDEBS and muContext for measuring the execution time of routing filters. For deciding whether a notification must be forwarded or not, the different constraints that compose a routing filter are evaluated. Constraints are XPath expressions. They control a subset of the notification and the content of a notification has to respect all of the constraints in order to be forwarded. The study consists in applying a routing filter to a single notification. The filters were configured to return true after a complete evaluation of the notification. The measurements of the execution time of routing filters presented in this section have been acquired with a machine equipped with an Intel i7 processor cadenced at 2.90 GHz and 4 GB of RAM and a Raspberry Pi machine 1 , a low power machine that can be connected to the Internet of Things. To get realistic execution times, all the measurements correspond to the mean of 500 consecutive executions of routing filters. / s e n s o r s / 4 5 / ' ] ] " , doc , X P a t h C o n s t a n t s . NODESET) . l e n g t h == 0 ) { r e t u r n f a l s e ; } // QoC-c r i t e r i o n c o n s t r a i n t i f ( x p a t h . e v a l u a t e ( "// q o c i n d i c a t o r [ @ i d = '10 ' and q o c c r i t e r i o n [ @ i d = ' [ 1 0 . 1 ] ' ] / q o c m e t r i c d e f i n i t i o n [ @ i d = ' 1 0 . 1 ' ] ] " , doc , X P a t h C o n s t a n t s . NODESET) . l e n g t h == 0 ) { r e t u r n f a l s e ; } // QoC-v a l u e c o n s t r a i n t i f ( x p a t h . e v a l u a t e ( "// q o c i n d i c a t o r [ @ i d = '10 ' and q o c c r i t e r i o n [ @ i d = ' [ 1 0 . 1 ] ' ] / q o c m e t r i c d e f i n i t i o n [ @ i d = ' 1 0 . 1 ' ] and q o c m e t r i c v a l u e [ @ v a l u e > = ' 4 0 ' ] ] " , doc , X P a t h C o n s t a n t s . NODESET) . l e n g t h == 0 ) { r e t u r n f a l s e ; }

To compare the execution times for QoC-criterion and QoC-value constraints, we used two routing filters. The filter A contains one QoC-criterion constraint while the filter B contained one QoC-value constraint. For a notification with 256 QoC metadata, the biggest notification used in the study, the desktop machine spends respectively 538 and The slopes of the corresponding results are respectively 0.6 and 9.5 for the desktop and the Raspberry Pi machine. Conversely, another experimentation has been conducted where the notifications do not change but the QoC-based filters vary. Its results are displayed in Figure 5. In that case, the notification contains one observation with only one QoC criterion whereas the filter contains 1 to 32 different QoC-value constraints. For the desktop machine, the slope of the results is 2.7 and 42 for the Raspberry Pi machine.

For the same machine, the slopes of the graphs in Figure 5 are 4 times greater than the slopes of the graphs in Figure 4.

That means the number of constraints within routing filters has more impact in terms of execution time than the number of QoC meta-data contained within notifications. Moreover, the figures indicate the execution time of the filter follows a linear curve and provides a solution to predict the execution time for higher number of QoC meta-data or constraints. As explained in Section 3.1, notifications exchanged between producers and consumers are serialized as XML documents. For this study, we used the first version of the framework that provides an unoptimized serialization method and produces uncompressed documents. Therefore, the XML documents are very verbose. For example, a QoC indicator is declared as follows: <qocindicator id="10" name="PrecisionQoCIndicator">...</qocindicator>.

Estimation of the size of notifications

So, this study estimates the number of characters in the worst case, where the size of the notifications is the largest.

A notification contains at least one observation (the context data) and optional QoC indicators (composed of a value and a definition) based on the QoCIM meta-model [START_REF] Marie | QoCIM : a Meta-model for Quality of Context[END_REF]. Table 1 summarizes the size of XML documents following the context model of muContext. The size of an empty XML structure of an observation is close to the size of a QoC indicator, but with real data a QoC indicator needs more characters than an observation. Two reasons explain this difference. Firstly, the QoCIM meta-model contains more attributes than the context model used to represent an observation. Secondly, many attributes of QoCIM are based on String and include verbose information. Using Table 1, it is possible to estimate the size of a notification with the following formula: size = 600 * nb observations + 800 * nb QoC metadata A notification with one observation and one QoC indicator then contains 1400 characters. If the notification includes the 17 QoC indicators identified in the state of the art of [START_REF] Marie | QoCIM : a Meta-model for Quality of Context[END_REF], its size becomes 600 + 17 * 800 = 14200 characters. So, with an unoptimized serialization method, the size of notifications is significantly impacted by the number of QoC metadata.

Discussion

We consider a notification with 8 QoC meta-data as usual because it can cover many use cases like the scenario described in Section 2. In that case, Figure 4 indicates the execution time of a routing filter increases by 10% compared to a notification with only 1 QoC meta-data. In the same way, a routing filter with 8 constraints can express many requirement and cover various scenario. In that case, Figure 5 indicates the execution time of a routing filter increases by 30% compared to a filter with only 1 constraint. So, the impact of adding QoC management to routing filters is negligible as long as QoC-based filters do not require to evaluate more than 8 QoC-value constraints or notifications do not include more than 8 QoC metadata.

If the execution time of QoC-based routing filters is considered as acceptable when it corresponds to less than two context-based filters, they may contain up to 16 QoC-value constraints. Similarly, a notification that includes up to 64 QoC meta-data is analysed by a QoC-based filter with one QoC-value constraint in the same time taken by the evaluation of two context-based based filters. But in that case, the size of notifications becomes large and using compressed XML documents appears mandatory.

RELATED WORKS

A few works have started to consider the uncertainty of context data during the dissemination phase. [START_REF] Fanelli | QoC-Based Context Data Caching for Disaster Area Scenarios[END_REF] proposes a context data distribution infrastructure for query-based applications. Cache management strategies then rely on QoC for keeping only fresh data in the cache. We instead consider that future pervasive applications will benefit from event-driven thinking more than from a traditional request/response model. [START_REF] Kuka | Quality matters: supporting quality-aware pervasive applications by probabilistic data stream management[END_REF] considers quality-aware data stream management systems based on a relational model and with a probabilistic processing for the evaluation of quality of context. Even though such an approach is promising, it remains very sensible to the choice of the system parameters for the probabilistic processing. [START_REF] Ngai | Quality-of-information-aware data collection for mobile sensor networks[END_REF] describes a quality-aware publish/subscribe system for mobile sensor networks.

It proposes to rely on location-based routing to deliver the subscriptions to the corresponding areas of interest.

However, only event consumers may express their QoC expectations and no advertisement is performed on the side of event producers. We believe that a more powerful filtering can be obtained with content-based routing which benefits from both consumer requirements through subscriptions and producer guarantees through advertisements.

CONCLUSION AND PERSPECTIVES

This paper proposes to add QoC-based filtering in a DEBS infrastructure as a middleware solution for an efficient context data distribution in the IoT. We rely on a generic DEBS pattern and a generic QoC modeling approach which are both agnostic of the context model to address the heterogeneity of the IoT. The evaluation results on a first prototype implementation with no optimization show that the cost of QoC-based filters is reasonable.

One keypoint of our approach is that it was designed to enable privacy management in future work. The knowledge of the set of QoC indicators that are expected by consumers and offered by producers allows to finely tune privacy policies.

Figure 1 :

 1 Figure 1: INCOME Logical Architecture

Figure 2 :

 2 Figure 2: Effects of an advertisement on muDEBS brokers

Listing 1 :

 1 Examples of constraints used for the study // C o n t e x t-b a s e d c o n s t r a i n t i f ( x p a t h . e v a l u a t e ( "// o b s e r v a b l e [ u r i ='# p o l l u t i o n ' and e n t i t y [ u r i =' b o r d e a u x : / / t h i e r s a v e .

Figure 4 :

 4 Figure 4: Execution time of QoC-based filters depending on the number of QoC metadata

  QoC criteria. We have proposed in[START_REF] Marie | QoCIM : a Meta-model for Quality of Context[END_REF] the dedicated QoCIM (Quality of Context Information Model) meta-model, which offers a unified solution to model heterogeneous metadata about QoC. QoCIM includes constructs to: (i) associate QoC indicators to any context data. Each indicator is defined by one QoC criterion and can be valuated at runtime, in a dated way, by metric values; (ii) specify one or more definitions to characterize the metrics for the valuation of a criterion; (iii) define composite criteria in order to manipulate a single general QoC indicator instead of a set of individual indicators where each one corresponds to a simple QoC criterion. Consequently, QoCIM allows to exploit and manipulate QoC criteria in an expressive, computable and generic way.

					Producer
		B3
					4. publish(id, n')
		3. add sub. filter (id', F')
		4. if n' matches filter F' else ignore n' then forward n'	B2	B1	else withdraw n' subscriptions filters 4. if n' matches filter F then forward n' using
		B4	B5		B6
		3. subscribe(id', F')
		4. consume(id', n')
		Consumer	B7		B8
		Figure 3: Effects of a subscription on muDEBS
		brokers
		level criterion does not require computations or complex
		statistical analysis.
		QoC specializes the general notion of Quality of Information
		(QoI) for context data.	Freshness, precision and
		completeness are examples of 3.2.2 Context processing capsules and QoC
		management
		A context capsule is a functional element which performs
		the processing of context information into information of a
		higher level of abstraction made available to other capsules
		or context-aware applications. A context capsule is a context
		consuming and producing entity. The data produced are at
		a higher level of abstraction than the data consumed. It
		assumes the roles of intermediate consumers and producers
		in the chain of context information processing.
		Several categories of context data manipulation can be
		operated by a capsule: aggregation, filtering, fusion,
		inference... The context management operations do not only
	A context collector is a software entity dealing with the	perform a transformation of the context data flow. They
	acquisition of raw context data, i.e. that have not yet been	also analyze what are the impacts on the management of
	processed or transformed. And it must be able to associate	QoC metadata during these manipulations which encompass
	QoC metadata to raw context data. Since a context collector	more and less complex operations like: add / retrieve QoC
	plays the role of an initial context producer, it manipulates	indicators, update the value of an indicator, filter on the
	QoC indicators relative to rather low level criteria. A low

presence of an indicator or filter on the value of an indicator.

  Before evaluating the performance of QoC-based routing filters, a first evaluation has been conducted to measure the execution time of context-based filters. The part of a notification message relative to context data is structured with three main elements: (i) a context observable is an abstraction that defines something to watch over (observe); (ii) a context entity is an element representing a physical or logical phenomenon (person, concept, etc.) to which context observables may be associated; (iii) a context observation is the state of an observable at a given time. An URI identifies the context entity and the context observable. For the rest of the study we consider context-based filters as routing filters composed with only one context-constraint that exclusively rely on these URI. Listing 1 presents an example of this kind of constraints. The constraint requires the pollution resource measured with the sensor number 45 placed in the Thiers avenue in Bordeaux. The execution time of this kind of filters is approximately 58 ms on the desktop machine and approximately 1045 ms on the Raspberry Pi.

	4.1.2 QoC-based filters
	After measuring the execution time of context-based
	routing filters, the second part of the study is focused
	on QoC-based routing filters. For this evaluation, two
	types of constraints relative to QoC metadata have been
	expressed. (i) A QoC-criterion constraint controls if the
	metadata of a notification include all the expected QoC

1 www.raspberrypi.org 4.1.1 Context-based filters criteria. It therefore evaluates the attribute id of the classes QoCIndicator, QoCCriterion and QoCMetricDefinition of the QoCIM meta-model

[START_REF] Marie | QoCIM : a Meta-model for Quality of Context[END_REF]

. (ii) Like the first type of constraints, a QoC-value constraint controls QoC criteria. It additionally controls the value of each QoC indicator by evaluating the attribute value of the class QoCMetricValue. Listing 1 presents an example of these two types of constraints. In the example, both constraints require the criterion 10 while the QoC-value constraint also requires a QoC metric value larger than 40.

Table 1 :

 1 Size of observations and QoC metadata

		2360
		1730
	Execution time (ms)	1053 1346			Legend
						QoC filter on Raspberry pi
						Context filter on Raspberry pi
					•	QoC filter on desktop
						Context filter on desktop
		61 104 144	•	•	•	•
			1	8	16	32
					Number of constraints
	Figure 5: Execution time of QoC-based filters
	depending on the number of constraints
					Size of one	Size of one piece
					observation	of QoC metadata
	Empty XML document	426 char	444 char
	Real XML document	≃ 600 char	≃ 800 char

http://anr-income.fr

Acknowledgments. This work is part of the French National Research Agency (ANR) project INCOME 2 (ANR-11-INFR-009, 2012-2015). The authors thank all the members of the project that contributed directly or indirectly to this paper.


Thomas Pellegrini
email: pellegri@irit.fr

Vahid Hedayati

Isabel Trancoso
email: isabel.trancoso@inesc-id.pt

Annika Hämäläinen

Miguel Sales Dias
email: miguel.dias@microsoft.com

Speaker age estimation for elderly speech recognition in European Portuguese

Keywords: automatic speech recognition, elderly speech, automatic age estimation, i-vector extraction

Phone-like acoustic models (AMs) used in large-vocabulary automatic speech recognition (ASR) systems are usually trained with speech collected from young adult speakers. Using such models, ASR performance may decrease by about 10% absolute when transcribing elderly speech. Ageing is known to alter speech production in ways that require ASR systems to be adapted, in particular at the level of acoustic modeling. In this study, we investigated automatic age estimation in order to select age-specific adapted AMs. A large corpus of read speech from European Portuguese speakers aged 60 or over was used. Age estimation (AE) based on i-vectors and support vector regression achieved mean error rates of about 4.2 and 4.5 years for males and females, respectively. Compared with a baseline ASR system with AMs trained using young adult speech and a WER of 13.9%, the selection of five-year-range adapted AMs, based on the estimated age of the speakers, led to a decrease in WER of about 9.3% relative (1.3% absolute). Comparable gains in ASR performance were observed when considering two larger age ranges (60-75 and 76-90) instead of six five-year ranges, suggesting that it would be sufficient to use the two large ranges only.

Introduction

In the context of a Portuguese national project called "AVoz", we studied European Portuguese (EP) elderly speech with the objective of improving speech recognition for elderly speakers. There is no standard age boundary to define the elderly. However, to give an idea, speakers aged above 75 are often called elderly speakers in the literature. Independent of the language in question, speech recognizers' performance is significantly worse in the case of elderly speech than in the case of young adult speech [START_REF] Wilpon | A study of speech recognition for children and the elderly[END_REF][START_REF] Baba | Acoustic models of the elderly for large-vocabulary continuous speech recognition[END_REF][START_REF] Vipperla | Longitudinal study of ASR performance on ageing voices[END_REF]. There are several reasons for this. First, some parameters of the speech signal (e.g. speech rate, F0, jitter, shimmer) change with age [START_REF] Xue | Changes in the human vocal tract due to aging and the acoustic correlates of speech production: A pilot study[END_REF][START_REF] Reynolds | Age and perceptions of usability on telephone menu systems[END_REF][START_REF] Pellegrini | A corpusbased study between elderly and young speakers of European Por-tuguese: acoustic correlates and their impact on speech recognition performance[END_REF], while the acoustic models of speech recognizers are typically trained using speech from younger adults, with elderly speakers not appearing at all or being under-represented in the training data. Second, the elderly usually interact with computers using everyday language and their own commands, even when a specific syntax is required ( [START_REF] Anderson | Recognition of elderly speech and voice-driven document retrieval[END_REF]). Improvements in ASR performance can be achieved by using acoustic models (AMs) specifically adapted to the elderly [START_REF] Vipperla | Longitudinal study of ASR performance on ageing voices[END_REF][START_REF] Pellegrini | Impact of age in ASR for the elderly: preliminary experiments in European Portuguese[END_REF]. In order to automize the selection of age-specific adapted AMs, one could estimate the age of the speakers automatically.

A number of studies have explored automatic age estimation. In an early study, Minematsu et al. [START_REF] Minematsu | Automatic estimation of one's age with his/her speech based upon acoustic modeling techniques of speakers[END_REF] estimated speakers' age only using acoustic (i.e., no linguistic) information. They used Gaussian Mixture Models (GMMs) to distinguish between two groups of speakers defined using the results of previous listening tests: speakers whose speech sounded very old to the judges ("subjective elderly") and a control group with the rest of the speakers in their databases ("non-subjective elderly"). A correct automatic identification rate of 91% was achieved, and the rate further increased to 95% when using additional prosodic features. More recent studies have continued to use techniques derived from the speaker recognition field such as GMM supervectors [START_REF] Bocklet | Age determination of children in preschool and primary school age with gmm-based supervectors and support vector machines/regression[END_REF][START_REF] Dobry | Supervector dimension reduction for efficient speaker age estimation based on the acoustic speech signal[END_REF][START_REF] Mahmoodi | Age estimation based on speech features and support vector machine[END_REF] and more recently, i-vectors based on the so-called total variability model [START_REF] Bahari | Age estimation from telephone speech using i-vectors[END_REF]. These techniques involve estimating vectors that somehow characterize the speaker's voice. Thus, age is a factor that may also be represented in the vectors. Channel compensation techniques may be applied to the vectors to focus on the speaker characteristics only. In these studies, after gathering the supervectors or the i-vectors, Support Vector Machines (SVM) for classification or regression are used to estimate either the age range or the specific age of the speaker. i-vectors have the advantage of producing low-dimension vectors, typically between 200 and 400. In [START_REF] Bahari | Age estimation from telephone speech using i-vectors[END_REF], their use also resulted in the best AE performance, as compared with the GMM-supervector technique that had a mean absolute error (MAE) of 7.6 years.

In this study, after giving a bird's-eye view of AE techniques in Section 2, we report experiments on a subset of a large corpus of read elderly speech in European Portuguese. The corpus is described in Section 3. We used AE to select age-specific adapted AMs and report the results of our ASR experiments in Section 5. To the best of our knowledge, apart from another recent study of ours [START_REF] Hämäläinen | Improving Speech Recognition through Automatic Selection of Age Group Specific Acoustic Models[END_REF], previous studies on AE do not report ASR experiments exploiting the results of the AE.

Automatic age estimation

Until recently, the GMM supervector paradigm was the stateof-the-art technique in the field of speaker recognition. In a nutshell, this approach consists of training a Universal Background Model (UBM) with a large set of speakers and then performing UBM adaptation (usually using Maximum A Posteriori (MAP) adaptation) to gather speaker-dependent high-dimensional supervectors, composed of the concatenated means of the adapted GMMs.

Significant improvements have been obtained using a new technique, referred to as the total variability approach, in which i-vectors are extracted [START_REF] Dehak | Front end factor analysis for speaker verification[END_REF]. Instead of using GMM supervectors as such, with standard dimensions greater than 10k, this new approach proposes to represent channel variability and speaker characteristics simultaneously with a low dimensional sub-space called the total variability sub-space. Speech utterances can be projected onto this sub-space to be represented by i-vectors, which have a low dimension that is typically between 200 and 400.

Both the GMM-supervector and the i-vector approaches have already been used for AE in various studies, such as [START_REF] Bocklet | Age determination of children in preschool and primary school age with gmm-based supervectors and support vector machines/regression[END_REF][START_REF] Dobry | Supervector dimension reduction for efficient speaker age estimation based on the acoustic speech signal[END_REF][START_REF] Bahari | Age estimation from telephone speech using i-vectors[END_REF]. In [START_REF] Bahari | Age estimation from telephone speech using i-vectors[END_REF], the authors used the GMM-supervector approach. Five age classes were used to estimate the age of children between five and ten years of age. The authors used GMM-supervectors and an SVM classifier. Overall precision and recall of 83% and 60% were achieved. The authors also reported slightly worse results when using Support Vector Regression (SVR). However, SVR produced more balanced results among the different age ranges. This approach is similar to the one used in [START_REF] Bocklet | Age determination of children in preschool and primary school age with gmm-based supervectors and support vector machines/regression[END_REF], except that the authors compare the effect of both the GMM-supervector and the i-vector approaches on AE performance, on large sets of telephone speech data. The ivector approach outperformed the GMM-supervector approach, with MAE rates of 7.6, and 7.9 years, respectively.

Seeing that the total variability approach is state-of-theart both in speaker recognition and in AE, we adopted the ivector/SVR approach also for our study.

Speech material

As in our previous work, we used the EASR Corpus of European Portuguese Elderly Speech [START_REF] Hämäläinen | The EASR Corpora of European Portuguese, French, Hungarian and Polish Elderly Speech[END_REF]. The corpus contains about 190 hours of read speech, including silences. A total of about 1000 speakers aged 60 or over read out 160 prompts representing 14 different prompt types ranging from isolated digits to phonetically rich sentences. The exact age of the speakers is not known; the age of the speakers is reported using five-year ranges: 60-65, 66-70 and so on. 72% of the speakers in the corpus are female.

The number of speakers and the duration of the data used in this study are presented in Table 1. For this work, we only used 10 utterances per speaker, corresponding to about one minute of speech per speaker. We limited the amount of speech per speaker to have an experimental setup similar to that used in NIST speaker identification evaluations, in which the amount of speech is limited to 20-160 seconds per speaker [START_REF]The NIST Year 2012 Speaker Recognition Evaluation Plan[END_REF]. The training and test sets contained about 70% and 30% of the utterances in the whole corpus, corresponding to almost 9h and 3h45 of speech, respectively. None of the speakers in the training set appear in the test set.

Figures 1 and2 show histograms of the number of utterances used for training and testing in the case of male and female speakers, respectively. Only six five-year ranges were considered: 60-65, 66-70, 71-75, 76-80, 81-85, and 86-90. Older speakers were not considered due to lack of data. The age range and gender distributions in the full corpus were respected when creating the training and test sets. As can be seen in the figures, speakers in the 60-65 age range are the most numerous. In the training sets, there are 706 and 2,070 utterances from male and female speakers in that age range, respectively, as compared with 35 and 99 utterances from the oldest male and female speakers (in the 86-90 age range).

Age estimation results

Gender-dependent UBMs of 1024 Gaussian mixtures were trained on the male and female training sets. The acoustic features consisted of 13 Mel-Frequency Cepstral Coefficients (MFCCs), including energy, with their first order derivatives, resulting in 26-d feature vectors extracted every 10 ms with 20ms Hamming window frames. Energy-based speech activity detection was used, followed by mean-variance feature normalization. 200-d i-vectors were extracted for each utterance, both for the training and the test sets. The ALIZE toolbox was used to perform the UBM training and the i-vector extraction [START_REF] Bonastre | ALIZE, a free toolkit for speaker recognition[END_REF].

Since there was only one session per speaker, no channel compensation was applied. The same recording setup was used for all the speakers, so the total variability matrix is expected to model the speaker characteristics, including age. To perform the regression, we used the WEKA machine learning toolbox [START_REF] Hall | The WEKA Data Mining Software: An Update[END_REF].

Table 2 shows the age estimation results in terms of MAEs. With the original unbalanced training set and six age ranges, the experiments yielded global MAE values of 5.45 and 5.68 years for male and female speakers, respectively. These values are slightly larger than the five-year maximum precision that we could expect. The age of the speakers in the EASR Corpus is reported using five-year ranges, from 60-65 to 86-90, so the maximum precision is 5 years. We also considered two age ranges only: from 60 to 75 and from 75 to 90. As expected, the MAEs are smaller in this case: 4.18 and 4.53.

As shown in Section 3, there are progressively less data from speakers in each five-year age range from 60-65 to 86-90. Therefore, a second experiment was carried out by downsampling the number of i-vectors from the youngest speakers before training the SVR model. In this experiment, each fiveyear range had the same number of i-vectors as the training set for the 86-90 age range (with the smallest amount of data): 35 vectors for males, and 100 for females. In other words, in this experiment, the AE training corpus is balanced in terms of age distribution. This change increased the global MAE values to 9.63 and 8.32 years for males and females, respectively. Nevertheless, as can be seen in Figure 3, which shows the MAE histograms for five-year age ranges using the original ("unbalanced") and the "balanced" set of i-vectors to train the SVR, the error rates are centered around the age of 75 when using the balanced training set. For male speakers, the MAEs with the original unbalanced training set were 5.1 and -19.5 years for the 60-65 and 86-90 ranges, respectively. For the same test set and the same age ranges but using the down-sampled balanced set to learn the total variability matrix, the MAEs were 10.7 and -11.9 years. Fewer errors were made in the case of test speakers aged 71-75. When only using two large age ranges, the global MAE decreased to 8.60 and 7.06, as was already observed in the non-balanced configuration. Since the oldest speakers are less represented in the test set, just like in the original training set, the impact of balancing the training set increased the estimation errors made on the youngest speakers, therefore increasing the global error rates. Finally, slightly better AE figures were obtained for females, which might be consistent with the better ageing compensation in ageing female speakers reported in [START_REF] Kelly | Eigenageing compensation for speaker verification[END_REF]. This could be linked to more consistent physiological traits of ageing in females than in males, although this remains to be investigated. In the remainder of this study, we used the age estimation module that resulted in the smallest error rates, i.e. the one trained with the original unbalanced data. In the next section, ASR performance is compared when using two and six age ranges.

Application to ASR

The speech recognizer used for the study, Audimus, is a hybrid speech recognizer that combines the temporal modeling capabilities of Hidden Markov Models (HMMs) with the pattern discriminative classification capabilities of Multi-Layer Perceptrons (MLPs) [START_REF] Neto | Broadcast news subtitling system in portuguese[END_REF]. The MLPs perform a phoneme classification by estimating the posterior probabilities of the different phonemes for a given input speech frame (and its context). These posterior probabilities are associated with a single state of context-independent phoneme HMMs. More specifically, the system combines three MLP outputs trained with Perceptual Linear Prediction (PLP) features (13 static + first derivative), log-RelAtive SpecTrAl (RASTA) features (13 static + first derivative) and Modulation SpectroGram (MSG) features (28 static) [START_REF] Meinedo | AU-DIMUS.media: a broadcast news speech recognition system for the european portuguese language[END_REF]. The MLP parameters were initially trained with 46 hours of manually transcribed television news broadcasts and then with 1000 hours of automatically transcribed television news broadcasts and selected according to a confidence measure threshold (non-supervised training). These data feature speech from young and middle-aged adult speakers mainly from the Lisbon area. The MLPs are formed by 2 hidden layers with 2000 units each and have 500 softmax output units that correspond to 38 three-state monophones of the EP language plus a single-state non-speech model (silence) and 385 phone transition units. The Word Error Rate (WER) of our ASR system is, on average, under 20% for broadcast news (BN) speech [START_REF] Meinedo | The L2F Broadcast News Speech Recognition System[END_REF].

For this study, we used a 3-gram language model (LM) with Kneser-Ney modified smoothing learned on the training set of the corpus. We also report results with a 2-gram model. The multiple-pronunciation EP lexicon used in this study includes about 114k entries. The out-of-vocabulary rate for the EASR transcripts is below 1%. The baseline AMs were trained using BN data.

In a previous study, we explored AM adaptation with the EASR Corpus [START_REF] Pellegrini | Impact of age in ASR for the elderly: preliminary experiments in European Portuguese[END_REF]. The baseline MLPs were re-trained with age-specific data from the training set. In total, six sets of AMs were derived from the baseline MLP, corresponding to the six age ranges from 60-65 to 86-90. Six hours of speech extracted from the training set were used to adapt the baseline MLP to In this study, we wanted to measure the performance decrease when estimating speaker age automatically, as compared with an oracle system, in which the real age of the speaker is known a priori. We also wanted to find out whether or not it is worth using six five-year-age ranges or if two larger age ranges would be sufficient. Table 3 shows the WER values for all the setups for the male speakers. The performance obtained in the case of the female speakers is not reported, as the WERs are similar, although slightly lower.

Baseline WERs of 21.3% and 13.9% were achieved on our test set with a 2-gram and a 3-gram LM, respectively. When using the AMs adapted with speech data from the age range corresponding to the real age of each test speaker, an experimental setup that corresponds to the oracle columns in Table 3, the WER decreased to 18.1% and 11.5% (about 17.0% relative) with six age ranges, and to 18.7% and 12.6% with two age ranges.

When automatically estimating speaker age to select the adapted AMs, performance decreased by about 2% absolute as compared with the oracle setup. A decrease could indeed be expected because of age estimation errors. One result contradicts this hypothesis, though: a lower 12.1% global WER was obtained with the 3-gram LM and the two age ranges as compared with the 12.6% obtained with the oracle setup. Some speakers aged 76-90 were incorrectly classified as 60-75-year-old speakers. Therefore, the AMs adapted for the latter age range may model the characteristics of their speech better in the sense that their real age does not really correspond to "the age of their speech". However, a similar result was not obtained with the 2-gram LM. Hence, a more probable reason for the result is an effect of the small size of the 75-90 test set that appeared when using a larger order LM (3-gram LM), which requiers more data to be correctly trained.

Interestingly, the performance differences are small when using six or just two sets of adapted AMs. Thus, it may be easier to only use two age ranges, 60-75 and 75-90, when adapting AMs for the elderly.

Conclusions

In this study, we investigated automatic age estimation as a preprocessing step to selecting age-specific AMs for elderly speech recognition. Our objective was to verify that AE based on i-vectors is efficient enough for a model selection frontend in ASR. A positive result, which we obtained, suggests that it might not be necessary for elderly users to spend time adapting ASR systems to their voices. We used a large corpus of read speech from European Portuguese speakers aged 60 or over. The exact age of the speakers in the corpus is not known; the age of the speakers is reported using five-year age ranges. We performed AE using i-vectors and support vector regression. When using six five-year age ranges from 60-65 to 86-90, we obtained mean error rates of about 5.4 and 5.7 years for male and female speakers, respectively. When only using two larger age ranges, 60-75 and 75-90, the error rates decreased to 4.2 and 4.5. The selection of five-year-range adapted AMs, based on the automatically estimated age ranges of the test speakers, led to a decrease in WER of 9.3% relative (1.3% absolute) over the WER of 13.9% obtained using a baseline ASR system without AM adaptation to elderly speech. Only small differences in performance were observed when using two larger age ranges only. Thus, it seems preferable to use two sets of adapted AMs to recognize speakers aged 60 and over.

In future work, we will compare these results with speaker adaptation in the context of a hybrid HMM/MLP system. Furthermore, in collaboration with the Microsoft Language Development Center in Lisbon, we are currently carrying out AE experiments with speakers representing a wide range of ages from three years old until old age [START_REF] Hämäläinen | Improving Speech Recognition through Automatic Selection of Age Group Specific Acoustic Models[END_REF].

Figure 1 :

 1 Figure 1: Histograms of the number of utterances in the training and test sets containing male speakers.

Figure 2 :

 2 Figure 2: Histograms of the number of utterances in the training and test sets containing female speakers.

Figure 3 :

 3 Figure 3: Histograms of the age estimation error rates obtained with six age ranges on the test set containing male speakers, in terms of Mean Absolute Error rates (in years). Blue solid fill: original age-unbalanced training set, light Gray fill: agebalanced training set.

Table 1 :

 1 Main statistics of the speech material

	Set	Gender # Spk Duration	# Word
					Types Tokens
	Training	female male	528 179	6h30 2h17	4.4k 2.5k	32.3k 11.6k
	Test	female male	225 75	2h43 1h01	2.7k 1.4k	12.2k 5.3k
		750			Train Test
	Number of utterances	250 500
		0
		60-65 66-70 71-75 76-80 81-85 86-90
				Age (years)

Table 2 :

 2 Age estimation results (Mean Absolute Error rates in years) on the test sets.

		6 age ranges 2 age ranges
		balanced	balanced
		no	yes	no	yes
	Males	5.45 9.63 4.18 8.60
	Females 5.68 8.32 4.53 7.06

Table 3 :

 3 ASR performance in terms of WER (%). Baseline: AMs trained with young adult speech, oracle: adapted AMs and ground-truth age (6 or 2 age ranges), estimated: adapted AMs and estimated age (6 or 2 age ranges).

	LM baseline	oracle	estimated
			6 AMs 2 AMs 6 AMs 2 AMs
	2g	21.3	18.1	18.7	20.6	19.1
	3g	13.9	11.5	12.6	13.4	12.1
	each of the five-year age ranges, except for the last one, 86-
	90, for which only two hours of data were available. Using
	adaptation data from the oldest speakers gave better results on
	the test sets of the oldest speakers. For instance, AM-60-65
	and AM-81-85 respectively showed 13.7% and 22.0% relative
	improvements over the baseline for the 81-85 test set (5.6% and
	9.0% absolute, respectively). However, in that study, we did not
	use AE to automatically select the age-specific adapted models.

Acknowledgments

This work was partially supported by national funds through FCT Fundac ¸ão para a Ciência e a Tecnologia, under projects PTDC/EEA-PLP/121111/2010, PTDC/EIA-CCO/122542/2010, and PEst-OE/EEI/LA0021/2013, and also by the QREN 5329 Fala Global project, which is co-funded by Microsoft and the European Structural Funds for Portugal (FEDER) through POR Lisboa (Regional Operational Programme of Lisbon), as part of the National Strategic Reference Framework (QREN), the national program of incentives for Portuguese businesses and industry. This work was also partially supported by EU-IST FP7 project SpeDial under contract 611396.