JP7050028B2 - Computer system and machine learning control method - Google Patents

Computer system and machine learning control method Download PDF

Info

Publication number
JP7050028B2
JP7050028B2 JP2019062414A JP2019062414A JP7050028B2 JP 7050028 B2 JP7050028 B2 JP 7050028B2 JP 2019062414 A JP2019062414 A JP 2019062414A JP 2019062414 A JP2019062414 A JP 2019062414A JP 7050028 B2 JP7050028 B2 JP 7050028B2
Authority
JP
Japan
Prior art keywords
machine learning
detection condition
learning
value
condition data
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.)
Active
Application number
JP2019062414A
Other languages
Japanese (ja)
Other versions
JP2020161031A (en
Inventor
知弘 安田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2019062414A priority Critical patent/JP7050028B2/en
Publication of JP2020161031A publication Critical patent/JP2020161031A/en
Application granted granted Critical
Publication of JP7050028B2 publication Critical patent/JP7050028B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、機械学習の制御に関する。 The present invention relates to the control of machine learning.

与えられたデータに対して人間が識別基準を書き下すことが困難な問題であっても、機械学習の技術により、データの特徴を自動的に学習し、未知データに対して予測値を得ることが可能となった。 Even if it is difficult for humans to write down the identification criteria for given data, machine learning technology automatically learns the characteristics of the data and obtains predicted values for unknown data. Is now possible.

機械学習では、近年注目を集めているディープラーニングにおけるニューラルネットワーク等のモデルを構築し、学習データを用いてモデルを特徴づけるパラメータが決定される。従来の機械学習では、乱数等に基づいてパラメータの初期値が設定され、学習処理(反復計算)を実行してパラメータが逐次更新される。このとき、パラメータにより決まる目的関数を定義し、学習データに対し目的関数の値が最小となるように学習が行われる。 In machine learning, a model such as a neural network in deep learning, which has been attracting attention in recent years, is constructed, and parameters that characterize the model are determined using the learning data. In conventional machine learning, initial values of parameters are set based on random numbers and the like, learning processing (iterative calculation) is executed, and the parameters are sequentially updated. At this time, the objective function determined by the parameters is defined, and learning is performed so that the value of the objective function is minimized with respect to the training data.

特開平05-197821号公報Japanese Unexamined Patent Publication No. 05-197821

図9は、パラメータの初期値とモデルの出力の精度との関係性の一例を示すグラフである。ここでは、横軸はパラメータを表し、縦軸は目的関数の値を表すものとする。また、目的関数は、モデルの出力値と理想的な値との乖離の度合いを出力する関数であるものとする。なお、図9の値Fは、所望の精度が実現できる目的関数の値を表す。 FIG. 9 is a graph showing an example of the relationship between the initial value of the parameter and the accuracy of the output of the model. Here, the horizontal axis represents the parameter and the vertical axis represents the value of the objective function. Further, the objective function is assumed to be a function that outputs the degree of dissociation between the output value of the model and the ideal value. The value F in FIG. 9 represents the value of the objective function that can achieve the desired accuracy.

パラメータの初期値が適切でない場合、良いモデルを生成することができない。例えば、パラメータの初期値として図9に示すP’0が設定された場合、学習結果は必ずしも最適ではないモデル(局所的最適解)に収束する。しかし、パラメータに初期値P’1が設定された場合、最適なモデル(大域的最適解)に収束する。また、モデルの複雑化に伴って目的関数も複雑になるため、複雑なモデルでは最適なパラメータ、すなわち、大域的最適解を導出することは困難になる。そのため多くの場合、局所的最適解が学習結果(最終的なモデル)として出力される。 If the initial values of the parameters are not appropriate, a good model cannot be generated. For example, when P'0 shown in FIG. 9 is set as the initial value of the parameter, the learning result converges to a model (local optimum solution) that is not always optimal. However, when the initial value P'1 is set in the parameter, it converges to the optimum model (global optimum solution). Moreover, since the objective function becomes complicated as the model becomes complicated, it becomes difficult to derive the optimum parameter, that is, the global optimum solution in the complicated model. Therefore, in many cases, the local optimum solution is output as a learning result (final model).

局所的最適解に対応するモデルが、十分な精度を実現できる場合には問題がない。しかし、学習前後のモデルの精度に差がない場合、又は、所望の精度が得られない場合、機械学習は失敗であるため、パラメータに異なる初期値を与えて再度、機械学習を実行する必要がある。前述のような機械学習の失敗はモデルが複雑になるほど発生しやすい。 There is no problem if the model corresponding to the locally optimal solution can achieve sufficient accuracy. However, if there is no difference in the accuracy of the model before and after training, or if the desired accuracy is not obtained, machine learning has failed, so it is necessary to give different initial values to the parameters and execute machine learning again. be. Machine learning failures such as those mentioned above are more likely to occur as the model becomes more complex.

前述のような問題に対して、特許文献1に記載の技術が知られている。特許文献1には、「所定回数学習を行ったニューラルネットに対し誤差2乗和の変化量、正答率並びにその変化量を検出することにより、学習状況(最適解に収束しているか否か、局所解に陥っていないか、並びにニューロン数は適切か)を判断し、必要に応じて中間層にニューロンを追加したり、不良ニューロンを削除したり或いはその不良ニューロンの重みを初期化し直した後、再度学習を行う。」ことが記載されている。 The technique described in Patent Document 1 is known for the above-mentioned problems. Patent Document 1 states, "By detecting the amount of change in the sum of squared errors, the correct answer rate, and the amount of change in a neural network that has been learned a predetermined number of times, the learning situation (whether or not it has converged to the optimum solution is determined." After determining whether a local solution has occurred and whether the number of neurons is appropriate), adding neurons to the middle layer, deleting defective neurons, or reinitializing the weights of the defective neurons as necessary. , Re-learn. "

特許文献1に記載の技術は、ニューラルネットワーク以外のモデルには適用できない。また、学習データ及びモデルが異なると、学習状況、すなわち、学習の失敗を判定するための指標も異なる。 The technique described in Patent Document 1 cannot be applied to models other than neural networks. Further, when the learning data and the model are different, the learning situation, that is, the index for determining the learning failure is also different.

本発明は、様々な機械学習方式及びモデルに適用でき、かつ、効率的な機械学習を実現するシステム及び方法を提供する。 The present invention provides a system and a method that can be applied to various machine learning methods and models and realize efficient machine learning.

本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、入力データに対して予測値を出力するモデルを生成するための機械学習を実行する計算機システムであって、プロセッサ及び前記プロセッサに接続される記憶装置を備え、前記機械学習は、前記モデルを定義するパラメータを更新する学習処理を複数回実行する処理であって、前記プロセッサは、判定タイミングを規定するトリガ回数、及び前記モデルを生成するための機械学習の失敗予兆を検出するために用いる少なくとも一つの評価値により定義される検出条件を含む検出条件データを格納する学習判定情報を取得し、前記パラメータの初期値を設定して、前記機械学習を開始し、前記学習処理を実行した後、前記パラメータの初期値が設定された後の前記学習処理の実行回数を表すカウンタを更新し、前記トリガ回数が前記カウンタの値に一致する前記検出条件データを特定し、前記特定された検出条件データに含まれる検出条件に基づいて、前記機械学習の失敗予兆が検出されたか否かを判定し、前記機械学習の失敗予兆が検出された場合、前記パラメータ及び前記カウンタを初期化した後、前記機械学習を継続する。 A typical example of the invention disclosed in the present application is as follows. That is, it is a computer system that executes machine learning for generating a model that outputs a predicted value with respect to input data, and includes a processor and a storage device connected to the processor, and the machine learning uses the model. It is a process of executing a learning process for updating a defined parameter a plurality of times, and the processor uses at least the number of triggers for defining a determination timing and a machine learning failure sign for generating the model. After acquiring learning determination information that stores detection condition data including detection conditions defined by one evaluation value, setting initial values of the parameters, starting the machine learning, and executing the learning process. The counter representing the number of times the learning process is executed after the initial value of the parameter is set is updated, the detection condition data whose trigger number matches the value of the counter is specified, and the specified detection condition data is specified. Based on the detection conditions included in, it is determined whether or not the machine learning failure sign is detected, and if the machine learning failure sign is detected, the parameters and the counter are initialized, and then the machine. Continue learning.

本発明の一形態によれば、様々な機械学習方式及びモデルに適用でき、かつ、効率的な機械学習を実現できる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to one embodiment of the present invention, it can be applied to various machine learning methods and models, and efficient machine learning can be realized. Issues, configurations and effects other than those described above will be clarified by the description of the following examples.

実施例1の計算機システムの構成の一例を示す図である。It is a figure which shows an example of the structure of the computer system of Example 1. FIG. 実施例1の学習部が表示する設定画面の一例を示す図である。It is a figure which shows an example of the setting screen displayed by the learning part of Example 1. FIG. 実施例1の学習部が表示する設定画面の一例を示す図である。It is a figure which shows an example of the setting screen displayed by the learning part of Example 1. FIG. 目的関数及びパラメータの関係性の一例を示すグラフである。It is a graph which shows an example of the relationship between an objective function and a parameter. 実施例1の計算機システムが実行する機械学習を説明するフローチャートである。It is a flowchart explaining the machine learning executed by the computer system of Embodiment 1. FIG. 実施例2の学習部が表示する設定画面の一例を示す図である。It is a figure which shows an example of the setting screen displayed by the learning part of Example 2. FIG. 実施例2の学習部が表示する設定画面の一例を示す図である。It is a figure which shows an example of the setting screen displayed by the learning part of Example 2. FIG. 実施例2の計算機システムが実行する機械学習を説明するフローチャートである。It is a flowchart explaining the machine learning executed by the computer system of Example 2. パラメータの初期値とモデルの出力の精度との関係性の一例を示すグラフである。It is a graph which shows an example of the relationship between the initial value of a parameter and the accuracy of the output of a model.

