QSMM, the recursive acronym for "QSMM State Machine Model", is a C library and a set of tools aimed at solving notable problems with Artificial Intelligence: the explainability of model behavior and its restriction to prevent violating a predefined set of rules.
To achieve the goals, the library supports specifying model behavior in algorithmic form by the means of nondeterministic programs adapting their own execution according to the reinforcement learning approach. An assembler language for developing the programs includes deterministic jump instructions for imposing constraints on model behavior and nondeterministic jump instructions with automatically adjusted probabilities for allowing variations in the behavior.
A proposed higher-level abstraction of model operation is adaptive parsing according to a template grammar. A top-down parser and bottom-up parser supplied with the library compile a template grammar to a nondeterministic assembler program that consumes tokens.
Features
- assembler and disassembler for adaptive programs
- execution environment supporting multiple assembler subroutines
- extensible assembler instruction set
- assembler macro preprocessor
- adaptive probabilistic mapping with incentive-modulated outcome selection
- scalable tree-form structure for fast finite automaton state transition
- time-dependent incentives for reinforcement learning
- handling incentives equal to the logarithms of probabilities
- dynamic window algorithm for reinforcement learning statistics collection
- compiler of a regular expression grammar to an adaptive assembler program
- converter of a grammar for bottom-up parsing to one for top-down parsing
- converter of a template grammar to a factored PCFG for Viterbi parsing
- support for nonterminal symbol classes and symbol class expressions
- sequence segmentation using a uniform top-down template grammar
- top-down and bottom-up parsers for learning by iterative determinization
License
GNU General Public License version 3.0 (GPLv3)Follow QSMM
User Reviews
-
Good