dataesr/scientific-paragraphs-categorization huggingface dataset:
Therefore, Topic 0 ≡ Topic 1, Topic 1 ≡ Topic 2, etc. ; also document 0 ≡ document 1, document 1 ≡ document 2, etc. To avoid the confusion, we will refer to indexing convention starting from 1. ) is the dominant topic for documents no. 1-6, 8-11, 13, 15, 16. Meanwhile, Topic 2 is the dominant topic for document no. 7 and 14. Topic 4-for document 12 (see Table  4 ). Topic modelling allows the discovery of common topics in a collection of documents, i. e. , it gives a "bird's view" of the data and that is useful, especially in terms of large datasets. It shows a quick "summary" of the contents of the data, helps to identify documents associated with a specific "topic" for further analysis. Moreover, topic words can be added to specialised lexicons to use in the scoring model.
Knowledge Base The PREVISION knowledge base contains data that can be expressed in terms of the PREVISION ontology. It is a central sharing point of the platform for meta-information about and connections between individuals, artefacts, resources, and results. At present, it provides an HMI to manually insert pseudonymised data about persons, emails, social network accounts and other categories. In addition, read access through a REST API is available. Accordingly, write access is under development. Additionally, storage of the source of any piece of data will be assured, like the time of insertion, the name and version of the algorithm that produced it as well as technical details like lexicons or sets of training data that have been used. In this way, the transparency and explainability of any result will be guaranteed as far as possible.
To address the problem of the training data, the research community proposed the implementation of data sheets  [58]  or data statement  [61]  as a design solution and professional practice for NLP. As far as correcting bias is concerned there have also been attempts to reduce the bias by applying algorithms designed for this specific task  [60]. Additional tools include using a Model Card for Model Reporting  [62]. As in the case with other models, it is crucial to highlight that "[a] model is unlikely to perform well in the wild if its deployment context does not match its training or evaluation datasets, or if these datasets reflect unwanted biases"  [58]. Mismatches would have especially severe consequences when machine learning is used in high stake domains such as law enforcement. Therefore, the tools must be tested and evaluated in the actual deployment context before it is used in operational conditions.
• We used two types of data sources: the sources used to train word embeddings which are unknown (since we used pre-trained systems) and the sources used to extract the jargon, which are provided by the user or collected by the user and thus known. To address the lack of transparency on the first type of data sources, the tool shows both the Jargon that is extracted, the position of the jargon in the users' texts and provides the explanation of the score calculation for the scoring tools to the user. The data description is thus available.
The IVR service relies on the Asterisk PBX technology, a W3C Voice Extensible Markup Language (VoiceXML 2. 1) and a VoiceXML interpreter (Voximal , https://www. voximal. com). The service is made available 24/24 and 7/7. The interactions with the user are made through DTMF tones input via a keypad. A relational database via ODBC technology is used to record call details. Furthermore, Zoiper free soft-phone was used to make VoIP calls through to the PBX. A toll-free number, 3000, was assigned for calls. Menus items have been limited to a maximum of 3 options and the system has been configured to allow sufficient time for the caller to enter the different choices, repeating the instructions if the entry is missing or invalid. A set of instruction messages for menu navigation are provided to facilitate user interactions.
Evaluation of the IRV service A quantitative method using the System Usability Scale (SUS) questionnaire [8] was used to assess the usability of the service. Demographics were assessed at baseline. A System usability scale tool was used to collect data. A total of 18 high school students in Bobo Dioulasso (Burkina Faso) were recruited through school directors. We typically sought parental consent for all youth under the age of 18. Inclusion criteria were as follows: fluent in Dioula, ownership of a smartphone (Android or IOS), and being a high school student in the city of Bobo Dioulasso. We collected the data in January 2022. All the participants were briefed through an orientation session by the principal investigator and research assistants. During the session, the participants were given an overview of the usability study protocols and the IVR service.
To offer innovative malware evolution techniques, it is appealing to integrate approaches that handle imperfect data and knowledge. In fact, malware writers tend to target some precise features within the app's code to camouflage the malicious content. Those features may sometimes present conflictual information about the true nature of the content of the app (malicious/benign). In this paper, we show how the Variable Precision Rough Set (VPRS) model can be combined with optimization techniques, in particular Bilevel-Optimization-Problems (BLOPs), in order to establish a detection model capable of following the crazy race of malware evolution initiated among malware-developers. We propose a new malware detection technique, based on such hybridization, named Variable Precision Rough set Malware Detection (ProRSDet), that offers robust detection rules capable of revealing the new nature of a given app.
Santos et al. , in  [3] , proposed a semi-supervised learning based method to deal with the existing unlabelled apps (unknown nature beforehand) in the training process of a detection process. Also, Nauman et al. [4]  looked into a three-way decision-making process This work is supported by ANR PIA funding: ANR-20-IDEES-0002. based on acceptance, rejection, or deferment. When there is not enough knowledge, the extra deferment choice option gives the opportunity to postpone a decision. It also seeks to reduce incorrect decisions at the model level by finding a trade-off between decision-making attributes like accuracy, generality, and uncertainty. The authors focused on three-way decisions using two probabilistic rough set models: gametheoretic rough sets (GTRS) and information-theoretic rough sets (ITRS).
In  [15] , a string signature generation system (Hancock) was designed to create a minimal set of N-byte sequences from a set of malware samples. Another work, the work of  [16] , used a 5-gram Markov chain model of good software to estimate the probability that a given byte sequence would show up in good software. In the paper of Li et al. [17] , a network-based automated signature generation system (Hamsa) for polymorphic worms was proposed. The proposed model allowed to analyze the invariant content of polymorphic worms in order to make analytical attackresilience granted for the signature generation algorithm. In  [18] , Newsome et al. proposed a signature generation system, Polygraph, that produces signatures that match polymorphic worms. Polygraph generates signatures that consist of multiple disjoint content sub-strings and which typically correspond to protocol framing, return addresses, and poorly obfuscated code.
Within the second head, several works  [19] ,  [20] ,  [21] ,  [22] ,  [23] , focused on applying evolutionary algorithms to generate malware samples. Among the most recent and efficient ones, we mention the work of  [24] , where an Android Malware Detection System (AMD) was proposed that produces patterns using a GA in order to mimic real malware patterns. This is to keep the dataset used in the conception of the detection system as varied as possible, which allows AMD to be resistant to obfuscated malware. Also, the work of  [23] , opted for a system using co-evolutionary algorithms where a first population generates detection rules, and a second population generates artificial malware. In this work, both populations are executed in parallel without any hierarchy. In the works of  [25] ,  [26] , authors adopted a co-evolutionary algorithm as a search engine to ensure better detection rules.
The final set of detection rules produced by our ProRSDet (F DRB) is a set of detection rules that will perform the malware detection task. 1) First layer: The first layer's first step, as shown in Figure  2  and Algorithm 1, is to generate a set of detection rules (Algorithm 1, line 1), which will go through an evaluation procedure (Algorithm 1, lines 2-3). The coverage of the base of samples (input) as well as the coverage of the fraudulent motifs created by the second layer are used to make this evaluation. These two measures are used to be maximized by the population of detection rules solutions (Algorithm 1, lines 4-6). This module produces a collection of final detection rules (F DRB) that will be used by the detection job, which is in charge of classifying new apps as malicious or benign.
The similarity between the generated motif F M i and the malicious set of motifs (M S). This measure of similarity needs to be maximized. Sim2 = Sim(BS, F Mi) = BS k∈BS Sim(F Mi, BS k ) |BS| (8) The similarity between the generated motif F M i where k ∈ [1, p]; p indicates and the benign motifs (BS) the total number of benign set of motifs and which has to be the lowest. Overlap(F M i ) = 1 - F M l ,i̸ =l Sim(F M i , F M l ) |F M | (9) Overlap() is measured as the average value of the individual Sim(F M i , F M l ) between the generated motif F M i and all the other generated motifs F M l in the generated dataset SF M. l refers to the total number of the generated motifs. We updated the Needleman-Wunsch alignment algorithm formula  [30]  to our context to determine the similarity Sim() between two motifs.
A. Experimental Setup An experimental investigation was done to evaluate ProRS-Det's performance in detecting new malware variants. For this purpose, we gathered data from a variety of sources (the theZoo dataset 1  , from VirusTotal 2  ) and from various portable benign tools such as Google play. We have gathered 5 540 Android apps where 3 440 are malicious and 2 100 apps are benign files. From those apps, a total of malicious motifs and a total of benign motifs were extracted. The conducted process is summarized in Table  II. The Drebin dataset  [31] , which contains 123 453 benign applications and 5 560 malware samples, is used for the evaluation of our approach against the new variants of malware and 0-day attacks. The necessity for confirmation that ProRSDet is not fitting the base of examples led to the selection of a dataset that is different from the one used for the construction phase.
36%, 97. 82%) for LDA and (97. 73%, 96. 58%) for J48 and a pair of F1_score and specificity of (97. 32%, 97. 31%) for LDA and (98. 37%, 97. 13%) for J48, ProRSDet achieved a precision of 98. 20%, an accuracy of 98. 22%, an F1 score of 98. 21%, and a specificity of 98. 20%. These remarkable ProRSDet results are based on its high true positives (98. 20%) and low false positives (1. 80%), which are the best achieved values among the results of the classifiers. These encouraging findings show that ProRSDet is capable of distinguishing between the two possible designations (malicious and benign). Also, regarding the comparison between the EA-based approaches (ProRSDet and AMD  [24] ), we used an unknown dataset (Drebin dataset   [31] ) and ProRSDet outperformed AMD in terms of the used evaluation metrics as stated in Table  VI.
This can be explained by the contribution brought by the VPRS Analyzer which helped keep the most "relevant" malicious motifs. Moreover, we may derive from Table  VI  and Table VII that, when compared to competing state-of-the-art approaches, (Rathore et al. [32] , Gym-plus  [33]  and AMD  [24] ) using the unknown dataset  [31] , ProRSDet came in top with an accuracy of 97. 66%, a specificity of 97. 32%, a recall of 97. 99%, a precision of 97. 31%, and an AUC of 86. 15%. Rathore et al. , Gym-plus and AMD, obtained an accuracy of 93. 81%, 93. 50% and 92. 28%, respectively, which are lower than those obtained by our proposed technique. addition, the interesting detection results obtained by ProRSDet are endorsed by the results presented in Table VII which refers to the comparison with the commercial antivirus engines.
The registered ProRSDet values of those two metrics (Table  VI ) confirm the usefulness of a bilevel architecture to detect a malicious code efficiently. The continuous competition between both levels (first layer and second layer) permitted generation of good solutions (detection rules and fraudulent motifs) and this had positive impact on the values of FPR (02. 69%) and FNR (01. 99%). In comparison to ProRSDet, the registered FPR and FNR values for AMD  [24] , which rely on a single-layer based architecture via the use of evolutionary algorithms, are 06. 37% and 08. 84%, respectively. In addition, referring to Table VIII, we can state that the Variable Precision Rough Set based module succeeded to set apart 198 522 ambiguous instances (possible set) among the generated fraudulent motifs SHM (468 000 instances).
More precisely, a set of 92 689 of false motifs were removed from the whole set of ambiguous motifs. The removal of those false motifs was performed thanks to the Relevance_M alicious_Index and after being processed by the lower and upper limit certainty thresholds explained and illustrated in Section IV-2. This distinction brings to light the VPRS component's important contribution in improving the quality of the fraudulent motifs by the second layer and which, consequently, positively affected the false alarms rate. Let us recall that ProRSDet provides a set of robust detection rules thanks to the set of malicious motifs produced by the second layer's GA reinforced by the VPRS module. The VPRS module helps determine the set of "certain" malicious motifs and the set of "possible" malicious motifs.
Note that typeof() maps every -abstraction to 0 → 1, so it does not depend on static types. This approximation is allowed by the restriction on arrow types in typecases. The language we just defined is the same as the functional core of CDuce defined by  Frisch et al. [2002 Frisch et al. [ , 2008] ]  bar two important differences. The first difference is that -abstractions in  [Frisch et al. 2002 [Frisch et al. , 2008] ]  are explicitly annotated with their types while here no annotation is needed. The absence of annotations not only relieves the programmer of an important burden but also, in the case of curried functions, makes it possible to type some expressions that could not be typed with the annotations used in CDuce (see Section 4). The price to pay for this choice is twofold: the burden of finding the annotations for -abstractions is passed on the type system and, as explained before, we no longer allow type-cases to test for arbitrary types.
IMPLEMENTATION We have implemented Algorithm R in OCaml, using CDuce [CDuce] as a library to provide settheoretic types and semantic subtyping. The prototype amounts to 3500 lines of OCaml code and features several extensions such as let bindings and records (both formalised in Appendix C) and annotations of function parameters (see Footnote 7). The transformation of terms in their MSC-form is similar to the locally nameless approach (  [Charguéraud 2012] ). Expressions from the source language are transformed so that bound variables are represented using De Bruijn indices, while free variables are represented with symbolic names. While performing this transformation, hash-consing is used to identify structurally equal subterms. We give in Table 1 the code of  several functions, using a syntax similar to OCaml, where uppercase identifiers (e.
g. , True, String) denote types and lowercase identifiers denote variables or constants. For each function we report its inferred type, the time taken to put its body in MSC form, and the time taken to infer its type or typecheck it (for annotated functions). All runtimes are given in milliseconds, averaged over ten runs. The experiments were done on an Intel Core i7-8565U 1. 8GHz CPU (with 16GB of RAM). The code was compiled natively using OCaml 4. 12. 0. All these examples (and more) can be tested online with the interactive prototype hosted at https://typecaseunion. github. io [Castagna et al. 2022b ]. Code 1 and 2 show that exact overloaded types can be inferred even in the absence of annotations. In Code 1 we encode type predicates as they can be found in Typed Racket. The inferred overloaded types exactly specify the semantics of these functions using the singleton types of the values true and false, while in Typed Racket this requires these predicates to be primitives of the language and are typed with specific rules.
As Sam Tobin-Hochstadt insightfully noticed, one can distinguish the approaches that use types to reason about the dynamic behavior of programs according to the set of expressions that are taken into account by the analysis. In the case of occurrence typing, this set is often determined by the way impure expressions are handled. On the one end of the spectrum lies our approach (both this work and the one in  Castagna et al. [2022a] ): our analysis takes into account all expressions but, in its current formulation, it works only for pure languages. On the other end of the spectrum we find the approach of Typed Racket whose analysis reasons about a limited and predetermined set of pure operations: all data structure accessors. Somewhere in-between lies the approach of the Flow language-whose core features were formalized by Chaudhuri et al.
ACKNOWLEDGMENTS This research was partially supported by  Labex DigiCosme  (project  ANR-11-LABEX-0045-DIGI-COSME)  operated by  ANR  as part of the  program «Investissement d'Avenir» Idex Paris-Saclay  ( ANR-11-IDEX-0003-02 ), by the  « Chaire Langages Dynamiques pour les Données » of the Paris-Saclay foundation , and by a Google PhD fellowship. The authors would like to thank  Delia Kesner  for her help with the rewriting systems.
2. 2, item 3. ETri-nB-pc is equivalent to Model (E), which is equivalent to the Decomposable model (D1) and thus to the model based on "at least" decision rules (see Section 3. 4). Techniques have been proposed to learn a decision rule model (see  Greco, Matarazzo, and Słowiński, 1999 , 2001a , Greco, Matarazzo, Słowiński, and Stefanowski, 2001c , Greco, Matarazzo, and Słowiński, 2016 , Słowiński et al. , 2002, and,  for a recent application of these techniques,  Abastante, Bottero, Greco, and Lami, 2014). A large scale recent application to the detection of frauds in car loans applications is described in  Błaszczyński, de Almeida Filho, Matuszyk, Szeląg, and Słowiński (2021). The dataset involves 26 187 loans among which 405 were fraudulently obtained. The dominance-based rough set approach (DRSA) is applied.
In contrast, the metaheuristic designed by  Sobrie, Mousseau, and Pirlot (2013) ,  Sobrie et al. (2019)  or that by  Olteanu and Meyer (2014)  competes with state-of-the-art machine learning algorithms on real datasets  (Tehrani, Cheng, and Hüllermeier, 2012a, Tehrani, Cheng, Dembczyński, and Hüllermeier, 2012b). The size of these datasets, which are benchmarks commonly used in machine learning, ranges from 120 to 1728 alternatives, the number of attributes, from 3 to 8 and the number of categories, from 2 to 9. Characterizing Model (E) with a fixed small number (e. g. , 2 or 3) of limiting profiles seems very difficult. The only thing that can easily be provided is an upper bound on the number of equivalence classes of the relations ≿ i induced by the corresponding twofold partition on the scale X i of each criterion (see Observation 2 in Section 2.
Much effort has been devoted to develop learning methods for this model (e. g. ,  Doumpos, Marinakis, Marinaki, and Zopounidis, 2009 , Mousseau and Słowiński, 1998 , Ngo The and Mousseau, 2002). The genetic algorithm proposed by  Doumpos et al. (2009)  has been tested on a real dataset (in the banking sector) involving 100 alternatives evaluated on 7 criteria and assigned to 3 categories. It has also been tested on artificial datasets, involving up to 1000 alternatives in the learning set, assigned to categories using randomly generated ETri models. No exact methods have been developed to date to learn ETri-nB-pc. The genetic algorithm proposed by  Fernández et al. (2019)  for learning ETri-nB-pc has shown good performance on a real case study involving 81 assignment examples (R & D projects) evaluated on 4 criteria assigned to 8 categories.
It has also been tested on artificial datasets assigned to categories by randomly generated ETri-nB-pc (using 5 limiting profiles in each category boundary). In conclusion, the general approach, based on the decision rule model and techniques, without restrictions on the generality of Model (D1), is available but does not allow to easily control the simplicity of the learned model (see  Dembczyński, Pindur, and Susmaga, 2003, Greco, Matarazzo, Slowinski, and Stefanowski, 2000). Current methods, such as the genetic algorithm proposed by  Fernández et al. (2019)  are usable. Unfortunately, the scalability of these algorithms is difficult to assess since they have not been tested on common benchmark datasets 13. Alternative approaches remain to be developed. Ideally, they should fulfill the following three requirements.
Statement of need Started by porting relevant parts from the SMT library in Rust, the egobox library aims at providing building blocks useful to implement EGO-like algorithms. This open source library will be used by research engineers needing to tackle design optimization problems using a surrogate-based adaptative approach while taking advantage of the Rust programming language. Indeed research scientists reach for prototyping programming language such as Python to develop new methods. Thanks to performant easy-to-use libraries like numpy, scipy, scikitlearn the Python language has become popular in science computing. The ability of Python to glue together different codes explains Python ecosystem is now a de-facto open source standard for scientific software. Nevertheless, one might notice that the performances of above Python libraries relies extensively on C/Fortran compiled code.
Library features With the above need in mind, the Rust programming language appears to be of interest with its selling points being performance, reliability, and productivity. The language is meant to challenge C as a system language but also supporting strong typing, and high level features such as functional programming, algebric data types, and module management. It has a strict approach regarding memory-safety management and benefits from a state of the art tooling for software development. The Rust community has developed scientific libraries like ndarray, ndarray-linalg which can be seen as the numpy and scipy Rust counterparts. Last but not least, the linfa project addresses the machine-learning domain with the purpose of being the Rust equivalent of scikit-learn. The egobox library relies on the above thriving Rust machine learning ecosystem and focuses on providing some building blocks to implement efficient global optimization algorithms.