以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。 Hereinafter, examples of the present invention will be described with reference to the drawings. However, the present invention is not limited to the description of the examples shown below. It is easily understood by those skilled in the art that a specific configuration thereof can be changed without departing from the idea or purpose of the present invention.

以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。 In the configuration of the invention described below, the same or similar configurations or functions are designated by the same reference numerals, and duplicate description will be omitted.

本明細書において、機械学習とは、入力データに対して予測値を出力するモデルを生成するための処理を意味する。 In the present specification, machine learning means a process for generating a model that outputs a predicted value for input data.

また、機械学習では、学習データを用いて、モデルを定義するパラメータを更新する学習処理が複数回実行される。なお、学習処理の回数は、ディープラーニングにおけるエポック数に相当する。 Further, in machine learning, learning processing for updating parameters that define a model is executed a plurality of times using training data. The number of learning processes corresponds to the number of epochs in deep learning.

実施例1では、機械学習の失敗予兆を検出するための検出条件が複数設定され、機械学習を行う計算機システムは、複数の検出条件に基づいて機械学習の失敗予兆を検出する。計算機システムは、機械学習の失敗予兆が検出された場合、パラメータを初期化し、機械学習をやり直す。これによって、学習の成功率を効率的かつ迅速に向上できる。また、計算機システムは、機械学習のやり直しに伴う計算時間の増加を防止するために、学習処理の回数(上限値)を調整して総計算時間を一定に保つ手段も提供する。 In the first embodiment, a plurality of detection conditions for detecting a failure sign of machine learning are set, and a computer system that performs machine learning detects a failure sign of machine learning based on the plurality of detection conditions. When a sign of machine learning failure is detected, the computer system initializes the parameters and redoes the machine learning. As a result, the success rate of learning can be improved efficiently and quickly. The computer system also provides a means for adjusting the number of learning processes (upper limit) to keep the total calculation time constant in order to prevent an increase in the calculation time due to re-doing machine learning.

(1)システム構成
まず、実施例1の計算機システムの構成について説明する。図1は、実施例1の計算機システムの構成の一例を示す図である。
(1) System Configuration First, the configuration of the computer system of the first embodiment will be described. FIG. 1 is a diagram showing an example of the configuration of the computer system of the first embodiment.

計算機システムは、一つ以上の計算機100から構成される。図1では、説明を簡単にするために、一つの計算機100から構成される計算機システムを示す。 The computer system is composed of one or more computers 100. FIG. 1 shows a computer system composed of one computer 100 for the sake of simplicity.

計算機100は、CPU(Central Processing Unit)110、主記憶装置111、副記憶装置112、及びインタフェース113を有する。各ハードウェアは内部バスを介して接続される。 The computer 100 has a CPU (Central Processing Unit) 110, a main storage device 111, a sub storage device 112, and an interface 113. Each hardware is connected via an internal bus.

CPU110は、主記憶装置111に格納されるプログラムを実行する。CPU110がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、CPU110が当該モジュールを実現するプログラムを実行していることを示す。 The CPU 110 executes a program stored in the main storage device 111. When the CPU 110 executes processing according to a program, it operates as a functional unit (module) that realizes a specific function. In the following description, when the process is described with the functional unit as the subject, it is shown that the CPU 110 is executing the program that realizes the module.

主記憶装置111は、RAM(Random Access Memory)等のメモリであり、CPU110が実行するプログラム及びプログラムの実行に必要なデータを格納する。 The main storage device 111 is a memory such as a RAM (Random Access Memory), and stores a program executed by the CPU 110 and data necessary for executing the program.

実施例1の主記憶装置111は、学習部120を実現するプログラムを格納し、また、学習データ情報130及びパラメータ情報140を格納する。 The main storage device 111 of the first embodiment stores a program that realizes the learning unit 120, and also stores the learning data information 130 and the parameter information 140.

学習部120は、モデルを生成するための機械学習を実行する。学習部120は、学習失敗検出部121、パラメータ初期化部122、及び計算時間抑制部123を含む。 The learning unit 120 executes machine learning for generating a model. The learning unit 120 includes a learning failure detection unit 121, a parameter initialization unit 122, and a calculation time suppression unit 123.

学習失敗検出部121は、機械学習の失敗予兆を検出するために用いる評価値により定義された検出条件に基づいて、機械学習の失敗予兆を検出する。パラメータ初期化部122は、モデルを定義するパラメータの初期値を設定する。計算時間抑制部123は、機械学習に要する計算時間を抑制する。 The learning failure detection unit 121 detects the failure sign of machine learning based on the detection condition defined by the evaluation value used for detecting the failure sign of machine learning. The parameter initialization unit 122 sets the initial values of the parameters that define the model. The calculation time suppressing unit 123 suppresses the calculation time required for machine learning.

なお、学習部120に含まれる各機能部は、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。 In addition, each functional unit included in the learning unit 120 may combine a plurality of functional units into one functional unit, or may divide one functional unit into a plurality of functional units for each function.

学習データは、機械学習に用いられるデータであり、モデルに入力する入力データと、正解データとから構成される。学習データ情報130は、学習データに含まれる入力データと正解データを結び付け、かつ必要があればミニバッチを構築する等により管理し学習部120において利用できるようにするための情報である。パラメータ情報140は、モデルを定義するパラメータである。なお、パラメータ情報140には、モデルの構造等を定義するデータが格納されてもよい。 The training data is data used for machine learning, and is composed of input data to be input to the model and correct answer data. The learning data information 130 is information for associating the input data included in the learning data with the correct answer data, managing the learning data by constructing a mini-batch if necessary, and making it available to the learning unit 120. Parameter information 140 is a parameter that defines a model. The parameter information 140 may store data that defines the structure of the model and the like.

副記憶装置112は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等の記憶装置であり、データを永続的に格納する。 The sub-storage device 112 is a storage device such as an HDD (Hard Disk Drive) and an SSD (Solid State Drive), and permanently stores data.

インタフェース113は、外部装置と接続し、又は通信するためのインタフェースである。インタフェース113は、例えば、I/Oインタフェース及びネットワークインタフェース等である。計算機100は、ネットワーク105を介して外部記憶装置101と接続するインタフェース113、入出力装置102と接続するインタフェース113、及びリムーバブルメディア103と接続するインタフェース113を有する。なお、計算機100には、ネットワーク105を介して、入出力装置102を有する端末が接続されてもよい。 The interface 113 is an interface for connecting or communicating with an external device. The interface 113 is, for example, an I / O interface, a network interface, or the like. The computer 100 has an interface 113 connected to the external storage device 101 via the network 105, an interface 113 connected to the input / output device 102, and an interface 113 connected to the removable media 103. A terminal having an input / output device 102 may be connected to the computer 100 via the network 105.

外部記憶装置101は、計算機100が扱うデータを格納する記憶領域を提供する装置である。外部記憶装置101と接続するネットワーク105は、例えば、LAN(Local Area Network)及びインターネット等である。なお、本発明はネットワーク105の種別に限定されない。また、ネットワーク105の接続方式は有線又は無線のいずれでもよい。 The external storage device 101 is a device that provides a storage area for storing data handled by the computer 100. The network 105 connected to the external storage device 101 is, for example, a LAN (Local Area Network), the Internet, or the like. The present invention is not limited to the type of network 105. Further, the connection method of the network 105 may be either wired or wireless.

入出力装置102は、ユーザが計算機100を操作するために使用する装置である。入出力装置102は、キーボード、マウス、タッチパネル、及びディスプレイ等から構成される。なお、計算機100は入出力装置を内蔵してもよい。 The input / output device 102 is a device used by the user to operate the computer 100. The input / output device 102 includes a keyboard, a mouse, a touch panel, a display, and the like. The computer 100 may have an input / output device built-in.

リムーバブルメディア103は、計算機100に着脱可能なCD及びDVD等の記憶媒体である。なお、リムーバブルメディア103は、学習データ情報130及びパラメータ情報140を取得する手段の一例を示すものであって、必須の構成ではない。 The removable media 103 is a storage medium such as a CD and a DVD that can be attached to and detached from the computer 100. The removable media 103 shows an example of means for acquiring the learning data information 130 and the parameter information 140, and is not an essential configuration.

主記憶装置111に格納される学習データ情報130及びパラメータ情報140は、副記憶装置112、外部記憶装置101、及びリムーバブルメディア103のいずれかに格納されてもよい。なお、図1の記号(A)、(B)、(C)、(D)は、格納先が異なる情報を区別するためのものである。 The learning data information 130 and the parameter information 140 stored in the main storage device 111 may be stored in any of the sub storage device 112, the external storage device 101, and the removable media 103. The symbols (A), (B), (C), and (D) in FIG. 1 are for distinguishing information having different storage destinations.

この場合、CPU110は、計算機100の起動時又は機械学習の実行時に、副記憶装置112、外部記憶装置101、及びリムーバブルメディア103のいずれかに格納される学習データ情報130及びパラメータ情報140を読み出し、主記憶装置111にロードする。また、計算機100の電源を切る場合、又は、主記憶装置111の空き容量が不足した場合、計算機100は、主記憶装置111から他の記憶装置に情報を移動又はコピーしてもよい。 In this case, the CPU 110 reads out the learning data information 130 and the parameter information 140 stored in any of the sub-storage device 112, the external storage device 101, and the removable media 103 when the computer 100 is started up or machine learning is executed. Load into main storage 111. Further, when the power of the computer 100 is turned off, or when the free space of the main storage device 111 is insufficient, the computer 100 may move or copy information from the main storage device 111 to another storage device.

(2)検出条件の設定
次に、実施例1の計算機システムに設定される検出条件の設定方法について説明する。
(2) Setting of detection conditions Next, a method of setting the detection conditions set in the computer system of the first embodiment will be described.

学習部120は、機械学習の失敗予兆を検出するための条件(検出条件)を設定するための画面を入出力装置102に表示する。図2及び図3は、実施例1の学習部120が表示する設定画面の一例を示す図である。 The learning unit 120 displays a screen for setting a condition (detection condition) for detecting a failure sign of machine learning on the input / output device 102. 2 and 3 are diagrams showing an example of a setting screen displayed by the learning unit 120 of the first embodiment.

図2に示す設定画面200は、予め規定された1つ以上の評価値毎の検出条件を設定するための画面である。本発明が提供する評価値の詳細は、後述する。設定画面200は、目的関数欄201、正解率欄202、パラメータ変化率欄203、及び操作ボタン欄204を含む。 The setting screen 200 shown in FIG. 2 is a screen for setting detection conditions for each of one or more predetermined evaluation values. Details of the evaluation values provided by the present invention will be described later. The setting screen 200 includes an objective function column 201, a correct answer rate column 202, a parameter change rate column 203, and an operation button column 204.

目的関数欄201は、評価値の一つである目的関数の値に関する検出条件を設定するための欄である。目的関数欄201に設定された値は検出条件データとして出力される。 The objective function column 201 is a column for setting a detection condition regarding the value of the objective function, which is one of the evaluation values. The value set in the objective function column 201 is output as detection condition data.

目的関数欄201は、トリガ回数設定欄211、検出条件設定欄212、及びグラフ表示欄213を含む。 The objective function column 201 includes a trigger count setting column 211, a detection condition setting column 212, and a graph display column 213.

グラフ表示欄213は、目標関数の値及び学習回数の関係を示すグラフを表示する欄である。グラフ表示欄213に表示されるグラフは、過去に実行された機械学習の履歴又は現在実行中の機械学習の結果に基づいて表示される。 The graph display column 213 is a column for displaying a graph showing the relationship between the value of the target function and the number of learnings. The graph displayed in the graph display field 213 is displayed based on the history of machine learning executed in the past or the result of machine learning currently being executed.

トリガ回数設定欄211は、目的関数欄201に設定された検出条件に基づいて後述の失敗判定処理(図5参照)を実行するタイミングを規定する学習回数(トリガ回数)を設定するための欄である。 The trigger count setting column 211 is a column for setting the learning count (trigger count) that defines the timing for executing the failure determination process (see FIG. 5) described later based on the detection conditions set in the objective function column 201. be.

検出条件設定欄212は、目的関数を用いて定義される検出条件を設定するための欄である。検出条件設定欄212には、例えば、目的関数及び閾値を用いた条件式が設定される。 The detection condition setting column 212 is a column for setting the detection condition defined by using the objective function. In the detection condition setting field 212, for example, a conditional expression using an objective function and a threshold value is set.

検出条件設定欄212に設定される検出条件を満たす場合、学習失敗検出部121は、機械学習の失敗予兆が検出されたと判定する。 When the detection condition set in the detection condition setting field 212 is satisfied, the learning failure detection unit 121 determines that a failure sign of machine learning has been detected.

なお、ユーザは、トリガ回数設定欄211及び検出条件設定欄212に、直接、値を設定せずに、グラフ表示欄213に表示されるカーソルを操作して、トリガ回数及び閾値を設定してもよい。 The user may set the trigger count and the threshold value by operating the cursor displayed in the graph display column 213 without directly setting the values in the trigger count setting column 211 and the detection condition setting column 212. good.

正解率欄202は、評価値の一つであり、機械学習のうち分類問題の正解率に関する検出条件を設定するための欄である。ここで正解率は、モデルが予測した分類結果が正解と一致する割合を表す。正解率欄202に設定された値は、検出条件データとして出力される。 The correct answer rate column 202 is one of the evaluation values, and is a column for setting a detection condition regarding the correct answer rate of the classification problem in machine learning. Here, the correct answer rate represents the ratio at which the classification result predicted by the model matches the correct answer. The value set in the correct answer rate column 202 is output as detection condition data.

正解率欄202は、トリガ回数設定欄221、検出条件設定欄222、及びグラフ表示欄223を含む。 The correct answer rate column 202 includes a trigger number setting column 221, a detection condition setting column 222, and a graph display column 223.

グラフ表示欄223は、正解率及び学習回数の関係を示すグラフを表示する欄である。グラフ表示欄223に表示されるグラフは、過去に実行された機械学習の履歴又は現在実行中の機械学習の結果に基づいて表示される。 The graph display column 223 is a column for displaying a graph showing the relationship between the correct answer rate and the number of learnings. The graph displayed in the graph display field 223 is displayed based on the history of machine learning executed in the past or the result of machine learning currently being executed.

トリガ回数設定欄221は、正解率欄202に設定された検出条件に基づいて後述の失敗判定処理(図5参照)を実行するタイミングを規定する学習回数(トリガ回数)を設定するための欄である。 The trigger count setting column 221 is a column for setting the learning count (trigger count) that defines the timing for executing the failure determination process (see FIG. 5) described later based on the detection conditions set in the correct answer rate column 202. be.

検出条件設定欄222は、正解率を用いて定義される検出条件を設定するための欄である。検出条件設定欄222には、例えば、正解率及び閾値を用いた条件式が設定される。 The detection condition setting column 222 is a column for setting a detection condition defined by using the correct answer rate. In the detection condition setting column 222, for example, a conditional expression using the correct answer rate and the threshold value is set.

検出条件設定欄222に設定される検出条件を満たす場合、学習失敗検出部121は、機械学習の失敗予兆が検出されたと判定する。 When the detection condition set in the detection condition setting field 222 is satisfied, the learning failure detection unit 121 determines that a failure sign of machine learning has been detected.

なお、ユーザは、トリガ回数設定欄221及び検出条件設定欄222に、直接、値を設定せずに、グラフ表示欄223に表示されるカーソルを操作して、トリガ回数及び閾値を設定してもよい。 The user may set the trigger count and the threshold value by operating the cursor displayed in the graph display column 223 without directly setting the values in the trigger count setting column 221 and the detection condition setting column 222. good.

パラメータ変化率欄203は、評価値の一つであるパラメータ変化率に関する検出条件を設定するための欄である。ここで、パラメータ変化率は、モデルを定義するパラメータの学習前後の変化の程度を表す。パラメータ変化率欄203に設定された値は、検出条件データとして出力される。 The parameter change rate column 203 is a column for setting a detection condition regarding the parameter change rate, which is one of the evaluation values. Here, the parameter change rate represents the degree of change before and after learning the parameters that define the model. The value set in the parameter change rate column 203 is output as detection condition data.

パラメータ変化率欄203は、トリガ回数設定欄231、検出条件設定欄232、及びグラフ表示欄233を含む。 The parameter change rate column 203 includes a trigger number setting column 231, a detection condition setting column 232, and a graph display column 233.

グラフ表示欄233は、パラメータ変化率及び学習回数の関係を示すグラフを表示する欄である。グラフ表示欄233に表示されるグラフは、過去に実行された機械学習の履歴又は現在実行中の機械学習の結果に基づいて表示される。 The graph display column 233 is a column for displaying a graph showing the relationship between the parameter change rate and the number of learnings. The graph displayed in the graph display field 233 is displayed based on the history of machine learning executed in the past or the result of machine learning currently being executed.

トリガ回数設定欄231は、パラメータ変化率欄203に設定された検出条件に基づいて後述の失敗判定処理(図5参照)を実行するタイミングを規定する学習回数(トリガ回数)を設定するための欄である。 The trigger count setting column 231 is a column for setting the learning count (trigger count) that defines the timing for executing the failure determination process (see FIG. 5) described later based on the detection conditions set in the parameter change rate column 203. Is.

検出条件設定欄232は、パラメータ変化率を用いて定義される検出条件を設定するための欄である。検出条件設定欄232には、例えば、パラメータ変化率及び閾値を用いた条件式が設定される。 The detection condition setting column 232 is a column for setting a detection condition defined by using the parameter change rate. In the detection condition setting field 232, for example, a conditional expression using a parameter change rate and a threshold value is set.

検出条件設定欄232に設定される検出条件を満たす場合、学習失敗検出部121は、機械学習の失敗予兆が検出されたと判定する。 When the detection condition set in the detection condition setting field 232 is satisfied, the learning failure detection unit 121 determines that a failure sign of machine learning has been detected.

なお、ユーザは、トリガ回数設定欄231及び検出条件設定欄232に、直接、値を設定せずに、グラフ表示欄233に表示されるカーソルを操作して、トリガ回数及び閾値を設定してもよい。 The user may set the number of triggers and the threshold value by operating the cursor displayed in the graph display field 233 without directly setting the values in the trigger number setting field 231 and the detection condition setting field 232. good.

操作ボタン欄204は、各種操作を行うためのボタンを表示する欄である。操作ボタン欄204は、設定ボタン241及び開始ボタン242を含む。 The operation button column 204 is a column for displaying buttons for performing various operations. The operation button field 204 includes a setting button 241 and a start button 242.

設定ボタン241は、目的関数欄201、正解率欄202、及びパラメータ変化率欄203に設定した検出条件データを含む学習判定情報を計算機100に設定するためのボタンである。設定ボタン241が操作された場合、学習判定情報を含む設定要求が計算機100に出力される。この場合、計算機100は、学習判定情報を主記憶装置111に格納する。 The setting button 241 is a button for setting the learning determination information including the detection condition data set in the objective function column 201, the correct answer rate column 202, and the parameter change rate column 203 in the computer 100. When the setting button 241 is operated, a setting request including learning determination information is output to the computer 100. In this case, the computer 100 stores the learning determination information in the main storage device 111.

開始ボタン242は、機械学習の開始を指示するためのボタンである。開始ボタン242が操作された場合、開始要求が計算機100に出力される。 The start button 242 is a button for instructing the start of machine learning. When the start button 242 is operated, a start request is output to the computer 100.

図3に示す設定画面300は、一つ以上の評価値から構成される評価値群毎の検出条件を設定するための画面である。設定画面300は、検出条件欄301及び操作ボタン欄302を含む。 The setting screen 300 shown in FIG. 3 is a screen for setting detection conditions for each evaluation value group composed of one or more evaluation values. The setting screen 300 includes a detection condition column 301 and an operation button column 302.

