(1) FSAの状態をクラスタリングする。
(2) アルファベットをつけた円で各々の状態をラベルづけする。
(3) 遷移を矢印で書きこむ。
(4) (3)を最小化する。
ここでは、学習の間ネットワークはそれ自身の状態空間をよりはっきりしたクラスターに分離しており、これらの状態はFSAに対応しているという仮説をもとに、クラスタリングを行う。(別のクラスタリング法はCleeremans et al.(1989)を参照)
その方法であるが、まずそれぞれの隠れユニットの持つ値 [0,1]を等間隔に
q 個に区切る。この q を分割パラメータという。すると、 N 個
の隠れユニットを持つものは 個の分割状態を持つことになる。入力された文字によってその状態がそのままであるか、遷移するかということから、遷移図をつくることによりFSAは構成される。もし、次の文字の入力の結果同じ分割状態であったら、ループが形成されたと推測する。そうでなければ、新しいFSAの状態が形成されたと考える。またFSAの開始状態は、各ユニットの初期値によって決まる。この結果構成されるFSAは最大で 個の状態を持つ。
そして、この抽出されたFSAは標準的な最小化アルゴリズムで縮小することができる。この最小化の過程はFSAの能力を変化させることはない。最小化の過程はあくまでFSAの無駄な部分を省くものである。
ここでは、分割パラメータの初期値は q=2 であり、抽出されたFSAが1024個のトレーニングセットの分類に失敗したときのみ1づつ増加する。このFSA抽出法はorderや隠れ層に関係なく他の離散時間でのRNNに用いることができる。ただし、多くのユニットを持つものにこの方法を用いることは難しい。