JP7111343B2 - Information processing device, information processing method, and information processing program - Google Patents
Information processing device, information processing method, and information processing program Download PDFInfo
- Publication number
- JP7111343B2 JP7111343B2 JP2018084383A JP2018084383A JP7111343B2 JP 7111343 B2 JP7111343 B2 JP 7111343B2 JP 2018084383 A JP2018084383 A JP 2018084383A JP 2018084383 A JP2018084383 A JP 2018084383A JP 7111343 B2 JP7111343 B2 JP 7111343B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- information
- node device
- output
- network
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 101
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000012545 processing Methods 0.000 claims description 125
- 238000009826 distribution Methods 0.000 claims description 56
- 238000011144 upstream manufacturing Methods 0.000 claims description 39
- 238000013528 artificial neural network Methods 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 12
- 239000002131 composite material Substances 0.000 claims description 7
- 210000002569 neuron Anatomy 0.000 claims description 7
- 230000000644 propagated effect Effects 0.000 claims description 3
- 238000012549 training Methods 0.000 claims description 3
- 230000011664 signaling Effects 0.000 claims description 2
- 230000001902 propagating effect Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 35
- 230000008569 process Effects 0.000 description 24
- 230000009471 action Effects 0.000 description 15
- 238000003860 storage Methods 0.000 description 13
- 239000003795 chemical substances by application Substances 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 239000010779 crude oil Substances 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
本発明は、情報処理装置、情報処理方法、及び、情報処理プログラムに関する。 The present invention relates to an information processing device, an information processing method, and an information processing program.
ニューラルネットワーク等の情報ネットワークを利用した人工知能(AI)の研究が進められており、株式トレーディング、自動運転、スマートグリッド、およびIoTといった産業分野への適用が進められている。通常、情報ネットワークは、単一の主体(企業、団体、又は、個人等)により作成されるため、取得できる情報や処理能力に限界があり、全体として得られる収益が限定されていた。 Research on artificial intelligence (AI) using information networks such as neural networks is underway, and application to industrial fields such as stock trading, automatic driving, smart grids, and IoT is underway. Since an information network is usually created by a single entity (company, organization, individual, etc.), there are limits to the information that can be obtained and the processing capacity, and the profit that can be obtained as a whole is limited.
これに対し多数エージェントによる強化学習(Multi-agent Reinforcement Learning:MARL)が知られている(非特許文献1~5)。これらの技術によると、報酬を各エージェントに均等に分配したり、信頼された第3者(Trusted Third Party:TTP)により報酬額が決定されていた。 On the other hand, multi-agent reinforcement learning (MARL) is known (Non-Patent Documents 1 to 5). According to these techniques, remuneration is evenly distributed to each agent, or the amount of remuneration is determined by a trusted third party (TTP).
非特許文献1:Foerster, Jakob, Assael, Yannis, de Freitas, Nando, and Whiteson, Shimon. Learning to communicate with deep multi-agent reinforcement learning. In Advances in Neural Information Processing Systems, pp. 2137-2145, 2016.
非特許文献2:Sukhbaatar, S., Fergus, R., et al. Learning multiagent communication with backpropagation. In NIPS'16, 2016.
非特許文献3:Wu, Shih-Hung and Soo, Von-Wun. Game theoretic reasoning in multi-agent coordination by negotiation with a trusted third party. In Proceedings of the third annual conference on Autonomous Agents, pp. 56-61. ACM, 1999.
非特許文献4:Sandholm, Tuomas and Wang, XiaoFeng. (im) possibility of safe exchange mechanism design. In Eighteenth national conference on Artificial intelligence, pp. 338-344. American Association for Artificial Intelligence, 2002
非特許文献5:Agogino, Adrian K and Tumer, Kagan. Quicr-learning for multi-agent coordination. In Proceedings of the National Conference on Artificial Intelligence, volume 21, pp. 1438, 2006.
Non-Patent Document 1: Foerster, Jakob, Assael, Yannis, de Freitas, Nando, and Whiteson, Shimon. Learning to communicate with deep multi-agent reinforcement learning. In Advances in Neural Information Processing Systems, pp. 2137-2145, 2016.
Non-Patent Document 2: Sukhbaatar, S., Fergus, R., et al. Learning multiagent communication with backpropagation. In NIPS'16, 2016.
Non-Patent Document 3: Wu, Shih-Hung and Soo, Von-Wun. Game theoretic reasoning in multi-agent coordination by negotiation with a trusted third party. In Proceedings of the third annual conference on Autonomous Agents, pp. 56-61. ACM, 1999.
Non-Patent Document 4: Sandholm, Tuomas and Wang, XiaoFeng. (im) possibility of safe exchange mechanism design. In Eighteenth national conference on Artificial intelligence, pp. 338-344. American Association for Artificial Intelligence, 2002
Non-Patent Document 5: Agogino, Adrian K and Tumer, Kagan. Quicr-learning for multi-agent coordination. In Proceedings of the National Conference on Artificial Intelligence,
しかし、報酬分配を均等に行う場合は各エージェントが他人の成果にただ乗りしようとするためコモンズの悲劇が生じ、第3者に報酬分配を委ねる場合も公平性及び信頼性を担保しなければならない問題があった。 However, if rewards are distributed evenly, each agent tries to free ride on the achievements of others, resulting in a tragedy of the commons. I had a problem.
上記課題を解決するために、本発明の第1の態様においては、情報処理装置を提供する。情報処理装置は、情報ネットワークを形成するノードとして機能する複数のノード装置を含むノード群のノード装置の各々にノード入力情報を与え、ノード装置の各々がノード入力情報を処理した結果であるノード出力情報を取得するネットワーク処理部であって、情報ネットワークにおいて上流側のノード装置から取得したノード出力情報を上流側のノード装置に接続された下流側のノード装置のノード入力情報として与えるネットワーク処理部を備えてよい。情報処理装置は、情報ネットワークにおける最下流のノードに対応する最下流のノード装置から取得したノード出力情報と、当該ノード出力情報と対応する現実の観測値との誤差を縮小するようにノード装置間の情報伝達の重みを更新することにより、情報ネットワークを学習させる学習処理部を備えてよい。情報処理装置は、ノード出力情報をノード入力情報として受け取った受取側のノード装置から、当該ノード出力情報を出力した出力側のノード装置に対して、ノード出力情報の対価を支払わせる報酬分配部を備えてよい。 In order to solve the above problems, a first aspect of the present invention provides an information processing apparatus. The information processing device provides node input information to each node device of a node group including a plurality of node devices functioning as nodes forming an information network, and node output as a result of processing the node input information by each of the node devices. a network processing unit that acquires information, the network processing unit that provides node output information acquired from an upstream node device in an information network as node input information for a downstream node device connected to the upstream node device; Be prepared. The information processing device reduces the error between the node output information acquired from the most downstream node device corresponding to the most downstream node in the information network and the actual observation value corresponding to the node output information. A learning processing unit may be provided for learning the information network by updating the information transfer weights of the . The information processing device includes a reward distribution unit that makes the node device on the receiving side that receives the node output information as the node input information pay for the node output information to the node device on the output side that outputs the node output information. Be prepared.
情報ネットワークは、ニューラルネットワークであり、ノードはニューラルネットワークのニューロンに対応してよい。 The information network is a neural network and the nodes may correspond to neurons of the neural network.
学習処理部は、ノード出力情報に対応する現実の観測値と当該ノード出力情報との誤差を、最下流のノード装置から上流側のノード装置に向けて誤差伝搬し、伝搬された誤差に基づいてノード装置間の情報伝達の重みを更新してよい。 The learning processing unit propagates the error between the actual observed value corresponding to the node output information and the node output information from the most downstream node device to the upstream node device, and based on the propagated error The weight of information transmission between node devices may be updated.
情報処理装置は、最下流のノード装置から取得したノード出力情報に基づく投資を実行する、投資実行部を更に備えてよい。 The information processing device may further include an investment execution unit that executes investment based on node output information acquired from the most downstream node device.
投資実行部は、投資端末から、投資実行要求を取得したことに応じて、最下流のノード装置から取得したノード出力情報に基づく投資を実行し、投資により得られた利益の少なくとも一部を投資端末に分配してよい。 The investment execution unit executes investment based on the node output information obtained from the most downstream node device in response to obtaining an investment execution request from the investment terminal, and invests at least part of the profit obtained from the investment. distributed to terminals.
報酬分配部は、投資端末に、投資に用いられたノード出力情報を出力したノード装置に対して、投資により得られた利益の少なくとも一部を分配してよい。 The reward distribution unit may distribute at least part of the profit obtained from the investment to the node device that has output the node output information used for the investment to the investment terminal.
報酬分配部は、ノード出力情報の対価を、受取側のノード装置と出力側のノード装置との間の重みに基づいて決定してよい。 The reward distribution unit may determine the consideration for the node output information based on the weight between the node device on the receiving side and the node device on the output side.
報酬分配部は、ブロックチェーンを利用する暗号通貨により、出力側のノード装置に対するノード出力情報の対価を、受取側のノード装置に支払わせてよい。 The reward distribution unit may cause the node device on the receiving side to pay for the node output information for the node device on the output side using cryptocurrency using blockchain.
報酬分配部は、対価の支払いがなされたことに応じて、受取側のノード装置から公開鍵Bを受け取って出力側のノード装置に送信してよい。報酬分配部は、出力側のノード装置から複号鍵A'を公開鍵Bで暗号化した公開鍵B(暗号鍵A')を受け取って、受取側のノード装置に送信してよい。報酬分配部は、出力側のノード装置から複号鍵A'に対応する暗号鍵Aでノード出力情報mを暗号化した暗号鍵A(ノード出力情報m)を、出力側のノード装置から受け取って、受取側のノード装置に送信してよい。 The reward distribution unit may receive the public key B from the node device on the receiving side and transmit it to the node device on the output side in response to the payment of the consideration. The reward distribution unit may receive public key B (encryption key A') obtained by encrypting decryption key A' with public key B from the node device on the output side and transmit it to the node device on the receiving side. The reward distribution unit receives, from the output-side node device, encryption key A (node output information m) obtained by encrypting node output information m with encryption key A corresponding to decryption key A' from the output-side node device. , may be transmitted to the receiving node device.
情報処理装置は、複数のノード装置の各々から、各ノード装置が入力するノード入力情報の種別、及び、各ノード装置が出力するノード出力情報の種別を取得する処理取得部を更に備えてよい。 The information processing device may further include a processing acquisition unit that acquires the type of node input information input by each node device and the type of node output information output by each node device from each of the plurality of node devices.
情報処理装置は、処理取得部が取得した、複数のノード装置のノード入力情報の種別、及び、ノード出力情報の種別に基づいて、複数のノード装置間を接続し、これにより、情報ネットワークを形成するネットワーク生成部を更に備えてよい。 The information processing device connects the plurality of node devices based on the types of node input information and the types of node output information of the plurality of node devices acquired by the process acquisition unit, thereby forming an information network. It may further include a network generator for performing.
ネットワーク生成部は、第1のノード装置のノード出力情報の種別と、第2のノード装置のノード入力情報の種別が一致するか判断し、両者が一致したことに応じて、第1のノード装置の下流側に第2のノード装置を接続してよい。 The network generating unit determines whether the type of node output information of the first node device and the type of node input information of the second node device match, and if both match, the first node device A second node device may be connected downstream of the .
上記した情報処理装置と、複数のノード装置とを備える情報処理システムが提供されてよい。情報処理システムは、投資端末を更に備えてよい。 An information processing system including the information processing device described above and a plurality of node devices may be provided. The information handling system may further comprise an investment terminal.
本発明の第2の態様においては、情報処理方法を提供する。情報処理方法は、情報ネットワークを形成するノードとして機能する複数のノード装置を含むノード群のノード装置の各々にノード入力情報を与え、ノード装置の各々がノード入力情報を処理した結果であるノード出力情報を取得し、上流側のノード装置から取得したノード出力情報を上流側のノード装置に接続された下流側のノード装置のノード入力情報として与えるネットワーク処理段階を有してよい。情報処理方法は、情報ネットワークにおける最下流のノードに対応する最下流のノード装置から取得したノード出力情報と、当該ノード出力情報と対応する現実の観測値との誤差を縮小するようにノード装置間の情報伝達の重みを更新することにより、情報ネットワークを学習させる学習段階を有してよい。情報処理方法は、ノード出力情報をノード入力情報として受け取った受取側のノード装置から、当該ノード出力情報を出力した出力側のノード装置に対して、ノード出力情報の対価を支払わせる報酬分配段階を有してよい。 A second aspect of the present invention provides an information processing method. The information processing method provides node input information to each node device of a node group including a plurality of node devices functioning as nodes forming an information network, and node output as a result of processing the node input information by each of the node devices. It may have a network processing step of obtaining information and providing node output information obtained from an upstream node device as node input information of a downstream node device connected to the upstream node device. The information processing method includes node output information obtained from the most downstream node device corresponding to the most downstream node in the information network, and the node output information and the actual observed value corresponding to the node output information. There may be a training phase for training the information network by updating the signaling weights of . The information processing method includes a reward distribution step in which the node device on the receiving side that receives the node output information as node input information pays the consideration for the node output information to the node device on the output side that outputs the node output information. may have
本発明の第3の態様においては、情報処理プログラムを提供する。情報処理プログラムは、コンピュータにより実行され、当該コンピュータをネットワーク処理部として機能させてよい。情報処理プログラムは、当該コンピュータを学習処理部として機能させてよい。情報処理プログラムは、コンピュータにより実行され、当該コンピュータを報酬分配部として機能させてよい。 A third aspect of the present invention provides an information processing program. The information processing program may be executed by a computer and cause the computer to function as a network processing unit. The information processing program may cause the computer to function as a learning processing unit. The information processing program may be executed by a computer and cause the computer to function as a reward distribution unit.
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。 It should be noted that the above summary of the invention does not list all the necessary features of the invention. Subcombinations of these feature groups can also be inventions.
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。 Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. Also, not all combinations of features described in the embodiments are essential for the solution of the invention.
図1は、本実施形態に係る情報処理システム10の概要を示す。本実施形態において、情報処理システム10は、情報源20と、情報源20から得た情報を処理する複数のノード30を含むノード群と、ノード群から出力された情報を利用して収益をあげるアクチュエータ40と、アクチュエータ40に投資する投資家41と、これらをネットワーク上で動作させるクラウドソースプラットフォーム50とを備える。
FIG. 1 shows an overview of an
情報処理システム10は、複数のノード30及びアクチュエータ40が協調して情報処理を行う情報ネットワークを形成し、各々が独立して情報処理に対する報酬を得るフレームワークを提供する。これにより情報処理システム10は、複数のノード30及びアクチュエータ40の各々を各エージェントとするMARLを実現してよい。
The
情報源20は、インターネット等のネットワーク上でアクセス可能な様々な情報、及び、各種のセンサデータ等を無料又は有料で提供する。情報源20は、1又は複数のサーバ装置、データベース、又は、その他のコンピュータにより実現されてよい。
The
例えば、情報源20は、インターネット上で、ソーシャルネットワーキングサービス(SNS)又はテキスト投稿サービスにおける利用者の属性(年齢、性別、職業、所属等)及び/又は投稿内容に関する情報を提供するサーバ装置、画像/動画共有サービスを提供するサーバ装置、インターネット辞書/辞典サービスを提供するサーバ装置、ウェブカメラ撮影情報を提供するサーバ装置、金融情報を提供するサーバ装置、学術論文等を提供する学術機関のデータベース、気象データ(例えば、過去の天候情報、気温情報、及び/又は、気圧情報等)を提供する公官庁のデータベース、統計データ(例えば、人口動態データ)を提供する公官庁のデータベース等であってよい。
For example, the
また、例えば、情報源20は、環境情報等を検知する環境センサ(例えば、多数地点に設置された温度センサ、気圧センサ、雨量センサ、照度センサ、磁力センサ、熱センサ、画像センサ、振動センサ、音声センサ等)、位置情報を検知する位置センサ(例えば、車両や人のGPSデータ、速度データ、加速度データ等)、交通量検知センサ(例えば、ETCゲート等)、及び/又は、その他のセンサ、又はこれらのセンサの観測データを提供するサーバ装置等であってよい。
Further, for example, the
複数のノード30は、ネットワークを介して直接又はクラウドソースプラットフォーム50を介して互いに接続される。各々のノード30は、ノード入力情報を取得して、ノード入力情報に対して演算を実行し、演算結果をノード出力情報として別のノード30に出力する。一例において、ノード30により形成される情報ネットワークはニューラルネットワークであり、ノード30はニューラルネットワークのニューロンに対応してよい。
A plurality of
複数のノード30のうち、最上流側(情報源20側)に位置するノード30(図中、ノードn11~ノードn13)は、情報源20から提供される情報の特徴を抽出する特徴抽出器として機能してよい。例えば、ノードn11~n13は、情報源20から提供される情報の特徴を抽出し、これを後段のノードn21~ノードn23が利用可能なデータ形式に変換する。
Of the plurality of
一例として、ノードn11は、監視対象の一又は複数のウェブサイト(例えば、金融分野のニュース記事)のテキストデータを、従来知られた手法でテキストマイニングし、テキストの特徴を抽出する。例えば、ノードn11は、マイニングしたテキストから、スカラ値、ベクトル値、又は、テンソル値等(以下、まとめて「ベクトル値等」という場合がある)で表される特徴を抽出して、これをノード出力情報として出力してよい。 As an example, the node n 11 performs text mining on text data of one or more websites to be monitored (for example, news articles in the financial field) using a conventionally known technique to extract text features. For example, the node n 11 extracts features represented by scalar values, vector values, tensor values, etc. (hereinafter collectively referred to as “vector values, etc.”) from the mined text, and It may be output as node output information.
また、別の一例として、ノードn11は、気象庁の気象データベースにアクセスし、取得した気象データ(例えば、特定の地点の天候情報、気温情報、及び/又は、気圧情報等)に統計処理、正規化処理等を行い、気象データからベクトル値等で表される特徴を抽出して、これをノード出力情報として出力してよい。 As another example, the node n 11 accesses the meteorological database of the Japan Meteorological Agency and statistically processes the acquired meteorological data (for example, weather information, temperature information, and/or atmospheric pressure information at a specific point). A feature represented by a vector value or the like may be extracted from the meteorological data by conversion processing or the like, and the extracted feature may be output as node output information.
また、最上流側のノード30は、連続する時系列のベクトル値等をノード出力情報として出力してよい。例えば、最上流側のノード30は、一又は複数のセンサが出力する時々刻々変化するセンサデータを所定の時間間隔(例えば、1秒、1分、1時間、又は1日ごとに)にサンプリングした値から、ベクトル値等のストリームデータを生成し、これをノード出力情報として出力してよい。
Further, the most
最上流側のノード30は、同一又は別個の独立した事業者または個人によって運営されてよい。また、最上流側のノード30は、各々の事業者等が得意分野または興味等に応じて他の事業者等の動向を気にすることなく独自の情報、または他の最上流側のノード30と大差ない情報を出力してよい。最上流側のノード30は、ニューラルネットワークにより実現されてもよい。
The most
複数のノード30のうち、最上流側のノード30(ノードn11~ノードn13)の下流側に位置するノード30(ノードn21~ノードn23及びノードn31~ノードn33:「下流側のノード30」ともいう場合がある)は、それぞれが上流側のノード30から特徴の情報を取得し、当該情報加工して、より下流側のノード30に提供する。
Nodes 30 (nodes n 21 to n 23 and nodes n 31 to n 33 located downstream of the most upstream node 30 (nodes n 11 to node n 13 ) among the plurality of nodes 30: “Downstream side Each
例えば、ノードn21~ノードn23は、ノードn11~ノードn13の下流側に接続され、ノードn11~ノードn13からのノード出力情報をノード入力情報として取得し、当該ノード入力情報に対して演算を行う。ノードn21~ノードn23は、演算結果をノード出力情報として更に下流側のノードn31~ノードn33に出力する。一例として、ノードn21は、ノードn11~n13から得たノード入力情報(例えば、気象データに関連する情報)に基づいて、原油の将来価格の予測結果を演算し、当該予測結果を含むノード出力情報を出力する。 For example, nodes n 21 to n 23 are connected downstream of nodes n 11 to n 13 , obtain node output information from nodes n 11 to n 13 as node input information, and perform calculations on The nodes n 21 to n 23 output the computation results as node output information to the nodes n 31 to n 33 further downstream. As an example, the node n 21 calculates the prediction result of the future price of crude oil based on the node input information (for example, information related to weather data) obtained from the nodes n 11 to n 13 , and includes the prediction result Output node output information.
ここで、下流側のノード30は、前段で接続する各ノード30からのノード入力情報に基づいて生成した演算結果を各ノード30との間の重みで重みづけした結果に基づいて、ノード出力情報を出力してよい。例えば、ノードn21は、w11-21×f21(n1,1)+w12-21×g21(n1,2)+w13-21×h21(n1,3)+b21を演算し、これをノード出力情報として出力してよい。ここで「×」はスカラ値の積、又は、ベクトル値若しくはテンソル値同士の内積を示す演算記号であってよい。
Here, the
ここで、ni,jは、ベクトル値等であってよいノードnijからのノード入力情報を示し、fij(ni―1,x)、gij(ni-1,y)、及び、hij(ni―1,z)は、ノードnijにおいてノードni―1,x、ノードni―1,y、及び、ノードni―1,zからのノード入力情報に対する演算を表し、wij-abはノードnijとノードnabとの間の重みを表し、bijは予め定められたバイアスを表す。wij-ab及びbijは、ベクトル値等であってよい。ノード30は、fij(ni―1,x)、gij(ni-1,y)、hij(ni―1,z)の演算のみ行い、重みづけされたノード出力情報はクラウドソースプラットフォーム50において演算されてもよい。これに代えて、ノード30が自身で重みづけ処理を実行してもよい。
where n i,j denotes node input information from node n ij which may be a vector value, etc., and f ij (n i−1,x ), g ij (n i−1,y ), and , h ij (n i−1,z ) perform operations on node input information from node n i−1,x , node n i−1,y , and node n i−1,z at node n ij . where w ij-ab represents the weight between node n ij and node n ab and b ij represents a predetermined bias. w ij-ab and b ij may be vector values or the like. The
下流側のノード30のうち、最も下流側に位置するノード(ノードn31~ノードn33:「最下流側のノード30」ともいう場合がある)は、ノード出力情報をアクチュエータ40に出力する。例えば、ノードn31~ノードn33は、ノードn21~ノードn23からのノード出力情報を、ノード入力情報として取得し、ノード入力情報に対して演算を行い、演算結果を重みづけした結果をノード出力情報としてアクチュエータ40に出力する。
Of the
一例として、ノードn31は、ノードn21~n23から得たノード入力情報(例えば、原油の将来価格の予想結果に関連する情報)に基づいて、将来株価の予測結果を演算し、当該予測結果を含むノード出力情報を出力してよい。ノードn32~ノードn33も、ノードn31とは同一又は異なる情報を取得して、それぞれが独自の演算を実行して、将来株価の予測結果を演算結果に基づくノード出力情報を出力してよい。 As an example, the node n 31 calculates the future stock price prediction result based on the node input information obtained from the nodes n 21 to n 23 (for example, information related to the prediction result of the future price of crude oil), Node output information containing results may be output. The nodes n 32 to n 33 also acquire the same or different information as that of the node n 31 , execute their own calculations, and output node output information based on the prediction results of future stock prices. good.
下流側のノード30は、データサイエンティスト等の独立した同一又は別個の事業者または個人によって運営されてよく、各々の事業者等が得意分野または興味等に応じて他の事業者等の動向を気にすることなく収集した情報を独自に加工してよい。また下流側のノード30は、他の下流側のノード30と大差ない情報を出力してよい。下流側のノード30は、ストリームデータを含むノード出力情報を出力してよい。下流側のノード30は、ニューラルネットワークにより実現されてもよい。
The
アクチュエータ40は、一又は複数のノード30から受け取った情報を利用して収益を上げる。例えば、アクチュエータ40は、投資資金を提供する投資家41に収益をもたらし、その報酬を受け取ってよい。アクチュエータ40は、データサイエンティスト等の同一又は別個の独立した事業者または個人によって運営されてよい。アクチュエータ40は、ニューラルネットワークにより実現されてもよい。
Actuators 40 generate revenue using information received from one or
アクチュエータ40は、本来情報ネットワークにおけるノードの一部として機能するが、他のノードと機能上の区別をするために「アクチュエータ」と称する。なお、図中では、2個のアクチュエータ40Aとアクチュエータ40Bが示されるが、これらをまとめてアクチュエータ40とする。
The actuator 40 originally functions as part of a node in an information network, but is called an "actuator" to distinguish it from other nodes in terms of function. Although two
例えば、アクチュエータ40Aは、ノードn31から得たノード入力情報(例えば、特定複数銘柄の株の将来株価の予測結果)に基づいて、最も収益が高くなる投資計画を生成してよい。一例として、アクチュエータ40Aは、複数銘柄の株のうち株価上昇率が最も大きいものを購入する投資計画を生成してよい。
For example, the
また、例えば、アクチュエータ40Aは、当該投資計画により将来得られる収益額を予測し、予測された収益額をノード出力情報として出力してよい。これにより、もし投資計画の収益額の予測結果が正しければ、アクチュエータ40Aは、収益を上げることができる。
Also, for example, the
一例として、アクチュエータ40は、行動価値関数Qを近似する多層ニューラルネットワーク(Deep Q-Network)を一又は複数有し、当該多層ニューラルネットワークを学習させることで、投資計画を出力してよい。具体的には、アクチュエータ40は、時刻tにおける状態st(例えば、時刻tにおける株価、テクニカル指標、総資産、及び/又は、所持株数等)を1つの多層ニューラルネットワークの入力し、時刻tにおける行動αtの価値を示す行動価値Q(st,αt)を出力してよい。ここで、例えば、アクチュエータ40Aは、ノードn31から得たノード入力情報を状態stの少なくとも一部として得て、行動αtを投資計画とし、行動価値Q(st,αt)をノード出力情報として出力してよい。
As an example, the actuator 40 may have one or more deep Q-Networks that approximate the action-value function Q, and output the investment plan by learning the deep Q-Network. Specifically, the actuator 40 inputs the state s t at time t (for example, stock prices, technical indicators, total assets, and/or the number of shares held at time t) into one multilayer neural network, and at time t An action value Q(s t , α t ) that indicates the value of the action α t may be output. Here, for example, the
アクチュエータ40は、多層ニューラルネットワークの学習の際に、状態stを受け取り、最も行動価値が高いαtを行い、市場から報酬rtと次の状態st+1を受け取り、これらを過去の経験として保存しておき、そこからランダムに一部を選択してミニバッチ学習を行ってよい。報酬rtは行動αtにより得られた利益率に応じた値であってよい。行動価値関数Qは、勾配降下法により学習されてよい。このような手法は、例えば、和田裕貴、長尾智晴、深層学習による株式売買戦略の構築、6N-04、情報処理学会第79回全国大会に記載されているが、これに限られない。 The actuator 40 receives the state s t , performs α t with the highest action value, receives the reward r t and the next state s t+1 from the market, and stores them as past experience during learning of the multi-layer neural network. Then, a part of them may be selected at random and mini-batch learning may be performed. The reward r t may be a value according to the profit rate obtained by the action α t . The action-value function Q may be learned by gradient descent. Such a method is described in, for example, Yuki Wada, Tomoharu Nagao, Construction of Stock Trading Strategy by Deep Learning, 6N-04, 79th National Convention of Information Processing Society of Japan, but is not limited thereto.
なお、アクチュエータ40Bのように、複数のノード30に接続される場合、アクチュエータ40は、複数のノードの各々に対応する複数(例えば、アクチュエータ40Bであれば2個)の多層ニューラルネットワークを有し、接続された各ノード30からのノード入力情報を、状態stの少なくとも一部として、各多層ニューラルネットワークを学習してよい。
When connected to a plurality of
そして、例えば、アクチュエータ40Bは、複数の多層ニューラルネットワークの出力に基づいて、投資計画、及び、ノード出力情報を出力してよい。一例として、アクチュエータ40Bは、w32-B及びw33-Bで重みづけされた行動価値Q(st,αt)の多数決で行動αtを決定してよい。また、アクチュエータ40Bは、決定された行動αtに対応する行動価値Q(st,αt)のw32-B及びw33-Bによる重みづけ平均をノード出力情報として出力してよい。
Then, for example,
投資家41は、アクチュエータ40に投資を行う。投資家41は、アクチュエータ40に投資資金を提供することで、アクチュエータ40に投資計画による収益を生じさせ、その収益の一部を回収する。例えば、投資家41Aはアクチュエータ40Aに投資し、投資家41Bはアクチュエータ40Bに投資する。投資家41は、金融機関、企業、団体、個人投資家等の独立した事業者または個人によって運営されてよい。
An investor 41 invests in the actuator 40 . The investor 41 provides investment funds to the actuator 40 to generate profits from the investment plan in the actuator 40, and collects part of the profits. For example,
情報処理システム10において、複数のノード30の間及びノード30とアクチュエータ40との間で、授受される情報は売買されてよい。例えば、アクチュエータ40Aは、ノードn31に将来株価の予測結果の対価を支払ってよい。これにより、アクチュエータ40Aは、受け取った報酬からノードn31に支払った対価を差し引いた額を利益として確保してよい。
Information exchanged between the plurality of
ノードn31は、ノード出力情報(例えば、将来株価の予測結果)を生成するために取得したノード入力情報(例えば、原油の将来価格の予測結果)の対価を支払ってよい。例えば、ノードn31は、ノードn21に対価を支払ってよい。ノードn31は、ノードn22及びノードn23からノード入力情報を得た場合、これらのノードにも対価を支払ってもよい。同様に、ノードn21~n23は、前段のノードn11~n13にノード入力情報の対価を支払ってよい。これにより、各ノード30は、自身が得た対価から、別のノード30に支払った対価を除いた額を利益として確保してよい。
The node n 31 may pay for obtained node input information (eg, forecasted future price of crude oil) to generate node output information (eg, forecasted future stock price). For example, node n 31 may pay node n 21 . Node n 31 may also pay consideration to node n 22 and node n 23 if it obtains node input information from these nodes. Similarly, the nodes n 21 -n 23 may pay for the node input information to the preceding nodes n 11 -n 13 . As a result, each
クラウドソースプラットフォーム50は、ノード30及びアクチュエータ40と通信可能に接続され、ノード30及びアクチュエータ40の間の情報伝達及び対価授受等のためのプラットフォームを提供する。例えば、クラウドソースプラットフォーム50は、情報源20とノード30との間の情報伝達、ノード30間の情報伝達、及び、ノード30及びアクチュエータ40との間の情報伝達、その他必要な情報処理を仲介する。
The
また、クラウドソースプラットフォーム50は、ノード30及びアクチュエータ40にユーザインタフェースを提供してよい。例えば、クラウドソースプラットフォーム50は、情報処理システム10内のノード30の検索機能を、各ノード30及びアクチュエータ40のユーザに提供してよい。例えば、クラウドソースプラットフォーム50は、各ノード30の処理内容及びその説明等の情報を記憶し、あるノード30のユーザからの要求を受けて、これらの情報を検索して、当該ユーザに提供してよい。
これにより、クラウドソースプラットフォーム50は、各ノード30が別のノード30を検索して接続し、これにより複数のノード30が自律的に情報ネットワークを形成及び更新することを補助することができる。また、クラウドソースプラットフォーム50は、各ノード30の処理内容から自動的に情報ネットワークを形成してもよい。
Accordingly, the
このように、本実施形態の情報処理システム10によれば、複数の事業者等が運営する複数のノード等を組み合わせて、ニューラルネットワーク等の情報ネットワークを実現することができる。
As described above, according to the
なお、図1では、情報処理システム10の情報ネットワークとして、ノード30の一部(ノードn11~n13)を入力ノードとし、ノード30の他の一部(ノードn21~n33)を2層の中間ノードとし、アクチュエータ40を出力ノードとした4層のニューラルネットワークを記載したが、これに限定されない。例えば、入力ノードと出力ノードの間が、任意の中間ノードのネットワークにより形成されていてもよい。例えば、ある実施形態において、情報ネットワークを構成するノードは明確に分離した層を形成していなくてもよく、一部のノードが再帰的ネットワークを形成していてもよい。
In FIG. 1, as the information network of the
図2は、本実施形態に係る情報処理システム10の装置構成の一例を示す。情報処理システム10は、複数のノード装置32、1又は複数の投資端末42、及び、情報処理装置100を備える。図1におけるノード30及びアクチュエータ40は複数のノード装置32により実現され、投資家41は投資端末42に実現され、クラウドソースプラットフォーム50は情報処理装置100により実現される。
FIG. 2 shows an example of the device configuration of the
複数のノード装置32は、情報ネットワークにおける各ノードの情報処理を行う。ここで、複数のノード装置32の一部は、情報ネットワークにおけるノード30の機能の少なくとも一部を実現する。複数のノード装置32の他の一部は、アクチュエータ40の機能の少なくとも一部を実現する。
A plurality of
投資端末42は、情報ネットワークに対する投資を実行する。例えば、投資端末42は、アクチュエータ40が生成する投資計画に対する投資を実行する。
The
ノード装置32および投資端末42(以下、両者合わせて「ノード装置32等」ともいう場合がある)は、PC(パーソナルコンピュータ)、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータであってよく、複数のコンピュータが接続されたコンピュータシステムであってもよい。例えば、ノード装置32等は、グリッド・コンピューティング環境上で複数のコンピュータにより実現されてよい。一例として、ノード装置32等は、複数のコンピュータにより自身のニューラルネットワークを形成してよい。すなわち、ニューラルネットワークのノードとして機能する複数のノード装置32等は、各々が更に個別のニューラルネットワークにより実現されてよい。
The
また、ノード装置32等は、コンピュータ内で1または複数実行可能な仮想コンピュータ環境によって実装されてもよい。これに代えて、ノード装置32等は、ノード装置32等が実現すべき機能を実装すべく設計された専用コンピュータであってもよく、専用回路によって実現された専用ハードウェアであってもよい。ノード装置32および投資端末42は、API(アプリケーション・プログラム・インターフェイス)等の所定のインターフェイスを介して、情報処理装置100と通信してよい。
Also, the
情報処理装置100は、クラウドソースプラットフォーム50の機能の少なくとも一部を実現する。情報処理装置100は、ノード装置32等が協調して情報処理を行いつつ、各々が独立して情報提供等に対する報酬を得て、収益を最大化することが可能なプラットフォームを提供する。情報処理装置100は、処理取得部120と、ネットワーク生成部130と、ネットワーク処理部140と、投資実行部150と、学習処理部160と、報酬分配部170と、記憶部180とを備える。
The
情報処理装置100は、PC(パーソナルコンピュータ)、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータであってよく、複数のコンピュータが接続されたコンピュータシステムであってもよい。例えば、情報処理装置100は、グリッド・コンピューティング環境上で複数のコンピュータにより実現されてよい。この場合、複数のコンピュータの各々は、情報処理装置100の一又は複数の機能を実現してよい。
The
また、情報処理装置100は、コンピュータ内で1または複数実行可能な仮想コンピュータ環境によって実装されてもよい。これに代えて、情報処理装置100は、情報処理装置100が実現すべき機能を実装すべく設計された専用コンピュータであってもよく、専用回路によって実現された専用ハードウェアであってもよい。
Further, the
処理取得部120は、各ノード装置32の処理内容を取得してよい。例えば、処理取得部120は、複数のノード装置32の各々から、各ノード装置32が入力するノード入力情報の種別、及び、各ノード装置32が出力するノード出力情報の種別を取得してよい。
The
ネットワーク生成部130は、処理取得部120が取得した各ノード装置32の処理内容に基づいて、初期の情報ネットワークを形成してよい。例えば、ネットワーク生成部130は、処理取得部120が取得した、複数のノード装置32のノード入力情報の種別、及び、ノード出力情報の種別に基づいて、複数のノード装置32間を接続し、これにより、情報ネットワークを形成してよい。
The
また、ネットワーク生成部130は、複数のノード装置32が自律的に情報ネットワークを形成することを補助してもよい。例えば、ネットワーク生成部130は、ノード装置32に、他のノード装置32を検索し、他のノード装置32に接続させるインターフェイスを提供してもよい。
Also, the
ネットワーク処理部140は、情報ネットワークにおいて複数のノード30の間及びノード30とアクチュエータ40との間における情報伝達を仲介する。例えば、ネットワーク処理部140は、情報ネットワークのノード群を形成するノード装置32の各々にノード入力情報を与え、ノード装置32の各々からノード入力情報を処理した結果であるノード出力情報を取得してよい。
The
ネットワーク処理部140は、情報ネットワークにおいて上流側のノード30から下流側のノードに情報伝達を行ってよい。例えば、ネットワーク処理部140は、情報ネットワークにおいて上流側のノード装置32から取得したノード出力情報を上流側のノード装置32に接続された下流側のノード装置32のノード入力情報として与えてよい。
The
ネットワーク処理部140は、API(アプリケーション・プログラム・インターフェイス)をノード装置32に提供することでノード装置32間の情報伝達を仲介してよい。例えば、各ノード装置32は、ネットワーク処理部140が提供するAPIを呼び出すことにより、他のノード装置32との間の情報のやり取りを行ってよい。
The
投資実行部150は、情報ネットワークから得られる情報に基づき投資を実行する。具体的には、投資実行部150は、アクチュエータ40と投資家41との間を仲立ちし、アクチュエータ40が生成した投資計画で投資家41から投資された資金を投資する。これにより、投資実行部150は、情報ネットワークが処理した情報により収益を上げることができる。
The
例えば、投資実行部150は、情報ネットワークの最下流のノード装置32(例えば、図1のアクチュエータ40A及び40Bに対応するノード装置32)から取得したノード出力情報に基づく投資を実行してよい。一例として、投資実行部150は、最下流のノード装置32(例えば、アクチュエータ40A)が生成した投資計画(例えば、当該特定銘柄の株の特定時期及び特定価格における購入)に基づき、投資を実行する。
For example, the
投資実行部150は、投資端末42から投資実行要求を取得したことに応じて、投資を実行し、投資により得られた利益の少なくとも一部を投資端末42に分配してよい。例えば、投資実行部150は、投資端末42がアクチュエータ40Aに対応するファンドを購入したことに応じて、当該購入代金を投資資金として、アクチュエータ40Aが生成した投資計画の投資を実行し、その結果得られた利益の少なくとも一部を投資端末42に分配してよい。
The
学習処理部160は、複数のノード装置32により実現される情報ネットワークを学習させる。例えば、学習処理部160は、情報ネットワークにおける最下流のノード(例えば、図1のアクチュエータ40A及び40B)に対応する最下流のノード装置32から取得したノード出力情報(例えば、最下流のノード装置32が生成した投資計画による将来の収益額)と、当該ノード出力情報と対応する現実の観測値(例えば、投資計画により実際に得られる収益額)との誤差を縮小するようにノード装置32間の情報伝達の重みを更新することにより、情報ネットワークを学習させてよい。
The
一例として、学習処理部160は、ノード出力情報に対応する現実の観測値と当該ノード出力情報との誤差を、最下流のノード装置32から上流側のノード装置32に向けて誤差伝搬し、伝搬された誤差に基づいてノード装置32間の情報伝達の重みを更新してよい。このような学習手法は、ニューラルネットワークにおいて誤差伝搬法(又はバックプロパゲーション)とも呼ばれる。これにより、学習処理部160は、重みの更新を繰り返し行う間に、ノード出力情報による予測の精度を高めることができる。
As an example, the
報酬分配部170は、投資実行部150の投資により得られた利益を分配する。例えば、報酬分配部170は、投資に用いられたノード出力情報を出力するノード装置32(例えば、図1のアクチュエータ40A及び40Bに対応するノード装置32)に対して、投資により得られた利益の少なくとも一部を分配してよい。
The
また、報酬分配部170は、ノード出力情報をノード入力情報として受け取る受取側のノード装置32から、当該ノード出力情報を出力する出力側のノード装置32に対して、ノード出力情報の対価を支払わせてよい。これにより、報酬分配部170は、アクチュエータ40に対応する最下流のノード装置32からノードn33~n11に対応する上流側のノード装置32へと、情報の売買対価を通じて、報酬を伝搬させるように分配してよい。
Further, the
ここで、報酬分配部170は、ノード出力情報の対価を、受取側のノード装置32と出力側のノード装置32との間の重み(例えば、学習処理部160により更新された重み)に基づいて決定してよい。これにより、情報ネットワークにおいて重要性の高い(例えば、投資による利益への貢献の大きい)ノード装置32に対して、より多く報酬を分配することができる。
Here, the
記憶部180は、情報処理装置100の動作に必要な情報を記憶する揮発性及び/不揮発性記憶装置の少なくとも一方を含んでよい。例えば、記憶部180は、処理取得部120、ネットワーク生成部130、ネットワーク処理部140、投資実行部150、学習処理部160、及び、報酬分配部170の少なくとも一部を実現するプログラム等を記憶してよい。
The
また、記憶部180は、これらの動作において生ずる情報を少なくとも一時的に記憶してよい。例えば、記憶部180は、ネットワーク処理部140が処理するノード入力情報及び/又はノード出力情報を記憶してよい。また、別の例として記憶部180は、処理取得部120が取得した情報等を記憶してよい。
Also, the
図3は、本実施形態に係る情報処理システム10の処理フローを示す。本実施形態において、情報処理システム10は、S100からS800の処理を実行することにより、情報ネットワークを学習し、情報ネットワークから得られた利益を分配する。以下では、情報ネットワークがニューラルネットワークであり、ノードがニューロンである例について主に説明するが、本実施形態はこれに限定されない。
FIG. 3 shows the processing flow of the
まず、S100において、情報処理装置100の処理取得部120は、ニューラルネットワークの複数のニューロンとして機能する複数のノード装置32の処理内容を取得する。例えば、処理取得部120は、ノード装置32の各々から、ノード入力情報の種別、及び、ノード出力情報の種別を取得する。一例として、処理取得部120は、図1のノードn21となるノード装置32から、ノード入力情報の種別として、特定地点の天候情報、気温情報、及び、気圧データを取得し、ノード出力情報の種別として、原油の将来価格を取得する。
First, in S100, the
次に、S200において、情報処理装置100のネットワーク生成部130は、S100で取得したノード装置32のノード入力情報の種別、及び、ノード出力情報の種別に基づいて、ニューラルネットワークを形成する。例えば、ネットワーク生成部130は、第1のノード装置のノード出力情報の種別と、第2のノード装置のノード入力情報の種別が一致するか判断し、両者が一致したことに応じて、第1のノード装置に対応するノード(すなわち、ニューロン)の下流側に第2のノード装置に対応するノードを接続することにより、ニューロン同士を接続し、これによりニューラルネットワークを自動的に形成してよい。
Next, in S200, the
一例として、ネットワーク生成部130は、図1のノードn11のノード出力情報の種別(例えば、天候情報、気温情報、及び、気圧情報)と、ノードn21のノード出力情報の種別(例えば、天候情報、気温情報、及び、気圧情報)とが一致すると判断したことに応じて、ノードn11の下流側にノードn21を接続してよい。また、一例として、ネットワーク生成部130は、図1のノードn21のノード出力情報の種別(例えば、原油の将来価格)と、ノードn31のノード入力情報の種別(例えば、原油の将来価格)とが一致すると判断したことに応じて、ノードn21の下流側にノードn31を接続してよい。また、ネットワーク生成部130は、図1のノードn31のノード出力情報の種別(例えば、特定銘柄の将来株価)と、アクチュエータ40Aのノード入力情報の種別(例えば、特定銘柄の将来株価)とが一致すると判断したことに応じて、ノードn31の下流側にアクチュエータ40Aを接続してよい。
As an example, the
このように、ネットワーク生成部130は、ある情報を欲するノード(又はアクチュエータ)を、そのような情報を出力するノードに接続していくことにより、ニューラルネットワーク等の情報ネットワークを形成する。
In this way, the
なお、S200において、各ノード装置32のユーザにより手動で、ニューラルネットワークの少なくとも一部の形成が行われてもよい。例えば、ネットワーク生成部130は、情報処理システム10内のノード30の検索機能を、各ノード30及びアクチュエータ40(すなわち、ノード装置32)のユーザに提供してよい。これにより、各ノード装置32のユーザは、自身のノード装置32の欲する情報を提供する別のノード30を見つけ、これに自身を接続してよい。
In S200, the user of each
次に、S300において、情報処理システム10は、S200において形成されたニューラルネットワークにより予測を実行する。例えば、図1に示すノードn11~n13に対応するノード装置32が情報源20から情報(例えば、特定の地点の天候情報、気温情報、及び/又は、気圧情報等)をノード入力情報として取得する。ノードn11~n13に対応するノード装置32は、情報源20に直接アクセスして情報を取得してもよいし、クラウドソースプラットフォーム50として機能する情報処理装置100のネットワーク処理部140を介して、情報源20からの情報を取得してよい。
Next, at S300, the
ノードn11~n13に対応するノード装置32は、取得したノード入力情報を演算処理し、処理結果をネットワーク処理部140に出力する。
The
ネットワーク処理部140は、このように得られたノードn11~n13のノード出力情報を、これらのノードの下流側に接続されたノードn21~n23にノード入力情報として供給する。ネットワーク処理部140は、ノード入力情報を上流側のノードに接続された下流側のノードにのみ供給してよい。例えば、図1では、ノードn11~n13はいずれもノードn21~n23のそれぞれに接続しているが、もし、ノードn11がノードn21にのみ接続する場合、ネットワーク処理部140は、ノードn11のノード出力情報をノードn21にのみ供給してよい。
The
次にノードn21~n23に対応するノード装置32が、ノードn11~n13からのノード出力情報を、ネットワーク処理部140からノード入力情報として取得する。ノードn21~n23に対応するノード装置32は、受け取ったノード入力情報を演算処理し、ネットワーク処理部140に供給する。
Next, the
ネットワーク処理部140は、取得した処理結果を、前述した方法で重みづけしてよい。例えば、ネットワーク処理部140は、ノードn21に対応するノード装置32から、f21(n1,1)、g21(n1,2)、及び、h21(n1,3)を取得し、w11-21×f21(n1,1)+w12-21×g21(n1,2)+w13-21×h21(n1,3)+b21を演算し、これをノードn21のノード出力情報としてよい。
The
なお、重みづけは、ノード装置32自身が行ってもよい。例えば、ノード装置32は、ネットワーク処理部140から自身に関連する重みの情報を受け取り、重みづけ処理を行い、その結果をノード出力情報としてネットワーク処理部140に提供してよい。
Note that the weighting may be performed by the
ネットワーク処理部140は、重みづけした結果を各ノードのノード出力情報としてよい。ノード出力情報は、情報源20からの情報に基づき予測される指数等を含んでよい。例えば、ノードn21のノード出力情報は、原油の将来価格の予想結果に関連する情報を含んでよい。ネットワーク処理部140は、同様にノードn22~n23のノード出力情報を演算して、これを下流側のノードn31~n33にノード入力情報として供給してよい。
The
次にノードn31~n33に対応するノード装置32が、ノードn21~n23からのノード出力情報を、ネットワーク処理部140からノード入力情報として取得する。ノードn31~n33に対応するノード装置32は、受け取ったノード入力情報を演算処理し、その結果をネットワーク処理部140に供給する。ネットワーク処理部140は、取得した演算結果を重みづけ処理し、その結果を各ノードのノード出力情報とする。
Next, the
例えば、ネットワーク処理部140は、ノードn31のノード出力情報として銘柄Aの将来株価の予測結果、銘柄Bの将来株価の予測結果、及び、銘柄Cの将来株価の予測結果に関連する情報を出力してよい。ネットワーク処理部140は、係る特定銘柄A~Cの将来株価の予測結果に関連する情報を、アクチュエータ40Aにノード入力情報として供給してよい。ネットワーク処理部140は、同様にノードn32~n33のノード出力情報を、アクチュエータ40Bにノード入力情報として供給してよい。
For example, the
アクチュエータ40A及びアクチュエータ40Bに対応するノード装置32は、受け取ったノード入力情報を演算処理し、その結果をネットワーク処理部140に供給する。アクチュエータ40A及びアクチュエータ40Bに対応するノード装置32は、例えば、前述した行動αt及び行動価値Qを演算結果として出力してよい。例えば、ネットワーク処理部140は、取得した演算結果を重みづけ処理し、その結果の少なくとも一部を各アクチュエータ40のノード出力情報とする。
The
ネットワーク処理部140は、重みづけ処理の結果、最も収益が高くなる投資計画をノード出力情報として取得し、投資実行部150に供給する。なお、アクチュエータ40は、自身の重みをネットワーク処理部140から受け取り、自身で重みづけを行ってもよい。
As a result of the weighting process, the
投資計画は、例えば、購入する株の銘柄、購入時期、及び、価格指定等の執行条件を含んでいてよい。ネットワーク処理部140は、アクチュエータ40Aのノード出力情報として、最も収益が高くなる投資計画により将来得られる収益額を学習処理部160に供給してよい。
The investment plan may include execution conditions such as, for example, the brand of stock to be purchased, purchase timing, and price designation. The
このように、S300において、情報処理システム10は、情報源20から提供される公開情報等に基づいて、高い収益が予想される投資計画と、当該投資計画による予測収益を生成する。
Thus, at S300, the
次にS400において、投資実行部150は、投資端末42からの投資を受け付ける。
Next, at S400, the
投資実行部150は、S300で生成された投資計画に対応するファンドを投資端末42に販売してよい。投資端末42は、販売されたファンドを購入してよい。例えば、投資端末42は、投資資金をファンドの代金として投資実行部150に送金するとともに、ファンドを指定した投資実行要求を送信する。投資実行部150は、投資端末42から投資実行要求を取得する。
The
S600において、投資実行部150は、投資実行要求に基づく投資を実行する。例えば、投資実行部150は、投資実行要求で指定されたファンドに対応する投資計画に、ファンドの代金の少なくとも一部を投資資金として投資してよい。一例として、投資実行部150は、ネットワークを介して証券会社のサーバ装置にアクセスし、投資資金により投資計画に対応する投資(例えば、特定銘柄の株の購入)を実行してよい。
In S600, the
その後、投資実行部150は、投資により得られる利益を回収する。例えば、投資実行部150は、購入した株の価格が予め定められた価格(例えば、投資計画において設定された予定価格)を上回ったこと、及び/又は、予め定められた時間が経過したことに応じて、購入した株を売却して投資した資金を回収する。一例として、投資実行部150は、ネットワークを介して証券会社のサーバ装置にアクセスし、購入した銘柄を売却する。
After that, the
ここで、投資実行部150は、投資により得られた利益の少なくとも一部を投資端末42に分配してよい。例えば、投資実行部150は、投資による収益(特定銘柄の株の売却代金-購入代金)を、ファンドを購入した投資端末42に分配してよい。投資実行部150は、投資端末42のユーザに割り当てられたアカウントの口座に、当該収益の分配を行ってよい。また、投資実行部150は、ブロックチェーンを利用する暗号通貨(例えば、ビットコイン又はその他の仮想通貨)により、投資端末42のユーザの口座に収益の分配を行ってよい。
Here, the
なお、口座は、銀行口座等の外部の口座であってよい。この場合、投資実行部150は、銀行等の金融機関のネットワークにアクセスして、分配対象の口座に入金処理を行ってよい。また、口座は、情報処理システム10内の仮想の口座であってよい。この場合、投資実行部150は、口座残高を分配された収益分増加させ、投資端末42のユーザからの要求に応じて、暗号通貨を投資端末42に送金してよい。
The account may be an external account such as a bank account. In this case, the
投資実行部150は、投資による収益から、当該収益及び/又は投資資金から一定の割合を手数料として差し引いた額を、投資端末42のユーザに分配してよい。例えば、投資実行部150は、投資資金の一定割合(一例として2%)及び投資による収益の一定割合(一例として20%)を手数料として投資による収益から差し引いて、投資端末42のユーザに分配してよい。
The
報酬分配部170は、投資により得られた利益の一部を情報ネットワークに分配する。例えば、報酬分配部170は、投資に用いられたノード出力情報を出力するノード装置32(例えば、図1のアクチュエータ40A及び40Bに対応するノード装置32)に対して、投資により得られた利益の少なくとも一部を分配する。例えば、報酬分配部170は、投資端末42への分配で差し引かれた手数料の少なくとも一部を、ノード出力情報の対価として、アクチュエータ40A及び40Bに分配する。
The
ここで、アクチュエータ40A及び40Bに対応するノード装置32は、上流側のノード装置32(例えば、ノードn31~n33に対応するノード装置32)にも、ノード出力情報の対価を支払う。従って、アクチュエータ40は、分配された報酬から、情報の対価を引いた額を利益として確保することができる。
Here, the
S700において、学習処理部160は、ニューラルネットワークによる予測と実際の観測値の誤差を算出する。例えば、学習処理部160は、S300において予測された予測値(例えば、投資計画により予測された収益額)と、現実の観測値(例えば、現実に投資計画により得られる収益額)との差分を、誤差として算出する。
In S700, the
S800において、学習処理部160は、S700で算出した誤差を、最下流のノード装置32(例えば、アクチュエータ40A及び40B)から上流側のノード装置32に向けて誤差伝搬し、伝搬された誤差に基づいてノード装置32間の情報伝達の重みを更新する。学習処理部160は、ニューラルネットワークの誤差伝搬法において従来知られた手法により、重みの更新を行ってよい。これにより、学習処理部160は、例えば、図1に示すニューラルネットワークにおける重みw11_21~w11_23、w12_21~w12_23、w13_21~w13_23、w21_31~w21_33、w22_31~w22_33、w23_31~w23_33、w31_A、w32_B、及び、w33_Bを更新してよい。
In S800, the
これにより、学習処理部160は、誤差を小さくするように重みの更新を行うことで、ニューラルネットワークの予測精度を向上することができる。後述するように、ノード出力情報の対価は、ノード装置32間の重みに基づいて決められてよい。これにより、ニューラルネットワークにおいて、予測に影響する重要な情報を出力するノード装置32(すなわち、より大きな重みづけがされたノード)に対して、より大きな報酬を分配することができる。
As a result, the
この後、情報処理システム10は、S300に戻り、S300-S800のループを繰り返してよい。これにより、情報処理システム10は、ニューラルネットワークの利用と、ニューラルネットワークの更新を繰り返し行ってよい。
After that, the
図4に本実施形態に係る図3のS300における各ノード装置32の処理フローを示す。図3のS300において、各ノード装置32は、S310~S350の処理を実行してよい。
FIG. 4 shows the processing flow of each
まず、S310において、ノード装置32は、ノード入力情報を取得する。例えば、ノード装置32は、情報処理装置100のネットワーク処理部140から、当該ノード装置32の上流側に接続された別のノード装置32からのノード出力情報を、ノード入力情報として取得する。ノード装置32は、ベクトル値等の形式でノード出力情報を取得してよい。一例として、ノードn21に対応するノード装置32は、過去の天候情報、気温情報、及び/又は、気圧情報等を含むベクトル値等を、ノード入力情報として取得してよい。
First, in S310, the
ノード入力情報を受け取る受取側のノード装置32は、ノード入力情報を取得する際に、対応するノード出力情報を出力する出力側のノード装置32に、対価を支払ってよい。すなわち、ノード装置32は、ノード入力情報を購入してよい。購入処理の詳細は、図5~6において説明する。
The
また、ニューラルネットワークにおいて最上流側のノード装置32(例えば、ノードn11に対応するノード装置32)は、情報源20(例えば、気象データベース)等にアクセスし、過去の天候情報、気温情報、及び/又は、気圧情報等の情報をノード入力情報として取得してよい。これに代えて、最上流側のノード装置32は、情報処理装置100のネットワーク処理部140経由で、情報源20に含まれる情報を取得してもよい。
In addition, the
次にS330において、ノード装置32は、S310で取得したノード入力情報に対して演算処理を行う。例えば、ノード装置32は、ベクトル値等のノード入力情報に対して、線形演算を行う。一例として、ノードn21に対応するノード装置32は、f21(n1,1)、g21(n1,2)、及び、h21(n1,3)を演算してよい。fij(ni―1,x)、gij(ni-1,y)、及び、hij(ni―1,z)は、ノードnijにおいて、ノードni―1,x、ノードni―1,y、ノードni―1,zからのノード入力情報のそれぞれに対する演算を表す。fij(ni―1,x)、gij(ni-1,y)、及び、hij(ni―1,z)は、任意の関数であってよく、例えば線形関数であってよい。
Next, in S330, the
また、ニューラルネットワークにおいて最上流側のノード装置32(例えば、ノードn11に対応するノード装置32)は、S330において、上記演算を行う代わりに、S310で情報源20から取得した情報をベクトル値等に変換してよい。これにより、最上流側のノード装置32は、特徴抽出器として機能する。
Further, in the neural network, the
次に、S350において、ノード装置32は、S330における演算結果をネットワーク処理部140に出力する。ネットワーク処理部140は、ノード装置32からの出力結果を重みづけ処理することにより、ノード出力情報を生成してよい。例えば、ネットワーク処理部140は、ノードn21に対応するノード装置32からf21(n1,1)、g21(n1,2)、及び、h21(n1,3)を受け取り、w11-21×f21(n1,1)+w12-21×g21(n1,2)+w13-21×h21(n1,3)+b21を演算してよい。なお、ノード装置32は、ネットワーク処理部140から自身に関連する重みを受け取って、ネットワーク処理部140の代わりに重みづけ処理を行い、ノード出力情報を生成してもよい。
Next, at S<b>350 , the
ネットワーク処理部140は、ノード出力情報を生成したノード装置32の下流側の別のノード装置32にノード出力情報を供給する。例えば、ネットワーク処理部140は、ノードn21に対応するノード装置32のノード出力情報を、当該ノードn21の下流側に接続されるノードn31~n33に対応するノード装置32のそれぞれに、ノード入力情報として供給する。そして、ノードn31~n33に対応するノード装置32及びアクチュエータ40A及び40Bに対応するノード装置32においてS310-S350の処理が順次繰り返される。
The
図5に、本実施形態に係る図4のS310における処理の概要を示す。S310において、ノード入力情報の受取側のノード装置32Aは、情報処理装置100の報酬分配部170に対価支払要求を送信する。報酬分配部170は、ノード装置32Aから対価支払要求を受け取り、ノード入力情報の受取側のノード装置32Aからノード出力情報の出力側のノード装置32Bへの対価支払処理を実行する。例えば、報酬分配部170は、ノード装置32Aのユーザの口座から、ノード装置32Bのユーザの口座に対価に相当する額の送金を実行してよい。
FIG. 5 shows an overview of the processing in S310 of FIG. 4 according to this embodiment. In S<b>310 , the
報酬分配部170は、ノード装置32Aのユーザの口座残高を対価分減少させ、ノード装置32Bのユーザの口座残高を対価分増加させてよい。報酬分配部170は、ノード装置32Aのユーザからの要求に応じて、暗号通貨をノード装置32Aから32Bに送金してよい。また、報酬分配部170は、銀行等の金融機関のネットワークにアクセスして、ノード装置32Aのユーザの口座からノード装置32Bのユーザの口座に送金処理を行ってよい。
The
対価の支払いがあったことに応じて、ネットワーク処理部140は、予め生成してあった出力側のノード装置32Bからのノード出力情報を、受取側のノード装置32Aに供給する。受取側のノード装置32Aは、ネットワーク処理部140から、出力側のノード装置32Bからのノード出力情報を、ノード入力情報として取得する。
In response to payment, the
ここで、報酬分配部170は、ノード装置32からのノード出力情報の対価を、受取側のノード装置32Aと出力側のノード装置32Bとの間の重みwA-Bに基づいて決定してよい。例えば、重みwA-Bが大きければ、ノード装置32Bのノード出力情報に対するノード装置32Aからの情報の寄与が大きいことになる。従って、報酬分配部170は、重みwA-Bが大きくなるほどノード装置32Bからノード装置32Aへの対価の額を大きくしてよい。例えば、報酬分配部170は、重みwA-Bに比例する額の対価を設定してよい。
Here, the
また、ノード装置32Aは、自己が下流の別のノード装置32から受け取る対価よりも大きな金額をノード装置32Bに支払ってしまうと、損失が生じる。従って、報酬分配部170は、ノード装置32Aが上流のノード装置32(ノード装置32Bを含む)に支払う対価の総額が、自己が受け取る対価を超えないように決定してよい。
Also, if the
また、報酬分配部170は、複数のノード装置32のオークションにより対価を決定してもよい。例えば、複数の下流側(受取側)のノード装置32Aが同一の上流側(出力側)のノード装置32Bからのノード出力情報を必要とする場合、報酬分配部170は、複数の下流側のノード装置32Aから、それぞれの対価の入札額を受け取り、最高額の入札額を対価として決定してよい。その場合、ネットワーク処理部140は、最高額の入札を行ったノード装置32Aのみに対象となるノード出力情報を供給してよい。
Also, the
これに代えて、報酬分配部170は、複数の受取側のノード装置32Aから、それぞれの対価の入札額を受け取り、取引が成立し(すなわち、対価が入札額以下となる)、かつ、出力側のノード装置32Bの利益を最大化できる一の価格を対価として決定してよい。一例として、ノード装置32Bのノード出力情報に対し、ノード装置32A1が金額100で入札し、ノード装置32A2が金額80で入札し、ノード装置32A3が金額10で入札していた場合、報酬分配部170は、対価を金額80としてよい。この場合、ネットワーク処理部140は、ノード装置32A1とノード装置32A2とにノード装置32Bのノード出力情報を供給してよい。
Instead, the
なお、ノード装置32Bが複数のコンピュータにより実現される場合、当該複数のコンピュータ間で更に対価を分配してよい。例えば、ノード装置32Bを実現する複数のコンピュータは、それぞれ自己の計算処理量に応じて対価を分配してよい。このような報酬の分配は、当該複数のコンピュータ内で完結して行われてよく、又は、報酬分配部170が複数のコンピュータの対価の取り分を計算し、各コンピュータに取り分を分配してよい。
If the
ここで、情報処理システム10は、暗号通貨によるスマートコントラクトを利用して、受取側のノード装置32Aと出力側のノード装置32Bとの間の対価及び情報のやり取りを安全に実行してよい。以下、図6を用いてこのような実施形態について説明する。
Here, the
図6は、本実施形態に係る図4のS310のサブフローを示す。情報処理システム10は、図6のS312~S322の処理を行うことにより、ノード装置32Aがノード装置32Bから安全にノード入力情報を取得してよい。
FIG. 6 shows a subflow of S310 in FIG. 4 according to this embodiment. In the
まず、S312において、情報処理装置100の報酬分配部170は、ブロックチェーンを利用する暗号通貨により、出力側のノード装置32Bに対するノード出力情報の対価を、受取側のノード装置32Aに支払わせる。ブロックチェーンを利用する暗号通貨は、ビットコイン等の仮想通貨であってよい。このような暗号通貨のブロックチェーン中のブロックには、トランザクションが含まれていてよい。
First, in S312, the
報酬分配部170は、トランザクションにノード装置32Aからノード装置32Bへ対価の支払いを記録してよい。報酬分配部170は、トランザクションに更にノード装置32Bの履行内容(例えば、ノード装置32Bが出力するノード出力情報に関する情報等)を記録してよい。
The
次にS314において、S312において対価の支払いがなされたことに応じて、受取側のノード装置32Aは自身の公開鍵Aを報酬分配部170に送信する。ノード装置32Aは、公開鍵Aに対応する秘密鍵A'を秘密状態で保持している。報酬分配部170は、受取側のノード装置32Aから公開鍵Aを受け取って出力側のノード装置32Bに送信する。
Next, in S314, the
次にS316において、出力側のノード装置32Bは、自身の保有する暗号鍵Bに対応する複号鍵B'を公開鍵Aで暗号化した公開鍵A(複合鍵B')を生成し、報酬分配部170に送信する。報酬分配部170は、出力側のノード装置32Bから公開鍵A(複合鍵B')を受け取って、受取側のノード装置32Aに送信する。S312~S316において、受取側のノード装置32Aは、ブロックチェーンによる対価の支払いと引き換えに出力側のノード装置32Bの複合鍵B'を受け取っている。従って、ノード装置32Aは、複合鍵B'をブロックチェーン上でノード装置32Bから購入したと言える。
Next, in S316, the
次に、S318において、受取側のノード装置32Aは、自身の保持する秘密鍵A'で公開鍵A(複合鍵B')を復号し、複合鍵B'を取得する。
Next, in S318, the
次に、S320において、出力側のノード装置32Bは、ネットワーク処理部140から自身に関連する重みを受け取り、自身のノード出力情報MBを生成する。出力側のノード装置32Bは、暗号鍵Bでノード出力情報MBを暗号化した暗号鍵B(ノード出力情報MB)を生成し、これを報酬分配部170に送信する。報酬分配部170は、暗号鍵B(ノード出力情報MB)を、ノード装置32Bから受け取って、ノード装置32Aに送信する。
Next, in S320, the
次に、S322において、受取側のノード装置32Aは、暗号鍵B(ノード出力情報MB)を復号鍵B'で復号し、ノード出力情報MBをノード入力情報として取得する。
Next, in S322, the
図6で説明した実施形態によれば、ノード装置32Aとノード装置32Bが安全にノード出力情報と対価を交換することができる。
According to the embodiment described in FIG. 6, the
上記の実施形態では、受取側のノード装置32Aと出力側のノード装置32Bとが、ネットワーク処理部140を介して、対価及び情報のやり取りをした例を説明したが、本実施形態の変形例ではノード装置32Aとノード装置32Bとは、ネットワーク処理部140を介さずに直接やりとりを行ってよい。
In the above embodiment, an example was described in which the
図7に、本実施形態に係る暗号通貨に用いられるブロックチェーンの一例を示す。ブロックチェーンには、複数のブロックが含まれる。図7には、ブロック(1)、ブロック(2)、ブロック(3)…ブロック(n-1)、ブロック(n))のn個のブロックが示される。 FIG. 7 shows an example of a block chain used for cryptocurrency according to this embodiment. A blockchain contains multiple blocks. FIG. 7 shows n blocks, block (1), block (2), block (3) . . . block (n-1), block (n)).
各ブロックには、トランザクション、過去に生成されたブロックのハッシュ、トランザクションのハッシュ等が含まれてよい。例えば、ブロック(n)には、トランザクション(n)、ハッシュ[ブロック(n-1)]、及び、ハッシュ[トランザクション(n)]が含まれてよい。ここでハッシュ[*]はハッシュ関数を表す。トランザクション(n)には、ノード装置32Bの履行内容(例えば、ノード装置32Bが出力するノード出力情報に関する情報等)が含まれてよい。
Each block may include a transaction, a hash of previously generated blocks, a hash of the transaction, and so on. For example, block (n) may include transaction (n), hash [block (n-1)], and hash [transaction (n)]. Here hash [*] represents a hash function. The transaction (n) may include the fulfillment details of the
情報処理システム10によれば、MARLにおいて多数のエージェント(例えば、ノード)を共同させ、情報の対価として報酬を情報ネットワークの下流側から上流側に分配することで、第3者を介在させずに報酬分配を実現できる。特に本実施形態の情報処理システム10によれば、成果(例えば、収益の正確な予想)に寄与したエージェントに対してより重く報酬を分配することができるので、報酬分配の公平性が保たれる。
According to the
上記の実施形態の説明では、情報処理システム10を主に金融分野に用いた例を挙げたが、本願発明はこれに限られない。情報処理システム10は、分散コンピューティングを利用するあらゆる分野に適用することができる。例えば、情報処理システム10は、スマートグリッド、製造業、保険、小売り等の様々な分野に適用することができる。
In the above description of the embodiment, an example in which the
例えば、情報処理システム10は、製造業における製造効率の改善に用いられてよい。この場合、アクチュエータ40は、例えば製造業の事業者等によって運用されてもよく、上流側のノード30から受け取る情報に基づいて製品の製造量、製造する製品の構成比率、製造国、およびその他のパラメータを変更することによって、製造期間の短縮、品質の改善、及び/又は、収益の増加(コスト削減を含む)を図ってもよい。
For example,
また、アクチュエータ40は、例えば天気、農産物の生産量、およびその他の様々な環境に影響される事象を予測してもよく、ファンド等の代わりに予測データを販売することによって収益を上げてもよい。また、アクチュエータ40は、テレビ事業者、新聞社、出版社、およびその他のマスコミュニケーション業者であってもよく、上流側のノード30から受け取る情報に基づいてメディアで提供する情報を生成または選別等をすることにより、収益を上げてもよい。
Actuator 40 may also predict, for example, weather, agricultural yields, and various other environmentally influenced events, and may generate revenue by selling the forecast data on behalf of a fund or the like. . Also, the actuator 40 may be a television operator, a newspaper company, a publisher, or other mass communication company, and based on the information received from the
本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。 Various embodiments of the invention may be described with reference to flowchart illustrations and block diagrams, where blocks refer to (1) steps in a process in which operations are performed or (2) devices responsible for performing the operations. may represent a section of Certain steps and sections may be implemented by dedicated circuitry, programmable circuitry provided with computer readable instructions stored on a computer readable medium, and/or processor provided with computer readable instructions stored on a computer readable medium. you can Dedicated circuitry may include digital and/or analog hardware circuitry, and may include integrated circuits (ICs) and/or discrete circuitry. Programmable circuits include logic AND, logic OR, logic XOR, logic NAND, logic NOR, and other logic operations, memory elements such as flip-flops, registers, field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), etc. and the like.
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。 Computer-readable media may include any tangible device capable of storing instructions to be executed by a suitable device, such that computer-readable media having instructions stored thereon may be designated in flowcharts or block diagrams. It will comprise an article of manufacture containing instructions that can be executed to create means for performing the operations described above. Examples of computer-readable media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, and the like. More specific examples of computer readable media include floppy disks, diskettes, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), Electrically Erasable Programmable Read Only Memory (EEPROM), Static Random Access Memory (SRAM), Compact Disc Read Only Memory (CD-ROM), Digital Versatile Disc (DVD), Blu-ray (RTM) Disc, Memory Stick, Integration Circuit cards and the like may be included.
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。 The computer readable instructions may be assembler instructions, Instruction Set Architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or object oriented programming such as Smalltalk, JAVA, C++, etc. language, and any combination of one or more programming languages, including conventional procedural programming languages, such as the "C" programming language or similar programming languages. good.
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。 Computer readable instructions may be transferred to a processor or programmable circuitry of a general purpose computer, special purpose computer, or other programmable data processing apparatus, either locally or over a wide area network (WAN), such as a local area network (LAN), the Internet, or the like. ) and may be executed to create means for performing the operations specified in the flowcharts or block diagrams. Examples of processors include computer processors, processing units, microprocessors, digital signal processors, controllers, microcontrollers, and the like.
図8は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。コンピュータ2200にインストールされたプログラムは、コンピュータ2200に、本発明の実施形態に係る情報処理装置100、ノード装置32、投資端末42等に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ2200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ2200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2212によって実行されてよい。
FIG. 8 illustrates an
本実施形態によるコンピュータ2200は、CPU2212、RAM2214、グラフィックコントローラ2216、およびディスプレイデバイス2218を含み、それらはホストコントローラ2210によって相互に接続されている。コンピュータ2200はまた、通信インターフェイス2222、ハードディスクドライブ2224、DVD-ROMドライブ2226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ2220を介してホストコントローラ2210に接続されている。コンピュータはまた、ROM2230およびキーボード2242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ2240を介して入/出力コントローラ2220に接続されている。
CPU2212は、ROM2230およびRAM2214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ2216は、RAM2214内に提供されるフレームバッファ等またはそれ自体の中にCPU2212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス2218上に表示されるようにする。
通信インターフェイス2222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ2224は、コンピュータ2200内のCPU2212によって使用されるプログラムおよびデータを格納する。DVD-ROMドライブ2226は、プログラムまたはデータをDVD-ROM2201から読み取り、ハードディスクドライブ2224にRAM2214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
ROM2230はその中に、アクティブ化時にコンピュータ2200によって実行されるブートプログラム等、および/またはコンピュータ2200のハードウェアに依存するプログラムを格納する。入/出力チップ2240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ2220に接続してよい。
プログラムが、DVD-ROM2201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ2224、RAM2214、またはROM2230にインストールされ、CPU2212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ2200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ2200の使用に従い情報の操作または処理を実現することによって構成されてよい。
A program is provided by a computer-readable medium such as a DVD-
例えば、通信がコンピュータ2200および外部デバイス間で実行される場合、CPU2212は、RAM2214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェイス2222に対し、通信処理を命令してよい。通信インターフェイス2222は、CPU2212の制御下、RAM2214、ハードディスクドライブ2224、DVD-ROM2201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
For example, when communication is performed between the
また、CPU2212は、ハードディスクドライブ2224、DVD-ROMドライブ2226(DVD-ROM2201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM2214に読み取られるようにし、RAM2214上のデータに対し様々なタイプの処理を実行してよい。CPU2212は次に、処理されたデータを外部記録媒体にライトバックする。
In addition, the
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU2212は、RAM2214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM2214に対しライトバックする。また、CPU2212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU2212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
Various types of information, such as various types of programs, data, tables, and databases, may be stored on recording media and subjected to information processing.
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ2200上またはコンピュータ2200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ2200に提供する。
The programs or software modules described above may be stored in a computer readable medium on or near
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。 Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It is obvious to those skilled in the art that various modifications and improvements can be made to the above embodiments. It is clear from the description of the scope of claims that forms with such modifications or improvements can also be included in the technical scope of the present invention.
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。 The execution order of each process such as actions, procedures, steps, and stages in the devices, systems, programs, and methods shown in the claims, the specification, and the drawings is particularly "before", "before etc., and it should be noted that they can be implemented in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flow in the claims, the specification, and the drawings, even if the description is made using "first," "next," etc. for the sake of convenience, it means that it is essential to carry out in this order. not a thing
10 情報処理システム
20 情報源
30 ノード
32 ノード装置
40 アクチュエータ
41 投資家
42 投資端末
50 クラウドソースプラットフォーム
100 情報処理装置
120 処理取得部
130 ネットワーク生成部
140 ネットワーク処理部
150 投資実行部
160 学習処理部
170 報酬分配部
180 記憶部
10
Claims (16)
前記情報ネットワークにおける最下流のノードに対応する最下流のノード装置から取得したノード出力情報と、当該ノード出力情報と対応する現実の観測値との誤差を縮小するように前記ノード装置間の情報伝達の重みを更新することにより、前記情報ネットワークを学習させる学習処理部と、
前記ノード出力情報を前記ノード入力情報として受け取る受取側のノード装置から、当該ノード出力情報を出力する出力側のノード装置に対して、前記ノード出力情報の対価を支払わせる報酬分配部と、
を備える情報処理装置。 Providing node input information to each node device of a node group including a plurality of node devices functioning as nodes forming an information network, and obtaining node output information as a result of processing the node input information by each of the node devices a network processing unit that provides node output information acquired from an upstream node device in the information network as node input information for a downstream node device connected to the upstream node device;
Information transmission between the node devices so as to reduce an error between node output information obtained from the most downstream node device corresponding to the most downstream node in the information network and an actual observed value corresponding to the node output information. a learning processing unit for learning the information network by updating the weights of
a reward distribution unit for causing a node device on the receiving side that receives the node output information as the node input information to pay a consideration for the node output information to a node device on the output side that outputs the node output information;
Information processing device.
請求項1に記載の情報処理装置。 wherein said information network is a neural network and said nodes correspond to neurons of said neural network;
The information processing device according to claim 1 .
前記ノード出力情報に対応する現実の観測値と当該ノード出力情報との誤差を、最下流のノード装置から上流側のノード装置に向けて誤差伝搬し、伝搬された誤差に基づいて前記ノード装置間の情報伝達の重みを更新する、
請求項1又は2に記載の情報処理装置。 The learning processing unit
Propagating an error between the actual observed value corresponding to the node output information and the node output information from the most downstream node device to the upstream node device, and based on the propagated error between the node devices update the signaling weights of
The information processing apparatus according to claim 1 or 2.
投資実行部を更に備える、
請求項1から3のいずれか1項に記載の情報処理装置。 executing an investment based on the node output information obtained from the most downstream node device;
further comprising an investment execution department;
The information processing apparatus according to any one of claims 1 to 3.
投資端末から、投資実行要求を取得したことに応じて、前記最下流のノード装置から取得したノード出力情報に基づく投資を実行し、
前記投資により得られた利益の少なくとも一部を前記投資端末に分配する、
請求項4に記載の情報処理装置。 The investment execution department
executing an investment based on the node output information obtained from the most downstream node device in response to obtaining an investment execution request from the investment terminal;
distributing at least a portion of the profits obtained from the investment to the investment terminal;
The information processing apparatus according to claim 4.
前記投資端末に、前記投資に用いられたノード出力情報を出力するノード装置に対して、前記投資により得られた利益の少なくとも一部を分配する、
請求項5に記載の情報処理装置。 The reward distribution unit
Distributing at least part of the profit obtained from the investment to a node device that outputs node output information used for the investment to the investment terminal;
The information processing device according to claim 5 .
請求項1から6のいずれか1項に記載の情報処理装置。 The reward distribution unit determines a consideration for the node output information based on the weight between the node device on the receiving side and the node device on the output side.
The information processing apparatus according to any one of claims 1 to 6.
請求項1から7のいずれか1項に記載の情報処理装置。 The reward distribution unit causes the receiving node device to pay the consideration for the node output information for the output node device with cryptocurrency using blockchain.
The information processing apparatus according to any one of claims 1 to 7.
前記受取側のノード装置から公開鍵Aを受け取って前記出力側のノード装置に送信し、
前記出力側のノード装置から複号鍵B'を公開鍵Aで暗号化した公開鍵A(複合鍵B')を受け取って、前記受取側のノード装置に送信し、
前記出力側のノード装置から複号鍵B'に対応する暗号鍵Bでノード出力情報MBを暗号化した暗号鍵B(ノード出力情報MB)を、前記出力側のノード装置から受け取って、受取側のノード装置に送信する、
請求項8に記載の情報処理装置。 The reward distribution unit, in response to payment of the consideration,
receiving public key A from the node device on the receiving side and transmitting it to the node device on the output side;
receiving public key A (composite key B') obtained by encrypting decryption key B' with public key A from the node device on the output side and transmitting it to the node device on the receiving side;
An encryption key B (node output information M B ) obtained by encrypting the node output information M B with an encryption key B corresponding to the decryption key B′ from the output side node device is received from the output side node device. and send it to the node device on the receiving side,
The information processing apparatus according to claim 8 .
請求項1から9のいずれか1項に記載の情報処理装置。 further comprising a processing acquisition unit for acquiring, from each of the plurality of node devices, the type of the node input information input by each node device and the type of the node output information output by each node device;
The information processing apparatus according to any one of claims 1 to 9.
請求項10に記載の情報処理装置。 connecting the plurality of node devices based on the type of the node input information and the type of the node output information of the plurality of node devices acquired by the processing acquisition unit, thereby establishing the information network; further comprising a network generator that forms
The information processing apparatus according to claim 10.
第1のノード装置の前記ノード出力情報の種別と、第2のノード装置の前記ノード入力情報の種別が一致するか判断し、両者が一致したことに応じて、前記第1のノード装置に対応するノードの下流側に前記第2のノード装置に対応するノードを接続する、
請求項11に記載の情報処理装置。 The network generator,
Determining whether the type of the node output information of the first node device and the type of the node input information of the second node device match, and responding to the first node device in response to a match between the two connecting a node corresponding to the second node device downstream of the node that
The information processing device according to claim 11 .
前記複数のノード装置と、
を備える情報処理システム。 an information processing apparatus according to any one of claims 1 to 12;
the plurality of node devices;
An information processing system comprising
を備える請求項13に記載の情報処理システム。 14. The information handling system of claim 13, further comprising an investment terminal.
前記情報ネットワークにおける最下流のノードに対応する最下流のノード装置から取得したノード出力情報と、当該ノード出力情報と対応する現実の観測値との誤差を縮小するように前記ノード装置間の情報伝達の重みを更新することにより、前記情報ネットワークを学習させる、コンピュータにより実行される学習段階と、
前記ノード出力情報を前記ノード入力情報として受け取った受取側のノード装置から、当該ノード出力情報を出力した出力側のノード装置に対して、前記ノード出力情報の対価を支払わせる、コンピュータにより実行される報酬分配段階と、
を備える情報処理方法。 Giving node input information to each node device of a node group including a plurality of node devices functioning as nodes forming an information network, and acquiring node output information as a result of processing the node input information by each of the node devices a computer-implemented network processing step of providing node output information obtained from an upstream node device as node input information for a downstream node device connected to said upstream node device;
Information transmission between the node devices so as to reduce an error between node output information obtained from the most downstream node device corresponding to the most downstream node in the information network and an actual observed value corresponding to the node output information. a computer-implemented learning step of training the information network by updating the weights of
Executed by a computer, causing the node device on the receiving side that received the node output information as the node input information to pay for the node output information to the node device on the output side that output the node output information a reward distribution stage;
An information processing method comprising:
情報ネットワークを形成するノードとして機能する複数のノード装置を含むノード群のノード装置の各々にノード入力情報を与え、前記ノード装置の各々がノード入力情報を処理した結果であるノード出力情報を取得するネットワーク処理部であって、前記情報ネットワークにおいて上流側のノード装置から取得したノード出力情報を前記上流側のノード装置に接続された下流側のノード装置のノード入力情報として与えるネットワーク処理部と、
前記情報ネットワークにおける最下流のノードに対応する最下流のノード装置から取得したノード出力情報と、当該ノード出力情報と対応する現実の観測値との誤差を縮小するように前記ノード装置間の情報伝達の重みを更新することにより、前記情報ネットワークを学習させる学習処理部と、
前記ノード出力情報を前記ノード入力情報として受け取った受取側のノード装置から、当該ノード出力情報を出力した出力側のノード装置に対して、前記ノード出力情報の対価を支払わせる報酬分配部と、
として機能させるための情報処理プログラム。 executed by a computer, causing the computer to:
Providing node input information to each node device of a node group including a plurality of node devices functioning as nodes forming an information network, and obtaining node output information as a result of processing the node input information by each of the node devices a network processing unit that provides node output information acquired from an upstream node device in the information network as node input information for a downstream node device connected to the upstream node device;
Information transmission between the node devices so as to reduce an error between node output information obtained from the most downstream node device corresponding to the most downstream node in the information network and an actual observed value corresponding to the node output information. a learning processing unit for learning the information network by updating the weights of
a remuneration distribution unit that makes the node device on the receiving side that receives the node output information as the node input information pay the consideration for the node output information to the node device on the output side that outputs the node output information;
Information processing program to function as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018084383A JP7111343B2 (en) | 2018-04-25 | 2018-04-25 | Information processing device, information processing method, and information processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018084383A JP7111343B2 (en) | 2018-04-25 | 2018-04-25 | Information processing device, information processing method, and information processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019191963A JP2019191963A (en) | 2019-10-31 |
JP7111343B2 true JP7111343B2 (en) | 2022-08-02 |
Family
ID=68390433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018084383A Active JP7111343B2 (en) | 2018-04-25 | 2018-04-25 | Information processing device, information processing method, and information processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7111343B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222321A (en) | 2001-01-25 | 2002-08-09 | Nippon Telegr & Teleph Corp <Ntt> | Method for collecting, operating and distributing fund |
JP2016004548A (en) | 2014-06-19 | 2016-01-12 | ヤフー株式会社 | Provision device, provision method and provision program |
JP2016157426A (en) | 2015-02-23 | 2016-09-01 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Neural network training method and apparatus, and recognition method and apparatus |
-
2018
- 2018-04-25 JP JP2018084383A patent/JP7111343B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222321A (en) | 2001-01-25 | 2002-08-09 | Nippon Telegr & Teleph Corp <Ntt> | Method for collecting, operating and distributing fund |
JP2016004548A (en) | 2014-06-19 | 2016-01-12 | ヤフー株式会社 | Provision device, provision method and provision program |
JP2016157426A (en) | 2015-02-23 | 2016-09-01 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Neural network training method and apparatus, and recognition method and apparatus |
Non-Patent Citations (1)
Title |
---|
DEAN, J., et al.,"Large Scale Distributed Deep Networks",Proceedings of Neural Information Processing Systems 2012 (NIPS 2012),[online],2012年,Pages 1-9,[retrieved on 2019.03.12], Retrieved from the Internet: <URL: https://papers.nips.cc/paper/4687-large-scale-distributed-deep-networks>. |
Also Published As
Publication number | Publication date |
---|---|
JP2019191963A (en) | 2019-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Khedr et al. | Cryptocurrency price prediction using traditional statistical and machine‐learning techniques: A survey | |
Ntakaris et al. | Benchmark dataset for mid‐price forecasting of limit order book data with machine learning methods | |
US20190340586A1 (en) | Conducting optimized cross-blockchain currency transactions using machine learning | |
Awotunde et al. | Machine learning algorithm for cryptocurrencies price prediction | |
Yong et al. | A stock market trading system using deep neural network | |
Kabbani et al. | Deep reinforcement learning approach for trading automation in the stock market | |
US20130238476A1 (en) | Counterfactual testing of finances using financial objects | |
US11620706B2 (en) | Trading platforms using market sentiment and dynamic risk assessment profiles | |
US20190333149A1 (en) | System and Method of Managing a Cryptocurrency-Based Portfolio | |
JP2024512076A (en) | Asset class backed tokenization platform | |
Snihovyi et al. | Implementation of robo-advisor services for different risk attitude investment decisions using machine learning techniques | |
KR20190109300A (en) | Method and system for technology valuation using block chain and smart contract | |
CN111667307A (en) | Method and device for predicting financial product sales volume | |
Poudel et al. | Cryptocurrency price and volatility predictions with machine learning | |
Kukreja et al. | Fintech in oman: Present and future scenario | |
Shi et al. | The limit order book recreation model (lobrm): An extended analysis | |
JP7111343B2 (en) | Information processing device, information processing method, and information processing program | |
US12032513B2 (en) | Data control, management, and perpetual monetization control methods and systems | |
US20130238460A1 (en) | Determining shopping intent based on financial objects | |
US20130238477A1 (en) | System for dynamically generating financial objects | |
Rius et al. | Smart derivatives: On-chain forwards for digital assets | |
WO2019207826A1 (en) | Device, method, and program for information processing performed by multi-agent | |
US20130238475A1 (en) | Generalized financial objects | |
CN110795232A (en) | Data processing method, data processing device, computer readable storage medium and computer equipment | |
US20130238434A1 (en) | Financial outcome based on shared financial objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210415 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220121 |
|
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: 20220405 |
|
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: 20220517 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220614 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220713 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7111343 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |