JP7096708B2 - Inventory management device and inventory management method - Google Patents

Inventory management device and inventory management method Download PDF

Info

Publication number
JP7096708B2
JP7096708B2 JP2018105465A JP2018105465A JP7096708B2 JP 7096708 B2 JP7096708 B2 JP 7096708B2 JP 2018105465 A JP2018105465 A JP 2018105465A JP 2018105465 A JP2018105465 A JP 2018105465A JP 7096708 B2 JP7096708 B2 JP 7096708B2
Authority
JP
Japan
Prior art keywords
inventory
data
diagnosis
item
psi
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
JP2018105465A
Other languages
Japanese (ja)
Other versions
JP2019211870A (en
Inventor
聡 宗形
駿成 清藤
Original Assignee
株式会社日立ソリューションズ東日本
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 株式会社日立ソリューションズ東日本 filed Critical 株式会社日立ソリューションズ東日本
Priority to JP2018105465A priority Critical patent/JP7096708B2/en
Publication of JP2019211870A publication Critical patent/JP2019211870A/en
Application granted granted Critical
Publication of JP7096708B2 publication Critical patent/JP7096708B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、在庫管理技術に関し、特に、畳み込みニューラルネットワークを用いて品目の在庫を自動診断する在庫管理技術に関する。 The present invention relates to an inventory management technique, and more particularly to an inventory management technique for automatically diagnosing an item inventory using a convolutional neural network.

製造、物流、小売業では膨大な品数の商品に対して在庫管理が行われている。在庫管理においては、企業が過剰在庫や欠品など在庫の問題を早期に検知し、生産量の調整や販売計画の見直しなどの需給調整をすることが重要である。
在庫管理の現場では、一人の担当者が緊急オーダや納期変更、生産遅延などの日々の例外事象に対処しつつ在庫管理する品目数は数百~数千にもおよぶ。そのため、対象となる商品の一定期間における在庫推移をグラフ表示して担当者がひと目で在庫の増減傾向や滞留状況を把握できるようにしたり、在庫回転率や在庫日数、在庫移動平均や安全在庫水準など複数の指標を提示して客観的な在庫評価をできるようにしたりすることで、問題の早期検知を支援する技術が用いられている(例えば、特許文献1、2参照)。
In the manufacturing, logistics, and retail industries, inventory management is performed for a huge number of products. In inventory management, it is important for companies to detect inventory problems such as overstock and shortages at an early stage, and to adjust supply and demand such as adjusting production volume and reviewing sales plans.
In the field of inventory management, one person in charge manages inventory while dealing with daily exceptions such as emergency orders, delivery date changes, and production delays, and the number of items is hundreds to thousands. Therefore, the inventory transition of the target product over a certain period can be displayed as a graph so that the person in charge can grasp the inventory increase / decrease tendency and retention status at a glance, and the inventory turnover rate, inventory days, inventory moving average, and safety inventory level. Techniques that support early detection of problems by presenting a plurality of indicators such as those for objective inventory evaluation are used (see, for example, Patent Documents 1 and 2).

こうした在庫推移グラフや指標などの情報を用いた検知は、初期診断として活用されており、実際の現場では、担当者は検知された品目の生産・販売・在庫(PSI:Production、 Sales and Inventory)の詳細な推移を確認して、例えば「この期間の販売が減少傾向であったにもかかわらず多量の生産をした結果在庫が過剰傾向になっている」などの状況を読み取り、問題在庫か否かの最終的な診断をする。 Detection using information such as inventory transition graphs and indicators is used as initial diagnosis, and in the actual field, the person in charge is in charge of production, sales, and inventory (PSI: Production, Sales and Inventory) of the detected item. Check the detailed transition of, for example, read the situation such as "Inventory has become excessive as a result of mass production even though sales have been on a downward trend during this period", and whether it is a problem inventory or not. Make a final diagnosis.

特許文献1は、出願人らの発明を開示するものであり、多数の品目の在庫推移グラフをサムネイル表示する技術および在庫回転率や交差比率でグラフをソートする技術、品目ごとに詳細なPSIの詳細な推移をグラフ表示する技術などを開示する。
特許文献2は、出願人らの発明を開示するものであり、PSIデータから理想的な安全在庫水準と現実の安全在庫水準をそれぞれ計算し、グラフ上に表示して乖離をひと目で把握できるようにすることで、安全在庫の適正化を支援する技術を開示する。
Patent Document 1 discloses the inventions of the applicants, and describes a technique for displaying thumbnails of inventory transition graphs of a large number of items, a technique for sorting graphs by inventory turnover and crossover ratio, and detailed PSI for each item. Disclosure of technology for displaying detailed transitions in graphs.
Patent Document 2 discloses the inventions of the applicants, so that the ideal safety stock level and the actual safety stock level can be calculated from the PSI data and displayed on a graph so that the deviation can be grasped at a glance. By doing so, we will disclose the technology that supports the optimization of safety stock.

特開2009-187449号公報Japanese Unexamined Patent Publication No. 2009-187449 特許第5457885号公報Japanese Patent No. 5457858

しかしながら、PSIの詳細な推移に基づく品目の在庫診断や問題解消のための需給調整は専門性が高い業務であるため、担当者の経験やノウハウの有無により診断結果や調整内容にばらつきが生じて問題の見逃しや解消の遅延が発生したり、新たな担当者の育成に向けたノウハウの伝承が困難になったりするなどの課題をメーカはじめ多くの企業が抱えている。 However, since inventory diagnosis of items based on detailed changes in PSI and supply / demand adjustment for problem solving are highly specialized tasks, the diagnosis results and adjustment contents may vary depending on the experience and know-how of the person in charge. Many companies, including manufacturers, have problems such as overlooking problems and delays in solving them, and making it difficult to pass on know-how for training new personnel.

本発明は、過去に実施した担当者の経験やノウハウを学習した畳み込みニューラルネットワークを用いて、品目の在庫診断や問題在庫の要因となるPSIの推移状況を容易に把握することができる技術を提供することを目的とする。 The present invention provides a technique that can easily grasp the transition status of PSI, which is a factor of item inventory diagnosis and problem inventory, by using a convolutional neural network that has learned the experience and know-how of the person in charge implemented in the past. The purpose is to do.

本発明の一観点によれば、入力された品目の生産・販売・在庫(PSI)のデータを用いて当該品目が問題在庫か否かを診断し、かつ、前記品目が問題在庫と診断された場合に、診断結果に所定の寄与度以上に寄与した期間のPSIデータの推移状況を診断の根拠あるいは問題在庫の要因として出力する在庫管理装置であって、前記PSIデータに基づく需給バランスの変化を、畳み込みニューラルネットワークモデルを用いて特徴量として学習させるデータ学習部と、学習済みの前記畳み込みニューラルネットワークモデルに対し、診断対象品目のPSIデータを入力して当該品目に対する在庫診断を実行する在庫診断部と、を有することを特徴とする在庫管理装置が提供される。 According to one aspect of the present invention, the input production / sales / inventory (PSI) data of the item is used to diagnose whether or not the item is problematic inventory, and the item is diagnosed as problematic inventory. In this case, it is an inventory management device that outputs the transition status of PSI data during the period that contributed more than a predetermined contribution to the diagnosis result as the basis of diagnosis or the factor of problem inventory, and changes the supply-demand balance based on the PSI data. , A data learning unit that trains as a feature quantity using a convolutional neural network model, and an inventory diagnosis unit that inputs PSI data of the item to be diagnosed to the trained convolutional neural network model and executes inventory diagnosis for the item. And, an inventory management device characterized by having.

前記在庫診断部による前記診断の結果が問題在庫である場合に、学習済み畳み込みニューラルネットワークモデルの出力層から入力層の後に配置される畳み込み層まで逆伝播することにより、フィルタ幅の期間で逐次PSIデータに畳み込んだフィルタまたはそこから得られる特徴マップに対する診断結果への寄与度を求め、所定の寄与度以上の畳み込み領域にあたる期間のPSIデータを診断の根拠あるいは問題在庫の要因として推定する要因推定部を有することが好ましい。 When the result of the diagnosis by the inventory diagnosis unit is problem stock, it propagates back from the output layer of the trained convolutional neural network model to the convolutional layer arranged after the input layer, thereby sequentially PSI in the period of the filter width. Factor estimation that obtains the contribution to the diagnosis result for the filter convolved in the data or the feature map obtained from it, and estimates the PSI data for the period corresponding to the convolution area with the predetermined contribution or more as the basis of diagnosis or the factor of the problem inventory. It is preferable to have a portion.

さらに、診断対象となる品目に対する品目別・日別のPSIデータ、畳み込みニューラルネットワークモデルの学習に用いる教師データであって、過去のある時点で診断された複数品目の品目別・日別のPSIデータと診断結果データのペアから構成されるデータ、および、少なくとも入力層の後に構築される畳み込み層に関するフィルタ幅とフィルタ数を定めたモデル設定データ、モデル学習に関する項目を定めた学習設定データ、在庫診断に関する項目を定めた診断設定データを読み込んでメモリ上に展開するデータ入力部と、前記モデル設定データに従い、品目のPSIデータが入力される入力層と、前記入力層の後に畳み込み層が配置された少なくとも1つ以上の層を持つ隠れ層と、品目の診断結果を出力する出力層から構成された畳み込みニューラルネットワークモデル構築するモデル構築部と、を有し、前記データ学習部は、前記畳み込みニューラルネットワークモデルのパラメータが一様乱数や正規乱数、または、ゼロを含む定数値で初期化され、前記教師データから任意に取得した複数品目のPSIデータを前記モデル構築部に入力して在庫診断し、前記モデル構築部から出力された診断結果と前記教師データにある前記品目群の診断結果との誤差が小さくなるように、勾配を用いてパラメータの値を逐次更新することが好ましい。 Furthermore, PSI data by item and day for the item to be diagnosed, teacher data used for learning the convolutional neural network model, and PSI data by item and day for multiple items diagnosed at a certain point in the past. Data consisting of a pair of diagnosis result data, model setting data that defines the filter width and number of filters for at least the convolution layer built after the input layer, learning setting data that defines items related to model learning, inventory diagnosis A data input unit that reads diagnostic setting data that defines items related to and expands it on the memory, an input layer into which PSI data of the item is input according to the model setting data, and a convolution layer are arranged after the input layer. It has a hidden layer having at least one layer and a model building unit for constructing a convolutional neural network model composed of an output layer for outputting the diagnosis result of an item, and the data learning unit has the convolutional neural network. The parameters of the model are initialized with a uniform random number, a normal random number, or a constant value including zero, and PSI data of a plurality of items arbitrarily acquired from the teacher data is input to the model construction unit to perform inventory diagnosis, and the above. It is preferable to sequentially update the parameter values using the gradient so that the error between the diagnosis result output from the model building unit and the diagnosis result of the item group in the teacher data becomes small.

さらに、診断対象品目に対する前記診断結果、要因として推定された期間、および当該期間のPSI推移状況を表現する文字列を、要因推定期間が事前に指定された採択期間に含まれる場合に、前記品目群の在庫サムネイル一覧あるいは個別品目のPSI詳細グラフ上に矩形やヒートマップ、吹き出しなどの形状で画面表示する画面表示部と、診断対象品目に対する前記診断結果を外部ファイルやデータベースに出力するデータ出力部と、を有することが好ましい。 Further, when the factor estimation period is included in the pre-specified adoption period, the item is included in the diagnosis result, the period estimated as a factor, and the character string expressing the PSI transition status of the period for the item to be diagnosed. A screen display unit that displays the screen in the shape of a rectangle, heat map, balloon, etc. on the stock thumbnail list of the group or the PSI detail graph of individual items, and a data output unit that outputs the diagnosis results for the items to be diagnosed to an external file or database. And, it is preferable to have.

本発明の他の観点によれば、入力された品目の生産・販売・在庫(PSI)のデータを用いて当該品目が問題在庫か否かを診断し、かつ、前記品目が問題在庫と診断された場合に、診断結果に所定の寄与度以上に寄与した期間のPSIデータの推移状況を診断の根拠あるいは問題在庫の要因として出力するコンピュータを用いた在庫管理方法であって、前記PSIデータに基づく需給バランスの変化を、畳み込みニューラルネットワークモデルを用いて特徴量として学習させるデータ学習ステップと、学習済みの前記畳み込みニューラルネットワークモデルに対し、診断対象品目のPSIデータを入力して当該品目に対する在庫診断を実行する在庫診断ステップと、を有することを特徴とする在庫管理方法が提供される。 According to another aspect of the present invention, the input production / sales / inventory (PSI) data of the item is used to diagnose whether the item is problematic inventory and the item is diagnosed as problematic inventory. In this case, it is an inventory management method using a computer that outputs the transition status of PSI data during the period in which the contribution to the diagnosis result is more than a predetermined contribution as the basis of diagnosis or the factor of the problem inventory, and is based on the PSI data. A data learning step to learn changes in the supply-demand balance as feature quantities using a convolutional neural network model, and input PSI data of the item to be diagnosed into the trained convolutional neural network model to perform inventory diagnosis for the item. An inventory management method is provided, characterized in that it has an inventory diagnostic step to perform.

前記在庫診断ステップによる前記診断の結果が問題在庫である場合に、学習済み畳み込みニューラルネットワークモデルの出力層から入力層の後に配置される畳み込み層まで逆伝播することにより、フィルタ幅の期間で逐次PSIデータに畳み込んだフィルタまたはそこから得られる特徴マップに対する診断結果への寄与度を求め、所定の寄与度以上の畳み込み領域にあたる期間のPSIデータを診断根拠あるいは問題の要因として推定する要因推定ステップを有することが好ましい。 When the result of the diagnosis by the inventory diagnosis step is a problem stock, it propagates back from the output layer of the trained convolutional neural network model to the convolutional layer arranged after the input layer, thereby sequentially PSI in the period of the filter width. A factor estimation step for estimating the contribution of the filter convoluted to the data or the feature map obtained from the data to the diagnostic result, and estimating the PSI data for the period corresponding to the convolutional region with a predetermined contribution or more as the diagnostic basis or the cause of the problem. It is preferable to have.

本発明によれば、在庫管理担当者は、過去に実施した担当者の経験やノウハウを学習した畳み込みニューラルネットワークを用いて、品目の在庫診断や問題在庫の要因となるPSIの推移状況を容易に把握できる。その結果、問題在庫の見逃しや問題の解消遅延を低減させることができ、経験の少ない担当者であっても熟練者のノウハウを活用した在庫診断が可能になる。 According to the present invention, a person in charge of inventory management can easily perform inventory diagnosis of an item and change of PSI, which is a factor of problematic inventory, by using a convolutional neural network that has learned the experience and know-how of the person in charge in the past. I can grasp it. As a result, it is possible to reduce oversight of problem inventory and delay in solving the problem, and even an inexperienced person in charge can perform inventory diagnosis utilizing the know-how of a skilled person.

本発明の一実施の形態による在庫管理装置の一構成例を示す機能ブロック図である。It is a functional block diagram which shows one configuration example of the stock management apparatus by one Embodiment of this invention. 本実施の形態による問題在庫とその要因を提示する在庫管理技術の概要を示すイメージ図である。It is an image diagram which shows the outline of the inventory management technique which presents the problem inventory by this embodiment and its factor. 本実施の形態による問題在庫とその要因を提示する在庫管理技術の概要を示すイメージ図である。It is an image diagram which shows the outline of the inventory management technique which presents the problem inventory by this embodiment and its factor. 本実施の形態による問題在庫とその要因を提示する在庫管理技術の概要を示すイメージ図である。It is an image diagram which shows the outline of the inventory management technique which presents the problem inventory by this embodiment and its factor. モデル構築の流れを示すフローチャート図である。It is a flowchart which shows the flow of model construction. モデル学習部による学習処理の概略を示すフローチャート図である。It is a flowchart which shows the outline of the learning process by a model learning part. 順伝播の詳細な処理フローを示す図である。It is a figure which shows the detailed processing flow of forward propagation. 逆伝播の詳細な処理フローを示す図である。It is a figure which shows the detailed processing flow of back propagation. 要因推定部の処理の流れの一例を示すフローチャート図である。It is a flowchart which shows an example of the processing flow of a factor estimation part. 従来技術における診断対象品目の在庫サムネイル一覧画面やPSI詳細画面での表示例を示す図である。It is a figure which shows the display example on the inventory thumbnail list screen and the PSI detail screen of the item to be diagnosed in the prior art. 従来技術における診断対象品目の在庫サムネイル一覧画面やPSI詳細画面での表示例を示す図である。It is a figure which shows the display example on the inventory thumbnail list screen and the PSI detail screen of the item to be diagnosed in the prior art. CNNモデルによる在庫診断結果および要因とされる最大寄与領域を在庫サムネイル一覧画面上に可視化した例である。This is an example of visualizing the inventory diagnosis result by the CNN model and the maximum contribution area that is considered to be a factor on the inventory thumbnail list screen. ある対象品目の診断結果および最大寄与領域による要因をPSI詳細画面上に表示した例である。This is an example in which the diagnosis result of a certain target item and the factor due to the maximum contribution area are displayed on the PSI detail screen. ある対象品目の診断結果およびヒートマップによる要因をPSI詳細画面上で表示した例を示す図である。It is a figure which shows the example which displayed the diagnosis result of a certain target item and the factor by a heat map on a PSI detail screen.

そこで、既に担当者によって在庫診断された品目のPSIデータと当該品目に対する在庫診断結果から、畳み込みニューラルネットワーク(CNN :Convolutional Neural Network)を用いて問題在庫と関連するある期間のPSIの推移状況を学習することによって、診断対象となる品目のPSIデータを当該モデルの入力として与えた際に、当該品目が問題在庫かどうかの自動診断と、問題の要因と推定される期間のPSIの状況を出力する在庫管理技術を提案する。 Therefore, from the PSI data of the item that has already been inventoried by the person in charge and the inventory diagnosis result for the item, the transitional state of PSI in a certain period related to the problem inventory is learned using a convolutional neural network (CNN). By doing so, when the PSI data of the item to be diagnosed is given as the input of the model, the automatic diagnosis of whether the item is in problem stock and the PSI status of the period estimated to be the cause of the problem are output. We propose inventory management technology.

図1は、本発明の一実施の形態による在庫管理装置の一構成例を示す機能ブロック図である。図2Aから図2Cまでは、本実施の形態による問題在庫とその要因を提示する在庫管理技術の概要を示すイメージ図である。まず、大まかなイメージについて図2Aから図2Cまでを参照しながら説明する。 FIG. 1 is a functional block diagram showing a configuration example of an inventory management device according to an embodiment of the present invention. 2A to 2C are image diagrams showing an outline of a problem inventory according to the present embodiment and an inventory management technique for presenting the factors thereof. First, a rough image will be described with reference to FIGS. 2A to 2C.

(構成と処理の概略)
図2Aに示すように、本実施の形態による在庫管理技術は、まず過去の在庫診断データ15をCNNモデル17に入力して問題在庫の診断と相関するPSIデータの特徴を学習し、次にある品目のPSIデータ11を学習済みCNNモデル17に入力として与えたときに、その出力21として当該品目の在庫診断結果を得ることができる技術である。尚、例えば、在庫の診断結果D1~D3までは、表示画面に表示させた品目毎の在庫状況を示すグラフであり、横軸は時間、縦軸は在庫量である。各グラフ表示には、品目番号と変動充足率が記載されている。
(Outline of configuration and processing)
As shown in FIG. 2A, the inventory management technique according to the present embodiment first inputs the past inventory diagnosis data 15 into the CNN model 17 to learn the characteristics of the PSI data that correlates with the diagnosis of the problem inventory, and then follows. It is a technique that can obtain the inventory diagnosis result of the item as the output 21 when the PSI data 11 of the item is given to the trained CNN model 17 as an input. For example, the inventory diagnosis results D1 to D3 are graphs showing the inventory status of each item displayed on the display screen, with the horizontal axis representing time and the vertical axis representing inventory quantity. Each graph display shows the item number and the variable sufficiency rate.

このようなグラフ表示に基づいて、吹き出しP1,P2,P3に示すように、在庫の診断結果D1~D3に対応する問題在庫の要因を表示させるようにしても良い。
例えば、グラフ表示D1に関しては、要因P1「販売量は安定しているのに対し,直近3ヶ月の生産量が多くなっているため,過剰在庫になっている。」との表示をさせても良い。
また、グラフ表示D2に関しては、要因P2「半年前からの販売増加傾向に備えて生産量を増加させたが,ここ2ヶ月の販売が減少しているため,過剰在庫になっている。」との表示をさせても良い。
さらに、グラフ表示D3に関しては、要因P3「1年前からの販売傾向に対し生産量が不足しており,欠品リスクが増大。」を表示させても良い。操作者の判断に基づいて要因を操作者が入力しても良い。
Based on such a graph display, as shown in the balloons P1, P2, and P3, the factor of the problem inventory corresponding to the inventory diagnosis results D1 to D3 may be displayed.
For example, with respect to the graph display D1, factor P1 "The sales volume is stable, but the production volume in the last three months has increased, so the inventory is in excess." good.
Regarding the graph display D2, factor P2 "We increased the production volume in preparation for the sales increase trend from half a year ago, but the sales have decreased in the last two months, so it is overstocked." May be displayed.
Further, regarding the graph display D3, the factor P3 “the production amount is insufficient with respect to the sales tendency from one year ago, and the risk of shortage increases” may be displayed. The operator may input the factor based on the judgment of the operator.

図2Bは、CNNモデル17の基本的な処理の概要を示す図である。担当者の在庫診断によって問題在庫と診断された品目としては、D11,D12,D13のような例が挙げられる。領域R1、R2、R3は担当者が診断時に着目した需給バランスの変化を示しており、担当者は診断の過程で、R1では「安定需要下で充分な在庫を保持している中、高頻度生産を続けたため、在庫が過剰になっている」とする診断根拠を見出し、R2では「需要を賄える在庫を保持している状況で生産を継続したため、在庫が過剰になっている」とする診断根拠を見出し、R3では「販売の増加傾向に対して生産が追随できず、在庫がなくなり欠品が発生」とする診断根拠を見出している。しかし,R1、R2、R3は担当者のノウハウとして暗黙知化されているものであり、一般的に診断履歴として記録されることは少ない。そこで、CNNモデル17は、過去の在庫診断データ15として品目のPSIデータと当該品目が問題在庫か否かの診断結果データのセットが与えられたときに、事前に指定した期間長での畳み込み処理を通して、問題在庫の診断と相関するPSIデータの特徴を学習する。これにより,CNNモデル17がR1、R2、R3に示すような、ノウハウ化された需給バランス変化の判断を学習していくことが期待される。 FIG. 2B is a diagram showing an outline of basic processing of the CNN model 17. Examples of items diagnosed as problematic inventory by the inventory diagnosis of the person in charge include D11, D12, and D13. Areas R1, R2, and R3 show changes in the supply-demand balance that the person in charge focused on at the time of diagnosis. Finding the basis for diagnosis that "inventory is excessive because we continued production", and in R2, diagnosis that "inventory is excessive because we continued production while holding inventory that can meet demand" Finding the grounds, R3 finds the diagnostic grounds that "production cannot keep up with the increasing trend of sales, inventory runs out, and shortages occur." However, R1, R2, and R3 are tacit-knowledged as the know-how of the person in charge, and are generally rarely recorded as a diagnosis history. Therefore, in the CNN model 17, when a set of PSI data of an item and diagnosis result data as to whether or not the item is problematic is given as past inventory diagnosis data 15, convolution processing is performed for a period length specified in advance. Through, learn the characteristics of PSI data that correlate with the diagnosis of problem inventory. As a result, it is expected that the CNN model 17 will learn the judgment of the change in the supply-demand balance, which has been made into know-how, as shown in R1, R2, and R3.

診断履歴データ15から問題在庫と関連するPSIデータの特徴を学習したCNNモデル17を構築すれば、診断対象となる品目のPSIデータ11を当該モデルに入力し、事前に指定した期間長による畳み込み処理や全結合処理などを通して、問題在庫と関連する入力データの特徴の強弱や問題在庫に分類される確率を求め、出力31において当該品目に対する「問題あり」、「問題なし」の診断を行うことができる。 If the CNN model 17 that learns the characteristics of the PSI data related to the problem inventory is constructed from the diagnosis history data 15, the PSI data 11 of the item to be diagnosed is input to the model, and the convolution processing is performed by the period length specified in advance. It is possible to determine the strength of the characteristics of the input data related to the problem inventory and the probability of being classified as the problem inventory through the full combination process, etc., and to diagnose "problem" or "no problem" for the item at output 31. can.

図2Cは、本実施の形態によるCNNモデル17における処理の流れの概要を示す図であり、図2Bに示す構成をより詳細に示す図である。
図2Cに示すように、まず、PSI時系列データ11を入力とし、これを標準化(正規化)する(17-1)。次いで、Conv処理(畳み込み処理)17-2を行う。Conv処理17-2は、データ11a,11b,11c,…のように事前に指定した期間長の畳み込み領域を時間方向に徐々にずらしながら当該領域のPSIデータとフィルタの相関を計算する。通常のConv処理17-2ではフィルタA,フィルタB,…のように複数のフィルタを用いたフィルタリング処理を実行し、PSIデータから様々な特徴を学習する。図2Cでは、各領域のフィルタAに対する反応値33と、フィルタBに対する反応値33と、を求めている。次いで、Tanh処理17-3を行うことで、各反応値を-1~+1までの値に変換する。Tanhのような反応値を変換する関数を活性化関数と呼ぶ。次いで、Dropout処理17-4を行う。
FIG. 2C is a diagram showing an outline of the processing flow in the CNN model 17 according to the present embodiment, and is a diagram showing the configuration shown in FIG. 2B in more detail.
As shown in FIG. 2C, first, the PSI time series data 11 is input and standardized (normalized) (17-1). Next, Conv processing (convolution processing) 17-2 is performed. The Conv process 17-2 calculates the correlation between the PSI data of the region and the filter while gradually shifting the convolution region having a predetermined period length such as data 11a, 11b, 11c, ... In the time direction. In the normal Conv process 17-2, a filtering process using a plurality of filters such as filter A, filter B, ... Is executed, and various features are learned from the PSI data. In FIG. 2C, the reaction value 33 for the filter A and the reaction value 33 for the filter B in each region are obtained. Next, by performing Tanh treatment 17-3, each reaction value is converted into a value from -1 to +1. A function that converts a reaction value, such as Tanh, is called an activation function. Next, Dropout processing 17-4 is performed.

次いで、Affine処理17-5を行う。Affine処理17-5は、フィルタA、Bなどの各フィルタの反応値35を1つに集約(37)する処理である。
次いで、Tanh処理17-6を行うことで、Affine処理17-5の反応値を-1~+1までの値に変換する。
次いで、Affine処理17-7を行う。Affine処理17-7は、Tanh処理17-6で1つに集約された各フィルタの反応値39を問題あり・なしの各分類ラベルとの関連度に集約し、次いで、集約した関連度から問題ありラベルに分類される確率と問題なしラベルに分類される確率を求める(41)Softmax処理17-8を行う。
尚、Conv処理やAffine処理の前にDropout処理が挿入されていても良い。Dropout処理は、未知の入力データに対するCNNモデルの分類性能を高めるため、学習時にConv層やAffine層の複数ユニットをランダムに選択し、無効化するものである。図2Cでは、1つ目のAffine処理の前にDropout処理17-4が挿入されている。
Next, Affine processing 17-5 is performed. The Affine process 17-5 is a process of aggregating (37) the reaction values 35 of each filter such as filters A and B into one.
Next, by performing the Tanh treatment 17-6, the reaction value of the Affine treatment 17-5 is converted into a value from -1 to +1.
Next, Affine processing 17-7 is performed. In the Afine process 17-7, the reaction values 39 of each filter aggregated in the Tanh process 17-6 are aggregated into the degree of association with each classification label with or without a problem, and then the problem is obtained from the aggregated degree of association. (41) The Softmax process 17-8 is performed to obtain the probability of being classified as a label with a presence and the probability of being classified as a label without a problem.
The Dropout process may be inserted before the Conv process or the Affine process. The Dropout process randomly selects and invalidates a plurality of units of the Conv layer and the Affine layer at the time of learning in order to improve the classification performance of the CNN model for unknown input data. In FIG. 2C, the Dropout process 17-4 is inserted before the first Affine process.

以上の処理により、品目のPSIデータに対し分類確率に基づくラベル付け処理17-9を実行することができる。ラベルとしては「問題あり」と「問題なし」の2値が最も単純であるが、例えば「問題あり」を「過剰安全」、「在庫滞留」、「増加傾向」、「減少傾向」などに細分化した多値分類としても良い。
教師データ({PSI時系列,診断結果ラベル}の集合から構成されるデータセット)が与えられれば、PSI時系列に対してCNNモデルの処理17-1から処理17-9までを実行し、モデル出力としてのラベルと実際のラベルとの誤差を求めることができる。従って、誤差逆伝播法を用いれば上記誤差を小さくするようにConv層のフィルタ値やAffine層のパラメータ値を更新することができる。このようなパラメータ更新をCNNモデルの学習と呼ぶ。
By the above processing, the labeling processing 17-9 based on the classification probability can be executed for the PSI data of the item. As a label, the two values of "problem" and "no problem" are the simplest, but for example, "problem" is subdivided into "excessive safety", "inventory retention", "increase trend", "decrease trend", etc. It may be a multi-valued classification.
Given the teacher data (a data set consisting of a set of {PSI time series, diagnosis result labels}), the CNN model processes 17-1 to 17-9 are executed for the PSI time series, and the model is executed. The error between the label as output and the actual label can be obtained. Therefore, if the error back propagation method is used, the filter value of the Conv layer and the parameter value of the Affine layer can be updated so as to reduce the error. Such parameter update is called CNN model learning.

学習済みCNNモデルを用いた診断対象品目の在庫診断結果に対する要因抽出は、以下のように行う。
すなわち、学習済みCNNモデルで問題在庫と診断された品目のPSIデータに対し、診断に寄与する太枠で囲まれた領域をフィルタから特定する。Softmax処理(その前のAffine処理でも良い)の出力値の中で最大のもの以外を0に設定してConv層まで逆伝播することで、該当する層の出力値の増分に最も寄与するフィルタとユニットを特定する。
Factor extraction for the inventory diagnosis result of the item to be diagnosed using the trained CNN model is performed as follows.
That is, for the PSI data of the item diagnosed as the problem inventory in the trained CNN model, the area surrounded by the thick frame that contributes to the diagnosis is specified from the filter. By setting a value other than the maximum output value of Softmax processing (or Affine processing before that) to 0 and propagating back to the Conv layer, the filter that contributes most to the increment of the output value of the corresponding layer. Identify the unit.

(詳細な構成と処理)
以下において、より詳細かつ具体的な処理について説明する。
図1は、本実施の形態による在庫管理システムの一構成例を示す機能ブロック図である。
例えば数千種類の商品を見込み生産している消費財メーカの在庫管理担当者が、図1に示す在庫管理装置1を用いて担当品目の在庫診断を実行する例について説明する。尚、ここでは、在庫診断の実施時点は、例えば、2018年4月1日とする。
(Detailed configuration and processing)
Hereinafter, more detailed and specific processing will be described.
FIG. 1 is a functional block diagram showing a configuration example of an inventory management system according to the present embodiment.
For example, an example will be described in which an inventory management person in charge of a consumer goods manufacturer who is expected to produce thousands of kinds of products executes an inventory diagnosis of the item in charge using the inventory management device 1 shown in FIG. Here, the time when the inventory diagnosis is carried out is, for example, April 1, 2018.

在庫管理担当者は、データ入力部1-1を用いて、自身が担当する診断対象品目のPSIデータT201、畳み込みニューラルネットワーク(CNN)モデルの学習に用いる教師データT202、モデルのネットワーク構成を定めたCNNモデル構成設定データT203、モデル学習の設定項目を記載したCNNモデル学習設定データT204、在庫診断の設定項目を記載した在庫診断設定データT205を、それぞれ在庫管理装置1の図示しないメモリ上に読み込む。在庫管理装置1は、例えば、情報処理装置であり、例えば、サーバ、PC、PDAなどである。各データを格納するデータベースは、例えばネットワーク経由で在庫管理装置1と関連付けされている。 The person in charge of inventory management uses the data input unit 1-1 to determine the PSI data T201 of the item to be diagnosed, the teacher data T202 used for learning the convolutional neural network (CNN) model, and the network configuration of the model. The CNN model configuration setting data T203, the CNN model learning setting data T204 describing the model learning setting items, and the inventory diagnosis setting data T205 describing the inventory diagnosis setting items are read into a memory (not shown) of the inventory management device 1, respectively. The inventory management device 1 is, for example, an information processing device, for example, a server, a PC, a PDA, or the like. The database for storing each data is associated with the inventory management device 1 via, for example, a network.

まず、診断対象品目のPSIデータT201がメモリ上で保持される形式の例を表1に示す。表1には、品目コード、年月日、生産数、販売数、在庫数が示されている。 First, Table 1 shows an example of a format in which the PSI data T201 of the item to be diagnosed is held in the memory. Table 1 shows the item code, date, production quantity, sales quantity, and inventory quantity.

Figure 0007096708000001
Figure 0007096708000001

表1では、例えば、在庫管理担当者が管理する100品目について直近1年間(2017年4月1日~2018年3月31日)の日別のPSI実績値が示されている。 Table 1 shows, for example, the daily PSI actual values for the last one year (April 1, 2017 to March 31, 2018) for 100 items managed by the person in charge of inventory management.

次に、CNNモデルの学習に用いる教師データT202がメモリ上で保持される形式の例を表2に示す。 Next, Table 2 shows an example of the format in which the teacher data T202 used for learning the CNN model is held in the memory.

Figure 0007096708000002
Figure 0007096708000002

本実施の形態による教師データとは、過去に在庫診断の対象となった品目のPSIデータと、当該品目の診断結果とから構成される。表2の例では、例えば、過去に在庫診断された1,000品目に対する1年間(2016年4月1日~2017年3月31日)の日別のPSI実績値とその診断結果種別とが格納されている。本実施の形態では、1年間のPSIデータの推移状況と診断結果の関連をCNNモデルで学習するため、各品目の日々の診断結果種別には同じ値が格納されている。 The teacher data according to the present embodiment is composed of PSI data of an item that has been subject to inventory diagnosis in the past and a diagnosis result of the item. In the example of Table 2, for example, the daily PSI actual values and the diagnosis result types for one year (April 1, 2016 to March 31, 2017) for 1,000 items that have been inventoried in the past are shown. It is stored. In this embodiment, since the relationship between the transition status of PSI data for one year and the diagnosis result is learned by the CNN model, the same value is stored in the daily diagnosis result type of each item.

尚、診断結果種別は、メモリ上では問題なしを“0”、過剰在庫を“1”、過少在庫を“2”に対応させた数値としている。診断結果の種別を、例えば「問題なし」、「過剰」、「急増」、「急減」、「滞留」のようにより細分化してそれぞれに対応する数値を割当てることもできる。また、表1および表2のPSIデータは数量(個数や梱数)としているが、金額など日々の実績を記録した数値であれば、数量と同様に用いることができる。 The type of diagnosis result is a numerical value corresponding to "0" for no problem on the memory, "1" for excess inventory, and "2" for understock. It is also possible to subdivide the types of diagnosis results into, for example, "no problem", "excess", "rapid increase", "rapid decrease", and "retention", and assign numerical values corresponding to each. Further, although the PSI data in Tables 1 and 2 are quantities (quantity and number of packages), any numerical value such as an amount of money that records daily results can be used in the same manner as the quantity.

次に、CNNモデルのネットワークアーキテクチャを示すCNNモデル構成設定データT203がメモリ上で保持される形式の例を表3に示す。 Next, Table 3 shows an example of a format in which the CNN model configuration setting data T203 showing the network architecture of the CNN model is held in the memory.

Figure 0007096708000003
Figure 0007096708000003

表3の例では、層番号ごとに層の種類が定められており、さらに層の種類ごとに設定項目と設定値とが格納されている。本実施の形態では、1層目には入力層が必須で指定される。入力層では、CNNモデルの入力値となるPSIデータの形状について設定する。本実施の形態では、PSIの1年分の日次データを対象に、ある期間の販売傾向に対する生産と在庫推移の関係をフィルタの畳み込み処理で考慮しながら診断結果との関連を学習する。そのため、データ長を365日、チャネル数を3としている。なお、説明の都合上、閏年の2/29のデータは考慮しない。また、品目ごとのデータスケールを一致させるため、事前変換としてデータを標準化する設定としている。 In the example of Table 3, the layer type is defined for each layer number, and the setting items and the setting values are stored for each layer type. In the present embodiment, the input layer is indispensably designated as the first layer. In the input layer, the shape of the PSI data which is the input value of the CNN model is set. In the present embodiment, for one year's worth of daily data of PSI, the relationship with the diagnosis result is learned while considering the relationship between the production and the inventory transition with respect to the sales tendency in a certain period by the convolution process of the filter. Therefore, the data length is 365 days and the number of channels is 3. For convenience of explanation, the data of 2/29 of the leap year is not considered. In addition, in order to match the data scale for each item, it is set to standardize the data as a pre-conversion.

2層目には畳み込み層が必須で指定される。この層では、診断結果と相関するPSIデータの特徴量を抽出するために必要な項目を設定する。フィルタ幅とは、畳み込み処理でPSIデータと診断結果との相関を考慮する期間である。フィルタ数とは、PSIデータに畳み込むフィルタの数であり、各フィルタの値はCNNモデルの学習を通して抽出されるPSIデータの特徴量となる。ストライドとは、畳み込み処理で各フィルタを過去から未来に向かって移動させる日数である。W初期化とは、畳み込み処理の主要なパラメータである(ファイル幅×チャネル数)×フィルタ数の行列Wの各要素を初期化する方法である。ここで、n×m行列とはn個の行とm個の列を持つ行列を意味する。 A convolutional layer is indispensable and designated as the second layer. In this layer, items necessary for extracting features of PSI data that correlate with the diagnosis result are set. The filter width is a period in which the correlation between the PSI data and the diagnosis result is considered in the convolution process. The number of filters is the number of filters to be folded into the PSI data, and the value of each filter is the feature amount of the PSI data extracted through the learning of the CNN model. Stride is the number of days that the convolution process moves each filter from the past to the future. The W 2 initialization is a method of initializing each element of the matrix W 2 which is the main parameter of the convolution process (file width × number of channels) × number of filters. Here, the n × m matrix means a matrix having n rows and m columns.

初期化とは、畳み込み処理のバイアスパラメータである次元がフィルタ数に等しいベクトルbの各要素を初期化する方法である。活性化関数とは、畳み込み層の入力に対して行列演算をした後の出力を非線形変換する関数である。畳み込み層の活性化関数の値は特徴マップとも呼ばれる。ドロップアウトとは、CNNモデルの汎化性能を向上させるため、学習時に当該層を構成するユニットの一部をランダムに不活性化させる割合である。
3層目以降は、畳み込み層やプーリング層、全結合層などを任意に指定することができる。
The b2 initialization is a method of initializing each element of the vector b2 whose dimension, which is a bias parameter of the convolution process, is equal to the number of filters. The activation function is a function that non-linearly transforms the output after performing a matrix operation on the input of the convolution layer. The value of the activation function of the convolutional layer is also called the feature map. The dropout is a rate at which a part of the units constituting the layer is randomly inactivated during learning in order to improve the generalization performance of the CNN model.
From the third layer onward, a convolutional layer, a pooling layer, a fully connected layer, and the like can be arbitrarily specified.

表3では、2つの全結合層が指定されている。CNNモデルにおける全結合層は、畳み込み層で抽出された特徴量に基づきPSIデータを診断結果種別に分類する分類器としての役割を果たす。3層目の全結合層について、入力次元とは前層の出力データに基づき設定される次元である。出力次元とは、当該層で実行される行列演算の出力の次元である。W初期化とは、全結合層の主要なパラメータである入力次元×出力次元の行列Wの各要素を初期化する方法である。b初期化とは、当該層のバイアスパラメータである出力次元ベクトルbの要素を初期化する方法である。活性化関数やドロップアウトは畳み込み層と同様である。4層目の全結合層の設定項目も3層目と同様である。 In Table 3, two fully connected layers are specified. The fully connected layer in the CNN model serves as a classifier for classifying PSI data into diagnostic result types based on the features extracted in the convolutional layer. For the fully connected layer of the third layer, the input dimension is a dimension set based on the output data of the previous layer. The output dimension is the output dimension of the matrix operation performed in the layer. The W3 initialization is a method of initializing each element of the matrix W3 of the input dimension × the output dimension, which is the main parameter of the fully connected layer. The b3 initialization is a method of initializing the element of the output dimension vector b3 which is a bias parameter of the layer. The activation function and dropout are similar to the convolution layer. The setting items of the fully connected layer of the fourth layer are the same as those of the third layer.

最終層には出力層が必須で指定される。この層では、PSIデータに対して畳み込み処理で抽出された特徴量から最終的な在庫診断結果を得るためのCNNモデルの出力に関する項目が設定される。当該層の次元とは診断結果種別の数のことであり、前層(全結合層)の出力次元と一致させる必要がある。出力値計算とは入力したPSIデータがどの診断結果種別に分類されるのが妥当であるかを計算する手法である。 The output layer is required and specified for the final layer. In this layer, items related to the output of the CNN model for obtaining the final inventory diagnosis result from the features extracted by the convolutional process are set for the PSI data. The dimension of the layer is the number of diagnosis result types, and it is necessary to match the output dimension of the previous layer (fully connected layer). The output value calculation is a method of calculating which diagnosis result type is appropriate for the input PSI data.

なお、本実施の形態ではCNNモデルを構成するための設定項目を上記に限定しているが、モデルの学習速度や汎化性能を高めるために各層に追加の設定項目を設けてもよい。例えば、学習のたびにパラメータの値が変化することによって特徴マップの分布が大きく変動することを避けるため、活性化関数を適用する前にバッチ正規化処理を実施してもよいし、在庫診断種別の分類に寄与しないパラメータを0に近づけるように学習する正則化(荷重減衰)を適用してもよい。活性化関数にランプ関数(ReLUなど)を用いた場合には、活性化関数の出力が無限大になることを避けるために局所応答正規化処理を実行するような設定も可能である。 In this embodiment, the setting items for configuring the CNN model are limited to the above, but additional setting items may be provided in each layer in order to improve the learning speed and generalization performance of the model. For example, in order to avoid large fluctuations in the distribution of the feature map due to changes in the parameter values each time learning is performed, batch normalization processing may be performed before applying the activation function, or inventory diagnosis type. Regularization (load attenuation) may be applied to learn the parameters that do not contribute to the classification of. When a ramp function (ReLU, etc.) is used as the activation function, it is possible to set to execute the local response normalization process in order to prevent the output of the activation function from becoming infinite.

次に、教師データを用いてCNNモデルを学習する方法を定めたCNNモデル学習設定データT204がメモリ上で保持される形式の例を表4に示す。 Next, Table 4 shows an example of a format in which the CNN model learning setting data T204, which defines a method for learning the CNN model using the teacher data, is held in the memory.

Figure 0007096708000004
Figure 0007096708000004

エポック数とイテレート数とは、学習の回数を規定する項目である。学習はエポック数×イテレート数だけ実行される。
バッチサイズは、教師データ全体の品目集合から任意に抽出される品目の数である。抽出された部分品目集合は1回の学習に用いられる教師データとなる。損失関数は、教師データである品目のPSIデータを入力してCNNモデルから出力された診断結果種別と、当該品目の実際の診断結果種別との誤差を求める関数である。ニューラルネットワークにおける学習とは、教師データを用いて損失関数を最小化するようにCNNモデルのパラメータ値を更新することである。パラメータ更新法とは、損失関数を各パラメータで微分したときの勾配情報を用いてパラメータ値を更新する方法である。学習率とはパラメータ更新時に勾配情報をどの程度割合で反映させるかを規定する項目である。
The number of epochs and the number of iterators are items that define the number of learnings. Learning is executed by the number of epochs x the number of iterators.
The batch size is the number of items arbitrarily extracted from the item set of the entire teacher data. The extracted subitem set becomes the teacher data used for one learning. The loss function is a function for inputting PSI data of an item which is teacher data and obtaining an error between the diagnosis result type output from the CNN model and the actual diagnosis result type of the item. Learning in a neural network is to update the parameter values of the CNN model to minimize the loss function using the teacher data. The parameter update method is a method of updating the parameter value using the gradient information when the loss function is differentiated by each parameter. The learning rate is an item that defines how much the gradient information is reflected when updating the parameters.

在庫診断設定データT205がメモリ上で保持される形式の例を表5に示す。 Table 5 shows an example of the format in which the inventory diagnosis setting data T205 is held in the memory.

Figure 0007096708000005
Figure 0007096708000005

診断結果種別は在庫診断の選択肢を定義したものである。これらの選択肢は、教師データの診断結果種別やCNNモデルの出力と対応付けられる。診断要因表示では、ある品目のPSIデータを入力した場合のCNNモデルの出力(即ち当該品目のCNNモデルによる在庫診断結果)と強く関連する部分を、畳み込み層で抽出された特徴量の情報を用いて診断根拠として画面表示する方法を設定する。最大寄与期間とは、在庫診断結果に最も大きく寄与する特徴量に対応したPSIデータの期間を診断根拠として表示する。ヒートマップとは、フィルタごとの診断結果への平均寄与度を重みとして、入力されたPSIデータの畳み込みから得られる特徴マップの重み付き線形和を求め、その線形和を当該畳み込み期間の関連度合の強さと見なし、畳み込み期間ごとの関連度合の強さを診断根拠として表示する。要因採択期間とは、CNNモデルによる在庫診断結果に寄与するデータ期間が当該採択期間内ある場合に限り問題在庫と見なすための設定である。これは、例えばある品目の診断結果と強く関連する期間が診断時点から10か月前として推定された場合、当該期間のPSIデータの状況に問題があることが分かっても実務上対処できないため、直近のPSIデータの状況に問題がある品目に着目して診断結果を得ることを目的としている。本実施の形態では、診断対象品目のデータ期間がそのまま設定されているが、上記のようなケースでは診断時点から3ヶ月前までのような直近の期間が設定される。 The diagnosis result type defines the options for inventory diagnosis. These options are associated with the diagnostic result type of teacher data and the output of the CNN model. In the diagnostic factor display, the part strongly related to the output of the CNN model when the PSI data of a certain item is input (that is, the inventory diagnosis result by the CNN model of the item) is used with the information of the feature amount extracted by the convolutional layer. Set the method of displaying on the screen as the basis for diagnosis. The maximum contribution period is the period of PSI data corresponding to the feature amount that contributes most to the inventory diagnosis result, and is displayed as the basis for diagnosis. In the heat map, the weighted linear sum of the feature map obtained from the convolution of the input PSI data is obtained by weighting the average contribution to the diagnosis result for each filter, and the linear sum is the relevance of the convolution period. It is regarded as strength, and the strength of the degree of relevance for each convolution period is displayed as the basis for diagnosis. The factor adoption period is a setting for considering the inventory as a problem only when the data period that contributes to the inventory diagnosis result by the CNN model is within the adoption period. This is because, for example, if the period strongly related to the diagnosis result of a certain item is estimated to be 10 months before the diagnosis time, even if it is found that there is a problem with the PSI data of the period, it cannot be dealt with in practice. The purpose is to obtain diagnostic results by focusing on items that have problems with the latest PSI data. In the present embodiment, the data period of the item to be diagnosed is set as it is, but in the above case, the latest period such as 3 months before the diagnosis is set.

次に、在庫管理担当者は、在庫管理装置1のモデル構築部1-2を用いてCNNモデル構成設定データで設定されたCNNモデルを構築する。 Next, the person in charge of inventory management constructs a CNN model set by the CNN model configuration setting data using the model construction unit 1-2 of the inventory management device 1.

図3は、モデル構築の流れを示すフローチャート図である。モデル構築処理は、処理が開始されると(ステップS1)、CNNモデル構成設定データの層番号ごとに繰り返し実行される(ステップS2~S7)。
ステップS3で層番号を判定し、層番号iが1のときは入力層であり、ステップS4において、モデル構築部1-2は入力層に投入される品目の数を行数、データ長×チャネル数を列数とする行列Xを生成し、すべての要素を0で初期化する。層番号iが5のときは出力層であり、ステップS9においてモデル構築部1-2は投入された品目の数を行数、次元を列数とする行列Yを生成し、すべての要素を0で初期化する。層番号iが2~4のときは隠れ層である。ステップS5において、モデル構築部1-2は、畳み込み層の場合にはまずフィルタ幅×チャネル数を行数、フィルタ数を列数とするパラメータ行列Wを生成して各要素を平均0・標準偏差1の正規乱数値で初期化する。次に、ステップS6において、フィルタ数の要素を持つバイアスパラメータベクトルbを生成して各要素を0に初期化する。全結合層の場合には、モデル構築部1-2は、まず入力次元を行数、出力次元を列数とするパラメータ行列Wを生成して平均0・標準偏差1の正規乱数値で初期化する。次に、ステップS6において、出力次元を要素に持つバイアスパラメータベクトルbを生成して各要素を0に初期化する。パラメータWやbの初期化は、CNNモデル構成設定データT203の設定を変更してHeの初期化など別の手法を適用してもよい。
FIG. 3 is a flowchart showing the flow of model construction. When the process is started (step S1), the model construction process is repeatedly executed for each layer number of the CNN model configuration setting data (steps S2 to S7).
The layer number is determined in step S3, and when the layer number i is 1, it is an input layer. In step S4, the model building unit 1-2 determines the number of items to be input to the input layer as the number of rows, data length × channel. Generate a matrix X whose number is the number of columns, and initialize all the elements with 0. When the layer number i is 5, it is an output layer, and in step S9, the model building unit 1-2 generates a matrix Y having the number of input items as the number of rows and the dimension as the number of columns, and all the elements are 0. Initialize with. When the layer number i is 2 to 4, it is a hidden layer. In step S5, in the case of the convolutional layer, the model building unit 1-2 first generates a parameter matrix Wi with the filter width × the number of channels as the number of rows and the number of filters as the number of columns, and averages 0 / standard for each element. Initialize with a normal random value with a deviation of 1. Next, in step S6, a bias parameter vector bi having elements of the number of filters is generated, and each element is initialized to 0 . In the case of a fully connected layer, the model construction unit 1-2 first generates a parameter matrix Wi with the input dimension as the number of rows and the output dimension as the number of columns, and initially uses a normal random number value with an average of 0 and a standard deviation of 1. To become. Next, in step S6, a bias parameter vector bi having an output dimension as an element is generated, and each element is initialized to 0 . For the initialization of the parameters Wi and bi, another method such as the initialization of He may be applied by changing the setting of the CNN model configuration setting data T203 .

次に、在庫管理担当者は、在庫管理装置1のモデル学習部1-3を用いて教師データT202に基づくCNNモデルの学習を実行する。モデル学習部1-3による学習処理の概略を図4に示す。 Next, the person in charge of inventory management executes learning of the CNN model based on the teacher data T202 by using the model learning unit 1-3 of the inventory management device 1. FIG. 4 shows an outline of the learning process by the model learning unit 1-3.

図4に示すように、処理が開始されると(ステップS11)、モデル学習部1-3による学習処理は、エポック数×イテレート数の回数だけ繰り返し実行される(S12~S20)。1回のイテレートにおいて、ステップS14に示すように、モデル学習部1-3は、まず教師データT202にある1000品目からバッチサイズの20品目を一様乱数に従い選択する。次に、ステップS15、S16において、選択された20品目に関する1年間のPSIデータと診断結果種別のペアを当該イテレートの教師データとして学習処理を実行する。学習は順伝播と逆伝播の2つの処理で構成される。ステップS15の順伝播処理U303とは、CNNモデルの現状のパラメータ値に基づき教師データを入力層から出力層まで伝播させる処理である。順伝播の詳細な処理フローを図5に示す。ステップS16の逆伝播処理U304とは、順伝播の出力値と教師データの診断結果種別から求められる誤差を出力層から入力層まで伝播させることで、損失関数におけるパラメータの勾配を計算する処理である。逆伝播の詳細な処理フローを図6に示す。尚、学習時の図5、図6におけるNは20である。 As shown in FIG. 4, when the process is started (step S11), the learning process by the model learning unit 1-3 is repeatedly executed as many times as the number of epochs × the number of iterators (S12 to S20). In one iterator, as shown in step S14, the model learning unit 1-3 first selects 20 batch-sized items from 1000 items in the teacher data T202 according to a uniform random number. Next, in steps S15 and S16, the learning process is executed using the pair of the PSI data for one year and the diagnosis result type for the selected 20 items as the teacher data of the itilate. Learning consists of two processes, forward propagation and back propagation. The forward propagation process U303 in step S15 is a process of propagating the teacher data from the input layer to the output layer based on the current parameter values of the CNN model. The detailed processing flow of forward propagation is shown in FIG. The back propagation process U304 in step S16 is a process of calculating the gradient of the parameter in the loss function by propagating the error obtained from the output value of forward propagation and the diagnosis result type of the teacher data from the output layer to the input layer. .. The detailed processing flow of back propagation is shown in FIG. In addition, N in FIGS. 5 and 6 at the time of learning is 20.

最後に、モデル学習部1-3は、ステップS17に示すように、逆伝播で得られたパラメータの勾配情報を用いてパラメータ値を更新する。例えば本実施の形態で設定されたAdaGrad法では、i番目(2≦i≦4)の層のパラメータWとbはそれぞれ以下のように更新される。 Finally, as shown in step S17, the model learning unit 1-3 updates the parameter value using the gradient information of the parameter obtained by the back propagation. For example, in the AdaGrad method set in the present embodiment, the parameters Wi and bi of the i -th (2 ≦ i ≦ 4) layer are updated as follows, respectively.

Figure 0007096708000006
Figure 0007096708000006

ここで、hとhの初期値は0、およびαは学習率である。SGDやAdamなどAdaGrad以外の更新法を設定してもよい。
このように、教師データ全体から一部のデータをランダムに選択し、当該データを用いたCNNモデルの出力と実際の出力との誤差に基づき、モデルのパラメータ更新を繰り返すことで、モデル出力と実際の出力との誤差を小さくするパラメータ値を得ることができる。特に、畳み込み層の主要パラメータWは、教師データとして与えられた1年間のPSI時系列データから、「ある期間における販売減少の中で多量の生産をした結果在庫が過剰になっている」のような、担当者のノウハウに相当するPSIの相互関係を考慮した上で、診断結果種別と相関する各時系列データの特徴をフィルタ幅の範囲で学習している。
Here, the initial values of h w and h b are 0, and α is the learning rate. An update method other than AdaGrad, such as SGD or Adam, may be set.
In this way, some data is randomly selected from the entire teacher data, and the model output and the actual model output and the actual model output are repeated based on the error between the output of the CNN model using the data and the actual output. It is possible to obtain a parameter value that reduces the error with the output of. In particular, the main parameter W2 of the convolutional layer is based on the one - year PSI time-series data given as teacher data, "the inventory is excessive as a result of mass production in a certain period of sales decline." In consideration of the mutual relationship of PSI corresponding to the know-how of the person in charge, the characteristics of each time-series data that correlates with the diagnosis result type are learned within the range of the filter width.

本実施の形態の学習処理では、10回のイテレートを繰り返すと1回のエポックが終了する。次のエポックに進む前に、一様乱数のシードを変更しているが、これは必須の処理ではない。今回の設定では、エポック数×イテレート数×バッチサイズは1,000になるため、全エポックの学習処理が終了すると、乱数の一様性から教師データ全ての品目のPSIデータと診断結果種別の関係を1回ずつ学習する。 In the learning process of the present embodiment, one epoch ends when the iterator is repeated 10 times. Before moving on to the next epoch, I changed the seed of the uniform random number, but this is not a required process. With this setting, the number of epochs x number of iterates x batch size is 1,000, so when the learning process for all epochs is completed, the relationship between the PSI data of all items and the diagnosis result type from the uniformity of random numbers. Learn once.

次に、在庫管理担当者は、在庫診断部1-4を用いて、診断対象である例えば100品目の在庫診断を実施する。対象品目の診断は、投入品目数N=100として各品目の365日分の標準化済みPSIデータを1行に格納した100×1095行列Xを入力層とし、学習済みパラメータを持つCNNモデルの順伝播出力を求めればよい。手順は図5に示す学習時の順伝播と同様であるが、隠れ層の一定割合のユニットをランダムに無効化するドロップアウトについては診断時には実施せず、当該層への入力行列を(1-ドロップアウト率)倍してそのまま次の層に伝播させる。出力行列Yの各行には対象品目のソフトマックス値(各診断結果種別の分類確率)が格納されているので、最も値の大きな(分類確率最大となる)列番号がモデルから予測される診断結果種別として得られる。 Next, the person in charge of inventory management uses the inventory diagnosis unit 1-4 to perform inventory diagnosis of, for example, 100 items to be diagnosed. For the diagnosis of the target item, the input layer is a 100 × 1095 matrix X in which the standardized PSI data for 365 days of each item is stored in one row with the number of input items N = 100, and the forward propagation of the CNN model with learned parameters is performed. You just need to find the output. The procedure is the same as the forward propagation during learning shown in FIG. 5, but the dropout that randomly invalidates a certain percentage of units in the hidden layer is not performed at the time of diagnosis, and the input matrix to the layer is (1- Dropout rate) is multiplied and propagated to the next layer as it is. Since the softmax value (classification probability of each diagnosis result type) of the target item is stored in each row of the output matrix Y, the diagnosis result in which the column number with the largest value (maximum classification probability) is predicted from the model. Obtained as a type.

次に、在庫管理担当者は、要因推定部1-5を用いて、CNNモデルによる在庫診断の根拠として診断結果に大きく寄与したPSIデータの領域を求める。要因特定の流れを図7に示す。要因特定の方法は、診断要因提示の選択項目によって詳細は異なるものの、診断結果種別の分類確率に大きく寄与する畳み込み領域の位置や特徴マップの値を当該層における勾配情報から求めるという点では共通している。
CNNモデルの順伝播処理は、図5に示すように、まずステップS31において処理を開始し、ステップS32において、入力層ユニットに入力するデータの生成処理を行う。例えば、投入品目数をNとした入力層のN×1095の行列Xに対して,教師データまたは診断対象として選定された品目j(j=1,…,N)の365日分の標準化済みPSIデータをXのj行目のデータとして格納する。
Next, the person in charge of inventory management uses the factor estimation unit 1-5 to obtain a region of PSI data that greatly contributes to the diagnosis result as a basis for inventory diagnosis by the CNN model. Figure 7 shows the flow of factor identification. Although the details of the factor identification method differ depending on the selection items for presenting the diagnostic factors, they are common in that the position of the convolution area and the value of the feature map, which greatly contribute to the classification probability of the diagnosis result type, are obtained from the gradient information in the layer. ing.
As shown in FIG. 5, in the forward propagation process of the CNN model, first, the process is started in step S31, and in step S32, the process of generating the data to be input to the input layer unit is performed. For example, for the matrix X of N × 1095 of the input layer where the number of input items is N, the standardized PSI for 365 days of the item j (j = 1, ..., N) selected as the teacher data or the diagnosis target. The data is stored as the data on the jth line of X.

ステップS33において、畳み込みを行列演算で実行するための変換(前処理)を行う。例えば、行列Xを(品目数×畳み込み領域数)×(フィルタ幅×チャネル数)の行列Xに変換する。但し、畳み込み領域数は(データ長-フィルタ幅)/ストライド+1として計算され,今回は(365-90)/1+1=276となる。行列Xの各行には、品目ごとにフィルタ幅をストライドして得られる畳み込み対象期間のPSIデータが格納される。
ステップS34において、データから特徴量を抽出するフィルタの畳み込み処理を行う。例えば、畳み込み演算X’=X×W+bを実行し、(品目数×畳み込み領域数)×フィルタ数の行列X’を計算する。但し、X×W+bにおける行列とベクトルの和は、ベクトルのk番目の要素の値を行列のk列目の各要素に加算する処理とする。
In step S33, conversion (preprocessing) for executing convolution by matrix operation is performed. For example, the matrix X is converted into a matrix X 2 of (number of items × number of convolution areas) × (filter width × number of channels). However, the number of convolution areas is calculated as (data length-filter width) / stride + 1, and this time it is (365-90) / 1 + 1 = 276. In each row of the matrix X2, PSI data of the convolution target period obtained by striding the filter width for each item is stored.
In step S34, a filter convolution process for extracting a feature amount from the data is performed. For example, the convolution operation X'= X 2 × W 2 + b 2 is executed, and the matrix X'of (the number of items × the number of convolution areas) × the number of filters is calculated. However, the sum of the matrix and the vector in X 2 × W 2 + b 2 is a process of adding the value of the k-th element of the vector to each element of the k-th column of the matrix.

ステップS35において、前処理のデータ変換を元に戻す後処理を行う。例えば、行列X’を品目数×(畳み込み領域数×フィルタ数)の行列X’’に変換する。N×2760の行列X’’の各行には、品目ごとにフィルタ幅でPSIデータを畳み込んだ276個の反応値をフィルタの数だけ格納する。
ステップS36において、畳み込み層各ユニットの出力値計算処理を行う。例えば、N×2760の行列XをX=tanh(X’’)として計算する。但し,行列X’’に対する活性化関数の適用は,行列の各要素に対して活性関数の値を求める処理とする。行列Xは品目ごとの特徴マップである。
ステップS37において、順伝播処理がモデル学習で実行されているのか、対象品目の診断で実行されているのかを判定する。Yesの場合には、ステップS38に進み、Noの場合にはステップS43に進む。
ステップS38においては、モデルの過学習を防ぐため全結合層の複数ユニットを任意に選択して無効化する処理を行う。例えば、行列Xの要素をドロップアウト率でランダムに0にする。
In step S35, post-processing for undoing the data conversion of the pre-processing is performed. For example, the matrix X'is converted into a matrix X'' of the number of items × (the number of convolution areas × the number of filters). In each row of the matrix X'' of N × 2760, 276 reaction values obtained by convolving PSI data with the filter width for each item are stored as many as the number of filters.
In step S36, the output value calculation process of each unit of the convolution layer is performed. For example, the matrix X 3 of N × 2760 is calculated as X 3 = tanh (X''). However, the application of the activation function to the matrix X'' is the process of obtaining the value of the activation function for each element of the matrix. The matrix X 3 is a feature map for each item.
In step S37, it is determined whether the forward propagation process is executed by model learning or by diagnosing the target item. If Yes, the process proceeds to step S38, and if No, the process proceeds to step S43.
In step S38, in order to prevent overfitting of the model, a process of arbitrarily selecting and invalidating a plurality of units of the fully connected layer is performed. For example, the elements of the matrix X3 are randomly set to 0 at the dropout rate.

一方、ステップS43においては、過学習低減効果を診断時に反映させる処理を行う。例えば、行列X=(1-ドロップアウト率)×Xとする。次いで、ステップS38,S43から、ステップS39に進み、複数フィルタの畳み込み結果を1つに集約する全結合処理を行う。例えば、活性化関数の適用を含む全結合処理X=tanh(X×W+b)を実行し、N×276の行列Xを計算する。行列とベクトルの和算の方法や行列に対する活性化関数の適用は上記と同様である。
次いで、ステップS40に進み、集約した畳み込み結果を診断種別と関連付ける全結合処理を行う。例えば、全結合処理X=X×W+bを実行し、N×3の行列Xを計算する。行列とベクトルの和算の方法は上記と同様である。
On the other hand, in step S43, a process of reflecting the overfitting reduction effect at the time of diagnosis is performed. For example, let the matrix X 3 = (1-dropout rate) × X 3 . Next, from steps S38 and S43, the process proceeds to step S39, and a full combination process is performed in which the convolution results of the plurality of filters are aggregated into one. For example, the full binding process X 4 = tanh (X 3 × W 3 + b 3 ) including the application of the activation function is executed, and the matrix X 4 of N × 276 is calculated. The method of summing a matrix and a vector and the application of the activation function to the matrix are the same as above.
Next, the process proceeds to step S40, and a full binding process is performed in which the aggregated convolution results are associated with the diagnosis type. For example, the full join process X 5 = X 4 × W 4 + b 4 is executed, and the matrix X 5 of N × 3 is calculated. The method of summing the matrix and the vector is the same as above.

次いで、ステップS41に進み、診断種別との関連度合を分類確率で出力する処理(出力層出力)を行う。例えば、N×3の行列Yの各要素にsoftmax(X)の結果を代入する。ここで。softmax関数は行列Xの各行に対してソフトマックス値(各診断結果種別に分類される確率)を求める関数である。そして、処理を終了する(ステップS42)。 Next, the process proceeds to step S41, and a process (output layer output) of outputting the degree of association with the diagnosis type with the classification probability is performed. For example, the result of softmax (X 5 ) is assigned to each element of the matrix Y of N × 3. here. The softmax function is a function for obtaining a softmax value (probability of being classified into each diagnosis result type) for each row of the matrix X5 . Then, the process is terminated (step S42).

CNNモデルの逆伝播処理は、図6に示すように、まずステップS51において処理を開始し、ステップS52において、出力層出力と教師出力の誤差に対して分類確率変換の勾配(偏微分)を求める処理を行う。例えば、各品目の実際の診断結果種別(0~2)を出力層と同じ3次元のonehotベクトルに変換してN×3の行列Tを生成し,出力行列Yと教師ラベル行列Tの交差エントロピー誤差に基づくsoftmax関数の勾配行列dX=(Y-T)/Nを前層の全結合層に逆伝播する。 As shown in FIG. 6, in the back propagation process of the CNN model, the process is first started in step S51, and in step S52, the gradient (partial differential) of the classification probability conversion is obtained for the error between the output layer output and the teacher output. Perform processing. For example, the actual diagnosis result type (0 to 2) of each item is converted into the same three-dimensional onehot vector as the output layer to generate an N × 3 matrix T, and the cross entropy of the output matrix Y and the teacher label matrix T is generated. The gradient matrix dX4 = (YT) / N of the softmax function based on the error is back-propagated to the fully connected layer of the previous layer.

ステップS53において、誤差に対する第4層の全結合層の出力とパラメータの勾配を求める処理を行う。例えば、N×276の出力勾配行列dX=dX×W を前層の全結合層に逆伝播する。但し、W はWの転置行列を意味する。また、当該層のパラメータWの勾配をdW=X ×dX、パラメータbの勾配をdb=sum(dX)として求める。ここでsum関数は行列の各列の和を要素とするベクトルを出力する関数である。
ステップS54において、誤差に対する第3層の全結合層の出力とパラメータの勾配を求める処理を行う。例えば、tanh関数の勾配行列dX’をdX’=dX*(I-X*X)で求め、N×2760の出力勾配行列dX=dX’×W を前層の畳み込み層に逆伝播する。但し、Iは全要素が1のN×2760行列であり、演算子*は行列の要素ごとの積を求める演算である。また,当該層のパラメータWの勾配をdW=X ×dX’、パラメータbの勾配をdb=sum(dX’)として求める。
In step S53, a process of obtaining the output of the fully connected layer of the fourth layer and the gradient of the parameter with respect to the error is performed. For example, the output gradient matrix dX 3 = dX 4 × W 4 t of N × 276 is back-propagated to the fully connected layer of the previous layer. However, W 4 t means the transposed matrix of W 4 . Further, the gradient of the parameter W 4 of the layer is obtained as dW 4 = X 4 t × dX 4 , and the gradient of the parameter b 4 is obtained as db 4 = sum (dX 4 ). Here, the sum function is a function that outputs a vector whose element is the sum of each column of the matrix.
In step S54, a process of obtaining the output of the fully connected layer of the third layer and the gradient of the parameter with respect to the error is performed. For example, the gradient matrix dX'of the tanh function is obtained by dX'= dX 3 * (I-X 4 * X 4 ), and the output gradient matrix dX 2 = dX'x W 3 t of N × 2760 is obtained by the convolution layer of the front layer. It propagates back to. However, I is an N × 2760 matrix in which all the elements are 1, and the operator * is an operation for obtaining the product of each element of the matrix. Further, the gradient of the parameter W 3 of the layer is obtained as dW 3 = X 3 t × dX', and the gradient of the parameter b 3 is obtained as db 3 = sum (dX').

ステップS55において、順伝播で無効化したユニットの逆伝播を無効にする処理を行う。例えば、順伝播のドロップアウトで0にした行列Xの要素に対応する行列dXの要素を0にする。
ステップS56において、誤差に対する特徴マップの勾配を求める処理を行う。例えば、tanh関数の勾配行列dX’をdX’=dX*(I-X*X)で求める。
ステップS57において、畳み込み層の出力勾配とパラメータ勾配を行列演算で求めるための前処理を行う。例えば、N×2760の行列dX’を(品目数×畳み込み領域数)×フィルタ数の行列dX’’に変換する。dX’の各行には、各品目の276個の反応値に対する損失関数の勾配がフィルタの数だけ格納されている。そこでdX’の各行をフィルタ単位で分割し、品目別・畳み込み領域別に損失関数の勾配を並び替え、dX’’の各行に格納する。
In step S55, a process of invalidating the back propagation of the unit invalidated by the forward propagation is performed. For example, the element of the matrix dX2 corresponding to the element of the matrix X3 that was set to 0 in the forward propagation dropout is set to 0.
In step S56, a process of obtaining the gradient of the feature map with respect to the error is performed. For example, the gradient matrix dX'of the tanh function is obtained by dX'= dX 2 * (IX 3 * X 3 ).
In step S57, preprocessing is performed to obtain the output gradient and the parameter gradient of the convolution layer by matrix operation. For example, the matrix dX'of N × 2760 is converted into the matrix dX'' of (number of items × number of convolution areas) × number of filters. In each row of dX', the gradient of the loss function for 276 reaction values of each item is stored as many as the number of filters. Therefore, each row of dX'is divided into filter units, the gradient of the loss function is sorted by item and convolution area, and stored in each row of dX''.

ステップS58において、誤差に対する畳み込み層の出力勾配とパラメータ勾配を求める処理を行う。例えば、以下の式、(品目数×畳み込み領域数)×(フィルタ幅×チャネル数)の出力勾配行列dX=dX’’×W を計算する。また、当該層のパラメータWの勾配をdW=X ×dX’’、パラメータbの勾配をdb=sum(dX’’)/畳み込み領域数、として求める。
ステップS59において、前処理のデータ変換を元に戻す後処理を行う。例えば、(品目数×畳み込み領域数)×(フィルタ幅×チャネル数)の勾配行列dXをN×1095の行列dXに変換し、入力層へ逆伝播し、処理を終了する(ステップS60)。
In step S58, a process of obtaining the output gradient and the parameter gradient of the convolution layer with respect to the error is performed. For example, the following formula, (number of items × number of convolution areas) × (filter width × number of channels) output gradient matrix dX 1 = dX'' × W 2 t is calculated. Further, the gradient of the parameter W 2 of the layer is obtained as dW 2 = X 2 t × dX'', and the gradient of the parameter b 2 is obtained as db 2 = sum (dX'') / the number of convolution regions.
In step S59, post-processing for undoing the data conversion of the pre-processing is performed. For example, the gradient matrix dX 1 of (number of items × number of convolution areas) × (filter width × number of channels) is converted into a matrix dX of N × 1095, back-propagated to the input layer, and the process is terminated (step S60).

図7は、要因推定部1-5の処理の流れの一例を示すフローチャート図である。処理が開始され(ステップS61)、ステップS62において、最大の関連度合となる診断種別以外の影響を取り除く処理を行う。例えば、N個の診断対象品目のPSIデータを第4層の全結合層まで順伝播したN×3行列Xの各行に対して,最大値をとる列以外の列の値を0にした行列dXを求める。
ステップS63において、関連度合に対する全結合層の出力勾配を求める処理を行う。例えば、N×276の勾配行列dX=dX×W を前層の全結合層に逆伝播する。
ステップS64において、関連度合に対する全結合層の出力勾配を求める処理を行う。例えば、tanh関数の勾配行列dX’をdX’=dX* (I-X*X)で求め、N×276の勾配行列dX=dX’×W を前層の畳み込み層に逆伝播する。
ステップS65において、過学習低減効果を勾配計算に反映させる処理を行う。例えば、dX=(1-ドロップアウト率)×dXとして畳み込み層に逆伝播する。
FIG. 7 is a flowchart showing an example of the processing flow of the factor estimation unit 1-5. The process is started (step S61), and in step S62, a process for removing the influence other than the diagnosis type having the maximum degree of relevance is performed. For example, for each row of the N × 3 matrix X5 in which the PSI data of N items to be diagnosed are forward-propagated to the fully connected layer of the fourth layer, the values of the columns other than the column having the maximum value are set to 0. Find dX 4 .
In step S63, a process of obtaining the output gradient of the fully connected layer with respect to the degree of relevance is performed. For example, the gradient matrix dX 3 = dX 4 × W 4 t of N × 276 is back-propagated to the fully connected layer of the previous layer.
In step S64, a process of obtaining the output gradient of the fully connected layer with respect to the degree of relevance is performed. For example, the gradient matrix dX'of the tanh function is obtained by dX'= dX 3 * (I-X 4 * X 4 ), and the gradient matrix dX 2 = dX'x W 3 t of N × 276 is used as the convolution layer of the front layer. Backpropagate.
In step S65, a process of reflecting the overfitting reduction effect in the gradient calculation is performed. For example, it propagates back to the convolution layer as dX 2 = (1-dropout rate) × dX 2 .

ステップS66において、提示方法を判定する。提示方法が、最大寄与期間である場合には、ステップS67に進み、提示方法が、ヒートマップである場合には、ステップS70に進む。
ステップS67においては、関連度合に対する特徴マップの勾配を求める処理を行う。例えば、tanh関数の勾配行列dX’をdX’=dX*(I-X*X)で求める。次いで、ステップS68において、最大勾配となる畳み込み層ユニットに対応するフィルタと,当該フィルタを畳み込んだ領域を特定する処理を行う。例えば、N×2760の行列dX’の各行に対し、最大値を取る列番号cを求め、cを畳み込み領域数で割ったときの商+1をフィルタ番号f、余りrをフィルタfにおける畳み込み領域の位置として格納したN×2の行列Zを生成し、処理を終了する(ステップS69)。
In step S66, the presentation method is determined. If the presentation method is the maximum contribution period, the process proceeds to step S67, and if the presentation method is a heat map, the process proceeds to step S70.
In step S67, a process of obtaining the gradient of the feature map with respect to the degree of relevance is performed. For example, the gradient matrix dX'of the tanh function is obtained by dX'= dX 2 * (IX 3 * X 3 ). Next, in step S68, a process of specifying a filter corresponding to the convolutional layer unit having the maximum gradient and a region in which the filter is convoluted is performed. For example, for each row of the matrix dX'of N × 2760, the column number c that takes the maximum value is obtained, and the quotient +1 when c is divided by the number of convolution areas is the filter number f, and the remainder r is the convolution area in the filter f. The N × 2 matrix Z stored as a position is generated, and the process is terminated (step S69).

ステップS70において、フィルタごとに関連度合に対する特徴マップの重みを求める処理を行う。例えば、N×2760の勾配行列dXの各行に対し、フィルタごとに得られる特徴マップの勾配の平均値を格納したN×10の行列Aを生成する。
ステップS71において、入力データに対するフィルタ畳み込み後の重み付き出力を求める処理を行う。例えば、診断対象品目のPSIデータを第2層の畳み込み層まで順伝播したN×2760の特徴マップ行列Xの各行に対して、フィルタ番号f(f=1,…,10)の特徴マップが(f-1)×276+1列目~f×276列目に格納されていることを考慮して、(f-1)×276+1列目~f×276列目の値に行列Aのf列目の値を乗算し、行列Bを生成する。
In step S70, a process of obtaining the weight of the feature map with respect to the degree of relevance is performed for each filter. For example, for each row of the gradient matrix dX2 of N × 2760, an N × 10 matrix A storing the average value of the gradients of the feature map obtained for each filter is generated.
In step S71, a process of obtaining a weighted output after filter convolution for the input data is performed. For example, for each row of the feature map matrix X3 of N × 2760 that forward propagates the PSI data of the item to be diagnosed to the convolutional layer of the second layer, the feature map of the filter number f (f = 1, ..., 10) is Considering that it is stored in the (f-1) × 276 + 1st column to the f × 276th column, the value in the (f-1) × 276 + 1st column to the f × 276th column is the fth column of the matrix A. Multiplies the values of to generate the matrix B.

ステップS72において、重み付き出力からフィルタを畳み込んだ各領域のヒートマップの濃度を求める処理を行う。例えば、N×2760の行列Bの各行に対して、フィルタfごとにm番目(m=1,…,256)にある重み付き特徴マップの値を足し合わせる。m番目の和が0より大きい場合は当該値、0以下の場合は0を格納したN×276の行列Zを生成する。
そして、ステップS68,S72から、処理を終了する(ステップS69)。
In step S72, a process of obtaining the density of the heat map of each region in which the filter is folded is performed from the weighted output. For example, for each row of the matrix B of N × 2760, the values of the weighted feature maps at the mth (m = 1, ..., 256) are added for each filter f. If the sum of the mth th is greater than 0, the value is generated, and if it is 0 or less, a matrix Z of N × 276 containing 0 is generated.
Then, the processing is terminated from steps S68 and S72 (step S69).

次に、在庫管理担当者は、画面表示部1-6を用いて、CNNモデルによる診断対象品目の在庫診断結果や診断根拠となる要因を画面上に可視化する。
図8および図9は、従来技術における診断対象品目の在庫サムネイル一覧画面やPSI詳細画面での表示例を示す図である。これに対し図10は、CNNモデルによる在庫診断結果および要因とされる最大寄与領域を在庫サムネイル一覧画面上に可視化した例である。CNNモデルによる在庫診断結果は、問題在庫と診断された各品目の在庫サムネイルの枠に重ねられた矩形として可視化される。
矩形の線は、問題の種別ごとに異なる色又は線種(太線,破線、一点鎖線等)となっていることが好ましい。また、最大寄与領域は在庫グラフ上で一定の透過率で塗りつぶされた矩形として可視化される。最大寄与領域の表示位置は、要因推定部1-5の出力である行列Zの畳み込み領域の位置rで決めることができる。
Next, the person in charge of inventory management visualizes the inventory diagnosis result of the item to be diagnosed by the CNN model and the factors that are the basis of the diagnosis on the screen by using the screen display unit 1-6.
8 and 9 are diagrams showing display examples on the inventory thumbnail list screen and the PSI detail screen of the items to be diagnosed in the prior art. On the other hand, FIG. 10 is an example of visualizing the inventory diagnosis result by the CNN model and the maximum contribution area which is considered to be a factor on the inventory thumbnail list screen. The inventory diagnosis result by the CNN model is visualized as a rectangle superimposed on the frame of the inventory thumbnail of each item diagnosed as the problem inventory.
It is preferable that the rectangular line has a different color or line type (thick line, broken line, alternate long and short dash line, etc.) depending on the type of problem. In addition, the maximum contribution area is visualized as a rectangle filled with a constant transmittance on the inventory graph. The display position of the maximum contribution region can be determined by the position r of the convolution region of the matrix Z, which is the output of the factor estimation unit 1-5.

加えて、図11は、ある対象品目の診断結果および最大寄与領域による要因をPSI詳細画面上に表示した例である。最大寄与領域はPSI詳細グラフ上で塗りつぶされた矩形として可視化される。矩形上にマウスカーソルを移動させると、当該領域の生産・販売・在庫の状況を文字列で表現した吹き出しが表示されるようにしても良い。
本実施の形態では、最大寄与領域とそれ以外の領域で、販売伸び率・生産回数・生産量・平均在庫をそれぞれ比較することで、診断に最も寄与した期間のPSIの状況が他の期間と比べてどの程度異なっているかの情報を提示することができる。
最大寄与領域のPSIの状況を示す文字列情報であり、診断根拠に対する担当者の理解を促進するものであれば、本実施の形態による表示態様等に限定されるものではない。
In addition, FIG. 11 is an example in which the diagnosis result of a certain target item and the factor due to the maximum contribution area are displayed on the PSI detail screen. The maximum contribution area is visualized as a filled rectangle on the PSI detail graph. When the mouse cursor is moved on the rectangle, a balloon expressing the production / sales / inventory status of the area may be displayed.
In the present embodiment, by comparing the sales growth rate, the number of production times, the production amount, and the average inventory in the maximum contribution area and the other areas, the PSI status of the period that contributed most to the diagnosis is different from that of other periods. Information on how different they are can be presented.
It is not limited to the display mode according to the present embodiment as long as it is character string information indicating the status of PSI in the maximum contribution area and promotes the understanding of the person in charge regarding the diagnostic basis.

さらに図12は、ある対象品目の診断結果およびヒートマップによる要因をPSI詳細画面上で表示した例を示す図である。ヒートマップは、各畳み込み領域の診断結果への寄与度合に応じて色の濃淡を調整した縦線としてPSI詳細グラフ上に表示される。各畳み込み領域の診断結果への寄与度合は、要因推定部1-5の出力である行列Zから求めることができる。
尚、図10、図11、図12における品目の診断結果および要因の可視化において、問題在庫の要因として推定された期間が要因採択期間に含まれる場合に限定することで、より直近のPSIの状況に問題がある品目に着目した在庫診断結果を表示することもできる。
Further, FIG. 12 is a diagram showing an example in which the diagnosis result of a certain target item and the factor by the heat map are displayed on the PSI detailed screen. The heat map is displayed on the PSI detailed graph as a vertical line in which the shade of color is adjusted according to the degree of contribution of each convolution area to the diagnosis result. The degree of contribution of each convolution region to the diagnosis result can be obtained from the matrix Z which is the output of the factor estimation unit 1-5.
In the visualization of the diagnosis results and factors of the items in FIGS. 10, 11, and 12, the most recent PSI situation is limited to the case where the period estimated as the factor of the problem inventory is included in the factor adoption period. It is also possible to display the inventory diagnosis result focusing on the item having a problem with.

在庫管理担当者は、画面表示部1-6で可視化されたCNNモデルによる在庫診断結果やその要因をもとに、問題在庫を解消するための需給調整を図ることができる。また、CNNモデルの診断結果が担当者の判断と異なる場合には、画面上で診断結果を修正することもできる。 The person in charge of inventory management can adjust the supply and demand for solving the problem inventory based on the inventory diagnosis result by the CNN model visualized by the screen display unit 1-6 and its factors. Further, if the diagnosis result of the CNN model is different from the judgment of the person in charge, the diagnosis result can be corrected on the screen.

Figure 0007096708000007
Figure 0007096708000007

さらに、在庫管理担当者は、データ出力部1-7を用いて、診断結果データT206(
表6)に示すような形式で各品目の診断結果を外部ファイルやデータベースに出力することができる。診断結果データはそのまま次の教師データとして用いることができるため、CNNモデルは常に最新の診断結果を学習して今後の在庫診断に反映させることができる。
Further, the person in charge of inventory management uses the data output unit 1-7 to perform the diagnosis result data T206 (
The diagnosis results of each item can be output to an external file or database in the format shown in Table 6). Since the diagnosis result data can be used as it is as the next teacher data, the CNN model can always learn the latest diagnosis result and reflect it in the future inventory diagnosis.

処理および制御は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)によるソフトウェア処理、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)によるハードウェア処理によって実現することができる。 Processing and control can be performed by software processing by CPU (Central Processing Unit) or GPU (Graphics Processing Unit), by ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Hardware).

