Grammatical inference algorithms routines and applications
Luận án: Grammatical inference algorithms routines and applications. Xem tóm tắt và tải về tại LuanAn.net
Năm xuất bản
Số trang
152
Thời gian đọc
23 phút
Lượt xem
0
Lượt tải
0
Phí lưu trữ
50 Point
Tổng quan nhanh
- Chủ đề:
- Grammatical Inference: Bridging Theory & Practice
- Số trang:
- 152 trang
- Trường:
- University of Silesia
- Chuyên ngành:
- Computer Science
- Tác giả:
- Wojciech Wieczorek
- Năm:
- 2017
Tóm tắt nội dung luận án
I.Grammatical Inference Bridging Theory Practice
Grammatical inference is a scientific domain. It sits at the intersection of many fields. Computational linguistics, pattern recognition, and machine learning contribute to this area. Formal learning theory and computational biology also play a role. The field also uses names like grammar learning, automata inference, and grammar induction. Its core task involves automatically inferring grammar from data. This process is crucial for understanding structure in various datasets. The study covers both theoretical foundations and practical implementations.
1.1. Defining Grammatical Inference Scope
Grammatical inference focuses on learning formal grammars. It extracts structural rules from example data. The discipline unifies insights from diverse areas. These include artificial intelligence and computer science. The scope ranges from simple pattern recognition to complex language modeling. This involves identifying underlying patterns in sequences or trees. The ultimate goal is to generate a concise and accurate grammatical representation. This representation can then process new, unseen data.
1.2. The Practical Approach of This Resource
This book offers a practical perspective on grammatical inference. It presents both traditional and modern methods. The focus is on usability for practitioners. Python programming language is chosen for implementations. Code listings are provided directly. These examples can be used for quick application development. Students, academic researchers, and programmers will find this resource valuable. It serves as a source of ready-made solutions. It also inspires further development in the field. This resource bridges theoretical concepts with practical coding routines.
1.3. Interdisciplinary Relevance and Impact
Grammatical inference holds significant interdisciplinary relevance. Its principles apply across diverse domains. Engineering, computer science, and physics benefit from these methods. Life sciences also utilize grammatical inference techniques. The methodologies behind computational intelligence are explored. This includes neural networks, genetic algorithms, and fuzzy systems. The ability to learn grammar from data impacts artificial intelligence directly. This field drives advancements in language understanding and pattern recognition. It offers robust tools for complex data analysis.
II.Exploring Key Algorithms for Grammar Induction
Grammar induction relies on specific algorithms. These routines facilitate learning grammars from data. The goal is to identify underlying structural rules. This process often involves inferring automata or formal grammars. The selection of algorithms depends on data characteristics. Positive and negative examples often drive the learning process. The efficiency and accuracy of these algorithms are critical. Practical implementation requires understanding their computational complexity. This section provides insights into various foundational methods.
2.1. Foundation Algorithms for Grammar Induction
Grammar induction algorithms form the core of the field. They process input data to infer grammatical rules. These algorithms range from simple heuristic approaches to complex statistical models. Their design addresses the challenge of generalizing from limited examples. Key examples include state-merging algorithms and active learning methods. Each algorithm offers distinct advantages depending on the learning scenario. Understanding these foundations is essential for effective grammar induction.
2.2. Angluin L Algorithm Active Learning
The Angluin L* algorithm represents a significant advance. It is an active learning algorithm. This algorithm learns regular languages. It does so by querying an oracle. The oracle provides answers to membership and equivalence queries. L* constructs a deterministic finite automaton (DFA). It uses a concept called an observation table. The process guarantees learning the minimal DFA. This algorithm is highly efficient under ideal conditions. It is a cornerstone for many theoretical learning models. Practical applications often adapt its core principles.
2.3. RPNI and State Merging Techniques
RPNI (Regular Positive and Negative Inference) is another powerful algorithm. It belongs to the class of state merging algorithms. RPNI takes positive and negative examples of a language. It constructs a prefix tree acceptor first. Then, it systematically merges states. The algorithm aims for the smallest consistent DFA. Consistency means accepting all positive examples and rejecting all negative ones. State merging is a common paradigm in grammar induction. It iteratively combines states based on specific heuristics. This approach is effective for inferring regular grammars from samples. Other state merging algorithms also exist, building upon similar ideas. Their effectiveness varies with the dataset and merging criteria.
III.Automata Learning Practical Routines in Python
Automata learning focuses on constructing abstract machines. These machines recognize patterns within data. The process involves inferring the structure of finite automata. This includes deterministic finite automata (DFA) and nondeterministic finite automata (NFA). Practical implementations often leverage programming languages like Python. Routines for building, simulating, and visualizing automata are crucial. This section explores the fundamental concepts and practical tools for automata learning. It emphasizes hands-on application.
3.1. Understanding Deterministic Finite Automata DFA
Deterministic Finite Automata (DFA) are fundamental to automata theory. They recognize regular languages. A DFA consists of a finite set of states. It has an alphabet, a transition function, a start state, and accept states. For each state and input symbol, there is exactly one transition. DFA models are widely used in pattern matching and compiler design. Learning DFAs from data is a key aspect of automata learning. The simplicity and determinism of DFAs make them suitable for direct implementation. Understanding DFA structure is crucial for implementing grammar induction algorithms.
3.2. Nondeterministic Finite Automata NFA Overview
Nondeterministic Finite Automata (NFA) offer more flexibility than DFAs. An NFA can have multiple transitions for a single input symbol. It can also have epsilon transitions (transitions without consuming an input). Despite their nondeterminism, NFAs are equivalent in power to DFAs. Any language recognized by an NFA can also be recognized by a DFA. Conversion algorithms exist to transform NFAs into DFAs. NFAs are often more concise for representing certain languages. Their non-determinism can simplify initial language modeling. Learning NFAs directly from data presents unique challenges.
3.3. Practical Automata Implementations with Python
Python serves as an excellent language for automata implementations. Its clear syntax aids in representing states, transitions, and alphabets. This book provides practical Python routines for automata construction. Examples include building DFAs from inferred grammars. Routines for simulating automata execution are also included. Code snippets illustrate state transitions and language acceptance. The Python environment allows for rapid prototyping. These implementations are directly usable. They offer a foundation for developing custom automata learning tools. Practitioners can easily adapt these routines.
IV.Mastering Regular Language Learning Techniques
Regular language learning is a cornerstone of grammatical inference. It involves inferring formal descriptions of regular languages. These languages are the simplest class in the Chomsky hierarchy. Techniques leverage positive and negative examples to build models. The goal is to produce a generalized automaton or regular grammar. Mastering these techniques is vital for various applications. This section delves into the methodologies for effectively learning regular languages. It covers key algorithmic approaches.
4.1. The Role of Positive and Negative Examples
Learning regular languages often relies on examples. Positive examples are strings belonging to the target language. Negative examples are strings not belonging to it. Both types of examples are crucial for accurate inference. Positive data helps identify valid language structures. Negative data helps prune incorrect generalizations. The balance and quality of these examples directly impact learning success. Algorithms like RPNI utilize both sets of examples. They use them to construct and refine the learned grammar or automaton. Understanding the role of examples is fundamental to grammatical inference.
4.2. State Merging Algorithms for Regular Languages
State merging algorithms are central to regular language learning. These algorithms begin with a "maximal" automaton. This often involves a prefix tree acceptor (PTA) built from positive examples. The algorithm then iteratively merges states. Merging decisions are guided by heuristics. The goal is to produce a smaller, more generalized automaton. This automaton must remain consistent with all provided examples. RPNI is a prominent example of a state merging algorithm. Its efficiency and effectiveness make it widely used. Other variants of state merging exist, each with different merging criteria. They aim to find the optimal balance between generalization and specialization.
4.3. Advanced Approaches to Regular Language Induction
Beyond foundational methods, advanced techniques exist. These approaches tackle more complex scenarios. They may involve statistical methods for learning probabilistic regular grammars. Some algorithms handle noisy data. Others focus on incremental learning, adapting to new examples over time. The Angluin L* algorithm represents an active learning paradigm. It interacts with an oracle to gather necessary information. These advanced methods push the boundaries of regular language induction. They offer robust solutions for real-world challenges. Continuous research explores more efficient and accurate learning strategies.
V.Advanced Topics Context Free Grammar Induction
Context-Free Grammar (CFG) induction represents an advanced challenge. CFGs describe more complex linguistic structures than regular grammars. They are essential for modeling programming languages and natural language syntax. Learning CFGs from data is computationally intensive. It often requires sophisticated algorithms and heuristics. This section explores the intricacies and current approaches to CFG induction. It highlights the difficulties and potential solutions in this challenging area of grammar learning.
5.1. Challenges of Context Free Grammar Induction
Context-Free Grammar (CFG) induction presents significant challenges. CFGs are more expressive than regular grammars. They can describe nested structures, like those found in programming languages or natural language. This increased expressiveness complicates the learning process. Unlike regular languages, learning CFGs from positive examples alone is often undecidable. The search space for CFGs is much larger. Defining appropriate metrics for generalization becomes harder. Overfitting is a common problem. Robust algorithms for CFG induction remain an active area of research. Practical solutions often rely on heuristics or specific constraints.
5.2. Approaches to CFG Learning
Various methods attempt to tackle CFG induction. Some approaches extend state-merging ideas from regular languages. These often involve more complex merging criteria. Tree automata learning can inform CFG induction. Other methods employ statistical techniques. They assign probabilities to production rules. This allows for handling ambiguity and noisy data. Evolutionary algorithms and genetic programming are also explored. They search for grammars that best fit the data. Dependency parsing and semantic parsing benefit from these developments. Hybrid approaches combining different paradigms show promise.
5.3. Applications of Context Free Grammars
Context-Free Grammars have broad applications. They are essential in computational linguistics for natural language parsing. Compilers use CFGs to define programming language syntax. XML and JSON schema definitions often rely on context-free principles. Biology applies CFGs to model RNA secondary structures. Music theory uses them for compositional analysis. The ability to automatically learn CFGs would revolutionize these fields. It would enable more adaptive and robust systems. Further research aims to make CFG induction more practical and scalable.
VI.Real World Applications of Grammatical Inference
Grammatical inference extends beyond theoretical study. Its algorithms find practical utility in numerous real-world scenarios. These applications span across diverse scientific and engineering disciplines. From computational linguistics to bioinformatics, grammar learning provides powerful tools. It enables systems to understand, predict, and generate complex data patterns. This section highlights key areas where grammatical inference delivers tangible benefits. It showcases its transformative impact on various industries and research fields.
6.1. Grammatical Inference in Computational Linguistics
Grammatical inference holds a vital role in computational linguistics. It aids in understanding human language structure. Applications include natural language processing (NLP) tasks. For instance, part-of-speech tagging and parsing benefit. It helps in developing models for language acquisition. Machine translation systems can leverage learned grammars. Sentiment analysis and text summarization also see improvements. The ability to automatically infer grammatical rules enhances language technology. It provides a foundation for more robust language understanding systems.
6.2. Pattern Recognition and Data Analysis
The principles of grammatical inference extend to pattern recognition. It helps in identifying regular patterns in sequences. This applies to various data types. Image recognition can use grammar to describe object structures. Speech recognition benefits from learning phonetic patterns. Anomaly detection in time series data is another area. Grammatical inference provides structural models. These models detect deviations from expected patterns. It offers a powerful tool for complex data analysis. The techniques are adaptable to diverse signal processing challenges.
6.3. Role in Computational Biology and Other Fields
Computational biology is a significant application area. Grammatical inference helps model biological sequences. DNA, RNA, and protein sequences exhibit grammatical structures. It assists in gene finding and RNA secondary structure prediction. Identifying conserved motifs in biological data is crucial. Beyond biology, the field impacts robotics and control systems. It contributes to automated planning and fault diagnosis. The ability to learn underlying rules from observations is universally valuable. This makes grammatical inference a versatile tool across scientific disciplines.
Tải xuống file đầy đủ để xem toàn bộ nội dung
Tải đầy đủ (152 trang)Trích đoạn nội dung luận án
Tải xuống để đọc toàn bộStudies in Computational Intelligence 673 Wojciech Wieczorek Grammatical Inference Algorithms, Routines and Applications Studies in Computational Intelligence Volume 673 Series editor Janusz Kacprzyk, Polish Academy of Sciences, Warsaw, Poland e-mail: kacprzyk@ibspan.pl About this Series The series “Studies in Computational Intelligence” (SCI) publishes new develop- ments and advances in the various areas of computational intelligence—quickly and with a high quality. The intent is to cover the theory, applications, and design methods of computational intelligence, as embedded in the fields of engineering, computer science, physics and life sciences, as well as the methodologies behind them. The series contains monographs, lecture notes and edited volumes in computational intelligence spanning the areas of neural networks, connectionist systems, genetic algorithms, evolutionary computation, artificial intelligence, cellular automata, self-organizing systems, soft computing, fuzzy systems, and hybrid intelligent systems. Of particular value to both the contributors and the readership are the short publication timeframe and the worldwide distribution, which enable both wide and rapid dissemination of research output.
More information about this series at http://www.com/series/7092 Wojciech Wieczorek Grammatical Inference Algorithms, Routines and Applications 123 Wojciech Wieczorek Institute of Computer Science University of Silesia Faculty of Computer Science and Materials Science Sosnowiec Poland ISSN 1860-949X ISSN 1860-9503 (electronic) Studies in Computational Intelligence ISBN 978-3-319-46800-6 ISBN 978-3-319-46801-3 (eBook) DOI 10.1007/978-3-319-46801-3 Library of Congress Control Number: 2016952872 © Springer International Publishing AG 2017 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. Printed on acid-free paper This Springer imprint is published by Springer Nature The registered company is Springer International Publishing AG The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland Preface Grammatical inference, the main topic of this book, is a scientific area that lies at the intersection of multiple fields. Researchers from computational linguistics, pattern recognition, machine learning, computational biology, formal learning theory, and many others have their own contribution.
Therefore, it is not surprising that the topic has also a few other names such as grammar learning, automata inference, grammar identification, or grammar induction. To simplify the location of present contribution, we can divide all books relevant to grammatical inference into three groups: theoretical, practical, and applicable. In greater part this book is practical, though one can also find the elements of learning theory, combinatorics on words, the theory of automata and formal languages, plus some reference to real-life problems. The purpose of this book is to present old and modern methods of grammatical inference from the perspective of practitioners.
To this end, the Python program- ming language has been chosen as the way of presenting all the methods. Included listings can be directly used by the paste-and-copy manner to other programs, thus students, academic researchers, and programmers should find this book as the valuable source of ready recipes and as an inspiration for their further development. A few issues should be mentioned regarding this book: an inspiration to write it, a key for the selection of described methods, arguments for selecting Python as an implementation language, typographical notions, and where the reader can send any critical remarks about the content of the book (subject–matter, listings etc. There is a treasured book entitled “Numerical recipes in C”, in which along with the description of selected numerical methods, listings in C language are provided.
The reader can copy and paste the fragments of the electronic version of the book in order to produce executable programs. Such an approach is very useful. We can find an idea that lies behind a method and immediately put it into practice. It is a guiding principle that accompanied writing the present book.
For the selection of methods, we try to keep balance between importance and complexity. It means that we introduced concepts and algorithms which are essential to the GI practice and theory, but omitted that are too complicated or too v vi Preface long to present them as a ready-to-use code. Thanks to that, the longest program included in the book is no more than a few pages long. As far as the implementation language is concerned, the following requirements had to be taken into account: simplicity, availability, the property of being firmly established, and allowing the use of wide range of libraries.
Python and FSharp programming languages were good candidates. We decided to choose IronPython (an implementation of Python) mainly due to its integration with the optimization modeling language. We use a monospaced (fixed-pitch) font for the listings of programs, while the main text is written using a proportional font. In listings, Python keywords are in bold.
The following persons have helped the author in preparing the final version of this book by giving valuable advice. I would like to thank (in alphabetical order): Prof. Skinderowicz, and Ph. Sosnowiec, Poland Wojciech Wieczorek 2016 Contents 1 Introduction .1 The Problem and Its Various Formulations .1 Mathematical Versus Computer Science Perspectives .2 Different Kinds of Output .2 Assessing Algorithms’ Performance .1 Measuring Classifier Performance .3 5 2 Cross-Validated Paired t Test .2 Classification of Proteins.
16 2 State Merging Algorithms .2 Evidence Driven State Merging .4 Grammatical Inference with MDL Principle .1 The Motivation and Appropriate Measures .2 The Proposed Algorithm. 31 3 Partition-Based Algorithms.2 The k-tails Method .3 Grammatical Inference by Genetic Search .1 What Are Genetic Algorithms?. 37 vii viii Contents 3.2 Basic Notions of the Genetic Algorithm for GI.4 CFG Inference Using Tabular Representations .1 Basic Definitions. 45 4 Substring-Based Algorithms .1 Error-Correcting Grammatical Inference .1 The GI Algorithm .2 Alignment-Based Learning.
56 5 Identification Using Mathematical Modeling .1 From DFA Identification to Graph Coloring .2 From NFA Identification to a Satisfiability Problem .3 From CFG Identification to a CSP. 67 6 A Decomposition-Based Algorithm.1 Prime and Decomposable Languages .2 Cliques and Decompositions .1 The GI Algorithm. 75 7 An Algorithm Based on a Directed Acyclic Word Graph .2 Constructing a DAWG From a Sample. 81 8 Applications of GI Methods in Selected Fields .1 Discovery of Generating Functions .2 The Schützenberger Methodology .2 Minimizing Boolean Functions .1 Background and Terminology .3 Use of Induced Star-Free Regular Expressions .1 Definitions and an Algorithm .2 An Application in Classification of Amyloidogenic Hexapeptides .3 An Application in the Construction of Opening Books.
109 Appendix A: A Quick Introduction to Python. 111 Appendix B: Python’s Tools for Automata, Networks, Genetic Algorithms, and SAT Solving. 129 Appendix C: OML and its Usage in IronPython. 139 Acronyms CFG Context-free grammar CGT Combinatorial game theory CNF Chomsky normal form CNF Conjunctive normal form CSP Constraint satisfaction problem DFA Deterministic finite automaton DNF Disjunctive normal form EDSM Evidence driven state merging GA Genetic algorithm GI Grammatical inference GNF Greibach normal form ILP Integer linear programming LP Linear programming MDL Minimum description length MILP Mixed integer linear programming NFA Non-deterministic finite automaton NLP Non-linear programming NP Non-deterministic polynomial time OGF Ordinary generating function OML Optimization modeling language PTA Prefix tree acceptor RPNI Regular positive and negative inference SAT Boolean satisfiability problem TSP Traveling salesman problem XML Extensible markup language xi Chapter 1 Introduction 1.1 The Problem and Its Various Formulations Let us start with the presentation of how many variants of a grammatical inference problem we may be faced with.
Informally, we are given a sequence of words and the task is to find a rule that lies behind it. Different models and goals are given by response to the following questions. Is the sequence finite or infinite? Does the sequence contain only examples (positive words) or also counter-examples (negative words)? Is the sequence of the form: all positive and negative words up to a certain length n? What is meant by the rule: are we satisfied with regular acceptor, context- free grammar, context-sensitive grammar, or other tool? Among all the rules that match the input, should the obtained one be of a minimum size? 1.1 Mathematical Versus Computer Science Perspectives The main division of GI models comes from the size of a sequence. When it is infinite, we deal with mathematical identification in the limit.
The setting of this model is that of on-line, incremental learning. After each new example, the learner (the algorithm) must return some hypothesis (an automaton or a CFG). Identification is achieved when the learner returns a correct answer and does not change its decision afterwards. With respect to this model the following results have been achieved: (a) if we are given examples and counter-examples of the language to be identified (learning from informant), and each individual word is sure of appearing, then at some point the inductive machine will return the correct hypothesis; (b) if we are given only the examples of the target (learning from text), then identification is impossible for any super-finite class of languages, i., a class containing all finite languages and at least one infinite language.
In this book, however, we only consider the situation when the input is finite, which can be called a computer science perspective. We are going to describe algorithms the part of which base on examples only, and the others base © Springer International Publishing AG 2017 1 W. Wieczorek, Grammatical Inference, Studies in Computational Intelligence 673, DOI 10.1 A DFA accepting a b c aa∗ bb∗ cc∗ a b c S A B C on both examples and counter-examples. Sometimes we will demand the smallest possible form of an output, but every so often we will be satisfied with an output that is just consistent with the input.
Occasionally, an algorithm gives the collection of results that gradually represent the degree of generalization of the input.2 Different Kinds of Output The next point that should be made is that how important it is to pinpoint the kind of a target. Consider the set of examples: {abc, aabbcc, aaabbbccc}. If a solution is being sought in the class of regular languages, then one possible guess is presented in Fig. This automaton matches every word starting with one or more as, followed by one or more bs, and followed by one or more cs.
If a solution is being sought in the class of context-free languages, then one of possible answers is the following grammar: S → ABC A → a|aAB B→b C →c|CC It is clearly seen that the language accepted by this CFG is {am bm cn : m, n ≥ 1}. Finally, if a solution is being sought in the class of context-sensitive languages, then even more precise conjecture can be made: S →aBc a A → aa b A → Ab B → Ab B c B c → bc Now, the language accepted by this grammar is {am bm cm : m ≥ 1}. It is worth emphasizing that from the above-mentioned three various acceptors, the third one can not be described as a CFG or a DFA, and the second one can not be described as a DFA (or an NFA). In the book we will only consider the class of regular and context- free languages.
Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ
Trích dẫn luận án này
Wojciech Wieczorek (2017). Grammatical inference algorithms routines and applications [Luận án tiến sĩ, University of Silesia]. LuanAn.net. https://luanan.net/tai-lieu-khac/grammatical-inference-algorithms-routines-and-applications
Câu hỏi thường gặp
Luận án "Grammatical inference algorithms routines and applications" nghiên cứu về vấn đề gì?
Luận án: Grammatical inference algorithms routines and applications. Xem tóm tắt và tải về tại LuanAn.net
Luận án "Grammatical inference algorithms routines and applications" được bảo vệ tại trường nào?
Luận án này được bảo vệ tại University of Silesia. Năm bảo vệ: 2017.
Luận án "Grammatical inference algorithms routines and applications" thuộc chuyên ngành gì?
Luận án "Grammatical inference algorithms routines and applications" thuộc chuyên ngành Computer Science. Danh mục: Tài liệu khác.
Luận án "Grammatical inference algorithms routines and applications" có bao nhiêu trang?
Luận án "Grammatical inference algorithms routines and applications" có 152 trang. Bạn có thể xem trước một phần tài liệu ngay trên trang web trước khi tải về.
Cách tải luận án "Grammatical inference algorithms routines and applications" về máy như thế nào?
Để tải luận án về máy, bạn nhấn nút "Tải xuống ngay" trên trang này, sau đó hoàn tất thanh toán phí lưu trữ. File sẽ được tải xuống ngay sau khi thanh toán thành công. Hỗ trợ qua Zalo: 0559 297 239.