DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Beyond Fail-Safe: Designing Fail-Operational State Machines for Physical AI
  • How to Port CV/ML Models to NPU for Faster Face Recognition
  • Unsupervised Learning Methods for Analyzing Encrypted Network Traffic
  • Understanding Neural Networks

Trending

  • Comparing Top Gen AI Frameworks for Java in 2026
  • The Third Culture: Blending Teams With Different Management Models
  • Building a Reusable Framework to Standardize API Ingestion in an On-Prem Lakehouse
  • Writing in Markdown: An Introduction
  1. DZone
  2. Data Engineering
  3. AI/ML
  4. The Inception of Neural Networks and Finite State Machines

The Inception of Neural Networks and Finite State Machines

In the first post of this series, get a brief look at research about neural networks, finite state machines, models of the human brain, and abstract machines.

By 
Daniela Kolarova user avatar
Daniela Kolarova
DZone Core CORE ·
Jul. 11, 17 · Opinion
Likes (9)
Comment
Save
Tweet
Share
8.2K Views

Join the DZone community and get the full member experience.

Join For Free

What is the relationship between the behavior of artificial neural networks and models used in formal language theory and theory of computation?

There are two main research fields related to this question; neural networks and finite state machines and models of the human brain and abstract machines.

The aim of this article is to give an explanation of the commonalities between the two and how they are related. We will also review existing papers exploring this topic.

Neural networks have been becoming more and more popular recently, and automata theory and finite state machines have been used intensively for many years. Using finite state machines for modeling in software development is not a new concept. Automata-based techniques have been widely used as general-purpose program development methodology. 

Automata theory is a branch of computer science that established its roots during the 20th century. As matter of fact, the first people to consider the concept of a finite state machine included biologists, psychologists, mathematicians, engineers, and some of the first computer scientists. They all shared a common interest: to model the human thought process, whether in the brain or in a computer.

The neurophysiologist Warren McCulloch and logician Walter Pitts were the first to present a description of finite automata in 1943. Their paper, entitled, "A Logical Calculus Immanent in Nervous Activity," is commonly regarded as the inception of two fields of research. One is the theory of finite state machines as a model of computation. The other one is the field of artificial neural networks. The fields of neural networks and finite state computation indeed started simultaneously. McCulloch and Pitts mathematically formulated the behavior of ensembles of neurons (after a number of simplifying assumptions) and they defined what we currently know as a finite-state machine (FSM).

In 1967, Minsky published his book "Computation: Finite and Infinite Machines." In Minsky's own words:

Every finite-state machine is equvalent to, and can be simulated by, some neural net.

At the beginning of this century, the relation between neural nets and automata theory was further investigated and discussed. In 2002, Mikel Forcada published his draft paper "Neural Networks: Automata and Formal Models of Computation" in an attempt to collect and analyze various papers and works around the topic since the publication of "A Logical Calculus Immanent in Nervous Activity." The basic questions stated at the beginning of this paper are:

  • Can a neural network of architecture class A perform the same computation as an automaton of class M?

  • Can a neural network of architecture class A be a recognizer for languages of language class L?

  • Can a neural network of architecture class A be trained to perform the same computation as an automaton of class M from a set of examples?

  • Can a neural network of architecture class A be trained to recognize a language of class L from a set of examples?

Furthermore, Mikel Forcada talks about neural state machines and provides a mathematical definition. This and other topics like Turing neural networks will be further investigated in subsequent articles. 

neural network Network Machine

Opinions expressed by DZone contributors are their own.

Related

  • Beyond Fail-Safe: Designing Fail-Operational State Machines for Physical AI
  • How to Port CV/ML Models to NPU for Faster Face Recognition
  • Unsupervised Learning Methods for Analyzing Encrypted Network Traffic
  • Understanding Neural Networks

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook