dataesr/scientific-paragraphs-categorization huggingface dataset:
2) Deployment UC2: Cloud virtual pipeline for microbial genomes analysis The second bioinformatics use case "Cloud virtual pipeline for microbial genomes analysis" is developed by the platform IFB-MIGALE (Jouy-en-Josas, France, migale. jouy. inra. fr). This application requires several components: a user web interface, a relational postgreSQL database, and a complete computing cluster with a master and several nodes to perform the data-intensive analyses. This infrastructure already running in a classical static way on bare-metal servers in IFB-MIGALE premises was ported to the cloud and extended with a « 1-click » deployment features by using SlipStream recipes. The image was exported from the IFB's cloud and registered in the StratusLab Marketplace. Afterwards, IFB-core wrote a deployment recipe based on SlipStream that instantiates the complete application with all the required VMs on the CYCLONE infrastructure.
V. SLIPSTREAM: CLOUD APPLICATION MANAGEMENT PLATFORM Within CYCLONE, software developers and service operators manage the complete lifecycle of their cloud applications with SlipStream, an open source cloud application management platform. Through its plugin architecture, SlipStream supports most major cloud service providers and the primary open source cloud distributions. By exposing a uniform interface that hides differences between cloud providers, SlipStream facilitates application portability across the supported cloud infrastructures. To take advantage of cloud portability, developers define "recipes" that transform pre-existing, "base" virtual machines into the components that they need for their application. By reusing these base virtual machines, developers can ensure uniform behaviour of their application components across clouds without having to deal with the time-consuming and error-prone transformation of virtual machine images.
A. Functionality used for use cases deployment The bioinformatics use cases described above principally used SlipStream's facilities and tools to define applications and its deployment engine through the RESTful API. The definition of an application component actually consists of a series of recipes that are executed at various stages in the lifecycle of the application. The main recipes, in order, are:  Pre-install: Used principally to configure and initialize the operating system's package management.  Install packages: A list of packages to be installed on the machine. SlipStream supports the package managers for the RedHat and Debian families of  Post-install: Can be used for any software installation that can not be handled through the package manager.  Deployment: Used for service configuration and initialization.
This script can take advantage of SlipStream's "parameter database" to pass information between components and to synchronize the configuration of the components.  Reporting: Collects files (typically log files) that should be collected at the end of the deployment and made available through SlipStream. There are also a number of recipes that can be defined to support horizontal and vertical scaling that are not used in the defined here use cases. The applications are defined using SlipStream's web interface, the bioinformatics portal then triggers the deployment of these applications using the SlipStream RESTful API.
B. Example recipes The application for the bacterial genomics analysis consisted of a compute cluster based on Sun Grid Engine with an NFS file system exported from the master node of the cluster to all of the slave nodes. The master node definition was combined into a single "deployment" script that performed the following actions: 1. Initialize the yum package manager. 2. Install bind utilities. 3. Allow SSH access to the master from the slaves. 4. Collect IP addresses for batch system. 5. Configure batch system admin user. 6. Export NFS file systems to slaves. 7. Configure batch system. 8. Indicate that cluster is ready for use. The deployment script extensively uses the parameter database that SlipStream maintains for each application to correctly the configure the master and slaves within the cluster.
A common pattern is the following: ss-display "Exporting SGE_ROOT_DIR. " echo -ne "$SGE_ROOT_DIR\t" > $EXPORTS_FILE for ((i=1; i<=`ss-get Bacterial_Genomics_Slave:multiplicity`; i++ )); do node_host=`ss-get Bacterial_Genomics_Slave. $i:hostname` echo -ne $node_host >> $EXPORTS_FILE echo -ne "(rw,sync,no_root_squash) ">> $EXPORTS_FILE done echo "\n" >> $EXPORTS_FILE # last for a newline exportfs -av which is used to export one NFS directory. The ss-get command retrieves a value from the parameter database. In this case, it determines the number of slaves and then loops over each one, retrieving each IP address (hostname) and adding it to the NFS exports file. This command will wait for a value to be set, allowing it to act as a semaphore and allowing coordination between the components of the application.
Providing a federated identity includes user attribute mapping, which means transforming SAML user assertions into JSON Web Token claims. The current implementation with Keycloak  [22]  and SimpleSAMLphp allows browser based log-in to services which implement OpenID Connect  [23]  client side which provides the library support in a variety of programming languages. The use of OpenID Connect and JSON Web Tokens add value to the CYCLONE system, since these are much easier to implement in comparison to SAML and its tokens for service providers. Moreover, with extension of the SlipStream authentication service to implement the OpenID Connect Authorization Code Flow, eduGAIN users will be able to log in to the SlipStream web dashboard to configure their deployments. Federated authorization management addresses the collaboration between VM developers and bioinformaticians and the definition of access rules.
It will be enabled by lists users and groups defined at the pre-deployment stage which will be configured on the VMs. The user claims can be used to define a simple configuration with Require Statements in. htaccess on any Apache-hosted application with the OpenIdConnect Module enabled. CYCLONE security infrastructure will address the endto-end secure data management with the possible integration of TCTP  [8]. Further security infrastructure will address dynamic trust infrastructure provisioning and trust bootstrapping protocol  [24, 25].
ACKNOWLEDGEMENT The research leading to these results has received funding from the  Horizon2020  project  CYCLONE  and the  French programs PIA INBS 2012 (CNRS IFB ). We are thankful to our colleagues who collaborate with us to deploy selected bioinformatics applications in the CYCLONE testbed:  Christian Baudet  ( Centre Léon Bérard, Lyon, France ) and  Thomas Lacroix  (IFB-MIGALE, Jouy-en-Josas, France).
Data anonymization is gaining much attention these days as it provides the fundamental requirements to safely outsource datasets containing identifying information. While some techniques add noise to protect privacy others use generalization to hide the link between sensitive and non-sensitive information or separate the dataset into clusters to gain more utility. In the latter, often referred to as bucketization, data values are kept intact, only the link is hidden to maximize the utility. In this paper, we showcase the limits of disassociation, a bucketization technique that divides a set-valued dataset into k m -anonymous clusters. We demonstrate that a privacy breach might occur if the disassociated dataset is subject to a cover problem. We finally evaluate the privacy breach using the quantitative privacy breach detection algorithm on real disassociated datasets.
Introduction Privacy preservation is an important requirement that must be considered carefully before the release of datasets containing valuable information. Anonymizing a dataset by simply removing the personally identifying information (PII) is insufficient to prevent a privacy breach  (Samarati, 2001; Sweeney, 2002). An attacker 1 may still succeed in associating his/her background knowledge with one or multiple records via non-sensitive information in the dataset to eventually reveal individuals' sensitive information. The same problem arises when releasing set-valued data (e. g. , shopping and search logs) consisting of a set of records where each record links an individual to his/her set of distinct items. The AOL search data leak in 2006  (Barbaro and Zeller, 2006)  is an explicit example that shows the implications of inappropriate anonymization on data privacy.
The query logs of 650k individuals were released after omitting all explicit identifiers. They were later withdrawn due to multiple reportings of privacy breaches. To better illustrate the problem, let us consider a dataset of individuals and their corresponding sets of searched data items. Let us assume that an attacker knows that Alice, an individual whose items figure in publicly available dataset, has used two search items: {Side E f f ects and Vomiting}. The attacker's background knowledge consists of the set of these two items. If it happens that one and only one record exists in the released dataset where both Vomiting and Side E f f ects belong to the same itemset, such as the case of record r 1 in the example shown in Figure  1 , the attacker can link the individual Alice to r 1. Here, 1 a person who is intentionally trying to link individuals to their sensitive information the attacker, who has partial knowledge of some of the data items searched by the individual, is able to determine the complete itemset and link it to the corresponding individual.
, 2008; Loukides et al. , 2014a; Loukides et al. , 2015)  is one recent method that preserves the original items keeping them intact, without applying generalization or substitution. Instead, it uses some form of bucketization and separates the records into clusters and chunks to hide their associations. More specifically, disassociation transforms the original data into k m -anonymous  (Terrovitis et al. , 2008)  records by dividing the dataset 1) horizontally, creating clusters of similar records and 2) vertically, creating k m -anonymous chunks of similar sub-records (e. g. , record chunks C 1 and C 2 in Figure  1b ) and an item chunk containing items that appear less than k times. Disassociation lies under a general category of techniques  (Li et al. , 2012; Xiao and Tao, 2006; Ciriani et al.
, 2010)  that preserve privacy by dividing the dataset to maximize the utility. It provides strong theoretical guarantees but unfortunately remains vulnerable when the dataset is subject to what we call a cover problem, which is defined in Section 5. In this article, we evaluate the privacy provided by the disassociation of a set-valued dataset and demonstrate that it might be breached whenever this dataset is subject to a cover problem. We show that attackers with different levels of partial background knowledge weak, moderate, or strong are able to compromise the privacy of a disassociated dataset. We also show that, as many other bucketization techniques  (Xiao and Tao, 2006; Li et al. , 2012)  in their attempt to protect against attribute disclosure, preserving privacy tends to be overly optimistic  (Wong et al.
, 2011; Kifer, 2009; al Bouna et al. , 2015a; al Bouna et al. , 2015b). The contributions of this research work can be summarized as follows: • We present a formal model of the set-valued data and the disassociation technique. • We define the cover problem and investigate its repercussion on the disassociation of the dataset. • We propose the so-called quantitative privacy breach detection algorithm, and study its efficiency. The proposed algorithm shows to what extent the privacy of a disassociated dataset can be breached. The remainder of this paper is organized as follows. In the next section, we present prior work in data anonymization and discuss some of the techniques used to breach well known privacy constraints. In Section 3, we give some insights on privacy preserving using the disassociation technique.
Dwork defined the notion of differential privacy  (Dwork et al. , 2006)  to handle private data publishing efficiently. It gained much popularity among computer scientists providing strong assumptions on the way that data should be released. It is based on a strong mathematical foundation and guarantees that an attacker will not be able to learn any information about an individual that he/she already knows if the individual is removed from the dataset. In order to achieve differential privacy, approaches tend to release privatized data by introducing noise to query results. Here, despite the efficiency provided by differential privacy, we opt for disassociation since it publishes truthful datasets. Yeye et al. (He and Naughton, 2009 ) extended k-anonymity to set-valued context, in which there is no distinction between quasi-identifying, sensitive or non-sensitive values.
In their approach, the authors generate a k-anonymous dataset via a top-down partitioning privacy technique based on local generalization. In a similar approach, the authors in  (Fard and Wang, 2010)  adopted the k-anonymity privacy constraint for a transactional dataset. They proposed a clustering based technique to group similar transactions into clusters, in order to reduce generalizations and suppression thus reducing information loss. A common problem with these methods is that a large part of the initial items are usually missing from the anonymized data due to generalization or suppression. In  (Jia et al. , 2014) , the authors propose a privacy notion ρ-uncertainty to ensure that there are no sensitive association rules that can be inferred with confidence higher than ρ. Truthful association rules however can still be derived, but this requires, in a similar manner to bucketization techniques, distinction between the sensitive and non-sensitive values.
Background knowledge  (Machanavajjhala et al. , 2006)  attack compromises anonymization, when the attacker's background knowledge includes information about the sensitive values of a specific individual or partial knowledge of the distribution of sensitive and non-sensitive values. Unsorted matching attack  (Sweeney, 2001)  is related to the order in which the tuples appear in the released table that can leak sensitive information if it is preserved in the anonymized dataset. The attacks mentioned previously present some insights on the privacy problems that might be encountered when anonymizing sensitive information in an outsourcing scenario. To the best of our knowledge, none has explored the privacy breach in a disassociated dataset. In this paper, we highlight and evaluate the ability of an attacker to link his/her partial background knowledge represented by the m items that he/she is allowed to have, according to the privacy constraint k m -anonymity, to less than k records.
The works described in  (Wong et al. , 2011; Ressel, 1985)  are good examples of attacks that follow the same convention by identifying flaws in the anonymization techniques allowing attackers to use their background knowledge to breach privacy or extract foreground knowledge. The authors assume that the correlation between the values in an anonymized dataset could be used to breach the privacy of the anonymization techniques that use l-diversity in their underlying privacy mechanism. 3 Preserving Privacy by Disassociation.
Formalization Let D = {x 1 ,. , x d } be a set of items (e. g. , supermarket products, query logs, or search keywords). Any subset I ⊆ D is an itemset (e. g. , items searched together). Let T = (r 1 ,. , r n ) be a dataset of records, where r i ⊆ D for 1 ≤ i ≤ n is a record in T and r i is associated with a specific individual of a population. We use [r i ] m to denote the set of all m-combinations of the record r i. Equivalently, [r i ] m is the set of m items subsets of r i. Note that D is no more than the set of items in T : D = n i=1 r i. We use R T to define a subset of records in T. s(T ) and s(R T ) denote the numbers of records in T and R T respectively and thus, s(I, T ) denotes the number of T in T * C T an item chunk in a disassociated; dataset a quasi-identifier group R C a record chunk; is a set of sub-records of R in T * B the background knowledge of an attacker records in T that contain I.
Disassociation Disassociation works under the assumption that the items should neither be altered, suppressed, nor generalized, but at the same time the dataset should serve the k m -anonymity privacy constraint  (Terrovitis et al. , 2008). k m -anonymity guarantees that an attacker who knows up to m items, grouped together in an itemset I ⊆ D, cannot associate them with less than k records from T , where k ≥ 2 is a user-defined constant. Formally, k m -anonymity is defined as follows: Definition 1 (k m -anonymity). Given a dataset of records T whose items belong to a given set of items D, we say that T is k m -anonymous if ∀I ⊆ D and |I| ≤ m, the number of records that contain I in T is greater than or equal to k, s(I, T ) ≥ k. In a practical scenario, k m -anonymity cannot be achieved without a severe loss in data utility.
The disassociation technique  (Terrovitis et al. , 2012; Loukides et al. , 2014b) , for its part, ensures privacy through bucketization to provide better utility when it comes for frequent itemsets discovery and aggregate analysis. Disassociation separates the dataset into clusters of k m -anonymous record chunks and an item chunk. The key idea is to sort records based on the most frequent items and then group them horizontally into smaller disjoint clusters {R 1 ,. , R n }. It partitions, in a next step, the clusters vertically into k m -anonymous record chunks {C 1 ,. ,C n } and an item chunk C T to hide infrequent combinations. The record chunks are created subsequently as long as there are items that can be grouped together in a way to satisfy the k manonymity privacy constraint. The remaining items, the ones that occur less that k times, are moved to the item chunk C T.
2 Formally, given a dataset T , applying disassociation on T will produce an anonymized dataset T * composed of n clusters where each is divided into a set of record chunks and an item chunk, T * = ({R 1 C 1 ,. , R 1 C t , R 1 C T },. , {R n C 1 ,. , R n C t , R n C T }) such that ∀R i C j ∈ T * , R i C j is k m -anonymous, where, • R i C j represents the itemsets of the i th cluster that are contained in the record chunk C j. • R i C T is the item chunk of the i th cluster containing items that occur less than k times. The example in Figure  1b  shows that the disassociated dataset contains only one cluster with two k manonymous record chunks (k=3 and m=2) and an item chunk, thus, T * =({R 1 C 1 , R 1 C 2 , R 1 C T }). In a disassociated dataset, privacy is preserved by assuming that the record chunks are k m -anonymous and that the records that are not k m -anonymous in the original dataset, are k m -anonymous in at least one of the datasets resulting from the inverse transformation of the disassociated dataset.
This privacy guarantee is formally expressed as follows: Definition 2 (Disassociation Guarantee). Let G be the inverse transformation of T *. G takes an anonymized dataset G(T * ) and outputs the set of all possible datasets {T }. ∀I ⊆ D, |I| ≤ m, ∃T ∈ G(T * ) where s(I, T ) ≥ k. The Disassociation Guarantee ensures that for any individual with a complete record r, and for an attacker who knows up to m items of r, at least one of the datasets reconstructed by the inverse transformation has r hidden by repeating its existence k times. That is, given m items of r, if r exists less than k times in the original dataset, the attacker will not be able to link back the record to the individual with a probability greater than 1/k in the disassociated dataset. This record r, as all other records, exists in at least one of the inverse transformations k times.
Attacker Model In accordance with the work in  (Terrovitis et al. , 2012; Loukides et al. , 2014b; Terrovitis et al. , 2008) , we consider that the attacker intends to link individuals to their anonymized records (e. g. , complete set of search logs or purchased supermarket products). This can be done, in a trivial anonymization, by tracing unique combinations of items. For example, an attacker who knows that Alice has searched for side effects and vomiting is represented by a background knowledge set of items {Side Effects, Vomiting}. Since one and only one such record exists in the dataset of Figure  1a , the attacker can easily link this record back to Alice. In addition, we assume that the attacker has knowledge of the disassociation technique. We also assume that the attacker may have background knowledge consisting of at most m items; knowing these m items, he/she will not be able to link them to less than k records in the dataset (i.
Moderate attackers have a background knowledge B = {I 1 ,. , I z }, z < n such that ∀I i ∈ B, I i is of size m, |I i | = m and chosen at random from a strict sub- set I - v of the m-combinations [r v ] m of a record r v , I i ∈ I - v |I - v ⊂ [r v ] m. For these attackers, as shown in Figure  2b , there exists a one-to-one injective function that links itemsets in B to records in T. Weak attackers have a background knowledge B = {I 1 ,. , I z }, z < n such that ∀I i ∈ B, I i is of size m, |I i | = m and chosen at random from a set of association rules and frequent itemsets I , I i ∈ I, that are not necessarily in D. The goal of weak attackers is limited to reconstruct the disassociated dataset to its original form but they are unable to link records to individuals (see Figure  2c ).
Privacy Breach Recall from Subsection 3. 2 and Definition 2, that the disassociation technique hides infrequent records; records that occur less than k times in the original dataset for a given m items, by 1) dividing them into k-anonymous sub-records in record chunks and 2) ensuring that all the records reconstructed by the inverse transformation are k m -anonymous in at least one of the resulting datasets. Intuitively, a privacy breach occurs if an attacker is able to link m items, which he/she already knows about an individual, to less than k records in all the datasets reconstructed by the inverse transformation. More subtle is when these records contain the same set of items in all the reconstructed datasets thus, linking more than m items to the individual or worse leading to a complete de-anonymization; linking, with certainty, the complete set of items to the individual.
(Figure  3c  is an example of such a de-anonymization. The attacker already knows that an individual has searched for items e and c and thus can relate him/her them to the same items a and b in all the reconstructed datasets). We will show in the following that this privacy breach might occur whenever the dataset is subject to a cover problem. Formally speaking: Lemma 1. Let T * be a disassociated dataset subject to a cover problem and involving an item x i, j ∈ R i C j and a covered item y i, j-1 ∈ R i C j-1. We say that a privacy breach might occur if {x i, j , y i, j-1 } ⊆ I where I ∈ B, the attacker's background knowledge. We show in what follows that an attacker is able to breach the privacy provided by the disassociation technique, if his/her background knowledge contains the items involved in the association that led to the cover problem.