また、上記の実施の形態において、図示されている構成等については、これらに限定されるものではなく、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
また、本発明の各構成要素は、任意に取捨選択することができ、取捨選択した構成を具備する発明も本発明に含まれるものである。
Further, in the above-described embodiment, the configuration and the like shown in the illustration are not limited to these, and can be appropriately changed within the range in which the effect of the present invention is exhibited. In addition, it can be appropriately modified and implemented as long as it does not deviate from the scope of the object of the present invention.
In addition, each component of the present invention can be arbitrarily selected, and an invention having the selected configuration is also included in the present invention.

本発明は、在庫管理装置に利用可能である。 The present invention can be used for an inventory management device.

1 在庫管理装置
1-1 データ入力部
1-2 モデル構築部
1-3 モデル学習部
1-4 在庫診断部
1-5 要因推定部
1-6 画面表示部
1-7 データ出力部
17 問題在庫に関するPSIデータの特徴を学習するAIモデル
17-1 標準化(正規化)処理
17-2 Conv処理(畳み込み(相関)処理)
33 反応値
17-3 Tanh処理
17-4 Dropout挿入処理
17-5 Affine処理
17-6 Tanh処理
17-7 Affine処理
17-8 Softmax処理
21 出力
1 Inventory management device 1-1 Data input unit 1-2 Model construction unit 1-3 Model learning unit 1-4 Inventory diagnosis unit 1-5 Factor estimation unit 1-6 Screen display unit 1-7 Data output unit 17 Problem inventory AI model for learning the characteristics of PSI data 17-1 Standardization (normalization) processing 17-2 Conv processing (convolution (correlation) processing)
33 Reaction value 17-3 Tanh processing 17-4 Dropout insertion processing 17-5 Affine processing 17-6 Tanh processing 17-7 Affine processing 17-8 Softmax processing 21 Output

Claims (4)

入力された品目の生産・販売・在庫(PSI)のデータを用いて当該品目が問題在庫か否かを診断し、かつ、前記品目が問題在庫と診断された場合に、診断結果に所定の寄与度以上に寄与した期間のPSIデータの推移状況を診断の根拠あるいは問題在庫の要因として出力する在庫管理装置であって、
前記PSIデータに基づく需給バランスの変化を、畳み込みニューラルネットワークモデルを用いて特徴量として、前記特徴量に基づいて前記品目が問題在庫であるか否かを表す情報を出力するよう学習させるデータ学習部と、
学習済みの前記畳み込みニューラルネットワークモデルに対し、診断対象品目のPSIデータを入力して当該品目に対する在庫診断を実行する在庫診断部と、を有することを特徴とする在庫管理装置。
If the input item's production / sales / inventory (PSI) data is used to diagnose whether the item is problematic inventory and the item is diagnosed as problematic inventory, a predetermined contribution to the diagnosis result. It is an inventory management device that outputs the transition status of PSI data during the period that contributed more than once as the basis of diagnosis or the factor of problem inventory.
A data learning unit that learns to output information indicating whether or not the item is in question stock based on the feature amount, using the change in the supply-demand balance based on the PSI data as a feature amount using a convolutional neural network model. When,
An inventory management device comprising, for the convolutional neural network model that has been trained, an inventory diagnosis unit that inputs PSI data of an item to be diagnosed and executes an inventory diagnosis for the item.
前記在庫診断部による前記診断の結果が問題在庫である場合に、学習済み畳み込みニューラルネットワークモデルの出力層から入力層の後に配置される畳み込み層まで逆伝播することにより、フィルタ幅の期間で逐次PSIデータに畳み込んだフィルタまたはそこから得られる特徴マップに対する診断結果への寄与度を求め、所定の寄与度以上の畳み込み領域にあたる期間のPSIデータを診断の根拠あるいは問題在庫の要因として推定する要因推定部を有することを特徴とする請求項1に記載の在庫管理装置。 When the result of the diagnosis by the inventory diagnosis unit is problem stock, it propagates back from the output layer of the trained convolutional neural network model to the convolutional layer arranged after the input layer, thereby sequentially PSI in the period of the filter width. Factor estimation that obtains the contribution to the diagnosis result for the filter convolved in the data or the feature map obtained from it, and estimates the PSI data for the period corresponding to the convolution area with the predetermined contribution or more as the basis of diagnosis or the factor of the problem inventory. The inventory management device according to claim 1, further comprising a unit. 入力された品目の生産・販売・在庫(PSI)のデータを用いて当該品目が問題在庫か否かを診断し、かつ、前記品目が問題在庫と診断された場合に、診断結果に所定の寄与度以上に寄与した期間のPSIデータの推移状況を診断の根拠あるいは問題在庫の要因として出力するコンピュータを用いた在庫管理方法であって、
前記PSIデータに基づく需給バランスの変化を、畳み込みニューラルネットワークモデルを用いて特徴量として、前記特徴量に基づいて前記品目が問題在庫であるか否かを表す情報を出力するよう学習させるデータ学習ステップと、
学習済みの前記畳み込みニューラルネットワークモデルに対し、診断対象品目のPSIデータを入力して当該品目に対する在庫診断を実行する在庫診断ステップと、を有することを特徴とする在庫管理方法。
If the input item's production / sales / inventory (PSI) data is used to diagnose whether the item is problematic inventory and the item is diagnosed as problematic inventory, a predetermined contribution to the diagnosis result. It is an inventory management method using a computer that outputs the transition status of PSI data during the period that contributed more than once as the basis of diagnosis or the factor of problem inventory.
A data learning step in which a change in the supply-demand balance based on the PSI data is used as a feature quantity using a convolutional neural network model, and information indicating whether or not the item is in question stock is output based on the feature quantity. When,
An inventory management method comprising:, for the convolutional neural network model that has been trained, an inventory diagnosis step of inputting PSI data of an item to be diagnosed and executing an inventory diagnosis for the item.
前記在庫診断ステップによる前記診断の結果が問題在庫である場合に、学習済み畳み込みニューラルネットワークモデルの出力層から入力層の後に配置される畳み込み層まで逆伝播することにより、フィルタ幅の期間で逐次PSIデータに畳み込んだフィルタまたはそこから得られる特徴マップに対する診断結果への寄与度を求め、所定の寄与度以上の畳み込み領域にあたる期間のPSIデータを診断根拠あるいは問題の要因として推定する要因推定ステップを有することを特徴とする請求項3に記載の在庫管理方法。 When the result of the diagnosis by the inventory diagnosis step is a problem stock, it propagates back from the output layer of the trained convolutional neural network model to the convolutional layer arranged after the input layer, thereby sequentially PSI in the period of the filter width. A factor estimation step for estimating the contribution of the filter convoluted to the data or the feature map obtained from the data to the diagnostic result, and estimating the PSI data for the period corresponding to the convolutional region with a predetermined contribution or more as the diagnostic basis or the cause of the problem. The inventory management method according to claim 3, wherein the product has.
JP2018105465A 2018-05-31 2018-05-31 Inventory management device and inventory management method Active JP7096708B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018105465A JP7096708B2 (en) 2018-05-31 2018-05-31 Inventory management device and inventory management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018105465A JP7096708B2 (en) 2018-05-31 2018-05-31 Inventory management device and inventory management method

Publications (2)

Publication Number Publication Date
JP2019211870A JP2019211870A (en) 2019-12-12
JP7096708B2 true JP7096708B2 (en) 2022-07-06

Family

ID=68844057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018105465A Active JP7096708B2 (en) 2018-05-31 2018-05-31 Inventory management device and inventory management method

Country Status (1)

Country Link
JP (1) JP7096708B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7354844B2 (en) 2020-01-08 2023-10-03 富士通株式会社 Impact determination program, device, and method
CN112508162B (en) * 2020-11-17 2024-04-05 珠海格力电器股份有限公司 Emergency management method, device and system based on system linkage
CN112580852A (en) * 2020-11-19 2021-03-30 江苏安方电力科技有限公司 Intensive automatic stereoscopic warehouse goods space optimization method for electric power materials
CN113128932B (en) * 2021-04-16 2024-04-16 北京京东振世信息技术有限公司 Warehouse stock processing method and device, storage medium and electronic equipment
CN113657925B (en) * 2021-07-28 2023-08-22 黄淮学院 Civil engineering cost management method based on artificial intelligence
WO2023243178A1 (en) * 2022-06-16 2023-12-21 三菱電機株式会社 Inventory management system, learning device, inference device, inventory management method, and program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005007A (en) 2013-06-19 2015-01-08 株式会社日立ソリューションズ東日本 Inventory management device, inventory management method, and inventory management program
JP2015143147A (en) 2014-01-31 2015-08-06 株式会社野村総合研究所 information analysis system
JP2015185007A (en) 2014-03-25 2015-10-22 株式会社日立ソリューションズ東日本 stock management device
JP2018005448A (en) 2016-06-30 2018-01-11 株式会社日立製作所 Data generation method and computer system
JP2018005420A (en) 2016-06-29 2018-01-11 富士通株式会社 Information processing unit, learning network learning value calculation program and learning network learning value calculation method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8725594B1 (en) * 2001-06-19 2014-05-13 Ptc Inc. Continuous flow execution

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005007A (en) 2013-06-19 2015-01-08 株式会社日立ソリューションズ東日本 Inventory management device, inventory management method, and inventory management program
JP2015143147A (en) 2014-01-31 2015-08-06 株式会社野村総合研究所 information analysis system
JP2015185007A (en) 2014-03-25 2015-10-22 株式会社日立ソリューションズ東日本 stock management device
JP2018005420A (en) 2016-06-29 2018-01-11 富士通株式会社 Information processing unit, learning network learning value calculation program and learning network learning value calculation method
JP2018005448A (en) 2016-06-30 2018-01-11 株式会社日立製作所 Data generation method and computer system

Also Published As

Publication number Publication date
JP2019211870A (en) 2019-12-12

Similar Documents

Publication Publication Date Title
JP7096708B2 (en) Inventory management device and inventory management method
James et al. Statistical learning
Siggelkow Change in the presence of fit: The rise, the fall, and the renaissance of Liz Claiborne
Chakraborty et al. Multi-item integrated supply chain model for deteriorating items with stock dependent demand under fuzzy random and bifuzzy environments
CN107766404B (en) System and method for improving advice system
JP3767954B2 (en) Demand forecasting device
US10860634B2 (en) Artificial intelligence system and method for generating a hierarchical data structure
CN108009593A (en) A kind of transfer learning optimal algorithm choosing method and system
US7552062B2 (en) Method and system for clinical process analysis
CN113553540A (en) Commodity sales prediction method
Woodside et al. Triple Sense-Making of Findings from Marketing Experiments Using the Dominant Variable Based-Logic, Case-Based Logic, and Isomorphic Modeling.
JP6514342B2 (en) Online forecasting system and method
Dzyabura et al. Leveraging the power of images in managing product return rates
CN115053240A (en) System and method for measuring and predicting availability of products and optimizing matches using inventory data
CN108369674A (en) The system and method that the client with mixed attributes type is finely divided using target clustering method
EP3918545A1 (en) Method and system for optimizing an objective having discrete constraints
US11907991B2 (en) Method and system for item line assignment
Craparotta et al. A siamese neural network application for sales forecasting of new fashion products using heterogeneous data
Kharfan et al. Forecasting Seasonal Footwear Demand Using Machine Learning
CN111275480B (en) Multi-dimensional sparse sales data warehouse oriented fraud behavior mining method
Wick et al. Cyclic boosting-an explainable supervised machine learning algorithm
CN113590692A (en) Three-stage crowd mining condition optimization method and system
CN112633936A (en) Supplier hidden cost prediction method, supplier hidden cost prediction device, server and storage medium
Kurian et al. Data-driven imitation learning-based approach for order size determination in supply chains
EP3525144A1 (en) Method for automated scalable co-clustering

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180712

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220624

R150 Certificate of patent or registration of utility model

Ref document number: 7096708

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150