JPH03237557A - Neural network simulator and computer system - Google Patents
Neural network simulator and computer systemInfo
- Publication number
- JPH03237557A JPH03237557A JP3158190A JP3158190A JPH03237557A JP H03237557 A JPH03237557 A JP H03237557A JP 3158190 A JP3158190 A JP 3158190A JP 3158190 A JP3158190 A JP 3158190A JP H03237557 A JPH03237557 A JP H03237557A
- Authority
- JP
- Japan
- Prior art keywords
- neural network
- file
- constructed
- processing
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明はニューラルネットワークシミュレータ及び計算
機システムに関し、特に、構築されたニュー■・ラルネ
ットワークの保存方法に関するものである。DETAILED DESCRIPTION OF THE INVENTION [Industrial Field of Application] The present invention relates to a neural network simulator and a computer system, and particularly relates to a method for storing a constructed neural network.
[従来の技術1
ニューラルネットワークが実用化されるようになってき
ており、ニューラルネットワークのシミュレーションを
行なう各種の装置にニューラルネットワークシミュレー
タ)が提案されるようになってきた(雑誌「日経A I
J 1987.10.26付録、「助走を開始したニ
ューラル・ネットワーク・ビジネスj)。[Conventional technology 1] Neural networks have come into practical use, and neural network simulators have been proposed as various devices for simulating neural networks (magazine ``Nikkei AI
J 1987.10.26 Appendix, ``Neural network business has started its run-up j).
従来、ニューラルネットワークシミュレータとしては、
計算機システム上で動作するソフトウェアとしてのニュ
ーラルネットワークシミュレータ(ソフトウェアシミュ
レータ〉や、シミュレーションの高速処理のために他の
計算機システムに組み込んで使用する専用のコプロセサ
・カード(アクセラレータ〉等がある。Traditionally, neural network simulators are
There are neural network simulators (software simulators) that are software that runs on computer systems, and dedicated coprocessor cards (accelerators) that are incorporated into other computer systems for high-speed simulation processing.
第2図はソフトウェアシミュレータの実現構成例を示し
ている。第2図において、ユーザlがシミュレーション
に必要な情報(例えばニューラルネットワークの構造、
データ、各種パラメタ等)2を、ホスト計算機3上のソ
フトウェアシミュレータ4に入力すると、ソフトウェア
シミュレータ4は内部でニュートラルネットワーク5を
構築し、必要ならばさらに計算を行なってニュートラル
ネットワーク5の状態をかえ、その後ニュートラルネッ
トワーク5の構造や特性(例えばユニット間結合やシナ
プス荷重等)の情報6をデータファイル7として補助記
憶装置8等に保存する。FIG. 2 shows an example of an implementation configuration of a software simulator. In FIG. 2, user l provides information necessary for the simulation (for example, the structure of the neural network,
data, various parameters, etc.) 2 is input into the software simulator 4 on the host computer 3, the software simulator 4 internally constructs a neutral network 5, performs further calculations if necessary, and changes the state of the neutral network 5. Thereafter, information 6 on the structure and characteristics (for example, inter-unit connections, synaptic loads, etc.) of the neutral network 5 is stored as a data file 7 in an auxiliary storage device 8 or the like.
また、第3図にはコプロセサ・カードを用いた実現構成
例を示している。第3図において、ユーザlはホスト計
算機3のインタフェースプログラム9を利用してコブロ
セサ・カード10上にニューラルネットワーク5を構築
する。また、ニューラルネットワーク5の構造や特性の
保存もインタフェースプログラム9を通じて行われる。Further, FIG. 3 shows an example of an implementation configuration using a coprocessor card. In FIG. 3, a user 1 constructs a neural network 5 on a cobrocessor card 10 using an interface program 9 of a host computer 3. Further, the structure and characteristics of the neural network 5 are also saved through the interface program 9.
ソフトウェアシミュレータ4及びコブロセサ・カード1
0のいずれの装置であっても、ユーザ■から見たニュー
ラルネットワークシミュレータの使用手順は、ニューラ
ルネットワークシミュレータにシミュレーションに必要
な情報を入力する手順(手順■)と、ニューラルネット
ワークシミュレータから結果にニューラルネットワーク
の構造/特性〉を取り出し、ファイル等に保存する手順
(手順■)とからなる。Software simulator 4 and Cobrosesa card 1
Regardless of which device is used, the procedure for using a neural network simulator from the user's point of view is the procedure for inputting the information necessary for simulation into the neural network simulator (step ■), and the inputting of the results from the neural network simulator into the neural network. The structure/characteristics of the system are extracted and saved in a file, etc. (step ■).
手順■で、ニューラルネットワークシミュレータに情報
を入力するのには、ニューラルネットワーク記述言語を
使用することが多い。この言語は、ニューラルネットワ
ークシュミレータ毎に独自の仕様が採用されている。ま
た、手順■では、ニューラルネットワークの構造や特性
その他のデータを特定の書式に従って補助記憶装置8等
に保存するのであるが、保存されたデータは一般にデー
タファイルの形式をとり、その書式もニューラルネット
ワークシミュレータ毎に独自の書式が採用されている。In step 2, a neural network description language is often used to input information to the neural network simulator. Specifications for this language are unique to each neural network simulator. In addition, in step (2), the structure, characteristics, and other data of the neural network are saved in the auxiliary storage device 8, etc. according to a specific format, but the saved data is generally in the form of a data file, and the format is also Each simulator uses its own format.
ところで、ニューラルネットワークは所定の情報処理を
実現させる手段として構築されるので、その構造や特性
が得られたならば、その構造や特性を持つニューラルネ
ットワークを他のプログラムにモジュールとして組み込
んで使用されることが多い。By the way, neural networks are constructed as a means of realizing specific information processing, so once the structure and characteristics are obtained, a neural network with that structure and characteristics can be incorporated into another program as a module and used. There are many things.
第4図及び第5図にその実現例を示している。Examples of its implementation are shown in FIGS. 4 and 5.
第5図(A>に示すように、処理プログラム11中には
白紙状態のニューラルネットワークモジュール12が設
けられており、初期化時にデータファイル7を読み込ん
でニューラルネットワーク13を構築、初期化して第5
図(B)に示すように処理プログラム11を完成させる
(ステップ■00)。処理プログラムの実行時には、そ
の処理段階に応じて、構築されたニューラルネットワー
ク14にデータを入力して計算を実行させる(ステップ
101〉。このようなニューラルネットワークモジュー
ル12を利用した処理が終了すると、処理結果を出力さ
せる等の後処理を行なう(ステップ102)。As shown in FIG. 5 (A>), a blank neural network module 12 is provided in the processing program 11, and upon initialization, a neural network module 13 is constructed and initialized by reading the data file 7.
The processing program 11 is completed as shown in Figure (B) (step ①00). When a processing program is executed, data is input to the constructed neural network 14 and calculation is executed according to the processing stage (step 101). When processing using such a neural network module 12 is completed, the processing Post-processing such as outputting the results is performed (step 102).
[発明が解決しようとする課題]
しかしながら、上述したように、シミュレーションを実
行させるための言語や、シミュレーションによって得ら
れたニューラルネットワークの構造や特性は、ソフトウ
ェアシミュレータやコブロセサ・カード毎に特有なこと
が多い。このような汎用性の欠落のために、高級言語で
記述されることが多い他の処理プログラムに、ニューラ
ルネットワークを組込む場合、データファイル7を読み
込んでニューラルネットワークの構築や初期化を行なう
モジュールや、ニューラルネットワークに計算を実行さ
せるモジュールをユーザ自身が自作しなければならない
。[Problem to be solved by the invention] However, as mentioned above, the language for executing the simulation and the structure and characteristics of the neural network obtained by the simulation may be unique to each software simulator or Cobrosessor card. many. Due to this lack of versatility, when incorporating a neural network into other processing programs that are often written in high-level languages, a module that reads the data file 7 and constructs and initializes the neural network, Users must create their own modules that allow neural networks to perform calculations.
従来のニューラルネットワークシミュレータには、上述
した機能を持つモジュールをソースプログラム又はライ
ブラリの形式でユーザに提供することにより、モジュー
ルの制作をユーザに委ねるという欠点を解決しているも
のがある。しかし、そのような機能を、ソースプログラ
ムの形式で又はライブラリの形式で提供するにせよ、他
の処理プログラムは初期化時にデータファイルを読込ん
でニューラルネットワークの構築や初期化を実行するこ
とになる。従って、プログラム実行には、実行形式のフ
ァイルとデータファイルの複数のファイルが必要となっ
てファイル管理が複雑になるという欠点、及び、プログ
ラム初期化時にデータファイルを読み込んでニューラル
ネットワークの構築や初期化をしなければならず、初期
化に時間がかかるという欠点を有する。Some conventional neural network simulators solve the drawback of leaving the creation of the module to the user by providing the user with a module having the above-mentioned functions in the form of a source program or library. However, whether such functionality is provided in the form of a source program or in the form of a library, other processing programs will read the data file and execute the construction and initialization of the neural network at the time of initialization. Therefore, to run a program, multiple files, an executable file and a data file, are required, which complicates file management, and the data file is read at the time of program initialization to construct and initialize the neural network. It has the disadvantage that it takes time to initialize.
本発明は、以上の点を考慮してなされたものであり、構
築したニューラルネットワークを、他の処理プログラム
で利用し易くしたニューラルネットワークシミュレータ
又は計算機システムを提供しようとするものである。The present invention has been made in consideration of the above points, and aims to provide a neural network simulator or computer system in which a constructed neural network can be easily used in other processing programs.
[課題を解決するための手段]
かかる課題を解決するため、第1の本発明においては、
ニューラルネットワークを構築してファイル化して保存
するニューラルネットワークシミュレータにおいて、構
築したニューラルネットワークを、それと等価な機能を
持つ高級言語のソースプログラムに変換して保存するよ
うにした。[Means for solving the problem] In order to solve the problem, in the first invention,
In a neural network simulator that constructs a neural network and saves it as a file, the constructed neural network is now converted into a high-level language source program with equivalent functionality and saved.
また、第2の本発明においては、ニューラルネットワー
クシミュレータが構築したニューラルネッI−ワークを
、それと等価な機能を持つ高級言語のソースプログラム
に変換して保存するようにした。Further, in the second aspect of the present invention, the neural network I-network constructed by the neural network simulator is converted into a high-level language source program having equivalent functions and stored.
[作用]
ニューラルネットワークシミュレータによって構築され
たニューラルネットワークを、他の処理プログラムで利
用し易くするためには、構築されたニューラルネットワ
ークを、それと等価な一般的な高級言語のプログラムに
変換して保存しておけば良い。[Operation] In order to make it easier to use the neural network constructed by the neural network simulator in other processing programs, the constructed neural network must be converted into an equivalent program in a general high-level language and saved. Just leave it there.
そこで、第1の本発明においては、ニューラルネットワ
ークシミュレータの機能として高級言語のプログラムへ
の変換保存機能を設けた。Therefore, in the first aspect of the present invention, a function of converting and storing a high-level language program is provided as a function of the neural network simulator.
また、第2の本発明では、ニューラルネットワークシミ
ュレータによって構築されたニューラルネットワークを
、ニューラルネットワークシミュレータとは別個の計算
機システムが、等価な機能を持つ高級言語のソースプロ
グラムに変換して保存するようにした。Further, in the second invention, a computer system separate from the neural network simulator converts the neural network constructed by the neural network simulator into a source program in a high-level language having equivalent functions and stores the same. .
このようにすると、他の処理プログラムがこのソースプ
ログラムをリンクすることができて直ちにこのプログラ
ムを利用することができる。In this way, other processing programs can link this source program and use this program immediately.
[実施例]
以下、本発明の一実施例を図面を参照しながら説明する
。[Example] Hereinafter, an example of the present invention will be described with reference to the drawings.
なお、以下では、実施例を理解し易くするため、ニュー
ラルネットワークのあるモデルを中心として説明を行な
っていく。そこで、ニューラルネットワークシミュレー
タについて説明する前に、まず、このニューラルネット
ワークのモデルについて説明する。Note that, in order to make the embodiment easier to understand, the explanation below will focus on a model of a neural network. Therefore, before explaining the neural network simulator, first, this neural network model will be explained.
ここで、第6図はニューラルネットワークのユニット(
セルやニューロンとも呼ばれる)の処理の説明図、第7
図はユニットの処理で利用される関数の入出力特性を示
す特性図、第8図は構築しようとするニューラルネット
ワークの入出力特性の説明図、第9図はこの実施例にか
かる構築されたニューラルネットワークを示すブロック
図である。Here, Figure 6 shows the neural network unit (
Explanatory diagram of the processing of cells (also called neurons), No. 7
The figure is a characteristic diagram showing the input/output characteristics of functions used in unit processing, Figure 8 is an explanatory diagram of the input/output characteristics of the neural network to be constructed, and Figure 9 is the neural network constructed according to this example. FIG. 2 is a block diagram showing a network.
ニューラルネットワークを構成する要素である各ユニッ
トは、第6図に示すように、他のN+1個のユニットか
らシナプス結合を介して重み付は入力wi*ui(iは
0−N、wiはシナプス加重、uiは入力自体)を受取
り、その総和netに自己バイアスbiasを加えた値
Xに対して、第7図及び次式
%式%(1)
(但し、gainは曲線の勾配を変えるためのパラメタ
)
で表される関数f (x)を適用して出力値f(net
+bias)を算出するものである。As shown in Figure 6, each unit, which is an element constituting a neural network, receives weighted input wi*ui (i is 0-N, wi is synaptic weight) from other N+1 units via synaptic connections. , ui is the input itself), and for the value X, which is the summation net plus the self-bias, ) is applied to the output value f(net
+bias).
このような入出力特性を持つユニツ4トを使用した階層
型(3層型)ニューラルネットワークの例を第9図に示
しており、これは排他的論理和を処理するものである。An example of a hierarchical (three-layer) neural network using four units having such input/output characteristics is shown in FIG. 9, which processes exclusive OR.
但し、第8図(A>に示すような論理値「0」及び「1
」に対する一般的な排他的論理和を処理するものではな
く、第8図(B)に示すように、値rO,9,及びr
−0,9Jに対する排他的論理和処理を行なうものであ
る。However, logical values "0" and "1" as shown in FIG.
”, but as shown in FIG. 8(B), the values rO, 9, and r
This is to perform exclusive OR processing on −0 and 9J.
第9図において、各ユニット20〜24には識別のため
、0から4く=ユニットの総数−1)までの番号が入カ
ニニットから順に割り当てられており、この識別番号が
プログラム中で特定のユニットの出力を参照する場合等
に用いられる。なお、第9図には、参考のためにシナプ
スくリンクとも呼ばれる)30〜35にも番号1〜6を
付している。In Fig. 9, each unit 20 to 24 is assigned a number from 0 to 4 (total number of units - 1) for identification, starting from the input unit, and this identification number is used to identify a specific unit in the program. It is used when referring to the output of . In FIG. 9, numbers 1 to 6 are also given to 30 to 35 (also called synaptic links) for reference.
次に、この実施例のニューラルネットワークシミュレー
タを図面を参照しながら説明する。Next, the neural network simulator of this embodiment will be explained with reference to the drawings.
この実!例のシミュレータも、従来と同様に、計算機上
で動作するソフトウェアとしてのニューラルネットワー
クシミュレータであり、又は、シミュレーションの高速
処理のために他の計算機に組み込んで使用する専用のコ
ブロセサ・カードである。従って、ハードウェア的には
、コンピュータシステムとしての通常の要素を備えてい
る。コプロセサ・カードによるものの場合には、さらに
、インタフェース部分を備えている。This fruit! As in the past, the simulator in this example is either a neural network simulator as software running on a computer, or a dedicated coprocessor card that is incorporated into another computer for high-speed simulation processing. Therefore, in terms of hardware, it includes the usual elements of a computer system. In the case of a coprocessor card, it further includes an interface part.
第1図は、この実施例のニューラルネットワークシミュ
レータの処理を示すものである。FIG. 1 shows the processing of the neural network simulator of this embodiment.
ニューラルネットワークシミュレータは一連の処理を開
始すると、まず、ニューラルネットワークを構築するた
めの情報を、ニューラルネットワーク記述言語ファイル
40がら読み込む(ステップ151、(52)。例えば
、第8図(B)に示す入出力特性や、階層数や、入力層
及び出力層でのユニット数等のニューラルネットワーク
の構造、データ、各種パラメタ等を読み込む。When the neural network simulator starts a series of processes, it first reads information for constructing a neural network from the neural network description language file 40 (steps 151 and (52). For example, the input shown in FIG. 8(B) Loads the output characteristics, the structure of the neural network such as the number of layers, the number of units in the input and output layers, data, various parameters, etc.
そして、読込み情報に基づいてニューラルネットワーク
を主記憶上に構築する(ステップ153〉。これにより
、例えば、第9図に示すようなニューラルネットワーク
が構築される。Then, a neural network is constructed on the main memory based on the read information (step 153). As a result, for example, a neural network as shown in FIG. 9 is constructed.
ここで、構築されたニューラルネットワークは学習その
他の手段により、その特性又は状態等を変化させるが、
必要がなければこの処理は省略される(ステップ154
.155)。Here, the constructed neural network changes its characteristics or state through learning or other means,
This process is omitted if unnecessary (step 154).
.. 155).
次に、主記憶上に保持されたニューラルネットワークを
、それに等価な高級言語(例えばC言語〉のソースファ
イル42に変換して保存すると共に、このソースファイ
ル42に定義されている変数、関数等を他のモジュール
(処理プログラム)から参照するのに必要な情報をソー
スファイル42とは別にヘッダファイル41として保存
する(ステップ156)。Next, the neural network stored in the main memory is converted into a source file 42 of an equivalent high-level language (for example, C language) and saved, and the variables, functions, etc. defined in this source file 42 are Information necessary for reference from other modules (processing programs) is saved as a header file 41 separately from the source file 42 (step 156).
この実施例は、このように構築されたニューラルネット
ワークを、等価な高級言語のソースプログラム(ソース
ファイル及びヘッダファイルでなる〉に変換して保存す
ることに特徴を有するものである。This embodiment is characterized in that the neural network thus constructed is converted into an equivalent high-level language source program (consisting of source files and header files) and saved.
そこで、かかる変換保存処理(ステップ156)につい
て図面を参照しながらさらに詳述する。Therefore, such conversion and storage processing (step 156) will be described in further detail with reference to the drawings.
ここで、第10図はかかる変換保存処理の詳細フローチ
ャート、第11図は第9図に示したニューラルネットワ
ークに対して作成されたC言語によるヘッダファイル4
1を示す説明図、第12図は第9図に示したニューラル
ネットワークに対して作成されたC言語によるソースフ
ァイル42を示す説明図である。Here, FIG. 10 is a detailed flowchart of such conversion and storage processing, and FIG. 11 is a header file 4 written in C language created for the neural network shown in FIG. 9.
FIG. 12 is an explanatory diagram showing a source file 42 written in C language created for the neural network shown in FIG.
ニューラルネットワークシミュレータは、この変換保存
処理を開始すると、まず、ヘッダファイル及びソースフ
ァイルについての予め格納されている見本ファイルを取
出す(ステップ200)。When the neural network simulator starts this conversion/save process, it first retrieves pre-stored sample files for the header file and source file (step 200).
第11図及び第12図はそれぞれ完成されたヘッダファ
イル及びソースファイルを示しているが、各見本ファイ
ルは、これらの図に示したものに比べて、ニューラルネ
ットワークを特定する具体的な各種のデータがない、変
数配列が未定義である不完全なものである。例えば、第
11図に示した定数の定義(文字列の置換え)コマンド
#defineの具体的な値(定義データ)は、見本フ
ァイルには挿入されていない。Figures 11 and 12 show the completed header file and source file, respectively, but each sample file contains a variety of specific data that specifies the neural network, compared to what is shown in these figures. is missing, the variable array is undefined, and incomplete. For example, the specific value (definition data) of the constant definition (character string replacement) command #define shown in FIG. 11 is not inserted in the sample file.
次に、ニューラルネットワークシミュレータは、層数や
各層に属するユニット個数や各ユニットが持つ入力シナ
プス数等の層情報を、構築されたニューラルネットワー
クから取出す(ステップ201〉その後、各ユニットに
対して入力側から出力側へ向けて識別番号を付す(ステ
ップ202〉。Next, the neural network simulator extracts layer information such as the number of layers, the number of units belonging to each layer, and the number of input synapses each unit has from the constructed neural network (step 201). An identification number is attached from there to the output side (step 202).
そして、取出された層情報に関するデータを各見本ファ
イルの所定の位置に所定の形式で挿入したり、取出され
た層情報に応じて変数配列を用意したすする(ステップ
203)。例えば、第9図に示すニューラルネットワー
クの場合、見本ヘッダファイルに含まれている、入力層
のユニット数を指示する文字列変数NINPUTを値と
置換える定数定義(文字列置換え)コマンド行r #d
efine NlNPu丁」は、入カニニット数である
2が追加されてr #define NINPLIT
24となる。また、例えば、第9図に示すニューラルネ
ットワークの場合、見本ソースファイルに含まれている
、層の特性を表す配列1ayer[]は、層数3に対応
した3要素となる。Then, data regarding the extracted layer information is inserted in a predetermined format at a predetermined position in each sample file, and a variable array is prepared according to the extracted layer information (step 203). For example, in the case of the neural network shown in Figure 9, a constant definition (string replacement) command line r #d that replaces the string variable NINPUT, which indicates the number of units in the input layer, with a value, which is included in the sample header file.
``efine NlNPu ding'' has 2 added, which is the number of incoming crab nits.r #define NINPLIT
It will be 24. Further, for example, in the case of the neural network shown in FIG. 9, the array 1ayer[], which is included in the sample source file and represents the characteristics of the layers, has three elements corresponding to the number of layers, which is three.
このような層情報に対して見本ヘッダファイル及び見本
ソースファイルを完成させる処理が終了すると、ニュー
ラルネットワークシミュレータは、シナプスがどのユニ
ット間を接続しているかを表す情報や、シナプスの重み
情報等のシナプス情報を、構築されたニューラルネット
ワークから取出す(ステップ204)。その後、各シナ
1スに対して入力側から出力側へ向けて識別番号を付す
(ステップ205)。When the process of completing the sample header file and sample source file for such layer information is completed, the neural network simulator will process the synapse information such as information indicating which units the synapse connects and synapse weight information. Information is retrieved from the constructed neural network (step 204). Thereafter, an identification number is assigned to each scenario from the input side to the output side (step 205).
そして、取出されたシナプス情報に関するデータを各見
本ファイルの所定の位置に所定の形式で挿入したり、取
出されたシナプス情報に応じて変数配列を用意したりす
る(ステップ206〉。例えば、第9図に示すニューラ
ルネットワークの場合、見本ソースファイルに含まれて
いる、シナプスの重み付けを表す配列weight[]
に、各シナプス30〜35の重付は係数■、−1,−1
,1,1上を所定の形式で挿入する。Then, data regarding the extracted synapse information is inserted in a predetermined format at a predetermined position in each sample file, and a variable array is prepared according to the extracted synapse information (step 206). In the case of the neural network shown in the figure, the array weight[] that represents synaptic weighting is included in the sample source file.
, the weighting of each synapse 30 to 35 is the coefficient ■, -1, -1
, 1, 1 above in a predetermined format.
次に、ニューラルネットワークシミュレータは、ユニッ
トの入出力特性を規定する関数f (x)についての勾
配gainのような、層情報やシナプス情報以外のその
他の情報を、構築されたニューラルネットワークから取
出す(ステップ207)。そして、取出されたその他の
情報に関するデータを各見本ファイルの所定の位置に所
定の形式で挿入したり、取出されたその他の情報に応じ
て変数配列を用意したりする(ステップ208)。例え
ば、第9図に示すニューラルネットワークの場合、見本
ヘッダファイルに含まれている、関数f (x)につい
てのgainを指示する文字列GAINを値と置換える
定数定義く文字列置換え〉コマンド行r #defne
GAIJは、GAINの値0.5が所定の形式で追加さ
れてr#defineGAIN (5,0OOOO
Oe+00hとなる。Next, the neural network simulator extracts other information other than the layer information and synaptic information from the constructed neural network, such as the gradient gain for the function f (x) that defines the input-output characteristics of the unit (step 207). Then, data regarding the extracted other information is inserted in a predetermined format at a predetermined position in each sample file, and a variable array is prepared according to the extracted other information (step 208). For example, in the case of the neural network shown in Figure 9, a constant definition is created that replaces the string GAIN that specifies the gain for the function f (x), which is included in the sample header file, with a value. #defne
GAIJ is r#defineGAIN (5,0OOOO
It becomes Oe+00h.
このように、見本ヘッダファイル及び見本ソースファイ
ルに対するデータの挿入等の処理を行なってヘッダファ
イル41及びソースファイル42が完成すると、完成さ
れたヘッダファイル41及びソースファイル42を補助
記憶装置に保存する(ステップ209〉。In this way, when the header file 41 and source file 42 are completed by performing processing such as inserting data into the sample header file and sample source file, the completed header file 41 and source file 42 are saved in the auxiliary storage device ( Step 209>.
なお、見本ヘッダファイル及び見本ソースファイルに対
するデータの挿入等の処理で、演算が必要な場合には、
適宜演算を実行している。In addition, if calculations are required for processing such as inserting data into the sample header file and sample source file,
Calculations are being performed as appropriate.
次に、第11図に示したヘッダファイル41の具体例を
説明する。Next, a specific example of the header file 41 shown in FIG. 11 will be explained.
このヘッダファイル41には、上述したように、ソース
ファイル42で使用されている各種定数の定義や、他の
モジュール(処理プログラム〉から参照される変数、関
数の外部定義が記述されている。As described above, this header file 41 describes definitions of various constants used in the source file 42 and external definitions of variables and functions referenced from other modules (processing programs).
このヘッダファイル41は、ヘッダファイルであること
を表すコメント250て゛立合まっており、次に、ヘッ
ダファイル41及びソースファイル42中で内的に使用
される複数の定数251が記述されている。ここで、定
数ONはニューラルネットワークに対する入力の一方の
値に関するものであり、定数OFFは他方の入力値に関
するものである。This header file 41 has a comment 250 indicating that it is a header file, and a plurality of constants 251 used internally in the header file 41 and source file 42 are described. Here, the constant ON relates to one value of the input to the neural network, and the constant OFF relates to the other input value.
他の定数に対する詳細な説明は省略する。Detailed explanations of other constants will be omitted.
次に、ニューラルネットワークの階N構造に関する情報
を管理する構造体の宣言(typedef宣言〉252
が記述されている。この宣言は、層に属するユニットの
番号や、どの層から入力を受けとっているか等の情報を
保持する。より複雑な構造を持つニューラルネットワー
クにも対応できるように、これら以外にもさまさざまな
情報を構造体Layerに保持しているが、その詳細に
ついては説明を省略する。Next, declare a structure that manages information about the N-layer structure of the neural network (typedef declaration> 252
is described. This declaration holds information such as the number of the unit belonging to the layer and from which layer it receives input. In order to be compatible with neural networks having more complex structures, various information other than these is held in the structure layer, but a detailed explanation thereof will be omitted.
続いて、再び、ヘッダファイル41及びソースファイル
42中で内的に使用される複数の定数やマクロ定義25
3が記述されている。ここでの定数及びマクロ定義は、
ニューラルネットワークの構造を詳細に規定しているも
のであるので、それぞれについて意味を言及すると、下
記の通りである。Next, a plurality of constants and macro definitions 25 used internally in the header file 41 and source file 42 are defined again.
3 is described. The constant and macro definitions here are:
Since it specifies the structure of a neural network in detail, the meaning of each is as follows.
NINPUT 入カニニット数Nt(IDDE
N 中間ユニット数N [)U ’r P U
r 出カニニット数NUNIT ユニット
総数
NWEIGHT シナプスの総数bias(un
itno) ユニットのバイアスを参照するためのマ
クロ定義
NLAYER層数
GAIN ユニット入出力特性関数の勾配最
後に各種の外部定義254が記述されている。NINPUT Number of incoming crab nits Nt (IDDE
N Number of intermediate units N [)U 'r P U
r Number of output units NUNIT Total number of units NWEIGHT Total number of synapses bias(un
itno) Macro definition for referring to unit bias NLAYER Number of layers GAIN Gradient of unit input/output characteristic function Finally, various external definitions 254 are described.
これら外部定義の意味は以下の通りである。The meanings of these external definitions are as follows.
float unit[] ユニットの出力を保
持する変数
float veight[] E/ナブス荷重を
保持する変数
float *1unit 入カニニットの出力を
保持する変数
float *hunit 中間ユニットの出力を
保持する変数
float *ounit 出カニニットの出力を
保持する変数
void activate() 二l−ラルネット
ワークに計算を実行させる関数
なお、このヘッダファイル41にはファイル名net、
hが付されている。float unit[] Variable that holds the output of the unit float veight[] Variable that holds the E/nub load float *1unit Variable that holds the output of the input unit float *hunit Variable that holds the output of the intermediate unit float *unit Output unit A variable that holds the output of void activate() A function that causes the biral network to execute calculations. Note that this header file 41 includes the file names net,
An h is attached.
次に、第12図に示したソースファイル42の具体例を
説明する。Next, a specific example of the source file 42 shown in FIG. 12 will be explained.
これは、上述したように、ニューラルネットワークシミ
ュレータが構築したニューラルネットワークく第9図参
照〉と等価な機能を持つ処理プログラムである。As described above, this is a processing program that has functions equivalent to the neural network constructed by the neural network simulator (see FIG. 9).
ソースファイルであることを表すコメント3゜Oの次に
は、予め用意されている数学関数を使用できるようにす
るため、数学関数のマクロファイルmath、 hを読
み込むコンパイラ制御行301が記述されている。さら
に、このソースファイル42と同時に保存されたヘッダ
ファイル(ファイル名net、h ) 41を読み込む
コンパイラ制御行302が記述されている。After the comment 3゜O indicating that it is a source file, a compiler control line 301 is written that reads macro files math and h for mathematical functions so that pre-prepared mathematical functions can be used. . Furthermore, a compiler control line 302 for reading a header file (file name net, h) 41 saved at the same time as this source file 42 is written.
次に、外部変数である構造体t、ayerを保持する配
列(1ayer[l ) 303が記述されている。配
列の各要素は1層分のデータを管理し、最初の要素から
順に入力層、中間層、出力層のデータに対応している。Next, an array (1ayer[l) 303 that holds structures t and ayer, which are external variables, is described. Each element of the array manages data for one layer, and corresponds to data for the input layer, intermediate layer, and output layer in order from the first element.
さらに、各ユニットの出力を保持する配列(unit[
]〉]34が記述されている。ここで、配列の要素数を
規定する変数5UNI丁は、上述したヘッダファイル4
1に定義されているニューラルネットワーク全体のユニ
ット数を示す定数である。Additionally, an array (unit[
]>]34 are described. Here, the variable 5UNI which specifies the number of elements in the array is specified in the header file 4 mentioned above.
This is a constant indicating the number of units in the entire neural network defined as 1.
次に、入カニニット、中間ユニット、出カニニットの値
の参照を容易にするための変数305〜307が記述さ
れている。これら変数はそれぞれ配列unitの特定の
要素のアドレスを指すポインタになっている。Next, variables 305 to 307 are described to facilitate reference to the values of input units, intermediate units, and output units. Each of these variables is a pointer pointing to the address of a specific element of the array unit.
その後、ニューラルネットワークのシナプス荷重を保持
する配列(veight[]> 308が記述されてい
る。シナプス荷重は、計算に都合の良い順にこの配列に
保持される。この例では、シナプス31から36の順に
保持されている。After that, an array (veight[] > 308) that holds the synaptic weights of the neural network is written. The synaptic weights are held in this array in the order convenient for calculation. In this example, the synapses 31 to 36 are Retained.
次に、各シナプスがどのユニットを起点にし、どのユニ
ットに接続しているかを示す外部変数の配列(wfro
m[]及びWtO[] ) 309及び310が記述さ
れている。これら外部変数wfrom及びwt。Next, an array of external variables (wfro
m[] and WtO[] ) 309 and 310 are described. These external variables wfrom and wt.
にはそれぞれ起点となるユニット、接続先のユニットを
示す番号が保持される。保持される順番は上述した外部
変数weight[lの順に従っている。holds numbers indicating the unit serving as the starting point and the unit to which it is connected. The order in which they are held follows the order of the external variable weight[l described above.
さらに、中間ユニット、出カニニットのバイアスを保持
する外部変数の配列(Bias[l) 311が記述さ
れている。各バイアスは、計算に都合の良い順にこの配
列に保存されている。この例ではユニット22から24
の順にバイアスが保存されている。Furthermore, an array (Bias[l) 311 of external variables that holds the bias of the intermediate unit and output unit is described. Each bias is stored in this array in order of convenience for calculation. In this example units 22 to 24
Bias is preserved in the order of .
このような変数に対する定義に引続き、ニューラルネッ
トワークに対する処理ルーチンであることを表すコメン
ト312からニューラルネットワークに対する処理ルー
チンが記述されている。Following the definition of such variables, a processing routine for the neural network is described starting with a comment 312 indicating that it is a processing routine for the neural network.
この処理ルーチンは、中間層及び最終層の各ユニットを
順に活性化する処理ルーチンと、各ユニットの出力を演
算する処理ルーチンとからなり、ユニットを活性化する
処理ルーチンではユニット出力を演算する処理ルーチン
を利用している。This processing routine consists of a processing routine that sequentially activates each unit in the middle layer and the final layer, and a processing routine that calculates the output of each unit. is used.
すなわち、ユニットを活性化する処理ルーチンの記述に
先立って、ユニット出力を演算する処理ルーチンに係る
関数の宣言(coutput□ ) 313が定義され
ており、その後、活性化する処理ルーチンであることを
表すコメント314が記述され、最後に活性化する処理
ルーチン自体く書式void activate□で表
されている関数activate) 315が記述され
ている。That is, before writing the processing routine that activates the unit, a function declaration (coutput□) 313 related to the processing routine that calculates the unit output is defined, and then a declaration 313 indicating that the processing routine is to be activated is defined. A comment 314 is written, and a function (activate) 315, which is expressed in the format void activate□, is written as the processing routine to be activated last.
この処理ルーチン315は、ニューラルネットワークに
計算を実行させる機能を担うものである。This processing routine 315 is responsible for the function of causing the neural network to execute calculations.
なお、二酬−ラルネットワークに対する入力が、入カニ
ニットにかかる外部変数unit[o]・・・unit
[NINPUT−11(この例の場合穴カニニットは2
個である)に設定されていることが、この処理関数ac
tvateを呼ぶ前提となっている。すなわち、他の処
理モジュールが当該ソースファイル42を利用する場合
に、外部変数unit[o] ・=・unit[NIN
PUT−1]を定義しておくことを要する。ここで、定
数NINPUTは上述したように入カニニット数を示す
もので、その値はヘッダファイル41に定義されている
。In addition, the input to the two-reciprocal network is the external variable unit[o]...unit applied to the input unit.
[NINPUT-11 (In this example, hole crab knit is 2
This processing function ac
This is a prerequisite for calling tvate. That is, when another processing module uses the source file 42, the external variable unit[o] = unit[NIN
PUT-1]. Here, the constant NINPUT indicates the number of input nits as described above, and its value is defined in the header file 41.
この処理ルーチン315によれば、中間ユニット、出カ
ニニットの出力は外部変数unit[]に保存されるの
で、他の処理モジュールがユニットの出力を参照したい
場合には、それらの変数を参照すれば良い。According to this processing routine 315, the output of the intermediate unit and output unit is saved in the external variable unit[], so if other processing modules want to refer to the output of the unit, they can refer to those variables. .
このようなユニットを活性化する処理ルーチンに関する
記述の次に、ユニット出力を演算する処理ルーチンに関
する記述が設けられている。このユニット出力を演算す
る処理ルーチンは、このような処理ルーチンであること
を表すコメント316と、実際に演算を行なう、flo
at coutput(net)及びfloat ne
tという書式で親定されている処理ルーチン自体(関数
contput )の記述317とでなる。Following the description of the processing routine that activates such a unit, there is a description of the processing routine that calculates the unit output. The processing routine that calculates this unit output has a comment 316 indicating that it is such a processing routine, and a flo that actually performs the calculation.
at output (net) and float ne
It consists of a description 317 of the processing routine itself (function output) specified in the format t.
この処理ルーチンは、上述したように、中間ユニット、
出カニニットの出力を決めるものである(第7図参照)
。また、この処理ルーチンは、ユニットを活性化する処
理ルーチン(関数activate)が各ユニットの出
力を計算するために呼ぶものであり、他の処理モジュー
ルから直接呼ばれることはないものである。As mentioned above, this processing routine includes the intermediate unit,
This determines the output of the output (see Figure 7).
. Further, this processing routine is called by the processing routine (function activate) that activates the units in order to calculate the output of each unit, and is not called directly by other processing modules.
なお、第12図に示したソースファイル42には、フィ
ルタ名net、cが付されている。Note that the source file 42 shown in FIG. 12 is given the filter name net, c.
以上のように、ニューラルネットワークシミュレータに
よって構築されたニューラルネットワークが高級言語に
よるソースファイル42及びヘッダファイル4■に変換
されているので、従来のように、データファイルを読み
込んでニューラルネットワークの構築や初期化を行なう
モジュール(ヘッダファイルに対応)や、ニューラルネ
ットワークに計算を実行させるモジュール(ソースファ
イルに対応)をユーザが自作することなく、他の処理モ
ジュールで構築されたニューラルネットワークを利用す
ることができる。As mentioned above, the neural network constructed by the neural network simulator has been converted into the source file 42 and header file 4■ written in a high-level language, so you can construct and initialize the neural network by reading the data file as in the past. Users can use neural networks built with other processing modules without having to create their own modules (corresponding to header files) or modules (corresponding to source files) that cause the neural network to perform calculations.
第13図は、構築されたニューラルネットワークを利用
した処理モジュール、すなわち、高級言語で記述された
ヘッダファイル41及びソースファイル42を利用した
処理モジュール(ファイル名xor、c )の−例を示
す説明図、第14図は第■3図の処理モジュールを実行
した出力結果を示す説明図である。FIG. 13 is an explanatory diagram showing an example of a processing module using the constructed neural network, that is, a processing module (file name xor, c) using a header file 41 and source file 42 written in a high-level language , FIG. 14 is an explanatory diagram showing the output result of executing the processing module of FIG.
第13図に示した処理モジュールは、第9図に示したニ
ューラルネットワークを使用して、考えられる入力の全
ての組み合わせに対して排他的論理和を計算し、その真
理値表を所定の形式で表示させるものである。The processing module shown in FIG. 13 uses the neural network shown in FIG. It is to be displayed.
当該処理モジュールに関するコメント350に引き続い
て、C言語プログラムを実行させるためにシステムに用
意されているファイル5tdio、h、及び上述したヘ
ッダファイルnet、h (第11図〉を当該ファイ
ルxor、 cに包含することを指示するコンパイラ制
御杆351及び352が記述されている。コンパイラ制
御杆352により、当該プログラムの実行に必要な各種
定数や、第12図に示したソースファイル42に定義さ
れた外部変数や関数を参照したり呼び出したりすること
が可能になる。Following the comment 350 regarding the processing module, the file 5tdio, h prepared in the system for executing the C language program, and the above-mentioned header file net, h (Fig. 11) are included in the file xor, c. Compiler control rods 351 and 352 are written to instruct the program to be executed.The compiler control rods 352 control various constants necessary for executing the program, external variables defined in the source file 42 shown in FIG. Functions can be referenced and called.
コメント353が付されて次に記述されている関数(m
ain) 354は、真理値表の項目名を表示させるも
のであり、また、後述する関数XOrを順次呼び出すも
のである。The function (m
ain) 354 displays the item names of the truth table and sequentially calls a function XOr, which will be described later.
コメント355が付されてその次に記述されている関数
(xor>356は、入カバターンbo及びblが0か
■かによって外部変数unit[o]及びUnit[1
]に−0,9又は0.9を設定し、上述した関数act
ivateを呼んでニューラルネットワークに計算を実
行させるものである。そして、再入力値unit[0]
、Unit[1]及び得られた出力値unit[4]を
所定の位置に表示させるものである。The function described next with a comment 355 (xor>356 sets the external variables unit[o] and unit[1] depending on whether the input cover turns bo and bl are 0 or
] to -0, 9 or 0.9, and the above function act
ivate and causes the neural network to perform calculations. Then, the re-input value unit[0]
, Unit[1] and the obtained output value unit[4] are displayed at predetermined positions.
このような第13図に示した処理モジュールファイルX
Or、 Cと第12図に示したソースファイルnet、
cとをコンパイル、リンクして実行すると第14図に示
した処理結果が得られる。The processing module file X shown in FIG.
Or, C and the source file net shown in Figure 12,
By compiling, linking, and executing c, the processing results shown in FIG. 14 are obtained.
第14図において、文字列promptxは計算機から
のプロンプトであり、このプロンプトから始まるコマン
ド行(prompt%cc −o xpor、c−1m
) 400は、ファイルnet、c及びxor、cを
コンパイル、リンクすることを指示するものである。こ
の行におけるオプション−o xorはリンクしてでき
た実行ファイルの名前をxorにすることを指示してい
る。In Figure 14, the string promptx is a prompt from the computer, and the command line starting from this prompt (prompt%cc -oxpor, c-1m
) 400 is an instruction to compile and link files net, c and xor, c. The option -oxor in this line instructs that the name of the linked executable file be xor.
オプション−Inは、数学関数のライブラリをリンクす
ることを指示している。これはソースファイル42中の
関数aCtiVateが数学関数tanhを呼んでいる
ために記述されている。Option -In instructs to link a library of mathematical functions. This is written because the function aCtiVate in the source file 42 calls the mathematical function tanh.
この行に続く3行401は計算機がコンパイル、リンク
し終わったことを示している。Three lines 401 following this line indicate that the computer has finished compiling and linking.
その次のコマンド行(prompt%xor)402は
実行ファイルxorを実行することを指示しており、そ
の実行による結果403がそれに続いて現われる。The next command line (prompt%xor) 402 instructs to execute the executable file xor, and the result 403 of that execution appears subsequently.
以上のように、上述の実施例によれば、ニューラルネッ
トワークシミュレータが構築したニューラルネットワー
クの特性その他のデータを必要な関数とともに高級言語
のソースプログラムに変換して保存するようにしたので
、このソースプログラムをモジュールとして他のプログ
ラムにリンクすることが可能になり、次のような効果が
期待できる。As described above, according to the embodiment described above, the characteristics and other data of the neural network constructed by the neural network simulator are converted and saved together with the necessary functions into a high-level language source program. can be linked to other programs as a module, and the following effects can be expected.
ニューラルネットワークの特性が既にプログラムの中に
組み込まれており、ニューラルネットワークの特性を保
持するデータファイルが不要になることにより生じる効
果は以下の通りである。The characteristics of the neural network are already incorporated into the program, and the effects of eliminating the need for a data file that retains the characteristics of the neural network are as follows.
(1)ファイルの管理は実行ファイルのみでよく、従来
のように実行ファイルとデータファイルの2つのファイ
ルを管理する必要がなくなる。(1) Only the executable file can be managed, eliminating the need to manage two files, an executable file and a data file, as in the past.
(2)データファイルを読み込み、ニューラルネットワ
ークを初期化するための関数、及びニューラルネットワ
ークに計算を実行させる関数をユーザが自作する必要が
なくなる。(2) There is no need for the user to create a function for reading a data file and initializing the neural network, and a function for causing the neural network to perform calculations.
(3)データファイルの読み込みによるニューラルネッ
トワークの初期化が不要なため、プログラムの初期化時
間が少なくなる。(3) Since it is not necessary to initialize the neural network by reading a data file, the time required to initialize the program is reduced.
(4)補助記憶(ディスク等)の領域の使用が少なくな
る。(4) Less space is used in auxiliary storage (disk, etc.).
また、ニューラルネットワークを、等価な機能を持つ高
級言語のソースプログラムに変換することにより生じる
効果は以下の通りである。Furthermore, the effects of converting a neural network into a high-level language source program with equivalent functionality are as follows.
(1)ニューラルネットワークシミュレータの動作する
処理系ばかりでなく、他の処理系への移植が容易である
。(1) It is easy to port the neural network simulator not only to the processing system in which it operates, but also to other processing systems.
(2)ユーザがプログラムを修正、改良するのが容易で
ある。(2) It is easy for the user to modify and improve the program.
なお、上述の実施例においては、ニューラルネットワー
クの構築にニューラルネットワーク記述言語を使用した
が、ニューラルネットワークの構築を可能とする他の任
意の方式が使用できる。Note that in the above-described embodiments, a neural network description language was used to construct the neural network, but any other method that allows constructing a neural network may be used.
また、ニューラルネットワークは計算機システムの主記
憶上に構築したが、この構築も主記憶上に限定されるも
のではなく、例えばコプロセサ・カードの主記憶上など
任意の好適な領域(ディスク等の補助記憶装置も含む〉
の上に行なうことができる。In addition, although the neural network was constructed on the main memory of the computer system, this construction is not limited to the main memory, and can be placed in any suitable area such as the main memory of a coprocessor card (auxiliary memory such as a disk). Including equipment〉
It can be done on top of.
さらに、ソースファイルの言語は必ずしもC言語である
必要はなく、例えばFORTRAN等の任意の高級言語
を用いることができる。Furthermore, the language of the source file does not necessarily need to be C language, and any high-level language such as FORTRAN can be used.
また、上述では、高級言語への変換保存機能をニューラ
ルネットワークシミュレータの一機能として設けたもの
を示したが、ニューラルネットワークシミュレータの一
機能としてではなく、計算機システムにかかる機能とし
て設けても良い。なお、この場合、データファイルも保
存するので、ファイル管理面での効果は、上記実施例の
ものより薄れる。Further, in the above description, the high-level language conversion/storage function is provided as a function of the neural network simulator, but it may be provided as a function of the computer system rather than as a function of the neural network simulator. Note that in this case, since data files are also saved, the effect in terms of file management is less than that of the above embodiment.
[発明の効果]
以上のように、本発明によれば、構築したニューラルネ
ットワークを、高級言語のソースプログラムに変換して
保存するようにしたので、ユーザが他の処理プログラム
で利用し易くなり、使い勝手を一段と高めている。[Effects of the Invention] As described above, according to the present invention, the constructed neural network is converted into a high-level language source program and saved, making it easier for the user to use it in other processing programs. This further improves usability.
第1図は本発明によるニューラルネットワークシミュレ
ータの一実施例の処理フローチャート、第2図はソフト
ウェアシミュレータの実現構成例を示すブロック図、第
3図はコブロセサ・カードを用いた実現構成例を示すブ
ロック図、第4図及び第5図はそれぞれ従来のニューラ
ルネットワークシミュレータによって構築されたニュー
ラルネットワークを他の処理プログラムが利用する方法
の説明図、第6図はニューラルネットワークのユニット
の処理の説明図、第7図はユニットの処理で利用される
関数の入出力特性を示す特性図、第8図は構築しようと
するニューラルネットワークの入出力特性の説明図、第
9図は上記実施例によって構築されたニューラルネット
ワークを示すブロック図、第1O図は高級言語のプログ
ラムへの変換保存処理の詳細フローチャート、第11図
は第9図に示したニューラルネットワークに対して作成
されたC言語によるヘッダファイル4■を示す説明図、
第■2図は第9図に示したニューラルネットワークに対
して作成されたC言語によるソースファイル42を示す
説明図、第13図は構築されたニューラルネットワーク
を利用した他の処理プログラムの一例を示す説明図、第
14図は第13図の処理プログラムを実行した出力結果
を示す説明図である。
41・・・ヘッダファイル、42・・・ソースファイル
、156・・・高級言語のソースプログラムへの変換保
存処理ステップ。Fig. 1 is a processing flowchart of an embodiment of the neural network simulator according to the present invention, Fig. 2 is a block diagram showing an example of an implementation configuration of the software simulator, and Fig. 3 is a block diagram showing an example of an implementation configuration using a Cobrocessor card. , FIG. 4 and FIG. 5 are respectively explanatory diagrams of how other processing programs utilize the neural network constructed by the conventional neural network simulator, FIG. 6 is an explanatory diagram of the processing of the neural network unit, and FIG. The figure is a characteristic diagram showing the input/output characteristics of functions used in unit processing, Figure 8 is an explanatory diagram of the input/output characteristics of the neural network to be constructed, and Figure 9 is the neural network constructed according to the above example. Figure 1O is a detailed flowchart of the process of converting and saving a high-level language program, and Figure 11 is an explanation showing the header file 4 in C language created for the neural network shown in Figure 9. figure,
Fig. 2 is an explanatory diagram showing a source file 42 in C language created for the neural network shown in Fig. 9, and Fig. 13 shows an example of another processing program using the constructed neural network. Explanatory diagram, FIG. 14 is an explanatory diagram showing the output result of executing the processing program of FIG. 13. 41... Header file, 42... Source file, 156... Conversion and storage processing step into a high-level language source program.
Claims (2)
て保存するニューラルネットワークシミュレータにおい
て、 構築したニューラルネットワークを、それと等価な機能
を持つ高級言語のソースプログラムに変換して保存する
ようにしたことを特徴とするニューラルネットワークシ
ミュレータ。(1) A neural network simulator that builds a neural network and saves it as a file is characterized by converting the built neural network into a high-level language source program with equivalent functionality and saving it. Neural network simulator.
ニューラルネットワークを、それと等価な機能を持つ高
級言語のソースプログラムに変換して保存するようにし
たことを特徴とする計算機システム。(2) A computer system characterized in that a neural network constructed by a neural network simulator is converted into a high-level language source program having equivalent functions and stored.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3158190A JPH03237557A (en) | 1990-02-14 | 1990-02-14 | Neural network simulator and computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3158190A JPH03237557A (en) | 1990-02-14 | 1990-02-14 | Neural network simulator and computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03237557A true JPH03237557A (en) | 1991-10-23 |
Family
ID=12335155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3158190A Pending JPH03237557A (en) | 1990-02-14 | 1990-02-14 | Neural network simulator and computer system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03237557A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017187798A1 (en) * | 2016-04-28 | 2017-11-02 | ソニー株式会社 | Information processing device and information processing method |
JP2020170551A (en) * | 2015-10-29 | 2020-10-15 | 株式会社Preferred Networks | Information processing device and information processing method |
US11452733B2 (en) | 2018-04-19 | 2022-09-27 | Estetra Sprl | Compounds and their uses for alleviating menopause-associated symptoms |
US11484539B2 (en) | 2018-04-19 | 2022-11-01 | Estetra Sprl | Compounds and their uses for alleviating menopause-associated symptoms |
US11793760B2 (en) | 2015-06-18 | 2023-10-24 | Estetra Srl | Orodispersible dosage unit containing an estetrol component |
CN117009859A (en) * | 2023-09-26 | 2023-11-07 | 深圳市魔数智擎人工智能有限公司 | Feature stitching method and system based on memory calculation |
US11896602B2 (en) | 2016-08-05 | 2024-02-13 | Estetra Srl | Method for preventing pregnancy |
-
1990
- 1990-02-14 JP JP3158190A patent/JPH03237557A/en active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11793760B2 (en) | 2015-06-18 | 2023-10-24 | Estetra Srl | Orodispersible dosage unit containing an estetrol component |
US11964055B2 (en) | 2015-06-18 | 2024-04-23 | Estetra Srl | Orodispersible dosage unit containing an estetrol component |
JP2020170551A (en) * | 2015-10-29 | 2020-10-15 | 株式会社Preferred Networks | Information processing device and information processing method |
US12079729B2 (en) | 2015-10-29 | 2024-09-03 | Preferred Networks, Inc. | Information processing device and information processing method |
US12026620B2 (en) | 2015-10-29 | 2024-07-02 | Preferred Networks, Inc. | Information processing device and information processing method |
US11521070B2 (en) | 2015-10-29 | 2022-12-06 | Preferred Networks, Inc. | Information processing device and information processing method |
US11915146B2 (en) | 2015-10-29 | 2024-02-27 | Preferred Networks, Inc. | Information processing device and information processing method |
JPWO2017187798A1 (en) * | 2016-04-28 | 2019-03-07 | ソニー株式会社 | Information processing apparatus and information processing method |
WO2017187798A1 (en) * | 2016-04-28 | 2017-11-02 | ソニー株式会社 | Information processing device and information processing method |
US11896602B2 (en) | 2016-08-05 | 2024-02-13 | Estetra Srl | Method for preventing pregnancy |
US11666585B2 (en) | 2018-04-19 | 2023-06-06 | Estetra Srl | Compounds and their uses for alleviating menopause-associated symptoms |
US11484539B2 (en) | 2018-04-19 | 2022-11-01 | Estetra Sprl | Compounds and their uses for alleviating menopause-associated symptoms |
US11452733B2 (en) | 2018-04-19 | 2022-09-27 | Estetra Sprl | Compounds and their uses for alleviating menopause-associated symptoms |
CN117009859B (en) * | 2023-09-26 | 2024-01-09 | 深圳市魔数智擎人工智能有限公司 | Feature stitching method and system based on memory calculation |
CN117009859A (en) * | 2023-09-26 | 2023-11-07 | 深圳市魔数智擎人工智能有限公司 | Feature stitching method and system based on memory calculation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8712939B2 (en) | Tag-based apparatus and methods for neural networks | |
US10210452B2 (en) | High level neuromorphic network description apparatus and methods | |
US9117176B2 (en) | Round-trip engineering apparatus and methods for neural networks | |
WO2013138778A1 (en) | Tag-based apparatus and methods for neural networks | |
CN105512723A (en) | Artificial neural network calculating device and method for sparse connection | |
Kounalis et al. | Mechanizing inductive reasoning | |
CN112199086B (en) | Automatic programming control system, method, device, electronic equipment and storage medium | |
JP2000515272A (en) | Modeling and control of adaptive processes | |
US20170139685A1 (en) | Visual software modeling method to construct software views based on a software meta view | |
JPH03237557A (en) | Neural network simulator and computer system | |
Shapiro | Validation of a VLSI chip using hierarchical colored Petri nets | |
US5546505A (en) | Program product for facilitating use of a neural network | |
Smith et al. | Linking icon-based models to code-based models: a case study with the agricultural production systems simulator | |
Kim et al. | AppBuilder for DSSTools: an application development environment for developing decision support systems in Prolog | |
Korb et al. | A declarative neural network description language | |
Sonar | Integrating Intelligent Systems using an SQL-database | |
Triou et al. | Declarative testing: A paradigm for testing software applications | |
Kreindler et al. | Extracting a Narrative′ s Causal Gist: A Modeling Study Based on Fuzzy Trace Theory | |
JP3315890B2 (en) | Data processing system | |
US20020143748A1 (en) | Method and system for providing a generic scalar function | |
Štefanovič | Low Level Modelling of Discrete Systems | |
Hoheisel | Model Coupling and Integration via XML in the M3 Simulation | |
CN118821879A (en) | Method, device, medium and equipment for heterogeneous neural network learning and simulation | |
Zhong et al. | Research on Function Block Programmable Technology of Machine Vision | |
Dobbins et al. | Development environments |