Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Грамматикалық индукция (немесе грамматикалық қорытынды) — машиналық оқытудағы формалды грамматиканы (әдетте қайта жазу ережелерінің немесе өнімдерінің жиынтығы түрінде, немесе қандай да бір түрдi шекті күйдегі машина немесе автомат түрінде) байқаулар жиынтығынан үйрену процесі, осы арқылы байқалған объектілердің ерекшеліктерін қамтитын модель құрастыру. Көбірек айтқанда, грамматикалық қорытынды — машиналық оқытудың сол саласы, онда мысалдар кеңістігі жолдар, ағаштар және графтар сияқты дискретті комбинаторлық объектілерден тұрады.
Grammar induction (or grammatical inference) is the process in machine learning of learning a formal grammar (usually as a collection of re write rules or productions or alternatively as a finite state machine or automaton of some kind) from a set of observations, thus constructing a model which accounts for the characteristics of the observed objects. More generally, grammatical inference is that branch of machine learning where the instance space consists of discrete combinatorial objects such as strings, trees and graphs.
Грамматика сабақтары
Грамматикалық тұжырымдама көбінесе әртүрлі типтегі шекті күйдегі машиналарды үйрену мәселесіне баса назар аударды (осы тәсілдер туралы толық мәліметтерді «Регламенттік тілдерді индукциялау» мақаласында қараңыз), себебі 1980 жылдардан бері осы мәселе үшін тиімді алгоритмдер бар. Ғасырдың басынан бері бұл тәсілдер контекстсіз грамматиканы және одан да күрделі формализмдерді, мысалы, бірнеше контекстсіз грамматиканы және параллель бірнеше контекстсіз грамматиканы тұжырымдау мәселесіне дейін кеңейтілді. Грамматикалық тұжырымдама зерттелген грамматиканың басқа түрлері – комбинаторлық категориялық грамматика, контексттік грамматика және үлгілік тілдер.
Grammatical inference has often been very focused on the problem of learning finite state machines of various types (see the article Induction of regular languages for details on these approaches), since there have been efficient algorithms for this problem since the 1980s. Since the beginning of the century, these approaches have been extended to the problem of inference of context free grammars and richer formalisms, such as multiple context free grammars and parallel multiple context free grammars. Other classes of grammars for which grammatical inference has been studied are combinatory categorial grammars, contextual grammars and pattern languages.
Оқу үлгілері
Оқудың ең қарапайым түрі – оқу алгоритмінің тек қана сұраныс тілінен алынған мысалдар жиынтығын қабылдауы. Мақсат – тілді оның мысалдары арқылы үйрену (және сирек жағдайларда, тілге жатпайтын мысалдар, яғни қарсы мысалдар арқылы). Дегенмен, басқа оқу үлгілері де зерттелді. Жиі зерттелетін бір балама – оқушының Angluin ұсынған дәл сұраныс оқыту моделі немесе минималды қанағаттанарлық мұғалім моделі сияқты мүшелік сұрақтарын қоюға мүмкіндігі.
The simplest form of learning is where the learning algorithm merely receives a set of examples drawn from the language in question: the aim is to learn the language from examples of it (and, rarely, from counter examples, that is, example that do not belong to the language). However, other learning models have been studied. One frequently studied alternative is the case where the learner can ask membership queries as in the exact query learning model or minimally adequate teacher model introduced by Angluin.
Әдістемелер
Грамматикалық қорытынды жасаудың көптеген әдістері бар. Екі классикалық еңбек те осы мәселеге қысқаша тоқталып, көптеген сілтемелер келтіреді. Олар ұсынған негізгі сынақ-қате әдісі төменде талқыланады. Әдеттегі тілдердің кіші топтарын анықтау тәсілдері үшін «Әдеттегі тілдердің индукциясы» дегенге қараңыз. Ал де ла Хигераның (2010) жаңа оқулығы табиғи тілдер үшін грамматикалық қорытынды жасау әдістерін қарастыратын шолуды ұсынады.
There is a wide variety of methods for grammatical inference. Two of the classic sources are and also devote a brief section to the problem, and cite a number of references. The basic trial and error method they present is discussed below. For approaches to infer subclasses of regular languages in particular, see Induction of regular languages. A more recent textbook is de la Higuera (2010), provide a survey that explores grammatical inference methods for natural languages.
Ықтималдық грамматиканың индукциясы
Ықтималдық контекстсіз грамматикаларды индукциялаудың бірнеше әдістері бар.
There are several methods for induction of probabilistic context free grammars.
Сынақ пен қате арқылы грамматикалық тұжырымдау
8.7 бөлімінде ұсынылған әдіс грамматикалық ережелерді (өндірістерді) біртіндеп табалауды және оларды оң және теріс мысалдармен тексеруді ұсынады. Ережелер жиынтығы әрбір оң мысалды жасауға мүмкіндік беру үшін кеңейтіледі, бірақ егер берілген ережелер жиынтығы теріс мысал жасаса, одан бас тарту керек. Бұл тәсілді «гипотезаны тексеру» деп сипаттауға болады және ол Митчелдің нұсқа кеңістігі алгоритмімен кейбір ортақ белгілерге ие. Мәтін бұл процесті жақсы көрсететін қарапайым мысал келтіреді, бірақ мұндай бағытталмаған сынақ пен қате жолының күрделірек мәселелер үшін тиімділігі күмәнді.
The method proposed in Section 8.7 of suggests successively guessing grammar rules (productions) and testing them against positive and negative observations. The rule set is expanded so as to be able to generate each positive example, but if a given rule set also generates a negative example, it must be discarded. This particular approach can be characterized as "hypothesis testing" and bears some similarity to Mitchel's version space algorithm. The text provide a simple example which nicely illustrates the process, but the feasibility of such an unguided trial and error approach for more substantial problems is dubious.
Генетикалық алгоритмдер арқылы грамматикалық тұжырымдау
Эволюциялық алгоритмдерді қолдана отырып грамматикалық индукция – бұл эволюциялық процестің бірі арқылы мақсатты тілдің грамматикасын дамыту процесі. Формальды грамматикаларды өндіріс ережелерінің ағаш құрылымдары ретінде бейнелеуге болады, олар эволюциялық операторларға түсіріледі. Осындай алгоритмдер Джон Коза бастаған генетикалық бағдарламалау парадигмасынан туындайды. Жасырап формальды тілдердегі алғашқы жұмыстар генетикалық алгоритмдердің екілік тізбектей бейнелеуін қолданды, бірақ EBNF тілінде жазылған грамматиканың иерархиялық құрылымы ағаштарды тиімдірек тәсілге айналдырды. Коза Lisp бағдарламаларын ағаштар ретінде бейнеледі. Ол ағаш операторларының стандартты жиынтығында генетикалық операторларға ұқсас нәрселерді тапты. Мысалы, кіші ағаштарды ауыстыру генетикалық кроссоверге ұқсас процесс, онда генетикалық кодтың кіші тізбектері келесі буынға жататын жеке тұлғаға трансплантацияланады. Сәйкестік Lisp кодының функцияларынан алынған нәтижелерді бағалау арқылы өлшенеді. Ағаш құрылымды Lisp бейнелеуі мен грамматиканы ағаш ретінде бейнелеу арасындағы ұқсас аналогтар грамматикалық индукция үшін генетикалық бағдарламалау техникаларын қолдануға мүмкіндік берді. Грамматикалық индукция жағдайында кіші ағаштарды трансплантациялау белгілі бір тілден фразаларды талдауға мүмкіндік беретін өндіріс ережелерін ауыстыруға сәйкес келеді. Грамматиканың сәйкестік операторы мақсатты тілден алынған сөйлемдер тобын талдаудағы оның өнімділігіне негізделген. Грамматиканың ағаш бейнелеуінде өндіріс ережесінің терминалды символы ағаштың жапырақты түйініне сәйкес келеді. Оның балама түйіндері ереже жиынтығындағы терминалды емес символға (мысалы, атау фразасы немесе етіс фразасы) сәйкес келеді. Соңында, түбір түйін терминалды емес сөйлемге сәйкес болуы мүмкін.
Grammatical induction using evolutionary algorithms is the process of evolving a representation of the grammar of a target language through some evolutionary process. Formal grammars can easily be represented as tree structures of production rules that can be subjected to evolutionary operators. Algorithms of this sort stem from the genetic programming paradigm pioneered by John Koza. Other early work on simple formal languages used the binary string representation of genetic algorithms, but the inherently hierarchical structure of grammars couched in the EBNF language made trees a more flexible approach. Koza represented Lisp programs as trees. He was able to find analogues to the genetic operators within the standard set of tree operators. For example, swapping sub trees is equivalent to the corresponding process of genetic crossover, where sub strings of a genetic code are transplanted into an individual of the next generation. Fitness is measured by scoring the output from the functions of the Lisp code. Similar analogues between the tree structured lisp representation and the representation of grammars as trees, made the application of genetic programming techniques possible for grammar induction. In the case of grammar induction, the transplantation of sub trees corresponds to the swapping of production rules that enable the parsing of phrases from some language. The fitness operator for the grammar is based upon some measure of how well it performed in parsing some group of sentences from the target language. In a tree representation of a grammar, a terminal symbol of a production rule corresponds to a leaf node of the tree. Its parent nodes corresponds to a non terminal symbol (e. g. a noun phrase or a verb phrase) in the rule set. Ultimately, the root node might correspond to a sentence non terminal.
Таратулық оқыту
Жаңағы тәсіл үлестірулік оқытуға негізделген. Осы тәсілді қолданатын алгоритмдер контекстсіз грамматикаларды және шамалы контекстке сезімтал тілдерді үйренуге қолданылды және осы грамматикалардың ірі топтары үшін дұрыс және тиімді екені дәлелденді.
A more recent approach is based on distributional learning. Algorithms using these approaches have been applied to learning context free grammars and mildly context sensitive languages and have been proven to be correct and efficient for large subclasses of these grammars.
Үлгілік тілдерді үйрену
Англюин үлгіні "Σ жиынынан тұрақты символдар тізбегі және бөлек жиынтықтан өзгермелі символдар" деп анықтайды. Мұндай үлгінің тілі – оның бос емес барлық негізгі мысалдарының жиынтығы, яғни өзгермелі символдарды тұрақты символдардың бос емес тізбектерімен сәйкес алмастыру нәтижесінде алынған барлық тізбектер. Егер үлгінің тілі кіріс жиынтығын қамтитын барлық үлгі тілдерінің арасында ең кішкентай болса (жиынтық кіріктірілуге қатысты), онда үлгі шекті кіріс тізбектер жиынтығы үшін сипаттамалық деп аталады. Англюин берілген кіріс тізбектер жиынтығы үшін бір x айнымалысындағы барлық сипаттамалық үлгілерді есептеуге арналған полиномдық алгоритм ұсынады. Осы мақсатта ол барлық мүмкін тиісті үлгілерді көрсететін автомат құрастырады; x жалғыз айнымалы болғандықтан сөздердің ұзындығына қатысты күрделі аргументтерді қолдану арқылы күйлердің санын күрт азайтуға болады. Эрлебах және авторлар Англюиннің үлгіні үйрену алгоритмінің тиімдірек нұсқасын, сондай-ақ параллельдік нұсқасын ұсынады. Аримура және авторлар үлгілердің шектеулі біріктірілімдерінен алынған тіл класын полиномиалдық уақытта үйренуге болатынын көрсетеді.
Angluin defines a pattern to be "a string of constant symbols from Σ and variable symbols from a disjoint set". The language of such a pattern is the set of all its nonempty ground instances i. e. all strings resulting from consistent replacement of its variable symbols by nonempty strings of constant symbols. A pattern is called descriptive for a finite input set of strings if its language is minimal (with respect to set inclusion) among all pattern languages subsuming the input set. Angluin gives a polynomial algorithm to compute, for a given input string set, all descriptive patterns in one variable x. To this end, she builds an automaton representing all possibly relevant patterns; using sophisticated arguments about word lengths, which rely on x being the only variable, the state count can be drastically reduced. Erlebach et al. give a more efficient version of Angluin's pattern learning algorithm, as well as a parallelized version. Arimura et al. show that a language class obtained from limited unions of patterns can be learned in polynomial time.
Қолданбалар
Грамматикалық индукция принципі табиғи тілді өңдеудің басқа да салаларына қолданылды және, басқа көптеген мәселелермен қатар, семантикалық талдау, табиғи тілді түсіну, мысалға негізделген аударма, тілді игеру, грамматикалық негіздемедегі сығылу және аномалияларды анықтау сияқты мәселелерде де қолданылды.
The principle of grammar induction has been applied to other aspects of natural language processing, and has been applied (among many other problems) to semantic parsing, natural language understanding, example based translation, language acquisition, grammar based compression, and anomaly detection.