7

I want to encode finite state machines (specifically DFAs) as output (or input) of a neural network for a supervised learning task.

Are there any ways in the literature for doing this?

I've already found some algorithms being able to extract a DFA from a recurrent neural network, but nothing about DFAs either as input or output of ANN.

timleathart
  • 3,960
  • 22
  • 35
Gabrer
  • 210
  • 2
  • 6

3 Answers3

2

https://www.dlsi.ua.es/~mlf/nnafmc/pbook.pdf Neural Networks: Automata and Formal Models of Computation Mikel L. Forcada Universitat d’Alacant, Dept. Llenguatges i Sistemes Inform`atics, E-03071 Alacant (Spain). January 21, 2002

1

The better question might be - Why you do want to mix deep neural networks (DNN) and a finite state machine (FSM)?

There is research showing that a DNN can simulate any FSM. Since there are more frameworks for DNN and DNN can perform more tasks than FSM, it appears to be more useful just to forgo FSM altogether.

More specifically, "Neural network for synthesizing deterministic finite automata" shows how a relatively simple neural network (NN) can quickly and automatically learn the correct deterministic finite automaton (DFA).

There is a strong trend towards end-to-end DNN.

Brian Spiering
  • 23,131
  • 2
  • 29
  • 113
1

Take a look at the neural state machine by Hudson & Manning. It's non-deterministic but it is differentiable, which gives you the same kind of "black box learning power" as neural networks.

Janne
  • 21
  • 3