操作ボタン欄302は、各種操作を行うためのボタンを表示する欄である。操作ボタン欄302は、追加ボタン331、設定ボタン332、及び開始ボタン333を含む。 The operation button column 302 is a column for displaying buttons for performing various operations. The operation button column 302 includes an add button 331, a setting button 332, and a start button 333.

追加ボタン331は、検出条件欄301を追加するための操作ボタンである。追加ボタン331が追加された場合、設定画面300に検出条件欄301が追加される。 The add button 331 is an operation button for adding the detection condition column 301. When the add button 331 is added, the detection condition column 301 is added to the setting screen 300.

設定ボタン332及び開始ボタン333は、設定ボタン241及び開始ボタン242と同一のものである。 The setting button 332 and the start button 333 are the same as the setting button 241 and the start button 242.

検出条件欄301は、トリガ回数設定欄311、追加ボタン312、及び検出条件設定欄313を含む。検出条件欄301に設定された値は、検出条件データとして出力される。 The detection condition column 301 includes a trigger number setting column 311, an additional button 312, and a detection condition setting column 313. The value set in the detection condition column 301 is output as the detection condition data.

トリガ回数設定欄311は、検出条件欄301に設定された検出条件に基づいて後述の失敗判定処理(図5参照)を実行するタイミングを規定する学習回数(トリガ回数)を設定するための欄である。 The trigger number setting column 311 is a column for setting the learning number (trigger number) that defines the timing for executing the failure determination process (see FIG. 5) described later based on the detection condition set in the detection condition column 301. be.

追加ボタン312は、検出条件設定欄313に条件式設定欄321を追加するためのボタンである。検出条件設定欄313に条件式設定欄321が存在しない状態で追加ボタン312が操作された場合、検出条件設定欄313に条件式設定欄321が追加される。検出条件設定欄313に条件式設定欄321が一つ以上存在する状態で追加ボタン312が操作された場合、検出条件設定欄313に条件式設定欄321及び論理演算子設定欄322が追加される。 The add button 312 is a button for adding the conditional expression setting field 321 to the detection condition setting field 313. If the add button 312 is operated without the conditional expression setting field 321 in the detection condition setting field 313, the conditional expression setting field 321 is added to the detection condition setting field 313. If the add button 312 is operated while one or more conditional expression setting fields 321 exist in the detection condition setting field 313, the conditional expression setting field 321 and the logical operator setting field 322 are added to the detection condition setting field 313. ..

条件式設定欄321は、機械学習の失敗予兆の現れを判定するための評価値の条件式を設定するための欄である。論理演算子設定欄322は、複数の条件式の適用方法を設定するための欄である。図3の論理演算子設定欄322は、「AND」及び「OR」等を選択するプルダウンが表示される。条件式設定欄321に値を設定することによって、少なくとも一つの評価値を用いて定義される検出条件を設定することができる。なお、AND指定された条件は必須、OR指定された条件はどれか1つが満たされればよいものとする。 The conditional expression setting column 321 is a column for setting a conditional expression of evaluation values for determining the appearance of a failure sign of machine learning. The logical operator setting field 322 is a field for setting an application method of a plurality of conditional expressions. In the logical operator setting field 322 of FIG. 3, a pull-down for selecting "AND", "OR", or the like is displayed. By setting a value in the conditional expression setting field 321, it is possible to set a detection condition defined by using at least one evaluation value. It is assumed that the condition specified by AND is indispensable and that any one of the conditions specified by OR is satisfied.

検出条件設定欄313に設定された検出条件を満たす場合、学習失敗検出部121は、機械学習の失敗予兆が検出されたと判定する。 When the detection condition set in the detection condition setting field 313 is satisfied, the learning failure detection unit 121 determines that a failure sign of machine learning has been detected.

設定画面200、300のどちらの設定ボタンを用いた場合であっても、トリガ回数及び検出条件から構成される検出条件データを含む学習判定情報が計算機100に設定される。 Regardless of whether the setting button of the setting screen 200 or 300 is used, the learning determination information including the detection condition data composed of the number of triggers and the detection condition is set in the computer 100.

(3)評価値
実施例1の計算機100は、モデルに適した評価値の振る舞いを監視することによって機械学習の失敗予兆を検出する。実施例1では、目的関数、正解率、及びパラメータ変化率を評価値として採用する。これらの評価値を採用する理由は次の通りである。
(3) Evaluation value The computer 100 of the first embodiment detects a failure sign of machine learning by monitoring the behavior of the evaluation value suitable for the model. In the first embodiment, the objective function, the correct answer rate, and the parameter change rate are adopted as evaluation values. The reasons for adopting these evaluation values are as follows.

従来技術では、目的関数の変化が十分小さくなった時点で機械学習を終了したと見なされる。すなわち、目的関数は、学習が停滞しているか否かを判定するための評価値として最も基本的なものと考えられる。なお、判定方法は、目的関数の値そのものではなく、パラメータの初期値が設定されたときの目的関数の値、又は、1回若しくは少数回、学習処理が実行された後の目的関数の値と、現在の目的関数の値との比に基づいて設定されてもよい。 In the prior art, machine learning is considered to have ended when the change in the objective function is small enough. That is, the objective function is considered to be the most basic evaluation value for determining whether or not learning is stagnant. The determination method is not the value of the objective function itself, but the value of the objective function when the initial value of the parameter is set, or the value of the objective function after the learning process is executed once or a few times. , May be set based on the ratio to the value of the current objective function.

クラスの分類するためのモデルの場合、機械学習の失敗予兆を検出するために分類結果の正解率を監視することも有効である。図4に示すように、初期値P0は、実用的な精度を有さないモデルP2が生成されてしまう初期値であり、初期値P1は、実用的な精度を有するモデルP3が生成される初期値である。なお、図4における値Fは、所望の精度が実現できる損失関数の値を表す。いずれの初期値が設定された場合でも、目的関数の値は学習処理を実行することによって改善されるため、目的関数の監視だけでは、機械学習の失敗予兆を検出することが難しい。一方、正解率の違いは顕著に表れる。したがって、正解率を評価値に採用するのは有効であると考えられる。 In the case of a model for classifying classes, it is also effective to monitor the accuracy rate of classification results in order to detect signs of machine learning failure. As shown in FIG. 4, the initial value P0 is an initial value in which a model P2 having no practical accuracy is generated, and the initial value P1 is an initial value in which a model P3 having practical accuracy is generated. The value. The value F in FIG. 4 represents the value of the loss function that can achieve the desired accuracy. Regardless of which initial value is set, the value of the objective function is improved by executing the learning process, so that it is difficult to detect the failure sign of machine learning only by monitoring the objective function. On the other hand, the difference in the correct answer rate is remarkable. Therefore, it is considered effective to adopt the correct answer rate as the evaluation value.

モデルを表現する関数f(x)の最終的な出力が、ディープラーニングで広く用いられるReLU関数を介して出力される場合を考える。なお、ReLU関数は式(1)で与えられる。 Consider the case where the final output of the function f (x) representing the model is output via the ReLU function widely used in deep learning. The ReLU function is given by Eq. (1).

Figure 0007050028000001
Figure 0007050028000001

このとき、学習処理によって関数f(x)の出力が改善されても関数f(x)の値が0以下の場合、出力r(f(x))は0のままである。そのため、関数f(x)の値が0より大きくなって初めて、目的関数及び正解率が変化する。つまり、目的関数及び正解率を監視しても学習の進み具合を見落とす可能性がある。そこで、パラメータの変化率を評価値として用いる。パラメータの変化率は様々考えられるが、その一例として以下の二つを示す。 At this time, even if the output of the function f (x) is improved by the learning process, if the value of the function f (x) is 0 or less, the output r (f (x)) remains 0. Therefore, the objective function and the correct answer rate change only when the value of the function f (x) becomes larger than 0. In other words, even if the objective function and the accuracy rate are monitored, the progress of learning may be overlooked. Therefore, the rate of change of the parameter is used as the evaluation value. The rate of change of the parameters can be various, and the following two are shown as examples.

(例1)学習処理の前後のパラメータの値の合計値を算出し、これらの合計値の比をパラメータの変化率とする。なお、パラメータの値が負である可能性もあるため、パラメータの値の絶対値の合計値を算出することが望ましい。 (Example 1) The total value of the parameter values before and after the learning process is calculated, and the ratio of these total values is used as the parameter change rate. Since the parameter value may be negative, it is desirable to calculate the total value of the absolute values of the parameter values.

(例2)学習処理の前後のパラメータの値の変化量の合計値と、前回の学習処理の前後のパラメータの値の変化率の合計値との比をパラメータの変化率とする。なお、パラメータの値の変化量が負である可能性もあるため、変化量の絶対値の合計値を算出することが望ましい。 (Example 2) The ratio of the total value of the change amount of the parameter value before and after the learning process to the total value of the change rate of the parameter value before and after the previous learning process is defined as the parameter change rate. Since the amount of change in the parameter value may be negative, it is desirable to calculate the total value of the absolute values of the amount of change.

(4)処理の詳細
次に、機械学習開始要求を受信した場合に実行する処理について説明する。図5は、実施例1の計算機システムが実行する機械学習を説明するフローチャートである。
(4) Details of processing Next, the processing to be executed when the machine learning start request is received will be described. FIG. 5 is a flowchart illustrating machine learning executed by the computer system of the first embodiment.

以下の説明では、機械学習における学習処理の実行回数の上限値Nmaxは予め設定されているものとする。 In the following description, it is assumed that the upper limit value Nmax of the number of executions of the learning process in machine learning is set in advance.

まず、学習部120は、変数N、n、c_iを初期化する(ステップS101)。 First, the learning unit 120 initializes the variables N, n, and c_i (step S101).

具体的には、学習部120は初期値として、変数NをNmax、nを0にそれぞれ設定する。また、学習部120は、変数c_iに、i番目の評価値に対応するトリガ回数設定欄712に設定された値を設定する。ここで、変数Nはその時点で進行している学習処理を実行すべき回数の上限を表す変数であり、変数nはパラメータの初期化後に学習処理を実行した回数を表す変数である。変数c_iは、i番目の評価値に対応するトリガ回数を表す変数である。 Specifically, the learning unit 120 sets the variable N to Nmax and n to 0 as initial values. Further, the learning unit 120 sets the variable c_i to the value set in the trigger number setting field 712 corresponding to the i-th evaluation value. Here, the variable N is a variable representing the upper limit of the number of times the learning process being executed at that time should be executed, and the variable n is a variable representing the number of times the learning process is executed after the parameter is initialized. The variable c_i is a variable representing the number of triggers corresponding to the i-th evaluation value.

次に、学習部120のパラメータ初期化部122はパラメータの初期値を設定する(ステップS102)。 Next, the parameter initialization unit 122 of the learning unit 120 sets the initial value of the parameter (step S102).

このとき、学習部120のパラメータ初期化部122は、パラメータ情報140にパラメータの初期値を格納する。なお、パラメータの初期値はランダムに設定されるものとする。 At this time, the parameter initialization unit 122 of the learning unit 120 stores the initial value of the parameter in the parameter information 140. The initial values of the parameters shall be set randomly.

次に、学習部120は、学習データを用いて学習処理を実行し、パラメータを更新する(ステップS103)。 Next, the learning unit 120 executes the learning process using the learning data and updates the parameters (step S103).

このとき、学習部120は、パラメータの更新結果をパラメータ情報140に格納する。 At this time, the learning unit 120 stores the parameter update result in the parameter information 140.

次に、学習部120は、変数nを更新する(ステップS104)。 Next, the learning unit 120 updates the variable n (step S104).

具体的には、学習部120は、変数nに1を加算した値を変数nに設定する。 Specifically, the learning unit 120 sets the variable n as a value obtained by adding 1 to the variable n.

次に、学習部120は、終了条件を満たすか否かを判定する(ステップS105)。 Next, the learning unit 120 determines whether or not the end condition is satisfied (step S105).

具体的には、学習部120は、変数nがN以上となった場合、終了条件を満たすと判定する。 Specifically, the learning unit 120 determines that the end condition is satisfied when the variable n is N or more.

終了条件を満たすと判定された場合、学習部120は機械学習を終了する。 When it is determined that the end condition is satisfied, the learning unit 120 ends machine learning.

終了条件を満たさないと判定された場合、学習部120は各検出条件について、検出条件データに含まれるトリガ回数c_iが変数nに一致する検出条件データが存在するか否かを判定する(ステップS106)。なお、iは検出条件データを識別する添字である。 When it is determined that the end condition is not satisfied, the learning unit 120 determines for each detection condition whether or not there is detection condition data in which the number of triggers c_i included in the detection condition data matches the variable n (step S106). ). Note that i is a subscript that identifies the detection condition data.

検出条件データに含まれるトリガ回数c_iが変数nに一致する検出条件データが存在しないと判定された場合、学習部120は、ステップS103に戻り、同様の処理を実行する。 When it is determined that the detection condition data whose trigger number c_i included in the detection condition data matches the variable n does not exist, the learning unit 120 returns to step S103 and executes the same process.

検出条件データに含まれるトリガ回数c_iが変数nに一致する検出条件データが存在すると判定された場合、学習部120の学習失敗検出部121は、当該検出条件データに基づいて失敗判定処理を実行する(ステップS107)。 When it is determined that the detection condition data whose trigger number c_i included in the detection condition data matches the variable n exists, the learning failure detection unit 121 of the learning unit 120 executes the failure determination process based on the detection condition data. (Step S107).

具体的には、学習失敗検出部121は、検出条件データに含まれる検索条件に用いられる評価値を算出する。学習失敗検出部121は、算出された評価値に基づいて、検出条件データに設定された検出条件を満たすか否かを判定する。 Specifically, the learning failure detection unit 121 calculates the evaluation value used for the search condition included in the detection condition data. The learning failure detection unit 121 determines whether or not the detection condition set in the detection condition data is satisfied based on the calculated evaluation value.

設定画面200を用いて設定された検出条件データの場合、学習失敗検出部121は、例えば、目的関数の値が閾値より小さいか否か、正解率が閾値より小さいか否か、又は変化率が小さいか否かを判定する。学習失敗検出部121は、目的関数の値が閾値より小さい場合、正解率が閾値より小さい場合、又は変化率が小さい場合、検出条件を満たすと判定する。 In the case of the detection condition data set using the setting screen 200, the learning failure detection unit 121 may, for example, determine whether the value of the objective function is smaller than the threshold value, whether the correct answer rate is smaller than the threshold value, or the rate of change. Determine if it is small. The learning failure detection unit 121 determines that the detection condition is satisfied when the value of the objective function is smaller than the threshold value, the correct answer rate is smaller than the threshold value, or the change rate is small.

設定画面300を用いて設定された検出条件データの場合、学習失敗検出部121は、各評価値の条件式の判定結果の組合せに基づいて、検出条件を満たすか否かを判定する。例えば、「検出条件2」に対応する検出条件データの場合、学習失敗検出部121は、正解率が閾値より小さい、又は、変化率が閾値より小さい場合、検出条件を満たすと判定する。 In the case of the detection condition data set by using the setting screen 300, the learning failure detection unit 121 determines whether or not the detection condition is satisfied based on the combination of the determination results of the conditional expressions of the evaluation values. For example, in the case of the detection condition data corresponding to the "detection condition 2", the learning failure detection unit 121 determines that the detection condition is satisfied when the correct answer rate is smaller than the threshold value or the change rate is smaller than the threshold value.

次に、学習部120の学習失敗検出部121は、失敗判定処理の結果に基づいて、機械学習の失敗予兆が検出されたか否かを判定する(ステップS108)。 Next, the learning failure detection unit 121 of the learning unit 120 determines whether or not a failure sign of machine learning has been detected based on the result of the failure determination process (step S108).

具体的には、学習失敗検出部121は、検出条件を満たす場合、機械学習の失敗予兆が検出されたと判定する。 Specifically, the learning failure detection unit 121 determines that a machine learning failure sign has been detected if the detection condition is satisfied.

機械学習の失敗予兆が検出されていないと判定された場合、学習部120は、ステップS103に戻り、同様の処理を実行する。 If it is determined that the machine learning failure sign has not been detected, the learning unit 120 returns to step S103 and executes the same process.

機械学習の失敗予兆が検出されたと判定された場合、学習部120のパラメータ初期化部122は、パラメータに新たな初期値を設定する(ステップS109)。 When it is determined that the failure sign of machine learning is detected, the parameter initialization unit 122 of the learning unit 120 sets a new initial value in the parameter (step S109).

このとき、学習部120のパラメータ初期化部122は、パラメータ情報140にパラメータの初期値を格納する。なお、パラメータの初期値はランダムに設定されるものとする。 At this time, the parameter initialization unit 122 of the learning unit 120 stores the initial value of the parameter in the parameter information 140. The initial values of the parameters shall be set randomly.

次に、学習部120の計算時間抑制部123は、上限値NをN-nに更新する(ステップS110)。また、学習部120の計算時間抑制部123は、変数nに0を設定し(ステップS111)、その後、ステップS103に戻り、同様の処理を実行する。 Next, the calculation time suppressing unit 123 of the learning unit 120 updates the upper limit value N to Nn (step S110). Further, the calculation time suppressing unit 123 of the learning unit 120 sets the variable n to 0 (step S111), then returns to step S103 and executes the same process.

以上の処理により、機械学習における学習処理の総実行回数が元々の上限値Nmaxを超えないように制御される。これによって、機械学習に要する計算時間を抑制することができる。 By the above processing, the total number of executions of the learning process in machine learning is controlled so as not to exceed the original upper limit value Nmax. As a result, the calculation time required for machine learning can be suppressed.

(5)適用例
次に、実施例1の適用例について説明する。
(5) Application Example Next, an application example of Example 1 will be described.

(適用例1)機械学習のアルゴリズムとしてディープラーニングを採用する。なお、目的関数として損失関数が用いられる。 (Application example 1) Deep learning is adopted as an algorithm for machine learning. A loss function is used as the objective function.

(適用例2)機械学習のアルゴリズムとしてEMアルゴリズムを採用する。例えば、EMアルゴリズムを用いて正規混合分布を学習する場合、実施例1に示すようにEMアルゴリズムを変更することによって、効率的な機械学習を実現できる。なお、目的関数としては通常、対数尤度が用いられる。 (Application example 2) An EM algorithm is adopted as a machine learning algorithm. For example, when learning a normal mixture distribution using an EM algorithm, efficient machine learning can be realized by changing the EM algorithm as shown in Example 1. The log-likelihood is usually used as the objective function.

(適用例3)学習データをDNA配列に由来する数値ベクトルとする。DNA配列を数値ベクトルに変換する方法は様々な方法が考えられる。ここでは、one hot encodingと呼ばれる例について述べる。one hot encodingでは、各塩基を3つの0及び1つの1の並びで表現する。1の位置は塩基種により異なる。0と1の並べ方を、例えばA=1000、T=0100、G=0010、C=0001とする場合、配列ATGCは1000010000100001と表現できる。DNA配列を数値から成るベクトルとして入力することで、ゲノム上で特定の機能を持つ配列、例えばプロモータ領域を認識するモデルを生成できる。 (Application example 3) The learning data is a numerical vector derived from a DNA sequence. Various methods can be considered for converting a DNA sequence into a numerical vector. Here, an example called one hot encoding will be described. In one hot encoding, each base is represented by a sequence of three 0s and one 1. The position of 1 differs depending on the base type. When the arrangement of 0s and 1s is, for example, A = 1000, T = 0100, G = 0010, C = 0001, the array ATGC can be expressed as 10001000100001. By inputting a DNA sequence as a vector consisting of numerical values, it is possible to generate a model that recognizes a sequence having a specific function on the genome, for example, a promoter region.

(6)実施例1の特徴及び効果
次に、実施例1で説明した計算機システムが実行する機械学習の特徴及び効果について説明する。
(6) Features and Effects of Example 1 Next, the features and effects of machine learning executed by the computer system described in Example 1 will be described.

実施例1の計算機システムは、少なくとも一つの評価値により定義される複数の検出条件に基づいて、機械学習の失敗予兆を検出する。複数の検出条件を用いることによって、様々なモデルを生成する機械学習の失敗予兆を精度よく検出できる。 The computer system of the first embodiment detects a failure sign of machine learning based on a plurality of detection conditions defined by at least one evaluation value. By using multiple detection conditions, it is possible to accurately detect signs of failure in machine learning that generate various models.

また、機械学習の失敗予兆の発生を判定するタイミングを検出条件毎に設定できる。タイミングを小さくすることによって、早期に機械学習の失敗予兆を検出できる。また、検出条件毎に失敗判定処理のタイミングを変えることによって、失敗予兆の検出精度の向上、及び処理負荷を低減による処理の高速化が可能となる。 In addition, the timing for determining the occurrence of a failure sign of machine learning can be set for each detection condition. By reducing the timing, it is possible to detect signs of machine learning failure at an early stage. Further, by changing the timing of the failure determination processing for each detection condition, it is possible to improve the detection accuracy of the failure sign and speed up the processing by reducing the processing load.

また、再学習は数値パラメータの初期化のみにより行われるため、ニューラルネットワーク以外の機械学習方式やモデルにも適用することができる。 Moreover, since re-learning is performed only by initializing numerical parameters, it can be applied to machine learning methods and models other than neural networks.

また、これまでの学習処理の実行回数を加味して、学習処理の反復回数の上限値(変数N)を調整することで、機械学習に要する計算時間の増大を抑制することができる。 Further, by adjusting the upper limit value (variable N) of the number of iterations of the learning process in consideration of the number of executions of the learning process so far, it is possible to suppress an increase in the calculation time required for machine learning.

実施例2では、学習回数の上限値Nを考慮した検出条件を設定する点が異なる。例えば、上限値が一定値より大きい場合、判定タイミングを長くすることによって、機械学習の失敗予兆の検出精度を高めることができる。また、上限値が一定値より小さい場合、判定タイミングを短くすることによって、早期に機械学習の失敗予兆を検出しつつ、学習回数を確保することができる。以下、実施例1との差異を中心に実施例2について説明する。 The second embodiment is different in that the detection condition is set in consideration of the upper limit value N of the number of learnings. For example, when the upper limit value is larger than a certain value, the detection accuracy of the failure sign of machine learning can be improved by lengthening the determination timing. Further, when the upper limit value is smaller than a certain value, by shortening the determination timing, it is possible to secure the number of learnings while detecting the failure sign of machine learning at an early stage. Hereinafter, Example 2 will be described with a focus on the differences from Example 1.

実施例2の計算機システムの構成は実施例1と同一である。実施例2の計算機100のハードウェア構成及びソフトウェア構成は実施例1と同一である。実施例2では、設定する検出条件データが異なる。 The configuration of the computer system of the second embodiment is the same as that of the first embodiment. The hardware configuration and software configuration of the computer 100 of the second embodiment are the same as those of the first embodiment. In the second embodiment, the detection condition data to be set is different.

図6及び図7は、実施例2の学習部120が表示する設定画面の一例を示す図である。 6 and 7 are diagrams showing an example of a setting screen displayed by the learning unit 120 of the second embodiment.

図6に示す設定画面600は、予め規定された評価値毎の検出条件を設定するための画面である。設定画面600は、目的関数欄601、正解率欄602、パラメータ変化率欄603、及び操作ボタン欄604を含む。 The setting screen 600 shown in FIG. 6 is a screen for setting detection conditions for each evaluation value defined in advance. The setting screen 600 includes an objective function column 601, a correct answer rate column 602, a parameter change rate column 603, and an operation button column 604.

目的関数欄601は、評価値の一つである目的関数の値に関する検出条件を設定するための欄である。 The objective function column 601 is a column for setting a detection condition regarding the value of the objective function, which is one of the evaluation values.

目的関数欄601は、追加ボタン611及び検出条件設定テーブル612を含む。なお、目的関数欄601は、実施例1のようにグラフを表示する欄を設けてもよい。 The objective function column 601 includes an add button 611 and a detection condition setting table 612. The objective function column 601 may be provided with a column for displaying a graph as in the first embodiment.

追加ボタン611は、検出条件設定テーブル612にエントリを追加するためのボタンである。 The add button 611 is a button for adding an entry to the detection condition setting table 612.

検出条件設定テーブル612は、検出条件を設定するためのテーブルである。検出条件設定テーブル612は、適用条件621、トリガ回数622、及び検出条件623から構成されるエントリを含む。一つのエントリが一つの検出条件データに対応する。 The detection condition setting table 612 is a table for setting detection conditions. The detection condition setting table 612 includes an entry composed of the application condition 621, the number of triggers 622, and the detection condition 623. One entry corresponds to one detection condition data.

適用条件621は、適用する検索条件を選択するために、上限値Nに対する条件を格納するフィールドである。後述するように、実施例2では、適用条件621を満たす検出条件を用いて失敗判定処理が実行される。 The application condition 621 is a field for storing the condition for the upper limit value N in order to select the search condition to be applied. As will be described later, in the second embodiment, the failure determination process is executed using the detection condition satisfying the application condition 621.

トリガ回数622は、目的関数欄601に設定された検出条件に基づいて失敗判定処理を実行するタイミングを規定する学習回数(トリガ回数)を格納するフィールドである。 The trigger count 622 is a field for storing the learning count (trigger count) that defines the timing for executing the failure determination process based on the detection condition set in the objective function column 601.

検出条件623は、目的関数を用いて定義される検出条件を格納するフィールドである。検出条件623には、例えば、目的関数及び閾値を用いた条件式が格納される。 The detection condition 623 is a field for storing the detection condition defined by using the objective function. In the detection condition 623, for example, a conditional expression using an objective function and a threshold value is stored.

実施例2では、上限値の範囲毎に、目的関数を用いて定義される検出条件が設定される。 In the second embodiment, the detection conditions defined by using the objective function are set for each range of the upper limit value.

正解率欄602は、評価値の一つである正解率に関する検出条件を設定するための欄である。 The correct answer rate column 602 is a column for setting a detection condition regarding the correct answer rate, which is one of the evaluation values.

正解率欄602は、追加ボタン631及び検出条件設定テーブル632を含む。なお、正解率欄602は、実施例1のようにグラフを表示する欄を設けてもよい。 The correct answer rate column 602 includes an additional button 631 and a detection condition setting table 632. The correct answer rate column 602 may be provided with a column for displaying a graph as in the first embodiment.

追加ボタン631は、検出条件設定テーブル632にエントリを追加するためのボタンである。 The add button 631 is a button for adding an entry to the detection condition setting table 632.

検出条件設定テーブル632は、検出条件データを設定するためのテーブルである。検出条件設定テーブル632は、適用条件641、トリガ回数642、及び検出条件643から構成されるエントリを含む。一つのエントリが一つの検出条件データに対応する。 The detection condition setting table 632 is a table for setting the detection condition data. The detection condition setting table 632 includes an entry composed of the application condition 641, the number of triggers 642, and the detection condition 643. One entry corresponds to one detection condition data.

適用条件641は、適用する検出条件を選択するために、上限値Nに対する条件を格納するフィールドである。後述するように、実施例2では、適用条件641を満たす検出条件を用いて失敗判定処理が実行される。 The application condition 641 is a field for storing the condition for the upper limit value N in order to select the detection condition to be applied. As will be described later, in the second embodiment, the failure determination process is executed using the detection condition satisfying the application condition 641.

トリガ回数642は、正解率欄602に設定された検出条件に基づいて失敗判定処理を実行するタイミングを規定する学習回数(トリガ回数)を格納するフィールドである。 The trigger number 642 is a field for storing the learning number (trigger number) that defines the timing for executing the failure determination process based on the detection condition set in the correct answer rate column 602.

検出条件643は、正解率を用いて定義される検出条件を格納するフィールドである。検出条件643には、例えば、正解率及び閾値を用いた条件式が格納される。 The detection condition 643 is a field for storing the detection condition defined by using the correct answer rate. In the detection condition 643, for example, a conditional expression using the correct answer rate and the threshold value is stored.

実施例2では、上限値の範囲毎に、正解率を用いて定義される検出条件が設定される。 In the second embodiment, the detection condition defined by using the correct answer rate is set for each range of the upper limit value.

パラメータ変化率欄603は、評価値の一つであるパラメータ変化率に関する検出条件を設定するための欄である。 The parameter change rate column 603 is a column for setting a detection condition regarding the parameter change rate, which is one of the evaluation values.

パラメータ変化率欄603は、追加ボタン651及び検出条件設定テーブル652を含む。なお、パラメータ変化率欄603は、実施例1のようにグラフを表示する欄を設けてもよい。 The parameter change rate column 603 includes an additional button 651 and a detection condition setting table 652. The parameter change rate column 603 may be provided with a column for displaying a graph as in the first embodiment.

追加ボタン651は、検出条件設定テーブル652にエントリを追加するためのボタンである。 The add button 651 is a button for adding an entry to the detection condition setting table 652.

検出条件設定テーブル652は、検出条件データを設定するためのテーブルである。検出条件設定テーブル652は、適用条件661、トリガ回数662、及び検出条件663から構成されるエントリを含む。一つのエントリが一つの検出条件データに対応する。 The detection condition setting table 652 is a table for setting the detection condition data. The detection condition setting table 652 includes an entry composed of the application condition 661, the number of triggers 662, and the detection condition 663. One entry corresponds to one detection condition data.

適用条件661は、適用する検出条件を選択するために、上限値Nに対する条件を格納するフィールドである。後述するように、実施例2では、適用条件661を満たす検出条件を用いて失敗判定処理が実行される。 The application condition 661 is a field for storing the condition for the upper limit value N in order to select the detection condition to be applied. As will be described later, in the second embodiment, the failure determination process is executed using the detection condition satisfying the application condition 661.

トリガ回数662は、パラメータ変化率欄603に設定された検出条件に基づいて失敗判定処理を実行するタイミングを規定する学習回数(トリガ回数)を格納するフィールドである。 The trigger number 662 is a field for storing the learning number (trigger number) that defines the timing for executing the failure determination process based on the detection condition set in the parameter change rate column 603.

検出条件663は、パラメータ変化率を用いて定義される検出条件を格納するフィールドである。検出条件643には、例えば、パラメータ変化率及び閾値を用いた条件式が格納される。 The detection condition 663 is a field for storing the detection condition defined by using the parameter change rate. In the detection condition 643, for example, a conditional expression using a parameter change rate and a threshold value is stored.

実施例2では、上限値の範囲毎に、パラメータ変化率を用いて定義される検出条件が設定される。 In the second embodiment, the detection condition defined by using the parameter change rate is set for each range of the upper limit value.

操作ボタン欄604は、操作ボタン欄204と同一の欄であるため、説明を省略する。 Since the operation button column 604 is the same column as the operation button column 204, the description thereof will be omitted.

図7に示す設定画面700は、評価値群毎の検出条件を設定するための画面である。設定画面700は、検出条件欄701及び操作ボタン欄702を含む。 The setting screen 700 shown in FIG. 7 is a screen for setting detection conditions for each evaluation value group. The setting screen 700 includes a detection condition column 701 and an operation button column 702.

操作ボタン欄702の追加ボタン731、設定ボタン732、及び開始ボタン733は、操作ボタン欄302の追加ボタン331、設定ボタン332、及び開始ボタン333と同一のものである。 The addition button 731, the setting button 732, and the start button 733 of the operation button column 702 are the same as the addition button 331, the setting button 332, and the start button 333 of the operation button column 302.

検出条件欄701は、適用条件設定欄711、トリガ回数設定欄712、追加ボタン713、及び検出条件設定欄714を含む。検出条件欄701に設定された値は、検出条件データとして出力される。 The detection condition column 701 includes an application condition setting column 711, a trigger number setting column 712, an add button 713, and a detection condition setting column 714. The value set in the detection condition column 701 is output as the detection condition data.

適用条件設定欄711は、検出条件を選択するために、上限値に対する条件を設定するための欄である。後述するように、実施例2では、適用条件設定欄711を満たす検出条件を用いて失敗判定処理が実行される。 The applicable condition setting column 711 is a column for setting a condition for the upper limit value in order to select a detection condition. As will be described later, in the second embodiment, the failure determination process is executed using the detection condition satisfying the application condition setting field 711.

トリガ回数設定欄712及び追加ボタン713は、トリガ回数設定欄311及び追加ボタン312と同一のものであるため、説明を省略する。また、検出条件設定欄714の条件式設定欄721及び論理演算子設定欄722は、検出条件設定欄313の条件式設定欄321及び論理演算子設定欄322と同一のものであるため、説明を省略する。 Since the trigger count setting field 712 and the add button 713 are the same as the trigger count setting field 311 and the add button 312, the description thereof will be omitted. Further, the conditional expression setting column 721 and the logical operator setting column 722 of the detection condition setting column 714 are the same as the conditional expression setting column 321 and the logical operator setting column 322 of the detection condition setting column 313. Omit.

設定画面200、300のどちらを用いた場合であっても、適用条件、トリガ回数、及び検出条件から構成される検出条件データを含む学習判定情報が計算機100に設定される。 Regardless of which of the setting screens 200 and 300 is used, the learning determination information including the detection condition data including the application condition, the number of triggers, and the detection condition is set in the computer 100.

図8は、実施例2の計算機システムが実行する機械学習を説明するフローチャートである。 FIG. 8 is a flowchart illustrating machine learning executed by the computer system of the second embodiment.

以下の説明では、機械学習における学習処理の実行回数の上限値Nmaxは予め設定されているものとする。 In the following description, it is assumed that the upper limit value Nmax of the number of executions of the learning process in machine learning is set in advance.

ステップS101及びステップS102の処理が実行された後、学習部120は、学習判定情報から適用する検出条件データを選択する(ステップS151)。 After the processes of steps S101 and S102 are executed, the learning unit 120 selects the detection condition data to be applied from the learning determination information (step S151).

具体的には、学習部120は、現在の上限値Nに基づいて、適用条件を満たす検出条件データを選択する。 Specifically, the learning unit 120 selects detection condition data satisfying the applicable conditions based on the current upper limit value N.

ステップS101、ステップS102、ステップS103からステップS106、ステップS108からステップS111の処理は、実施例1と同一である。ただし、ステップS106で参照するc_iの値は、設定画面600又は700での設定及びパラメータ初期化時のNの値に基づき、ステップS101及びステップS110で設定するものとする。 The processing of step S101, step S102, step S103 to step S106, and step S108 to step S111 is the same as that of the first embodiment. However, the value of c_i referred to in step S106 shall be set in steps S101 and S110 based on the value of N at the time of setting on the setting screen 600 or 700 and parameter initialization.

実施例2のステップS107では、学習失敗検出部121は、ステップS151で選択された検出条件データを用いて失敗判定処理を実行する。具体的な処理は実施例1と同一であるため説明を省略する。 In step S107 of the second embodiment, the learning failure detection unit 121 executes the failure determination process using the detection condition data selected in step S151. Since the specific processing is the same as that of the first embodiment, the description thereof will be omitted.

実施例2の計算機システムは、上限値に応じて、学習の失敗予兆の判定タイミングを調整できる。 The computer system of the second embodiment can adjust the determination timing of the learning failure sign according to the upper limit value.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。 The present invention is not limited to the above-described embodiment, and includes various modifications. Further, for example, the above-described embodiment describes the configuration in detail in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to the one including all the described configurations. Further, it is possible to add, delete, or replace a part of the configuration of each embodiment with other configurations.

また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、SSD(Solid State Drive)、CD-R、DVD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。 Further, each of the above configurations, functions, processing units, processing means and the like may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. The present invention can also be realized by a software program code that realizes the functions of the examples. In this case, a storage medium in which the program code is recorded is provided to the computer, and the processor included in the computer reads out the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the program code itself and the storage medium storing it constitute the present invention. Examples of the storage medium for supplying such a program code include a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), a CD-R, a DVD-R, a magnetic tape, and a non-volatile material. Memory card, ROM, etc. are used.

また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、Perl、Python、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。 In addition, the program code that realizes the functions described in this embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C ++, Perl, Python, and Java (registered trademark).

さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。 Further, by distributing the program code of the software that realizes the functions of the embodiment via the network, the program code is stored in a storage means such as a hard disk or a memory of a computer or a storage medium such as a CD-RW or a CD-R. The processor included in the computer may read and execute the program code stored in the storage means or the storage medium.

上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。 In the above-described embodiment, the control lines and information lines show what is considered necessary for explanation, and do not necessarily indicate all the control lines and information lines in the product. All configurations may be interconnected.

100 計算機
101 外部記憶装置
102 入出力装置
103 リムーバブルメディア
105 ネットワーク
110 CPU
111 主記憶装置
112 副記憶装置
113 インタフェース
120 学習部
121 学習失敗検出部
122 パラメータ初期化部
123 計算時間抑制部
130 学習データ情報
140 パラメータ情報
200、300、600、700 設定画面
100 Computer 101 External storage device 102 Input / output device 103 Removable media 105 Network 110 CPU
111 Main storage device 112 Secondary storage device 113 Interface 120 Learning unit 121 Learning failure detection unit 122 Parameter initialization unit 123 Calculation time suppression unit 130 Learning data information 140 Parameter information 200, 300, 600, 700 Setting screen

Claims (8)

入力データに対して予測値を出力するモデルを生成するための機械学習を実行する計算機システムであって、
プロセッサ及び前記プロセッサに接続される記憶装置を備え、
前記機械学習は、前記モデルを定義するパラメータを更新する学習処理を複数回実行する処理であって、
前記プロセッサは、
判定タイミングを規定するトリガ回数、及び前記モデルを生成するための機械学習の失敗予兆を検出するために用いる少なくとも一つの評価値により定義される検出条件を含む検出条件データを格納する学習判定情報を取得し、
前記パラメータの初期値を設定して、前記機械学習を開始し、
前記学習処理を実行した後、前記パラメータの初期値が設定された後の前記学習処理の実行回数を表すカウンタを更新し、
前記トリガ回数が前記カウンタの値に一致する前記検出条件データを特定し、
前記特定された検出条件データに含まれる検出条件に基づいて、前記機械学習の失敗予兆が検出されたか否かを判定し、
前記機械学習の失敗予兆が検出された場合、前記パラメータ及び前記カウンタを初期化した後、前記機械学習を継続することを特徴とする計算機システム。
A computer system that performs machine learning to generate a model that outputs predicted values for input data.
A processor and a storage device connected to the processor are provided.
The machine learning is a process of executing a learning process of updating the parameters defining the model a plurality of times.
The processor
Learning judgment information that stores detection condition data including detection conditions defined by the number of triggers that specify the judgment timing and at least one evaluation value used to detect the failure sign of machine learning for generating the model. Acquired,
After setting the initial values of the parameters, the machine learning is started.
After executing the learning process, the counter indicating the number of times the learning process is executed after the initial value of the parameter is set is updated.
The detection condition data whose trigger count matches the value of the counter is specified, and the detection condition data is specified.
Based on the detection conditions included in the specified detection condition data, it is determined whether or not the failure sign of the machine learning is detected.
A computer system comprising initializing the parameters and the counter and then continuing the machine learning when a sign of failure of the machine learning is detected.
請求項1に記載の計算機システムであって、
前記プロセッサは、
前記機械学習における前記学習処理の実行回数の上限値を管理し、
前記カウンタの値が前記上限値以上である場合、前記機械学習を終了し、
前記機械学習の失敗予兆が検出された場合、前記上限値を前記カウンタの値で減算した値を新たな前記上限値として設定し、その後、前記カウンタを初期化することを特徴とする計算機システム。
The computer system according to claim 1.
The processor
It manages the upper limit of the number of times the learning process is executed in the machine learning,
When the value of the counter is equal to or greater than the upper limit value, the machine learning is terminated and the machine learning is terminated.
A computer system characterized in that when a sign of failure of machine learning is detected, a value obtained by subtracting the upper limit value by the value of the counter is set as a new upper limit value, and then the counter is initialized.
請求項2に記載の計算機システムであって、
前記検出条件データは、前記上限値を用いて定義される、当該検出条件データを適用するか否かを判定するための適用条件を含み、
前記プロセッサは、
前記上限値に基づいて、前記適用条件を満たす前記検出条件データを選択し、
前記選択された検出条件データの中から、前記トリガ回数が前記カウンタの値に一致する前記検出条件データを特定することを特徴とする計算機システム。
The computer system according to claim 2.
The detection condition data includes an application condition for determining whether or not to apply the detection condition data, which is defined by using the upper limit value.
The processor
Based on the upper limit value, the detection condition data satisfying the applicable condition is selected, and the detection condition data is selected.
A computer system characterized in that the detection condition data whose trigger count matches the value of the counter is specified from the selected detection condition data.
請求項1に記載の計算機システムであって、
前記検出条件は、前記評価値及び閾値を用いた条件式であることを特徴とする計算機システム。
The computer system according to claim 1.
A computer system characterized in that the detection condition is a conditional expression using the evaluation value and the threshold value.
計算機システムが実行する、入力データに対して予測値を出力するモデルを生成するための機械学習の制御方法であって、
前記計算機システムは、プロセッサ及び前記プロセッサに接続される記憶装置を有する計算機を有し、
前記機械学習は、前記モデルを定義するパラメータを更新する学習処理を複数回実行する処理であって、
前記機械学習の制御方法は、
前記計算機が、判定タイミングを規定するトリガ回数、及び前記モデルを生成するための機械学習の失敗予兆を検出するために用いる少なくとも一つの評価値により定義される検出条件を含む検出条件データを格納する学習判定情報を取得する第1のステップと、
前記計算機が、前記パラメータの初期値を設定して、前記機械学習を開始する第2のステップと、
前記計算機が、前記学習処理を実行した後、前記パラメータの初期値が設定された後の前記学習処理の実行回数を表すカウンタを更新する第3のステップと、
前記計算機が、前記トリガ回数が前記カウンタの値に一致する前記検出条件データを特定する第4のステップと、
前記計算機が、前記特定された検出条件データに含まれる検出条件に基づいて、前記機械学習の失敗予兆が検出されたか否かを判定する第5のステップと、
前記計算機が、前記機械学習の失敗予兆が検出された場合、前記パラメータ及び前記カウンタを初期化した後、前記機械学習を継続する第6のステップと、を含むことを特徴とする機械学習の制御方法。
A machine learning control method executed by a computer system to generate a model that outputs predicted values for input data.
The computer system has a processor and a computer having a storage device connected to the processor.
The machine learning is a process of executing a learning process of updating the parameters defining the model a plurality of times.
The machine learning control method is
The computer stores detection condition data including a detection condition defined by a number of triggers defining a determination timing and at least one evaluation value used to detect a sign of failure of machine learning for generating the model. The first step to acquire learning judgment information and
A second step in which the computer sets initial values for the parameters and initiates machine learning.
A third step in which the computer updates a counter representing the number of times the learning process is executed after the initial value of the parameter is set after the computer executes the learning process.
A fourth step in which the computer identifies the detection condition data whose trigger count matches the value of the counter.
A fifth step in which the computer determines whether or not the machine learning failure sign has been detected based on the detection conditions included in the specified detection condition data.
Control of machine learning, characterized in that the computer comprises a sixth step of initializing the parameters and the counter and then continuing the machine learning when a sign of failure of the machine learning is detected. Method.
請求項5に記載の機械学習の制御方法であって、
前記計算機システムは、前記機械学習における前記学習処理の実行回数の上限値を管理し、
前記機械学習の制御方法は、前記計算機が、前記カウンタの値が前記上限値以上である場合、前記機械学習を終了するステップと、を含み、
前記第6のステップは、
前記計算機が、前記機械学習の失敗予兆が検出された場合、前記上限値を前記カウンタの値で減算した値を新たな前記上限値として設定するステップと、
前記計算機が、前記カウンタを初期化するステップと、を含むことを特徴とする機械学習の制御方法。
The machine learning control method according to claim 5.
The computer system manages an upper limit of the number of times the learning process is executed in the machine learning.
The method for controlling machine learning includes a step in which the computer ends the machine learning when the value of the counter is equal to or greater than the upper limit value.
The sixth step is
When the computer detects a sign of failure in machine learning, the step of setting a value obtained by subtracting the upper limit value by the value of the counter as a new upper limit value, and
A method for controlling machine learning, wherein the computer comprises a step of initializing the counter.
請求項6に記載の機械学習の制御方法であって、
前記検出条件データは、前記上限値を用いて定義される、当該検出条件データを適用するか否かを判定するための適用条件を含み、
前記第4のステップは、
前記計算機が、前記上限値に基づいて、前記適用条件を満たす前記検出条件データを選択するステップと、
前記計算機が、前記選択された検出条件データの中から、前記トリガ回数が前記カウンタの値に一致する前記検出条件データを特定するステップと、を含むことを特徴とする機械学習の制御方法。
The machine learning control method according to claim 6.
The detection condition data includes an application condition for determining whether or not to apply the detection condition data, which is defined by using the upper limit value.
The fourth step is
A step in which the computer selects the detection condition data satisfying the applicable condition based on the upper limit value.
A method for controlling machine learning, wherein the computer includes a step of specifying the detection condition data whose trigger count matches the value of the counter from the selected detection condition data.
請求項5に記載の機械学習の制御方法であって、
前記検出条件は、前記評価値及び閾値を用いた条件式であることを特徴とする機械学習の制御方法。
The machine learning control method according to claim 5.
The detection condition is a control method for machine learning, characterized in that it is a conditional expression using the evaluation value and the threshold value.
JP2019062414A 2019-03-28 2019-03-28 Computer system and machine learning control method Active JP7050028B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019062414A JP7050028B2 (en) 2019-03-28 2019-03-28 Computer system and machine learning control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019062414A JP7050028B2 (en) 2019-03-28 2019-03-28 Computer system and machine learning control method

Publications (2)

Publication Number Publication Date
JP2020161031A JP2020161031A (en) 2020-10-01
JP7050028B2 true JP7050028B2 (en) 2022-04-07

Family

ID=72639658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019062414A Active JP7050028B2 (en) 2019-03-28 2019-03-28 Computer system and machine learning control method

Country Status (1)

Country Link
JP (1) JP7050028B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023003333A (en) 2021-06-23 2023-01-11 富士通株式会社 Information processing program, method for processing information, and information processor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180189655A1 (en) 2017-01-03 2018-07-05 Electronics And Telecommunications Research Institute Data meta-scaling apparatus and method for continuous learning
JP2018136537A (en) 2017-02-15 2018-08-30 株式会社半導体エネルギー研究所 Semiconductor device and display system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05197821A (en) * 1991-11-11 1993-08-06 Omron Corp Method for optimizing hierarchical neural network and device therefor
JPH07302292A (en) * 1994-05-09 1995-11-14 Nippon Telegr & Teleph Corp <Ntt> Controller for neural network circuit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180189655A1 (en) 2017-01-03 2018-07-05 Electronics And Telecommunications Research Institute Data meta-scaling apparatus and method for continuous learning
JP2018109996A (en) 2017-01-03 2018-07-12 韓國電子通信研究院Electronics and Telecommunications Research Institute Data meta-scaling apparatus and method for continuous learning
JP2018136537A (en) 2017-02-15 2018-08-30 株式会社半導体エネルギー研究所 Semiconductor device and display system
US20190371226A1 (en) 2017-02-15 2019-12-05 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and display system

Also Published As

Publication number Publication date
JP2020161031A (en) 2020-10-01

Similar Documents

Publication Publication Date Title
US20190354810A1 (en) Active learning to reduce noise in labels
US20210182691A1 (en) Cooperative use of a genetic algorithm and an optimization trainer for autoencoder generation
JP6646234B2 (en) Program generation device, program generation method, and generation program
US11429272B2 (en) Multi-factor probabilistic model for evaluating user input
JP2020021209A (en) Optimizing device, optimizing device control method, and optimizing device control program
JP7245961B2 (en) interactive machine learning
JP7268756B2 (en) Deterioration suppression program, degradation suppression method, and information processing device
US7802186B2 (en) Property independent in-place editing
JP2023512856A (en) interactive machine learning
JP6178768B2 (en) Quality control device and management method thereof
JP7050028B2 (en) Computer system and machine learning control method
Walker et al. Towards many-objective optimisation with hyper-heuristics: identifying good heuristics with indicators
JP6975685B2 (en) Learning control method and computer system
JP2019185591A (en) Experiment assisting device and experiment assisting method
JP2021033544A (en) Learning data refining method and computer system
CN113222073B (en) Method and device for training advertisement recommendation model
US11080939B1 (en) Generating test cases for augmented reality (AR) application testing
JP7382633B2 (en) Learning model construction device, learning model construction method, and computer program
US20180308011A1 (en) Cognitive service request construction
US20230019364A1 (en) Selection method of learning data and computer system
US7139986B2 (en) Systems and methods for determining costs associated with a selected objective
US11868885B2 (en) Learning device, inference device, learning method, and inference method using a transformation matrix generated from learning data
JP7139723B2 (en) Selection program, selection method and selection device
WO2021181605A1 (en) Machine learning model determination system and machine learning model determination method
US20160275223A1 (en) Method and system of fast nested-loop circuit verification for process and environmental variation and hierarchical circuits

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210323

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220309

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220328

R150 Certificate of patent or registration of utility model

Ref document number: 7050028

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150