JP7001559B2 - Publishing device, publishing method and publishing program - Google Patents

Publishing device, publishing method and publishing program Download PDF

Info

Publication number
JP7001559B2
JP7001559B2 JP2018136051A JP2018136051A JP7001559B2 JP 7001559 B2 JP7001559 B2 JP 7001559B2 JP 2018136051 A JP2018136051 A JP 2018136051A JP 2018136051 A JP2018136051 A JP 2018136051A JP 7001559 B2 JP7001559 B2 JP 7001559B2
Authority
JP
Japan
Prior art keywords
program
unit
information
word set
technical
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
JP2018136051A
Other languages
Japanese (ja)
Other versions
JP2020013395A (en
Inventor
祐 宮崎
隼人 小林
晃平 菅原
正樹 野口
朋哉 山崎
一騎 山内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2018136051A priority Critical patent/JP7001559B2/en
Publication of JP2020013395A publication Critical patent/JP2020013395A/en
Application granted granted Critical
Publication of JP7001559B2 publication Critical patent/JP7001559B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、公開装置、公開方法および公開プログラムに関する。 The present invention relates to a public device, a public method and a public program.

従来、入力された情報の解析結果に基づいて、入力された情報と関連する情報を生成し、生成した情報を応答として出力する技術が知られている。このような技術の一例として、入力されたテキストに含まれる単語、文章、文脈を多次元ベクトルに変換して解析し、解析結果に基づいて、入力されたテキストと類似するテキストや、入力されたテキストに続くテキストを類推し、類推結果を出力する自然言語処理の技術が知られている。 Conventionally, there is known a technique of generating information related to the input information based on the analysis result of the input information and outputting the generated information as a response. As an example of such a technique, words, sentences, and contexts contained in the input text are converted into a multidimensional vector and analyzed, and based on the analysis result, text similar to the input text or input. A natural language processing technique that infers the text following the text and outputs the analogy result is known.

特開2015-22433号公報Japanese Unexamined Patent Publication No. 2015-22433 特開2017-59082号公報JP-A-2017-59082

“DEEPCODER: LEARNING TO WRITE PROGRAMS”, Matej Balog, Alexander L. Gaunt, Marc Brockschmidt, Sebastian Nowozin, Daniel Tarlow, Published as a conference paper at ICLR 2017“DEEPCODER: LEARNING TO WRITE PROGRAMS”, Matej Balog, Alexander L. Gaunt, Marc Brockschmidt, Sebastian Nowozin, Daniel Tarlow, Published as a conference paper at ICLR 2017 “ニューラルチューリングマシン入門”, 森山 直人, <インターネット>https://www.slideshare.net/naotomoriyama/ss-69549087(平成30年5月1日検索)"Introduction to Neural Turing Machine", Naoto Moriyama, <Internet> https://www.slideshare.net/naotomoriyama/ss-69549087 (Searched May 1, 2018) “Dynamics on expanding spaces: modeling the emergence of novelties”,Vittorio Loreto, Vito D. P. Servedio, Steven H. Strogatz, Francesca Tria<インターネット>“Dynamics on expanding spaces: modeling the emergence of novelties”, Vittorio Loreto, Vito D.P. Servedio, Steven H. Strogatz, Francesca Tria <Internet>

近年、利用者に対して提供されるサービスのライフサイクルが短期化している。しかしながら、従来、利用者に対してサービスの起案から提供までを自動化する手法については、提案がなされていなかった。 In recent years, the life cycle of services provided to users has become shorter. However, conventionally, no proposal has been made for a method for automating the process from drafting to provision of a service to a user.

本願は、上記に鑑みてなされたものであって、サービスの起案から提供までを自動化することを目的とする。 The present application has been made in view of the above, and an object thereof is to automate the process from drafting to provision of a service.

本願に係る公開装置は、所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出部と、前記抽出部により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成部と、前記生成部により生成されたプログラムを公開する公開部とを有することを特徴とする。 The publishing device according to the present application is a word set included in a sentence indicating a predetermined process, and uses an extraction unit for extracting a word set having a predetermined structure and a word set extracted by the extraction unit. It is characterized by having a generation unit that generates a program that realizes a predetermined process, and a public unit that publishes the program generated by the generation unit.

実施形態の一態様によれば、サービスの起案から提供までを自動化することができる。 According to one aspect of the embodiment, it is possible to automate the process from drafting to provision of a service.

図1は、実施形態に係る公開装置が実行する処理の一例を示す図である。FIG. 1 is a diagram showing an example of a process executed by a public device according to an embodiment. 図2は、実施形態に係る公開装置の構成例を示す図である。FIG. 2 is a diagram showing a configuration example of a public device according to an embodiment. 図3は、実施形態に係る文献データベースに登録される情報の一例を示す図である。FIG. 3 is a diagram showing an example of information registered in the literature database according to the embodiment. 図4は、実施形態に係る技術グラフデータベースに登録される情報の一例を示す図である。FIG. 4 is a diagram showing an example of information registered in the technical graph database according to the embodiment. 図5は、実施形態に係るサービス情報データベースに登録される情報の一例を示す図である。FIG. 5 is a diagram showing an example of information registered in the service information database according to the embodiment. 図6は、実施形態に係る公開装置が実行する処理の流れの一例を説明するフローチャートである。FIG. 6 is a flowchart illustrating an example of a flow of processing executed by the public device according to the embodiment. 図7は、ハードウェア構成の一例を示す図である。FIG. 7 is a diagram showing an example of a hardware configuration.

以下に、本願に係る公開装置、公開方法および公開プログラムを実施するための形態(以下、「実施形態」と記載する。)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る公開装置、公開方法および公開プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。 Hereinafter, a public device, a public method, and a mode for implementing a public program (hereinafter, referred to as “embodiment”) according to the present application will be described in detail with reference to the drawings. It should be noted that this embodiment does not limit the publishing device, publishing method, and publishing program according to the present application. Further, in each of the following embodiments, the same parts are designated by the same reference numerals, and duplicate explanations are omitted.

[実施形態]
〔1-1.公開装置の一例〕
まず、図1を用いて、公開装置が実行する処理の一例について説明する。なお、以下の説明では、公開装置が実行する処理の一例として、所定のサービスを提供するためのアプリケーション(すなわち、ソフトウェア)を自動生成し、生成したアプリケーションを公開する処理、および、アプリケーションの利用に伴う利用者の登録を受付け、アプリケーションとそのアプリケーションを利用する利用者のリスト(すなわち、ユーザーリスト)とを販売対象として提供する処理の一例について説明するが、実施形態は、これに限定されるものではない。
[Embodiment]
[1-1. An example of a public device]
First, an example of the process executed by the public device will be described with reference to FIG. In the following description, as an example of the process executed by the publishing device, an application (that is, software) for providing a predetermined service is automatically generated, and the generated application is published, and the application is used. An example of a process of accepting an accompanying user registration and providing an application and a list of users who use the application (that is, a user list) for sale will be described, but the embodiment is limited to this. is not it.

図1は、実施形態に係る公開装置が実行する処理の一例を示す図である。図1では、公開装置10は、以下に説明する判定処理を実行する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。 FIG. 1 is a diagram showing an example of a process executed by a public device according to an embodiment. In FIG. 1, the public device 10 is an information processing device that executes a determination process described below, and is realized by, for example, a server device, a cloud system, or the like.

より具体的には、公開装置10は、インターネット等の所定のネットワークNを介して、管理装置100、事業者装置200、および利用者端末300(例えば、図2を参照)といった任意の装置と通信が可能である。 More specifically, the public device 10 communicates with an arbitrary device such as a management device 100, a business device 200, and a user terminal 300 (see, for example, FIG. 2) via a predetermined network N such as the Internet. Is possible.

管理装置100は、各種のコンテンツを管理する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。例えば、管理装置100は、各種の技術分野に属する論文や特許出願に係る公開公報等のコンテンツを管理する。なお、管理装置100は、例えば、利用者により投稿されたレシピやSNS(Social Networking Service)に対する投稿等、テキストを含む任意の情報をコンテンツとして管理してよい。 The management device 100 is an information processing device that manages various contents, and is realized by, for example, a server device, a cloud system, or the like. For example, the management device 100 manages contents such as papers belonging to various technical fields and publications related to patent applications. The management device 100 may manage arbitrary information including texts, such as recipes posted by users and posts to SNS (Social Networking Service), as contents.

事業者装置200は、各種の事業者が使用する端末装置であり、例えば、サーバ装置やクラウドシステム、PC(Personal Computer)等により実現される。例えば、事業者装置200は、アプリケーションとユーザーリストとの組を販売可能なサービスを示すサービス情報として受付けると、受付けたサービス情報の内容を事業者に対して提示し、このようなサービス情報の購入を公開装置10へと通知する機能を有する。 The business operator device 200 is a terminal device used by various business operators, and is realized by, for example, a server device, a cloud system, a PC (Personal Computer), or the like. For example, when the business operator device 200 accepts a set of an application and a user list as service information indicating a service that can be sold, it presents the contents of the received service information to the business operator and purchases such service information. Has a function of notifying the public device 10.

〔1-2.公開処理および提供処理の概要について〕
ここで、従来技術について説明する。利用者に対して提供されるサービスのライフサイクルが短期化している。しかしながら、従来、利用者に対してサービスの起案から提供までを自動化する手法については、提案がなされていなかった。
[1-2. Overview of public processing and provision processing]
Here, the prior art will be described. The life cycle of services provided to users is shortening. However, conventionally, no proposal has been made for a method for automating the process from drafting to provision of a service to a user.

そこで、公開装置10は、以下の公開処理を実行する。まず、公開装置10は、所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する。続いて、公開装置10は、抽出された単語組を用いて、所定の処理を実現するプログラムを生成する。そして、公開装置10は、生成されたプログラムを公開する。 Therefore, the publishing device 10 executes the following publishing process. First, the publishing device 10 extracts a word set having a predetermined structure, which is a word set included in a sentence indicating a predetermined process. Subsequently, the publishing device 10 uses the extracted word set to generate a program that realizes a predetermined process. Then, the publishing device 10 publishes the generated program.

また、公開装置10は、以下の提供処理を実行する。まず、公開装置10は、公開されたプログラムを利用する利用者の情報を取得する。そして、公開装置10は、プログラムに関する情報と、そのプログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として事業者等に提供する。 Further, the public device 10 executes the following provision process. First, the public device 10 acquires information on a user who uses the published program. Then, the public appliance 10 provides the service information in which the information about the program and the information of the user who uses the program are associated with each other as the information about the service that can be sold to the business operator or the like.

すなわち、公開装置10は、単語組からプログラムの生成を行い、生成されたプログラムの公開を行う。また、公開装置10は、公開されたプログラムの利用に関する利用者の情報登録を受けつける。そして、公開装置10は、プログラムとそのプログラムを利用する利用者のユーザーリストとの組であるサービス情報を販売対象として開示する。すなわち、公開装置10は、新たなビジネスを実現するプログラムを自動生成し、自動生成したプログラムとそのプログラムを利用する利用者の情報とをセットで販売対象とする。このような処理の結果、公開装置10は、サービスの生成およびサービスの売却という一連の流れ、換言すると、会社の生成および会社の売却という一連の流れを自動化することができる。 That is, the publishing device 10 generates a program from the word set and publishes the generated program. Further, the public device 10 receives the user's information registration regarding the use of the published program. Then, the public device 10 discloses the service information, which is a set of the program and the user list of the user who uses the program, as a sales target. That is, the public device 10 automatically generates a program that realizes a new business, and sells the automatically generated program and the information of the user who uses the program as a set. As a result of such processing, the public device 10 can automate a series of flows of service generation and service sale, in other words, a series of company generation and company sale.

〔1-3.プログラムの生成について〕
ここで、公開装置10は、単語組からプログラムの生成を行う。例えば、公開装置10は、単語組として、名詞となる単語と、副詞句となる単語若しくは単語組と、名詞となる単語に関する動詞となる単語とを含む単語組を抽出する。そして、公開装置10は、単語組に含まれる名詞句が示す情報を入力した際に、その単語組に含まれる副詞句が示す情報を出力するように、プログラムの生成を行う。
[1-3. About program generation]
Here, the publishing device 10 generates a program from the word set. For example, the publishing device 10 extracts, as a word set, a word set including a word that becomes a noun, a word or a word set that becomes an adverbial phrase, and a word that becomes a verb related to the word that becomes a noun. Then, the publishing device 10 generates a program so that when the information indicated by the noun phrase included in the word set is input, the information indicated by the adverbial phrase included in the word set is output.

具体例を説明すると、例えば、発想や発明の特徴、すなわちアイデアの特徴を説明しているであろう文章は、処理の対象を示す名詞、名詞が示す対象の状態を示す状態表現語若しくは副詞句、および処理の内容を示す動詞とを含むと予測される。また、このような文章は、助詞などの単語間に存在しうる品詞を中括弧で囲むと、「(名詞){を}(状態表現語、副詞句){で、によって、にして}(動詞){する、できる}」といった構造を有すると予測される。 To give a specific example, for example, a sentence that may explain the characteristics of an idea or invention, that is, the characteristics of an idea, is a noun indicating the object of processing, a state expression word indicating the state of the object indicated by the noun, or an adverbial phrase. , And a verb that indicates the content of the process. In addition, in such a sentence, if the part of speech that can exist between words such as particles is enclosed in curly braces, "(noun) {to} (state expression word, adverbial phrase) {by, with} (verb). ) {Can, can} ”is expected to have a structure.

そこで、公開装置10は、所定の分野に属するコンテンツから上述した構造を有する文章を抽出し、抽出した文章に含まれる3つの単語、すなわち、名詞、状態表現語若しくは副詞句、および動詞を、発想を示す単語組として抽出する。このようにして抽出された単語組は、所定の格助詞を追加するのみで、発明や発想などのアイデアを示す文章を再現することができるため、単語組の抽出元となる文章が示す概念、すなわち、発明や発想等のアイデアの概念を示すことができる。 Therefore, the publishing device 10 extracts a sentence having the above-mentioned structure from the content belonging to a predetermined field, and conceives three words included in the extracted sentence, that is, a noun, a state expression word or an adverbial phrase, and a verb. Is extracted as a word set indicating. The word set extracted in this way can reproduce a sentence showing an idea such as an invention or an idea only by adding a predetermined case particle. That is, it is possible to show the concept of an idea such as an invention or an idea.

ここで、「AをBによりCする」という文章から、単語組「A」、「B」、および「C」を抽出し、「A」が示す情報を入力とした際に、「C」が示す情報を出力するようにプログラムの生成を行った場合、公開装置10は、文章が示す概念を実現するプログラムの生成を行うことができると考えられる。そこで、公開装置10は、単語組から抽出した名詞となる「A」が示す情報を入力した際に、動詞となる「C」が示す情報を出力するように、プログラムの自動生成を行う。 Here, when the word sets "A", "B", and "C" are extracted from the sentence "A is C by B" and the information indicated by "A" is input, "C" is used. When the program is generated so as to output the indicated information, it is considered that the publishing device 10 can generate the program that realizes the concept indicated by the text. Therefore, the publishing device 10 automatically generates a program so as to output the information indicated by the verb "C" when the information indicated by the noun "A" extracted from the word set is input.

すなわち、入力「A」と出力「C」の教師データのペアを集め、ニューラルチューリングマシンを活用したプログラム自動生成装置により、内部パラメータを変えることにより、「B」にあてはまるプログラムを生成できる。または、任意のいくつかの内部パラメータを変えることにより、プログラムをいくつか自動生成し、その自動生成されたプログラムの中から単語「B」にあてはまるものを抽出してもよい。 That is, a program applicable to "B" can be generated by collecting pairs of teacher data of the input "A" and the output "C" and changing the internal parameters by the program automatic generation device utilizing the neural Turing machine. Alternatively, some programs may be automatically generated by changing some arbitrary internal parameters, and those applicable to the word "B" may be extracted from the automatically generated programs.

例えば、公開装置10は、「利用者を属性情報によりグルーピングする」という文章から、上記「A」に対応する「利用者」、上記「B」に対応する「属性情報」、および上記「C」に対応する「グルーピング」を抽出する。そして、公開装置10は、単語「利用者」が示す情報として、利用者に関する各種の情報を収集する。また、同様に「グルーピング」に関する情報を収集する。例えば、公開装置10は、単語「利用者」が示す性別情報や、男女のグルーピング情報のペアなどを教師データとして、プログラムを自動生成するニューラルチューリングマシン装置に入力し、内部パラメータとして、「属性情報」に関するものの重みが大きくななるような調整をすることにより、この3つの単語が意図するプログラムを自動生成できるようになる。 For example, the public device 10 has the sentence "grouping users by attribute information", the "user" corresponding to the above "A", the "attribute information" corresponding to the above "B", and the above "C". Extract the "grouping" corresponding to. Then, the public device 10 collects various information about the user as the information indicated by the word "user". It also collects information about "grouping". For example, the public device 10 inputs gender information indicated by the word "user", a pair of male and female grouping information, and the like into a neural Turing machine device that automatically generates a program as teacher data, and "attribute information" as an internal parameter. By making adjustments so that the weight of the thing related to "" becomes large, the program intended by these three words can be automatically generated.

なお、このような情報の取得は、例えば、各種のデータが格納されたデータベースの項目名と、単語組として抽出された名詞との類似性に基づいて収集すればよい。例えば、公開装置10は、データベースに登録された項目の分散表現と、抽出された名詞の分散表現との類似性が所定の閾値を超える場合は、その項目の情報を名詞が示す情報として収集すればよい。また、例えば、公開装置10は、データベースの各項目から、抽出された名詞の分散表現と、抽出された副詞句の分散表現との和に類似する分散表現と対応する項目を特定し、特定した項目の情報を取得すればよい。 It should be noted that such information may be acquired, for example, based on the similarity between the item name of the database in which various data are stored and the noun extracted as a word set. For example, when the similarity between the distributed expression of the item registered in the database and the distributed expression of the extracted noun exceeds a predetermined threshold value, the public device 10 collects the information of the item as the information indicated by the noun. Just do it. Further, for example, the publishing device 10 identifies and identifies an item corresponding to a distributed expression similar to the sum of the distributed expression of the extracted noun and the distributed expression of the extracted adverbial phrase from each item of the database. All you have to do is get the item information.

また、公開装置10は、「グルーピング」と対応する情報を収集する。例えば、公開装置10は、単語「利用者」および「グルーピング」と対応する情報を収集する。より具体的な例を挙げると、公開装置10は、データベースから、利用者が属するグループを示す各種の情報を収集する。 Further, the public device 10 collects information corresponding to "grouping". For example, the publishing device 10 collects information corresponding to the words "user" and "grouping". To give a more specific example, the public appliance 10 collects various information indicating the group to which the user belongs from the database.

そして、公開装置10は、収集した情報からプログラムの自動生成を行う。例えば、公開装置10は、抽出した名詞となる単語が示す情報を入力した際に、動詞となる単語が示す情報を出力するように、ニューラルチューリングマシンを用いてプログラムを生成する。例えば、非特許文献1に示すように、ニューラルネットワークを用いたチューリングマシンであるニューラルチューリングマシンを用いて、入力データから出力データを生成するプログラムを自動生成する手法が提案されている。 Then, the public appliance 10 automatically generates a program from the collected information. For example, the publishing device 10 generates a program using a neural Turing machine so that when the information indicated by the extracted noun word is input, the information indicated by the verb word is output. For example, as shown in Non-Patent Document 1, a method has been proposed in which a program for generating output data from input data is automatically generated by using a neural Turing machine which is a Turing machine using a neural network.

このようなニューラルチューリングマシンM1は、例えば、図1に示すように、メモリ(Memory)と、チューリングマシンの読出しヘッド(Read Heads)と、チューリングマシンの書込みヘッド(Write Heads)と、入力(External Input)に基づいて読出しヘッドおよび書込みヘッドを操作し、入力に応じた出力(External Output)を生成するコントローラ(Controller)とを有する。また、このようなニューラルチューリングマシンM1において、コントローラは、RNN(Recurrent Neural Network)やLSTM(Long short-term memory)といった再帰型ニューラルネットワークにより実現される。 Such a neural Turing machine M1 is, for example, as shown in FIG. 1, a memory (Memory), a read head (ReadHeads) of a Turing machine, a write head (WriteHeads) of a Turing machine, and an input (External Input). ), It has a controller (Control) that operates a read head and a write head and generates an output (External Output) according to an input. Further, in such a neural tuling machine M1, the controller is realized by a recurrent neural network such as RNN (Recurrent Neural Network) or LSTM (Long short-term memory).

このようなニューラルチューリングマシンM1について、ある入力データからある出力データを生成するように学習を行った場合、ニューラルチューリングマシンM1のメモリには、ある入力データからある出力データを出力するためのプログラムが格納されることとなる。そこで、公開装置10は、コンテンツから抽出した単語組の名詞が示す情報から、動詞が示す情報を出力するようにニューラルチューリングマシンM1の学習を行うことで、プログラムの自動生成を実現する。 When such a neural Turing machine M1 is trained to generate a certain output data from a certain input data, a program for outputting a certain output data from a certain input data is stored in the memory of the neural Turing machine M1. It will be stored. Therefore, the publishing device 10 realizes automatic generation of a program by learning the neural Turing machine M1 so as to output the information indicated by the verb from the information indicated by the noun of the word set extracted from the content.

〔1-4.グラフを用いた分野の絞り込みについて〕
ここで、上述したように、単語組を学習データとしてプログラムの自動生成を行う場合、生成されるプログラムの斬新さは、学習データとなる単語組に依存すると考えられる。このため、抽出される単語組は、斬新な技術分野、すなわち、イノベーションが発生しやすい分野に属する概念を示す単語組であることが望ましい。
[1-4. About narrowing down fields using graphs]
Here, as described above, when a program is automatically generated using a word set as learning data, it is considered that the novelty of the generated program depends on the word set that is the learning data. Therefore, it is desirable that the extracted word set is a word set indicating a concept belonging to a novel technical field, that is, a field in which innovation is likely to occur.

このようなイノベーションが発生しやすい分野、すなわち、発展性が豊かな分野においては、既存技術から新たな技術が生じやすい分野における新たな技術の生じやすさは、その分野に属する既存技術から新たな技術がどのように生じるかを特定することで判断できると考えられるものの、このような技術の発展を精度良く連続的にとらえるには、多くの情報が必要になると考えられる。また、利用者の対話に要する場合以外にも、イノベーションを起こしやすい分野を特定することができるのであれば、技術開発等の用途に用いることも可能である。 In fields where such innovation is likely to occur, that is, in fields with abundant development potential, the ease with which new technologies are likely to occur from existing technologies is new from existing technologies belonging to that field. Although it can be judged by identifying how the technology occurs, it is thought that a lot of information is needed to accurately and continuously grasp the development of such technology. In addition to the cases required for user dialogue, it can also be used for applications such as technological development as long as it can identify fields in which innovation is likely to occur.

そこで、公開装置10は、技術分野に属するコンテンツの増加率に基づいて成長を推定し、推定された成長性が所定の条件を満たす技術分野を選択する。例えば、公開装置10は、成長性が所定の閾値を超える技術分野を選択する。そして、公開装置10は、選択された技術分野に属するコンテンツから通出された文章に含まれる単語組を抽出する。 Therefore, the publishing device 10 estimates the growth based on the rate of increase of the content belonging to the technical field, and selects the technical field in which the estimated growth potential satisfies a predetermined condition. For example, the publishing device 10 selects a technical field in which the growth potential exceeds a predetermined threshold. Then, the publishing device 10 extracts a word set included in the sentence transmitted from the content belonging to the selected technical field.

例えば、公開装置10は、所定の技術分野に属する単語組で表される技術要素をノードとし、各要素間の関係性をノード間のリンクとして示すグラフ情報(以下、「技術グラフ」と記載する。)を生成する。このようなグラフ情報は、ある分野に属する技術要素が、どのような技術要素から生じたものであるかを示す情報である。例えば、第1技術要素が、第2技術要素と第3技術要素との組合せである場合や、第2技術要素と第3技術要素とから発展した技術である場合、第1技術要素と対応するノードは、リンクを介して、第2技術要素と対応するノードおよび第3技術要素と対応するノードと接続される。 For example, the publishing device 10 uses a technical element represented by a word set belonging to a predetermined technical field as a node, and is described as graph information (hereinafter, referred to as "technical graph") showing a relationship between each element as a link between the nodes. .) Is generated. Such graph information is information indicating what kind of technical element the technical element belonging to a certain field originated from. For example, when the first technical element is a combination of the second technical element and the third technical element, or when the technology is developed from the second technical element and the third technical element, it corresponds to the first technical element. The node is connected to the node corresponding to the second technical element and the node corresponding to the third technical element via a link.

ここで、公開装置10は、ある分野に属する技術を示す情報であれば、任意の情報を技術要素としてよい。例えば、公開装置10は、ある分野に属する特許発明や特許出願を技術要素とし、各技術要素同士の関係性を技術グラフに落とし込んでもよい。また、公開装置10は、1つの論文を1つの技術要素と見做し、引用関係がある論文同士をリンクにより接続することで、技術グラフを生成してもよい。また、公開装置10は、共通性を有する複数の論文を1つの技術要素と見做してもよい。 Here, the public device 10 may use any information as a technical element as long as it is information indicating a technology belonging to a certain field. For example, the publishing device 10 may have a patented invention or a patent application belonging to a certain field as a technical element, and may incorporate the relationship between each technical element into a technical graph. Further, the publishing device 10 may generate a technical graph by regarding one paper as one technical element and connecting the papers having a citation relationship with each other by a link. Further, the publishing device 10 may regard a plurality of papers having a commonality as one technical element.

このような技術グラフにおいて、ノードの数の増加傾向は、その分野に属する技術要素の増加傾向、すなわち、新たな技術要素の増加傾向を示す。このような新たな技術要素の増加傾向は、その分野におけるイノベーションの生じやすさの指標と見做すことができる。また、このような技術グラフにおいて、リンクの数の増加傾向は、その分野においてある技術から他の技術がどれくらい生じやすいかを示すと考えられる。すなわち、リンクの数の増加傾向は、その分野において新たな技術が生じた際に、その技術に基づいて新たな技術がどれくらい生じやすいか、潜在的な技術発展の可能性の指標となりえる情報である。 In such a technical graph, the increasing tendency of the number of nodes indicates the increasing tendency of the technical elements belonging to the field, that is, the increasing tendency of the new technical elements. The increasing trend of such new technological elements can be regarded as an indicator of the likelihood of innovation in the field. Further, in such a technology graph, the increasing tendency of the number of links is considered to indicate how likely it is that another technology is generated from one technology in the field. In other words, the increasing trend in the number of links is information that can be an indicator of the potential for technological development, how likely it is that a new technology will emerge based on that technology when a new technology emerges in that field. be.

そこで、公開装置10は、ある分野に対応する技術グラフを生成し、生成した技術グラフの発展態様を特定する。より具体的には、公開装置10は、ノードの数の増加傾向とリンクの数の増加傾向とを推定する。そして、公開装置10は、推定した増加傾向に基づいて、技術グラフと対応する分野が成長しやすい分野であるか否か、その分野が成長する分野であるか否か等、その分野における技術発展の傾向を推定する。 Therefore, the publishing device 10 generates a technical graph corresponding to a certain field, and specifies a development mode of the generated technical graph. More specifically, the public device 10 estimates an increasing tendency of the number of nodes and an increasing tendency of the number of links. Then, based on the estimated increasing tendency, the public device 10 has technological development in the field, such as whether or not the field corresponding to the technical graph is a field in which growth is likely to occur, and whether or not the field is a field in which the field grows. Estimate the tendency of.

例えば、公開装置10は、ノードの数の増加傾向に基づいて、対応する分野に属する新たな技術の発生傾向を推定してもよい。例えば、公開装置10は、処理対象となる分野と対応する技術グラフにおいて、所定の時間内に増加するノードの数が所定の閾値を超える場合は、処理対象となる分野が成長しやすい分野である旨を推定してもよい。 For example, the public device 10 may estimate the tendency of new technology belonging to the corresponding field to occur based on the increasing tendency of the number of nodes. For example, the public device 10 is a field in which the field to be processed is likely to grow when the number of nodes increasing within a predetermined time exceeds a predetermined threshold in the technical graph corresponding to the field to be processed. You may presume that.

また、例えば、公開装置10は、リンクの数の増加傾向に基づいて、対応する分野に属する新たな技術の発生傾向を推定してもよい。例えば、公開装置10は、処理対象となる分野と対応する技術グラフにおいて、所定の時間内に増加するリンクの数が所定の閾値を超える場合は、対象分野が成長しやすい分野である旨を推定してもよい。 Further, for example, the public device 10 may estimate the tendency of new technology belonging to the corresponding field to occur based on the tendency of the number of links to increase. For example, the publishing device 10 estimates that the target field is a field in which the target field is likely to grow when the number of links increasing within a predetermined time exceeds a predetermined threshold in the technical graph corresponding to the field to be processed. You may.

ここで、ノードの数の増加傾向とリンクの数の増加傾向とが類似する場合(例えば、ノードが1つ増加した際にリンクが1つ増加する場合)、その分野における技術は、既存技術から段階的に発展していくと推定される。また、ノードの数の増加傾向をリンクの数の増加傾向が所定の閾値だけ上回る場合(例えば、ノードが1つ増加した際にリンクが5つ以上増加する傾向にある場合)は、ある1つの技術から新たな複数の技術が生じやすい分野であると推定される。 Here, when the increasing tendency of the number of nodes and the increasing tendency of the number of links are similar (for example, when the number of nodes increases by one and the number of links increases by one), the technology in the field is based on the existing technology. It is estimated that it will develop in stages. Further, when the increasing tendency of the number of links exceeds the increasing tendency of the number of nodes by a predetermined threshold value (for example, when the number of nodes increases by one, the number of links tends to increase by five or more), one is one. It is presumed that this is a field where multiple new technologies are likely to occur from technology.

そこで、公開装置10は、ノードの数の増加傾向とリンクの数の増加傾向とに基づいて、対応する分野に属する新たな技術の発生傾向を推定してもよい。例えば、公開装置10は、ノードの数の増加傾向とリンクの数の増加傾向と差に基づいて、対応する分野に属する新たな技術の発生傾向を推定してもよい。例えば、公開装置10は、ノードの数の増加傾向と比較して、リンクの数の増加傾向が多い場合は、対象分野に属する技術が発展しやすい技術である旨を推定してもよい。 Therefore, the public device 10 may estimate the tendency of new technology to belong to the corresponding field based on the tendency of the number of nodes to increase and the tendency of the number of links to increase. For example, the public device 10 may estimate the tendency of new technology to belong to the corresponding field based on the tendency of increasing the number of nodes and the tendency of increasing the number of links and the difference. For example, in the public device 10, when the number of links tends to increase as compared with the tendency of the number of nodes increasing, it may be presumed that the technology belonging to the target field is easy to develop.

このように、公開装置10は、技術グラフにおけるノードの数の増加傾向やリンクの数の増加傾向に基づいて、その分野における技術発展のしやすさを推定する。この結果、公開装置10は、イノベーションが生じやすい分野を利用者に対して提示することができる。 In this way, the public device 10 estimates the ease of technological development in the field based on the increasing tendency of the number of nodes and the increasing tendency of the number of links in the technical graph. As a result, the public device 10 can present to the user a field in which innovation is likely to occur.

〔1-5.技術グラフの発展について〕
ここで、公開装置10は、過去の技術要素の数の変化や、技術要素間の関係性の変化に基づいて、その分野における技術グラフの発展を示すパラメータを推定し、推定したパラメータに基づいて技術グラフに含まれるノードやリンクの数を変化させることで、対象分野における将来の技術発展のしやすさを予測してもよい。
[1-5. About the development of technology graphs]
Here, the public device 10 estimates a parameter indicating the development of the technical graph in the field based on the change in the number of technical elements in the past and the change in the relationship between the technical elements, and based on the estimated parameter. By changing the number of nodes and links included in the technology graph, the ease of future technology development in the target field may be predicted.

例えば、ある分野における技術の発展は、技術グラフにおけるノードやリンクの数の変化と見做すことができるが、このようなノードやリンクの数の変化は、冪分布で仮想的に再現されると予測される(例えば、非特許文献1参照)。そこで、公開装置10は、冪分布に従って、既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定してもよい。 For example, the development of technology in a certain field can be regarded as a change in the number of nodes and links in a technology graph, and such a change in the number of nodes and links is virtually reproduced by a power distribution. (See, for example, Non-Patent Document 1). Therefore, even if the public device 10 estimates the tendency of change between the number of nodes and the number of links, assuming that a new node connected to the node by a link is generated from the existing node according to the power distribution. good.

なお、公開装置10は、任意の構成を有するグラフを技術グラフの初期モデルとして採用してもよい。例えば、公開装置10は、バラバシ・アルバートモデルを用いて、技術グラフの初期状態を生成し、生成したグラフ情報に含まれるノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定してもよい。 The public device 10 may adopt a graph having an arbitrary configuration as an initial model of the technical graph. For example, the publishing device 10 uses the Barabashi-Albert model to generate the initial state of the technical graph, and it is assumed that a new node connected to the node by a link is generated from the node included in the generated graph information. , The tendency of change between the number of nodes and the number of links may be estimated.

例えば、公開装置10は、技術グラフの初期モデルとして、m個のノードを有する完全グラフを生成する。続いて、公開装置10は、新しいノードを1つ追加し、追加したノードと他のノードとの間を所定の確率で接続するリンクを設定する。このような処理をノードの数が所定の数になるまで繰り返すことで、公開装置10は、初期モデルの生成を行ってもよい。なお、上述した技術以外にも、公開装置10は、例えば、ワッツ・ストロガッツモデル等、複雑グラフの初期モデルを生成するための各種の手法を採用して、技術グラフの初期モデルを生成してよい。 For example, the publishing device 10 generates a complete graph with m nodes as an initial model of a technical graph. Subsequently, the public device 10 adds one new node and sets a link connecting the added node and another node with a predetermined probability. By repeating such a process until the number of nodes reaches a predetermined number, the publishing device 10 may generate an initial model. In addition to the above-mentioned techniques, the publishing device 10 may generate an initial model of a technical graph by adopting various methods for generating an initial model of a complex graph, such as a Watts-Strogats model. ..

〔1-6.ポリアの壺アルゴリズムについて〕
ここで、非特許文献3で示されるように、技術分野の発展をポリアの壺アルゴリズムにより数学的に表す手法が考えられる。そこで、公開装置10は、ポリアの壺アルゴリズムを用いて、技術グラフを発展させ、技術グラフのノードやリンクの数の増加傾向に基づいて、対象分野における将来の発展傾向を推定してもよい。より具体的には、公開装置10は、ある技術分野に属する文章により示される技術要素をノードとし、各技術要素間の関係性をノード間のリンクとして示すグラフ構造において、ポリアの壺に基づく確率で既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定し、ノードの数とリンクの数との増加率が所定の閾値を超える技術分野を選択してもよい。
[1-6. About Polya's jar algorithm]
Here, as shown in Non-Patent Document 3, a method of mathematically expressing the development of the technical field by the Polya pot algorithm can be considered. Therefore, the publishing device 10 may develop the technical graph by using the polya jar algorithm, and estimate the future development tendency in the target field based on the increasing tendency of the number of nodes and links in the technical graph. More specifically, the publishing device 10 uses a technical element indicated by a sentence belonging to a certain technical field as a node, and in a graph structure showing the relationship between each technical element as a link between the nodes, a probability based on a polya jar. Estimate the tendency of change between the number of nodes and the number of links, assuming that a new node connected to the node by a link is generated from the existing node, and the rate of increase between the number of nodes and the number of links. May select a technical field in which is greater than a predetermined threshold.

以下、ポリアの壺アルゴリズムの一例について説明する。例えば、ポリアの壺アルゴリズムにおいては、それぞれ異なる色の玉が入れられた壺からランダムに1つの玉が取り出され、取り出された玉が、初めて取り出された玉の色であるか否かが判定される。そして、取り出された玉が、過去に取り出された玉と同じ色である場合は、取り出された玉が壺に戻されるとともに、その玉と同じ色の玉が所定の数だけ壺に追加される。一方、取り出された玉が初めて取り出された色である場合は、取り出された玉が壺に戻され、その玉と同じ色の玉が所定の数だけ壺に追加されるとともに、それぞれ色が異なる所定の数の玉であって、それぞれが新たな色を有する玉が壺に入れられる。 Hereinafter, an example of the Polya pot algorithm will be described. For example, in the Polya jar algorithm, one ball is randomly taken out from a jar containing balls of different colors, and it is determined whether or not the taken out ball is the color of the first taken out ball. Random. If the removed ball has the same color as the previously removed ball, the removed ball is returned to the jar and a predetermined number of balls of the same color as the ball are added to the jar. .. On the other hand, if the removed ball is the first color taken out, the removed ball is returned to the jar, a predetermined number of balls of the same color as the ball are added to the jar, and the colors are different. A predetermined number of balls, each with a new color, are placed in the jar.

このようなポリアの壺アルゴリズムは、ある分野における技術要素の発展の確率モデルと見做せる。例えば、壺の中に入れられた玉を技術要素とした場合、壺の中から取り出された玉の色が初めて取り出された玉の色である確率は、新たな技術要素が発生する確率と対応付けることができる。また、取り出された玉が初めて取り出された色である場合に、新たに壺の中に入れられる新たな色の玉の数は、新たな技術要素が発生した際にその技術から将来発生する新たな技術要素の数を示すパラメータと対応付けることができる。また、取り出された玉とともに壺に入れられる玉であって、壺の中から取り出された玉と同じ色の玉の数は、技術要素間の関係性、すなわち、リンクが生じるパラメータと対応付けることができる。 Such a polya jar algorithm can be regarded as a stochastic model of the development of technological elements in a certain field. For example, if a ball placed in a jar is used as a technical element, the probability that the color of the ball taken out of the jar is the color of the ball taken out for the first time corresponds to the probability that a new technical element will occur. be able to. Also, if the ejected ball is the first extracted color, the number of new colored balls that will be newly placed in the jar will be the new number of new colored balls that will be generated from that technology when new technological elements occur. It can be associated with a parameter indicating the number of technical elements. Also, the number of balls that are put into the jar together with the balls that are taken out and that are the same color as the balls that are taken out of the jar can be associated with the relationship between the technical elements, that is, the parameter that causes the link. can.

そこで、公開装置10は、ポリアの壺アルゴリズムを用いて、技術グラフを発展させ、対象分野における将来の発展傾向を推定する。例えば、公開装置10は、複数種別の要素の集合からいずれかの要素が選択された際に、選択された要素とともに選択された要素とは異なる種別の要素を集合に加えた後において各種別の要素が選択される確率に基づいて、既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定してもよい。 Therefore, the public device 10 develops a technical graph by using the Polya's pot algorithm, and estimates the future development tendency in the target field. For example, when any element is selected from a set of a plurality of types of elements, the publishing device 10 is different from each other after adding an element of a type different from the selected element together with the selected element to the set. Based on the probability that an element will be selected, you may estimate the trend of change between the number of nodes and the number of links, assuming that an existing node will generate a new node connected to that node by a link. ..

〔1-7.データの拡張について〕
ここで、ニューラルチューリングマシンを学習することでプログラムの自動生成を行う場合、多くの学習データが必要になるとも考えられる。そこで、公開装置10は、データの自動拡張を行ってもよい。例えば、公開装置10は、抽出した単語組と、所定の操作を示す複数の単語とを組み合わせることで、抽出した単語組から新たな単語組を生成し、生成した単語組を用いて、プログラムを生成してもよい。
[1-7. About data expansion]
Here, when the program is automatically generated by learning the neural Turing machine, it is considered that a lot of learning data is required. Therefore, the public device 10 may automatically expand the data. For example, the publishing device 10 generates a new word set from the extracted word set by combining the extracted word set and a plurality of words indicating a predetermined operation, and uses the generated word set to create a program. May be generated.

例えば、公開装置10は、複数の名詞が登録された事象データを有し、単語組に含まれる名詞をあらかじめ記憶した名詞に変更した単語組を新たに生成してもよい。また、公開装置10は、word2vec等の技術を用いて、単語組に含まれる名詞をベクトル化し、ベクトルの比較結果に基づいて、単語組に含まれる名詞と類似する他の名詞を特定する。そして、公開装置10は、単語組に含まれる名詞を特定した他の名詞に変換した単語組を生成してもよい。また、公開装置10は、名詞のベクトルとベクトル空間上におけるユークリッド距離が所定の閾値以上となるが、コサイン距離が所定の範囲内となるベクトルと対応する単語を特定し、特定した単語を含む単語組を生成することで、分野が異なるが概念が類似する単語組の生成を行ってもよい。 For example, the publishing device 10 may have event data in which a plurality of nouns are registered, and may newly generate a word set in which the nouns included in the word set are changed to the nouns stored in advance. Further, the publishing device 10 vectorizes the nouns included in the word set by using a technique such as word2vec, and identifies other nouns similar to the nouns included in the word set based on the comparison result of the vectors. Then, the publishing device 10 may generate a word set obtained by converting a noun included in the word set into another specified noun. Further, the publishing device 10 identifies a word corresponding to the vector of the noun and the vector in which the Euclidean distance on the vector space is equal to or more than a predetermined threshold value but the cosine distance is within the predetermined range, and the word including the specified word. By generating a set, a word set having a different field but a similar concept may be generated.

また、例えば、公開装置10は、単語組に含まれる各単語をベクトル化し、各単語のベクトルに基づいて、単語組が示す概念を示すベクトルを生成する。そして、公開装置10は、生成したベクトルと類似するベクトルを特定し、特定したベクトルと対応する単語組を学習データとして抽出してもよい。 Further, for example, the publishing device 10 vectorizes each word included in the word set, and generates a vector showing the concept indicated by the word set based on the vector of each word. Then, the publishing device 10 may specify a vector similar to the generated vector and extract the word set corresponding to the specified vector as learning data.

〔1-8.処理の一例について〕
以下、図1を用いて、公開装置10が実行する処理の一例について説明する。まず、公開装置10は、管理装置100から各技術分野に属するコンテンツを収集する(ステップS1)。例えば、公開装置10は、各技術分野に属する公開公報や論文を収集する。このような場合、公開装置10は、ある分野に属する技術要素をノードとし、技術要素間の関係性をリンクとすることで、技術分野ごとに、その分野に属する技術要素と技術要素間の関係とを示すグラフ情報、すなわち技術グラフを生成する(ステップS2)。
[1-8. About an example of processing]
Hereinafter, an example of the process executed by the publishing device 10 will be described with reference to FIG. 1. First, the public device 10 collects content belonging to each technical field from the management device 100 (step S1). For example, the publication device 10 collects publications and papers belonging to each technical field. In such a case, the public device 10 has a technical element belonging to a certain field as a node and a link between the technical elements, so that the technical element belonging to the field and the relationship between the technical elements are linked for each technical field. The graph information indicating that, that is, the technical graph is generated (step S2).

例えば、公開装置10は、所定の第1カテゴリに属する特許発明や論文を技術要素とし、技術要素間の関係性を特定する。そして、公開装置10は、技術要素をノードにあてはめ、技術要素間の関係性を示すリンクを設定した技術グラフを生成する。なお、このような技術グラフの生成については、任意のグラフ生成技術が採用可能である。 For example, the publishing device 10 uses a patented invention or a dissertation belonging to a predetermined first category as a technical element, and specifies a relationship between the technical elements. Then, the publishing device 10 fits the technical elements to the nodes and generates a technical graph in which links indicating the relationships between the technical elements are set. Any graph generation technique can be adopted for the generation of such a technical graph.

続いて、公開装置10は、ポリアの壺アルゴリズムに基づいて、将来の技術要素と関係性との増加態様を推定する(ステップS3)。例えば、公開装置10は、ポリアの壺アルゴリズムにおいて関連性が生じる確率のパラメータに対し、新たなリンクが生じる速度に応じた値を設定し、新たな技術要素が生まれる確率のパラメータに対し、新たな技術要素が生じる速度に応じた値を設定する。このようなパラメータに対して設定される値は、例えば、対象分野における過去の複数時点における技術グラフを生成し、生成した技術グラフ同士の比較結果に基づいて、設定されてもよい。 Subsequently, the publishing device 10 estimates an increasing mode of future technical elements and relationships based on the Polyer's jar algorithm (step S3). For example, the publishing device 10 sets a value according to the speed at which a new link is generated with respect to the parameter of the probability that the relevance occurs in the polya jar algorithm, and is new with respect to the parameter of the probability that a new technical element is born. Set the value according to the speed at which the technical element occurs. The value set for such a parameter may be set based on, for example, a technical graph generated at a plurality of past time points in the target field and a comparison result between the generated technical graphs.

続いて、公開装置10は、各分野におけるノードとリンクとの数の変化に基づいて、対象分野の成長傾向を推定する(ステップS4)。例えば、公開装置10は、第1カテゴリと対応する技術グラフの状態であって、将来のタイミングT1における状態N1(T1)、将来のタイミングT2における状態N1(T2)、および将来のタイミングT3におけるN1(T3)を推定する。そして、公開装置10は、状態N1(T1)、N1(T2)、およびN1(T3)の変化に基づいて、第1カテゴリの成長速度#1を推定する。例えば、公開装置10は、状態N1(T1)におけるノードとリンクとの数、N1(T2)におけるノードとリンクとの数、およびN1(T3)におけるノードとリンクとの数の変化に基づいて、第1カテゴリの成長速度#1を推定する。例えば、公開装置10は、ノードの数の増加量の平均値やリンクの数の増加量の平均値に基づいて、成長速度#1を推定してもよい。 Subsequently, the public device 10 estimates the growth tendency of the target field based on the change in the number of nodes and links in each field (step S4). For example, the publishing apparatus 10 is a state of the technical graph corresponding to the first category, that is, the state N1 (T1) at the future timing T1, the state N1 (T2) at the future timing T2, and N1 at the future timing T3. (T3) is estimated. Then, the publishing device 10 estimates the growth rate # 1 of the first category based on the changes of the states N1 (T1), N1 (T2), and N1 (T3). For example, the publishing device 10 is based on changes in the number of nodes and links in state N1 (T1), the number of nodes and links in N1 (T2), and the number of nodes and links in N1 (T3). Estimate the growth rate # 1 of the first category. For example, the public device 10 may estimate the growth rate # 1 based on the average value of the increase in the number of nodes and the average value of the increase in the number of links.

同様に、公開装置10は、第2カテゴリと対応する技術グラフの状態であって、将来のタイミングT1における状態N2(T1)、将来のタイミングT2における状態N2(T2)、および将来のタイミングT3におけるN2(T3)を推定する。そして、公開装置10は、状態N2(T1)、N2(T2)、およびN2(T3)の変化に基づいて、第2カテゴリの成長速度#2を推定する。 Similarly, the publishing device 10 is a state of the technical graph corresponding to the second category, in the state N2 (T1) at the future timing T1, the state N2 (T2) at the future timing T2, and the future timing T3. Estimate N2 (T3). Then, the publishing device 10 estimates the growth rate # 2 of the second category based on the changes of the states N2 (T1), N2 (T2), and N2 (T3).

そして、公開装置10は、成長速度が速いカテゴリを選択し、選択したカテゴリ、すなわち、技術分野に属する文献から所定の構造を有する単語組を抽出する(ステップS5)。例えば、図1中(A)に示すように、アイデアの特徴を示す文章は、「(名詞){を}(状態表現語、副詞句){で、によって、にして}(動詞){する、できる}」という構造を有すると予測される。そこで、公開装置10は、選択した技術分野に属する文献から形態素解析等の技術を用いて、「(名詞){を}(状態表現語、副詞句){で、によって、にして}(動詞){する、できる}」という構造の文章を抽出する。 Then, the publishing device 10 selects a category having a high growth rate, and extracts a word set having a predetermined structure from the selected category, that is, a document belonging to a technical field (step S5). For example, as shown in FIG. 1 (A), the sentence showing the characteristics of the idea is "(noun) {to} (state expression word, adverbial phrase) {with, by, to} (verb) {. It is expected to have a structure of "can}". Therefore, the publishing device 10 uses a technique such as morphological analysis from the literature belonging to the selected technical field to "(noun) {to} (state expression word, adverbial phrase) {by, by, to} (verb). Extract sentences with the structure "{do, do}".

そして、公開装置10は、図1中(B)に示すように、抽出した文章に含まれる名詞を単語#1とし、状態表現語又は副詞句を単語#2とし、動詞を単語#3として抽出し、抽出した各単語#1~#3を含む単語組を生成する。なお、このようにして生成された単語組は、図1中(C)に示すように、抽出した文章が示すアイデアの特徴、すなわち概念cεを含むこととなる。 Then, as shown in FIG. 1B, the publishing device 10 extracts the noun included in the extracted sentence as word # 1, the state expression word or adverbial phrase as word # 2, and the verb as word # 3. Then, a word set including each of the extracted words # 1 to # 3 is generated. As shown in FIG. 1 (C), the word set generated in this way includes the feature of the idea shown by the extracted sentence, that is, the concept cε.

そして、公開装置10は、抽出した単語組に含まれる単語が示す情報を学習データとして、ニューラルチューリングマシンの学習を行うことで、プログラムの自動生成を行う(ステップS6)。すなわち、公開装置10は、抽出した単語組が示す概念cεを実現するプログラムの生成を行う。例えば、公開装置10は、単語組に含まれる名詞と対応する情報を入力した際に、単語組に含まれる動詞と対応する情報を出力するように、ニューラルチューリングマシンM1の学習を行うことで、プログラムの自動生成を行う。 Then, the publishing device 10 automatically generates a program by learning the neural Turing machine using the information indicated by the words included in the extracted word set as learning data (step S6). That is, the publishing device 10 generates a program that realizes the concept cε indicated by the extracted word set. For example, the publishing device 10 learns the neural Turing machine M1 so as to output the information corresponding to the verb included in the word set when the information corresponding to the noun included in the word set is input. Automatically generate a program.

続いて、公開装置10は、生成したプログラムを利用者に対して公開する(ステップS7)。そして、公開装置10は、公開したプログラムを利用するための利用登録を利用者から受付ける(ステップS8)。すなわち、公開装置10は、プログラムについてのユーザ登録を受付ける。 Subsequently, the publishing device 10 publishes the generated program to the user (step S7). Then, the public device 10 accepts a usage registration for using the published program from the user (step S8). That is, the public device 10 accepts user registration for the program.

このようなプログラムとそのプログラムに対するユーザ登録を行った利用者のユーザーリストとの組は、販売可能なサービスと見做すことができる。そこで、公開装置10は、プログラムと、利用登録した利用者のリストとの組を、販売可能なサービス内容を示すサービス情報として事業者に公開する(ステップS9)。このような処理の結果、公開装置10は、所定のサービスを提供するプログラムの自動生成からサービスの販売、ひいては会社の販売までの一連の流れを自動化することができる。 A pair of such a program and a user list of users who have registered as a user for the program can be regarded as a service that can be sold. Therefore, the public device 10 discloses the set of the program and the list of registered users to the business operator as service information indicating the service contents that can be sold (step S9). As a result of such processing, the publishing device 10 can automate a series of flows from the automatic generation of a program for providing a predetermined service to the sale of the service and the sale of the company.

なお、公開装置10は、図示を省略した所定の決済サーバ等と連携することにより、サービスの販売までを自動的に行ってもよい。 The public device 10 may automatically sell the service by cooperating with a predetermined payment server or the like (not shown).

〔1-9.公開後における人気度に応じた成長性の推定について〕
ここで、公開装置10は、プログラムを公開した後の売上げ値を反映させた状態で、成長性の推定を行ってもよい。例えば、公開装置10は、公開されたプログラムの売上げ値に基づいて、プログラムと関連する技術分野の成長性を推定してもよい。より具体的には、公開装置10は、ベイズ最適化により成長性を示す値の最適値を推定してもよい。
[1-9. Estimating growth potential according to popularity after publication]
Here, the public device 10 may estimate the growth potential in a state where the sales price after the program is published is reflected. For example, the publishing device 10 may estimate the growth potential of the technical field related to the program based on the sales price of the published program. More specifically, the publishing device 10 may estimate the optimum value of the value indicating the growth potential by Bayesian optimization.

例えば、公開装置10は、ある技術分野のコンテンツから自動生成したプログラムの売上値を特定し、特定した売上値に基づいて、技術分野の成長性を推定する。例えば、公開装置10は、売上値が高ければ高い程、技術分野の成長性がより高いものとして、技術分野の成長性を推定する。例えば、公開装置10は、ベイズ推定におけるベイズ最適化の技術を用いて、売上値から、技術分野の成長性を示す値の最適値を推定する。すなわち、公開装置10は、プログラムの売上値に基づいてベイズ推定における事後確率を特定し、特定した事後確率から、成長性を示すより確度の高い確率分布を推定すればよい。 For example, the publishing device 10 specifies the sales value of a program automatically generated from the contents of a certain technical field, and estimates the growth potential of the technical field based on the specified sales value. For example, the public device 10 estimates the growth potential of the technical field as the higher the sales value, the higher the growth potential of the technical field. For example, the publishing device 10 estimates the optimum value of the value indicating the growth potential of the technical field from the sales value by using the Bayesian optimization technique in Bayesian estimation. That is, the publishing device 10 may specify posterior probabilities in Bayesian estimation based on the sales value of the program, and estimate a more accurate probability distribution indicating growth potential from the specified posterior probabilities.

〔2.公開装置の構成〕
以下、上記した提供処理を実現する公開装置10が有する機能構成の一例について説明する。図2は、実施形態に係る公開装置の構成例を示す図である。図2に示すように、公開装置10は、通信部20、記憶部30、および制御部40を有する。
[2. Configuration of public equipment]
Hereinafter, an example of the functional configuration of the public device 10 that realizes the above-mentioned provision processing will be described. FIG. 2 is a diagram showing a configuration example of a public device according to an embodiment. As shown in FIG. 2, the public device 10 has a communication unit 20, a storage unit 30, and a control unit 40.

通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、管理装置100、利用者端末300、および事業者装置200との間で情報の送受信を行う。 The communication unit 20 is realized by, for example, a NIC (Network Interface Card) or the like. Then, the communication unit 20 is connected to the network N by wire or wirelessly, and transmits / receives information to / from the management device 100, the user terminal 300, and the business device 200.

記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部30は、文献データベース31、拡張単語データベース32、ニューラルチューリングマシン33、、技術グラフデータベース34およびサービス情報データベース35を記憶する。 The storage unit 30 is realized by, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk. Further, the storage unit 30 stores a document database 31, an extended word database 32, a neural Turing machine 33, a technical graph database 34, and a service information database 35.

文献データベース31には、コンテンツとしての文献の情報が登録される。例えば、図3は、実施形態に係る文献データベースに登録される情報の一例を示す図である。図3に示すように、文献データベース31には、「文献ID(Identifier)」、「文章データ」、および「分野」といった情報が対応付けて登録されている。 Information on documents as contents is registered in the document database 31. For example, FIG. 3 is a diagram showing an example of information registered in the literature database according to the embodiment. As shown in FIG. 3, information such as "literature ID (Identifier)", "text data", and "field" is registered in the document database 31 in association with each other.

ここで、「文献ID」とは、文献を示す識別子である。また、「文章データ」とは、文献に含まれるテキスト、すなわち、文章のデータである。また、「分野」とは、対応付けられた「文献ID」が示す文献が属する技術分野(すなわち、カテゴリ)を示す情報である。例えば、図3に示す例では、文献データベース31には、文献ID「文献#1」、文章データ「データ#1」、分野「分野#1」が対応付けて登録されている。このような情報は、文献ID「文献#1」が示す文献に含まれるテキストが文章データ「データ#1」であり、文献ID「文献#1」が示す文献が分野「分野#1」に属する文献である旨を示す。 Here, the "literature ID" is an identifier indicating a document. Further, "text data" is text included in a document, that is, text data. Further, the "field" is information indicating a technical field (that is, a category) to which the document indicated by the associated "literature ID" belongs. For example, in the example shown in FIG. 3, the document ID “reference # 1”, the text data “data # 1”, and the field “field # 1” are registered in association with each other in the document database 31. In such information, the text included in the document indicated by the document ID "Reference # 1" is the text data "Data # 1", and the document indicated by the document ID "Reference # 1" belongs to the field "Field # 1". Indicates that it is a document.

なお、図3に示す例では、「文献#1」、「データ#1」、「分野#1」等といった概念的な値について記載したが、実際には、文献を識別する文字列や数値、文章を構成する文字列、技術分野を示す数値や文字列等が登録されることとなる。また、図3に示す情報は、あくまで一例であり、文献データベース31には、図3に示す情報以外にも任意の情報が登録されていてよい。 In the example shown in FIG. 3, conceptual values such as "Reference # 1", "Data # 1", and "Field # 1" are described, but in reality, character strings and numerical values that identify the document are used. Character strings that make up sentences, numerical values and character strings that indicate technical fields, etc. will be registered. Further, the information shown in FIG. 3 is merely an example, and arbitrary information other than the information shown in FIG. 3 may be registered in the document database 31.

図2に戻り、説明を続ける。拡張単語データベース32は、単語組を拡張する際に用いる操作的動詞が登録されている。例えば、拡張単語データベース32には、コバーク&バクナールの操作的動詞を含む操作的動詞リストが予め登録されている。 Returning to FIG. 2, the explanation will be continued. In the extended word database 32, operational verbs used when expanding a word set are registered. For example, in the extended word database 32, a list of operational verbs including operational verbs of Kobark & Bakunal is registered in advance.

ニューラルチューリングマシン33は、入力データから出力データを生成するためのプログラムを生成するモデルであり、例えば、RNNやLSTM等のニューラルネットワークと、ニューラルネットワークがアクセス可能なメモリとにより構成される。 The neural Turing machine 33 is a model for generating a program for generating output data from input data, and is composed of, for example, a neural network such as RNN or LSTM, and a memory accessible to the neural network.

技術グラフデータベース34には、技術グラフが登録されている。例えば、図4は、実施形態に係る技術グラフデータベースに登録される情報の一例を示す図である。図4に示す例では、技術グラフデータベース34には、「カテゴリ」、「パラメータ」、「リンクID(Identifier)」、「第1ノードID」、および「第2ノードID」等といった項目を有する情報が、技術グラフごとに登録される。 A technical graph is registered in the technical graph database 34. For example, FIG. 4 is a diagram showing an example of information registered in the technical graph database according to the embodiment. In the example shown in FIG. 4, the technical graph database 34 has information having items such as "category", "parameter", "link ID (Identifier)", "first node ID", and "second node ID". Is registered for each technology graph.

ここで、「カテゴリ」とは、技術グラフと対応する対応カテゴリを示す情報である。また、「パラメータ」とは、対応する技術グラフにおいてノードやリンクの数がどのように増加していくかを示すパラメータである。また、「リンクID」とは、技術グラフに含まれるリンクを識別するための情報である。また、「第1ノードID」および「第2ノードID」とは、対応付けられた「リンクID」が示すリンクによって接続されたノード、すなわち、関連性を有する2つの技術要素を示すノードを識別する情報である。 Here, the "category" is information indicating a corresponding category corresponding to the technical graph. Further, the "parameter" is a parameter indicating how the number of nodes and links increases in the corresponding technical graph. Further, the "link ID" is information for identifying a link included in the technical graph. Further, the "first node ID" and the "second node ID" identify a node connected by a link indicated by the associated "link ID", that is, a node indicating two related technical elements. Information to do.

例えば、図4に示す例では、「技術グラフ#1」が示す技術グラフの情報として、カテゴリ「カテゴリ#1」、パラメータ「パラメータ#1」、リンクID「リンク#1」、第1ノードID「ノード#1」、および第2ノードID「ノード#2」が対応付けて登録されている。このような情報は、「技術グラフ#1」が示す技術グラフが、「カテゴリ#1」と対応する技術グラフであり、上述したρやvの値として、パラメータ「パラメータ#1」が設定され、リンクID「リンク#1」が示すリンクにより、第1ノードID「ノード#1」が示すノードと、第2ノードID「ノード#2」が示すノードとが接続されている旨を示す。 For example, in the example shown in FIG. 4, as the information of the technical graph shown by the "technical graph # 1", the category "category # 1", the parameter "parameter # 1", the link ID "link # 1", and the first node ID " "Node # 1" and the second node ID "node # 2" are registered in association with each other. For such information, the technical graph indicated by "technical graph # 1" is a technical graph corresponding to "category # 1", and the parameter "parameter # 1" is set as the value of ρ or v described above. The link indicated by the link ID "link # 1" indicates that the node indicated by the first node ID "node # 1" and the node indicated by the second node ID "node # 2" are connected.

なお、図4に示す例では、「カテゴリ#1」、「リンク#1」、「ノード#1」等といった概念的な値について記載したが、実際には、カテゴリを示す文字列や数値、リンクやノードを示す文字列や数値等が登録されることとなる。また、図4に示す情報は、あくまで一例であり、技術グラフデータベース31には、グラフ構造を有するデータであれば、任意の形式のデータが登録されていてよい。 In the example shown in FIG. 4, conceptual values such as "category # 1," "link # 1," "node # 1", etc. are described, but in reality, character strings, numerical values, and links indicating the categories are described. Character strings and numerical values indicating nodes will be registered. Further, the information shown in FIG. 4 is merely an example, and data in any format may be registered in the technical graph database 31 as long as the data has a graph structure.

図2に戻り、説明を続ける。サービス情報データベース35には、プログラムと、そのプログラムの利用登録を行った利用者のユーザーリストとが対応付けて登録されている。例えば、図5は、実施形態に係るサービス情報データベースに登録される情報の一例を示す図である。図5に示す例では、サービス情報データベース35には、「サービスID」、「プログラム」、および「ユーザーリスト」等といった項目を有する情報が対応付けて登録されている。 Returning to FIG. 2, the explanation will be continued. In the service information database 35, a program and a user list of users who have registered to use the program are registered in association with each other. For example, FIG. 5 is a diagram showing an example of information registered in the service information database according to the embodiment. In the example shown in FIG. 5, information having items such as "service ID", "program", and "user list" is registered in the service information database 35 in association with each other.

ここで、「サービスID」とは、サービス情報を識別するための識別子である。また、「プログラム」とは、公開装置10が公開したプログラムである。また、「ユーザーリスト」とは、対応付けられた「プログラム」についての利用登録を行った利用者のリストであり、例えば、利用登録の際に登録された各種の利用者情報である。 Here, the "service ID" is an identifier for identifying service information. The "program" is a program published by the public device 10. Further, the "user list" is a list of users who have registered the use of the associated "program", and is, for example, various user information registered at the time of the use registration.

例えば、図5に示す例では、サービス情報データベース35には、サービスID「サービス#1」、プログラム「プログラム#1」、およびユーザーリスト「リスト#1」といった情報が対応付けて登録されている。このような情報は、サービスID「サービス#1」が示すサービス情報として、プログラム「プログラム#1」とユーザーリスト「リスト#1」とが対応付けられている旨を示す。 For example, in the example shown in FIG. 5, information such as the service ID “service # 1”, the program “program # 1”, and the user list “list # 1” is registered in the service information database 35 in association with each other. Such information indicates that the program "program # 1" and the user list "list # 1" are associated with each other as the service information indicated by the service ID "service # 1".

なお、図5に示す例では「サービス#1」、「プログラム#1」、および「リスト#1」といった概念的な値を記載したが、実際には、サービス情報データベース35には、サービス情報を識別するための文字列や数値、プログラムコード、および複数の利用者情報を対応付けたユーザーリストの情報等が登録されることとなる。また、サービス情報データベース35には、図5に示す情報以外にも、任意の情報が登録されていてよい。 In the example shown in FIG. 5, conceptual values such as "service # 1," "program # 1," and "list # 1" are described, but in reality, service information is stored in the service information database 35. Character strings and numerical values for identification, program codes, user list information associated with a plurality of user information, and the like are registered. In addition to the information shown in FIG. 5, arbitrary information may be registered in the service information database 35.

図2に戻り、説明を続ける。制御部40は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、公開装置10内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部40は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。 Returning to FIG. 2, the explanation will be continued. The control unit 40 is a controller, and for example, various programs stored in a storage device inside the public device 10 by a processor such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit) store a RAM or the like. It is realized by being executed as a work area. Further, the control unit 40 is a controller, and may be realized by, for example, an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).

図2に示すように、制御部40は、収集部41、推定部42、選択部43、抽出部44、生成部45、公開部46、取得部47、及び提供部48を有する。 As shown in FIG. 2, the control unit 40 includes a collection unit 41, an estimation unit 42, a selection unit 43, an extraction unit 44, a generation unit 45, a public unit 46, an acquisition unit 47, and a provision unit 48.

収集部41は、単語組の抽出元となるコンテンツとして、各技術分野に属する文献を収集する。例えば、収集部41は、管理装置100が管理する文献を収集し、収集した文献を文献データベース31に登録する。 The collection unit 41 collects documents belonging to each technical field as contents that are the extraction source of the word set. For example, the collection unit 41 collects documents managed by the management device 100, and registers the collected documents in the document database 31.

推定部42は、技術分野ごとに、技術分野に属するコンテンツの増加率に基づいて成長性を推定する。例えば、推定部42は、ある技術分野に属する文章により示される技術要素をノードとし、各技術要素間の関係性をノード間のリンクとして示すグラフ構造において、ポリアの壺に基づく確率で既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定する。 The estimation unit 42 estimates the growth potential for each technical field based on the rate of increase in the content belonging to the technical field. For example, the estimation unit 42 uses a technical element indicated by a sentence belonging to a certain technical field as a node, and has an existing node with a probability based on a polya jar in a graph structure showing the relationship between each technical element as a link between the nodes. From, the tendency of change between the number of nodes and the number of links is estimated assuming that a new node connected to the node by a link is generated.

例えば、推定部42は、カテゴリごとに技術グラフの初期グラフを生成する。例えば、推定部42は、あるカテゴリに属する論文や特許発明等を技術要素とするとともに、技術要素間の関係性を特定する。例えば、推定部42は、形態素解析や文章解析の各種公知技術を用いて、論文や特許発明の明細書に含まれる単語群を抽出し、抽出した単語群が示す技術要素と、技術要素同義の関係性とを特定する。このような特定は、例えば、各種意図解析の技術を用いて、イノベーションの単位となる技術を特定することにより実現されてもよい。また、推定した技術同士の関係性を単語群の共起姓に基づいて、技術要素間の関係性を特定してもよい。すなわち、推定部42は、各種の意図解析技術を用いて、技術要素を特定し、単語群の類似性や共起性に基づいて単語群が示す意味同士の関係性を推定する推定技術を用いて、技術要素間の関係性を特定するのであれば、任意の意図解析技術や推定技術を採用してよい。 For example, the estimation unit 42 generates an initial graph of a technical graph for each category. For example, the estimation unit 42 uses a paper, a patented invention, or the like belonging to a certain category as a technical element, and specifies a relationship between the technical elements. For example, the estimation unit 42 extracts a word group included in a paper or a specification of a patented invention by using various known techniques of morphological analysis and sentence analysis, and the technical element indicated by the extracted word group is synonymous with the technical element. Identify the relationship. Such identification may be realized by, for example, using various intention analysis techniques to identify a technique that is a unit of innovation. Further, the relationship between the estimated technologies may be specified based on the co-occurrence surname of the word group, and the relationship between the technical elements may be specified. That is, the estimation unit 42 uses various intention analysis techniques to identify technical elements and uses an estimation technique for estimating the relationship between the meanings of the word groups based on the similarity and co-occurrence of the word groups. Therefore, if the relationship between the technical elements is specified, any intention analysis technique or estimation technique may be adopted.

そして、推定部42は、特定した技術要素をノードとし、技術要素間の関係性をリンクとした技術グラフを生成し、生成した技術グラフを技術グラフデータベース34に登録する。なお、推定部42は、バラバシ・アルバートモデルを用いて、グラフ情報の初期状態を生成し、生成したグラフ情報を技術グラフとして技術グラフデータベース34に登録してもよい。 Then, the estimation unit 42 generates a technical graph in which the specified technical element is a node and the relationship between the technical elements is linked, and the generated technical graph is registered in the technical graph database 34. The estimation unit 42 may generate an initial state of graph information using the Barabashi-Albert model and register the generated graph information as a technical graph in the technical graph database 34.

また、推定部42は、技術グラフごとに、グラフの成長を示す各種パラメータの値を設定する。例えば、推定部42は、実際の論文数や特許発明数等といった技術要素の数の変化に基づいて、単位時間あたりのノードの増加量を特定してもよい。また、推定部42は、実際の技術要素間の関係性の変化に基づいて、単位時間あたりのリンクの増加量を特定してもよい。そして、推定部42は、これらノードの増加量やリンクの増加量に基づいて、グラフの成長を示す各種パラメータを、技術グラフデータベース34に登録する。 Further, the estimation unit 42 sets the values of various parameters indicating the growth of the graph for each technical graph. For example, the estimation unit 42 may specify the increase amount of the node per unit time based on the change in the number of technical elements such as the actual number of papers and the number of patented inventions. Further, the estimation unit 42 may specify the amount of increase in the link per unit time based on the change in the relationship between the actual technical elements. Then, the estimation unit 42 registers various parameters indicating the growth of the graph in the technical graph database 34 based on the increase amount of these nodes and the increase amount of the links.

続いて、推定部42は、技術文献に属する単語群で表される技術要素をノードとし、各要素間の関係性をノード間のリンクとして示すグラフ情報に含まれるノードの数とリンクの数との変化の傾向に基づいて、各技術分野における変化の傾向を推定する。例えば、推定部42は、技術グラフデータベース31に登録された各技術グラフごとに、対応するパラメータに基づいて、各技術グラフのノードやリンクの数を増加させる。すなわち、推定部42は、パラメータに基づいて、技術グラフを成長させる。そして、推定部42は、成長させた技術グラフを将来の技術グラフと見做すことで、ノードやリンクの数の増加量を特定し、特定した増加量に基づいて、対象分野の成長態様を推定する。 Subsequently, the estimation unit 42 uses the technical elements represented by the word groups belonging to the technical literature as nodes, and the number of nodes and the number of links included in the graph information showing the relationship between the elements as the links between the nodes. Estimate the trend of change in each technical field based on the trend of change in. For example, the estimation unit 42 increases the number of nodes and links of each technical graph based on the corresponding parameters for each technical graph registered in the technical graph database 31. That is, the estimation unit 42 grows the technical graph based on the parameters. Then, the estimation unit 42 identifies the amount of increase in the number of nodes and links by regarding the grown technology graph as a future technology graph, and based on the specified increase amount, determines the growth mode of the target field. presume.

例えば、推定部42は、対象分野における変化の傾向として、対象分野が成長するか否かを推定してもよい。また、推定部42は、ノードの数の増加傾向に基づいて、対象分野に属する新たな技術の発生傾向を推定してもよい。また、推定部42は、ノードの数の増加傾向と、リンクの数の増加傾向とに基づいて、対象分野に属する技術の発展のしやすさを推定してもよい。 For example, the estimation unit 42 may estimate whether or not the target field grows as a tendency of change in the target field. Further, the estimation unit 42 may estimate the development tendency of new technology belonging to the target field based on the increasing tendency of the number of nodes. Further, the estimation unit 42 may estimate the ease of development of the technology belonging to the target field based on the increasing tendency of the number of nodes and the increasing tendency of the number of links.

なお、推定部42は、ノードの数の増加傾向やリンクの数の増加傾向に基づいて、対象分野の成長速度がどの程度であるか、どのような態様で対象分野が成長するかを推定してもよい。例えば、推定部42は、ノードの数の増加傾向と比較して、リンクの数の増加傾向が多い場合は、対象分野に属する技術が発展しやすい技術である旨を推定してもよい。 The estimation unit 42 estimates the growth rate of the target field and the mode in which the target field grows, based on the increasing tendency of the number of nodes and the increasing tendency of the number of links. You may. For example, the estimation unit 42 may estimate that the technology belonging to the target field is easy to develop when the number of links tends to increase as compared with the tendency of the number of nodes increasing.

ここで、推定部42は、冪分布に従って、既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定する。例えば、推定部42は、技術グラフデータベース34に登録された技術グラフと、技術グラフと対応するパラメータとを読み出す。そして、推定部42は、複数種別の要素の集合からいずれかの要素が選択された際に、選択された要素とともに選択された要素とは異なる種別の要素を集合に加えた後において各種別の要素が選択される確率に基づいて、既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定する。すなわち、推定部42は、ポリアの壺アルゴリズムに基づいて、ノードの数とリンクの数との変化の傾向を推定する。 Here, the estimation unit 42 estimates the tendency of change between the number of nodes and the number of links, assuming that a new node connected to the node by a link is generated from the existing node according to the power distribution. For example, the estimation unit 42 reads out the technical graph registered in the technical graph database 34 and the parameters corresponding to the technical graph. Then, when any element is selected from the set of a plurality of types of elements, the estimation unit 42 adds various types of elements to the set together with the selected element and then different types. Based on the probability that an element will be selected, we estimate the trend of change between the number of nodes and the number of links, assuming that an existing node will generate a new node connected to that node by a link. That is, the estimation unit 42 estimates the tendency of change between the number of nodes and the number of links based on the polya jar algorithm.

選択部43は、推定された成長性が所定の条件を満たす技術分野を選択する。例えば、選択部43は、成長性が所定の閾値を超える技術分野を選択する。また、選択部43は、ノードの数とリンクの数との増加率が所定の閾値を超える技術分野を選択する。例えば、選択部43は、ノードの数の増加傾向やリンクの数の増加傾向が所定の閾値を超える技術分野、成長速度が所定の閾値を超える技術分野等、推定部42によって発展しやすいと推定された技術分野を選択する。 The selection unit 43 selects a technical field in which the estimated growth potential satisfies a predetermined condition. For example, the selection unit 43 selects a technical field in which the growth potential exceeds a predetermined threshold value. Further, the selection unit 43 selects a technical field in which the rate of increase between the number of nodes and the number of links exceeds a predetermined threshold value. For example, the selection unit 43 is presumed to be easily developed by the estimation unit 42, such as a technical field in which the increasing tendency of the number of nodes and the increasing tendency of the number of links exceeds a predetermined threshold value, a technical field in which the growth rate exceeds a predetermined threshold value, and the like. Select a technical field that has been selected.

抽出部44は、所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する。例えば、抽出部44は、選択部43により選択された技術分野に属する文献を文献データベース31から抽出し、抽出した文献に含まれる文章から所定の構造を有する単語組を抽出する。例えば、抽出部44は、単語組として、名詞となる単語と、副詞句となる単語若しくは単語組と、前記名詞となる単語に関する動詞となる単語とを含む単語組を抽出する。 The extraction unit 44 extracts a word set that is included in a sentence indicating a predetermined process and has a predetermined structure. For example, the extraction unit 44 extracts a document belonging to the technical field selected by the selection unit 43 from the document database 31, and extracts a word set having a predetermined structure from the sentences included in the extracted document. For example, the extraction unit 44 extracts, as a word set, a word set including a word that becomes a noun, a word or a word set that becomes an adverbial phrase, and a word that becomes a verb related to the word that becomes the noun.

生成部45は、抽出された単語組を用いて、所定の処理を実現するプログラムを生成する。例えば、生成部45は、抽出した単語組に含まれる単語のうち、名詞となる単語が示す情報を入力した際に、動詞となる単語が示す情報を出力するように、ニューラルチューリングマシンを用いてプログラムを生成する。また、生成部45は、抽出部44が抽出した単語組を受付けると、抽出した単語組と、所定の操作を示す複数の単語とを組み合わせることで、抽出した単語組から新たな単語組を生成し、生成した単語組を用いて、プログラムを生成する。 The generation unit 45 uses the extracted word set to generate a program that realizes a predetermined process. For example, the generation unit 45 uses a neural Turing machine to output the information indicated by the verb word when the information indicated by the noun word among the words included in the extracted word set is input. Generate a program. Further, when the generation unit 45 receives the word set extracted by the extraction unit 44, the generation unit 45 generates a new word set from the extracted word set by combining the extracted word set with a plurality of words indicating a predetermined operation. Then, a program is generated using the generated word set.

例えば、生成部45は、単語組に含まれる単語を拡張単語データベース32に登録された単語に置き換えることで、抽出部44が抽出した単語組から新たな単語組を生成する。そして、生成部45は、生成した単語組に基づいて、入力データおよび出力データを取得する。例えば、生成部45は、単語組の名詞と対応する情報、若しくは、単語組の名詞および副詞句と対応する情報を入力データとして収集するとともに、単語組の動詞と対応する情報を収集する。 For example, the generation unit 45 generates a new word set from the word set extracted by the extraction unit 44 by replacing the word included in the word set with the word registered in the extended word database 32. Then, the generation unit 45 acquires the input data and the output data based on the generated word set. For example, the generation unit 45 collects the information corresponding to the noun of the word set or the information corresponding to the noun and the adverbial phrase of the word set as input data, and also collects the information corresponding to the verb of the word set.

そして、生成部45は、収集した情報を用いて、ニューラルチューリングマシン33の学習を行う。このような処理の結果、ニューラルチューリングマシン33のメモリには、入力データから出力データを生成するプログラムが格納されることとなる。このため、生成部45は、ニューラルチューリングマシン33のメモリに格納されたプログラムを生成されたプログラムとして取得する。 Then, the generation unit 45 learns the neural Turing machine 33 by using the collected information. As a result of such processing, the memory of the neural Turing machine 33 stores a program that generates output data from the input data. Therefore, the generation unit 45 acquires the program stored in the memory of the neural Turing machine 33 as the generated program.

公開部46は、生成部45により生成されたプログラムを公開する。例えば、公開部46は、生成部45により生成されたプログラムの内容を示す情報を利用者端末300に対して配信する。そして、公開部46は、例えば、利用者がプログラムの利用登録を行った場合は、利用登録の対象となるプログラムを利用者端末300に配信する。 The public unit 46 publishes the program generated by the generation unit 45. For example, the public unit 46 distributes information indicating the contents of the program generated by the generation unit 45 to the user terminal 300. Then, for example, when the user registers the use of the program, the public unit 46 distributes the program to be registered for use to the user terminal 300.

取得部47は、公開されたプログラムを利用する利用者の情報を取得する。より具体的には、取得部47は、利用者からプログラムの利用登録を受付ける。例えば、取得部47は、利用登録が行われる際、利用者端末300から利用者の氏名、年齢、住所等といった利用者情報を取得する。そして、取得部47は、プログラムごとに、そのプログラムと、そのプログラムに対する利用登録を行った利用者情報とを対応付けたサービス情報を生成し、生成したサービス情報をサービス情報データベース35に登録する。 The acquisition unit 47 acquires information on users who use the published program. More specifically, the acquisition unit 47 accepts the program usage registration from the user. For example, the acquisition unit 47 acquires user information such as a user's name, age, address, etc. from the user terminal 300 when the user registration is performed. Then, the acquisition unit 47 generates service information in which the program and the user information registered for use of the program are associated with each program, and registers the generated service information in the service information database 35.

提供部48は、プログラムに関する情報と、プログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として提供する。例えば、提供部48は、サービス情報データベース35を参照し、各種のサービス情報を示すサムネイルを生成する。なお、このようなサムネイルには、例えば、サービス情報に含まれるプログラムの一部や、プログラムが実現する処理の内容等を示す文字列が含まれていてもよい。そして、提供部48は、販売可能なサービスを示す情報として、生成したサムネイルを事業者装置200に送信する。 The providing unit 48 provides the service information in which the information about the program and the information of the user who uses the program are associated with each other as the information about the service that can be sold. For example, the providing unit 48 refers to the service information database 35 and generates thumbnails showing various service information. In addition, such a thumbnail may include, for example, a part of the program included in the service information, a character string indicating the content of the process realized by the program, and the like. Then, the providing unit 48 transmits the generated thumbnail to the business operator device 200 as information indicating the service that can be sold.

また、例えば、提供部48は、事業者装置200からいずれかのサービスを購入する旨の通知を受付けた場合や、図示を省略した決済サーバによりサービスの購入に関する決済処理が完了した場合は、購入対象となったサービスのサービス情報、すなわち、購入対象となったプログラムとそのプログラムを利用する利用者のユーザーリストとを、事業者装置200に対して送信する。 Further, for example, when the providing unit 48 receives a notification from the business operator device 200 to purchase any of the services, or when the payment processing related to the purchase of the service is completed by the payment server (not shown), the purchase is performed. The service information of the target service, that is, the program to be purchased and the user list of the users who use the program are transmitted to the business apparatus 200.

〔3.公開装置が実行する処理の流れの一例〕
次に、図6を用いて、公開装置10が実行する処理の流れの一例について説明する。図6は、実施形態に係る公開装置が実行する処理の流れの一例を説明するフローチャートである。
[3. An example of the flow of processing executed by the public appliance]
Next, an example of the flow of processing executed by the publishing device 10 will be described with reference to FIG. FIG. 6 is a flowchart illustrating an example of a flow of processing executed by the public device according to the embodiment.

まず、公開装置10は、技術グラフを生成し(ステップS101)、ポリアの壺アルゴリズムによる各パラメータに基づいて、各技術グラフのノードとリンクとの数の増加傾向を推定する(ステップS102)。続いて、公開装置10は、推定結果に基づいて、成長性が所定の閾値を超える技術分野を特定し(ステップS103)、特定した技術分野に属する文章から所定の構造を有する単語群を抽出する(ステップS104)。そして、公開装置10は、所定の操作単語を用いて、単語群の拡張を行い(ステップS105)、公開装置10は、単語群に含まれる単語を入力データおよび出力データと見做し、ニューラル
チューリングマシンの学習を行うことで、プログラムの生成を行う(ステップS106)。
First, the publishing device 10 generates a technical graph (step S101), and estimates an increasing tendency of the number of nodes and links of each technical graph based on each parameter by the polya jar algorithm (step S102). Subsequently, the publishing device 10 identifies a technical field in which the growth potential exceeds a predetermined threshold value based on the estimation result (step S103), and extracts a word group having a predetermined structure from the sentences belonging to the specified technical field. (Step S104). Then, the publishing device 10 expands the word group using a predetermined operation word (step S105), and the publishing device 10 regards the words included in the word group as input data and output data, and performs neural Turing. By learning the machine, a program is generated (step S106).

また、公開装置10は、生成したプログラムを公開し(ステップS107)、プログラムを利用する利用者の情報を収集する(ステップS108)。そして、公開装置10は、利用者の情報とプログラムとの組を販売可能なサービス情報として提供し(ステップS109)、処理を終了する。 Further, the publishing device 10 publishes the generated program (step S107) and collects information on the user who uses the program (step S108). Then, the public device 10 provides a set of the user's information and the program as service information that can be sold (step S109), and ends the process.

〔4.変形例〕
上記では、公開装置10による処理の一例について説明した。しかしながら、実施形態は、これに限定されるものではない。以下、公開装置10が実行する処理のバリエーションについて説明する。
[4. Modification example]
In the above, an example of the processing by the public device 10 has been described. However, the embodiments are not limited to this. Hereinafter, variations of the processing executed by the publishing device 10 will be described.

〔4-1.装置構成〕
上述した例では、公開装置10は、公開装置10内で公開処理および提供処理を実行した。しかしながら、実施形態は、これに限定されるものではない。例えば、公開装置10は、プログラムを自動生成する生成サーバと、公開処理を実行する公開サーバと、提供処理を実行する提供サーバとが協調することで実現されてもよい。このような場合、生成サーバは、図2に示す収集部41、推定部42、選択部43、抽出部44および生成部45を有し、公開サーバは、図2に示す公開部46および取得部47を有し、提供サーバは、図2に示す提供部48を有することとなる。
[4-1. Device configuration〕
In the above example, the publishing device 10 has executed the publishing process and the providing process in the publishing device 10. However, the embodiments are not limited to this. For example, the publishing device 10 may be realized by coordinating a generation server that automatically generates a program, a public server that executes a publishing process, and a providing server that executes a providing process. In such a case, the generation server has a collection unit 41, an estimation unit 42, a selection unit 43, an extraction unit 44, and a generation unit 45 shown in FIG. 2, and the public server has a public unit 46 and an acquisition unit shown in FIG. 47, and the providing server will have the providing unit 48 shown in FIG.

〔4-2.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文章中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
[4-2. others〕
Further, among the processes described in the above-described embodiment, all or a part of the processes described as being automatically performed can be manually performed, or the processes described as being manually performed can be performed. All or part of it can be done automatically by a known method. In addition, the processing procedure, specific name, and information including various data and parameters shown in the above text and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each figure is not limited to the information shown in the figure.

また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。 Further, each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of them may be functionally or physically distributed / physically in any unit according to various loads and usage conditions. Can be integrated and configured.

また、上記してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 In addition, the above-described embodiments can be appropriately combined as long as the processing contents do not contradict each other.

〔4-3.プログラム〕
また、上述してきた実施形態に係る公開装置10は、例えば図7に示すような構成のコンピュータ1000によって実現される。図7は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力IF(Interface)1060、入力IF1070、ネットワークIF1080がバス1090により接続された形態を有する。
[4-3. program〕
Further, the public device 10 according to the above-described embodiment is realized by, for example, a computer 1000 having a configuration as shown in FIG. 7. FIG. 7 is a diagram showing an example of a hardware configuration. The computer 1000 is connected to the output device 1010 and the input device 1020, and the arithmetic unit 1030, the primary storage device 1040, the secondary storage device 1050, the output IF (Interface) 1060, the input IF 1070, and the network IF 1080 are connected by the bus 1090. Have.

演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置1040は、RAM等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD、フラッシュメモリ等により実現される。 The arithmetic unit 1030 operates based on a program stored in the primary storage device 1040 or the secondary storage device 1050, a program read from the input device 1020, or the like, and executes various processes. The primary storage device 1040 is a memory device that temporarily stores data used by the arithmetic unit 1030 for various operations such as RAM. Further, the secondary storage device 1050 is a storage device in which data used by the arithmetic unit 1030 for various calculations and various databases are registered, and is realized by a ROM (Read Only Memory), an HDD, a flash memory, or the like.

出力IF1060は、モニタやプリンタといった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力IF1070は、マウス、キーボード、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインタフェースであり、例えば、USB等により実現される。 The output IF 1060 is an interface for transmitting information to be output to an output device 1010 that outputs various information such as a monitor and a printer. For example, USB (Universal Serial Bus), DVI (Digital Visual Interface), and the like. It is realized by a connector of a standard such as HDMI (registered trademark) (High Definition Multimedia Interface). Further, the input IF 1070 is an interface for receiving information from various input devices 1020 such as a mouse, a keyboard, a scanner, and the like, and is realized by, for example, USB.

なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置1020は、USBメモリ等の外付け記憶媒体であってもよい。 The input device 1020 is, for example, an optical recording medium such as a CD (Compact Disc), a DVD (Digital Versatile Disc), a PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), or a tape. It may be a device that reads information from a medium, a magnetic recording medium, a semiconductor memory, or the like. Further, the input device 1020 may be an external storage medium such as a USB memory.

ネットワークIF1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。 The network IF 1080 receives data from another device via the network N and sends it to the arithmetic unit 1030, and also transmits the data generated by the arithmetic unit 1030 to the other device via the network N.

演算装置1030は、出力IF1060や入力IF1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。 The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output IF 1060 and the input IF 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040, and executes the loaded program.

例えば、コンピュータ1000が公開装置10として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムまたはデータを実行することにより、制御部40の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。 For example, when the computer 1000 functions as the public device 10, the arithmetic unit 1030 of the computer 1000 realizes the function of the control unit 40 by executing the program or data loaded on the primary storage device 1040. The CPU 1100 of the computer 1000 reads these programs or data from the recording medium 1800 and executes them, but as another example, these programs may be acquired from another device via the network N.

〔5.効果〕
上述したように、公開装置10は、所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する。また、公開装置10は、抽出された単語組を用いて、所定の処理を実現するプログラムを生成する。そして、公開装置10は、生成されたプログラムを公開する。この結果、公開装置10は、サービスの起案から提供までを自動化することができる。
[5. effect〕
As described above, the publishing device 10 extracts a word set having a predetermined structure, which is a word set included in a sentence indicating a predetermined process. Further, the publishing device 10 uses the extracted word set to generate a program that realizes a predetermined process. Then, the publishing device 10 publishes the generated program. As a result, the public appliance 10 can automate the process from the drafting to the provision of the service.

また、公開装置10は、公開されたプログラムを利用する利用者の情報を取得する。そして、公開装置10は、プログラムに関する情報と、そのプログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として提供する。このため、公開装置10は、自動生成したサービスの販売までを自動化することができる。 Further, the public device 10 acquires information on a user who uses the published program. Then, the public device 10 provides service information in which information about the program and information of a user who uses the program are associated with each other as information about a service that can be sold. Therefore, the public appliance 10 can automate the sale of the automatically generated service.

また、公開装置10は、技術分野ごとに、その技術分野に属するコンテンツの増加率に基づいて成長性を推定し、推定された成長性が所定の条件を満たす技術分野を選択する。そして、公開装置10は、選択された技術分野に属するコンテンツから抽出された文章に含まれる単語組を抽出する。例えば、公開装置10は、成長性が所定の閾値を超える技術分野を選択する。また、公開装置10は、ある技術分野に属する文章により示される技術要素をノードとし、各技術要素間の関係性をノード間のリンクとして示すグラフ構造において、ポリアの壺に基づく確率で既存のノードから、そのノードとリンクにより接続される新たなノードが発生するものとして、ノードの数とリンクの数との変化の傾向を推定し、ノードの数とリンクの数との増加率が所定の閾値を超える技術分野を選択する。また、公開装置10は、公開されたプログラムの売上げ値に基づいて、プログラムと関連する技術分野の成長性を推定する。すなわち、公開装置10は、公開した後の売上げ値を反映させた状態で、成長性の推定を行う。例えば、公開装置10は、ベイズ最適化により成長性を示す値の最適値を推定する。このため、公開装置10は、より先進的な概念を実現するプログラム、すなわち、利用者が興味を有するプログラムを自動生成することができる。 Further, the publishing device 10 estimates the growth potential for each technical field based on the increase rate of the contents belonging to the technical field, and selects the technical field in which the estimated growth potential satisfies a predetermined condition. Then, the publishing device 10 extracts a word set included in a sentence extracted from the content belonging to the selected technical field. For example, the publishing device 10 selects a technical field in which the growth potential exceeds a predetermined threshold. Further, the public device 10 has a node as a technical element indicated by a sentence belonging to a certain technical field, and has an existing node with a probability based on a polya jar in a graph structure showing a relationship between each technical element as a link between the nodes. Therefore, assuming that a new node connected by a link to that node is generated, the tendency of change between the number of nodes and the number of links is estimated, and the rate of increase between the number of nodes and the number of links is a predetermined threshold. Select a technical field that exceeds. In addition, the public device 10 estimates the growth potential of the technical field related to the program based on the sales price of the published program. That is, the public device 10 estimates the growth potential in a state of reflecting the sales price after the public release. For example, the publishing device 10 estimates the optimum value of the value indicating the growth potential by Bayesian optimization. Therefore, the publishing device 10 can automatically generate a program that realizes a more advanced concept, that is, a program that the user is interested in.

また、公開装置10は、単語組として、名詞となる単語と、副詞句となる単語若しくは単語組と、名詞となる単語に関する動詞となる単語とを含む単語組を抽出する。そして、公開装置10は、抽出した名詞となる単語が示す情報を入力した際に、動詞となる単語が示す情報を出力するように、ニューラルチューリングマシンを用いてプログラムを生成する。また、公開装置10は、抽出した単語組と、所定の操作を示す複数の単語とを組み合わせることで、抽出した単語組から新たな単語組を生成し、生成した単語組を用いて、プログラムを生成する。このため、公開装置10は、ある分野に属するコンテンツから、その分野に属する概念を実現するプログラムの自動生成を実現することができる。 Further, the publishing device 10 extracts, as a word set, a word set including a word that becomes a noun, a word or a word set that becomes an adverbial phrase, and a word that becomes a verb related to the word that becomes a noun. Then, the publishing device 10 generates a program using a neural Turing machine so that when the information indicated by the extracted noun word is input, the information indicated by the verb word is output. Further, the publishing device 10 generates a new word set from the extracted word set by combining the extracted word set and a plurality of words indicating a predetermined operation, and uses the generated word set to create a program. Generate. Therefore, the publishing device 10 can realize automatic generation of a program that realizes the concept belonging to the field from the contents belonging to the field.

以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。 Although some of the embodiments of the present application have been described in detail with reference to the drawings, these are examples, and various modifications are made based on the knowledge of those skilled in the art, including the embodiments described in the disclosure column of the invention. It is possible to carry out the present invention in other modified forms.

また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。 Further, the above-mentioned "section, module, unit" can be read as "means" or "circuit". For example, the generation unit can be read as a generation means or a generation circuit.

10 公開装置
20 通信部
30 記憶部
31 文献データベース
32 拡張単語データベース
33 ニューラルチューリングマシン
34 技術グラフデータベース
35 サービス情報データベース
40 制御部
41 収集部
42 推定部
43 選択部
44 抽出部
45 生成部
46 公開部
47 取得部
48 提供部
100 管理装置
200 事業者装置
300 利用者端末
10 Public equipment 20 Communication unit 30 Storage unit 31 Literature database 32 Extended word database 33 Neural Turing machine 34 Technical graph database 35 Service information database 40 Control unit 41 Collection unit 42 Estimating unit 43 Selection unit 44 Extraction unit 45 Generation unit 46 Public unit 47 Acquisition department 48 Providing department 100 Management equipment 200 Business equipment 300 User terminal

Claims (12)

所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出部と、
前記抽出部により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成部と、
前記生成部により生成されたプログラムを公開する公開部と
前記公開部により公開されたプログラムを利用する利用者の情報を取得する取得部と、
前記プログラムに関する情報と、当該プログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として提供する提供部と
を有することを特徴とする公開装置。
An extraction unit that extracts a word set having a predetermined structure and is included in a sentence indicating a predetermined process.
Using the word set extracted by the extraction unit, a generation unit that generates a program that realizes the predetermined processing, and a generation unit.
A public unit that publishes the program generated by the generator, and a public unit that publishes the program .
The acquisition unit that acquires the information of the user who uses the program released by the disclosure unit, and the acquisition unit.
With a provider that provides service information that associates information about the program with information about users who use the program as information about services that can be sold.
A public device characterized by having.
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出部と、
前記抽出部により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成部と、
前記生成部により生成されたプログラムを公開する公開部と、
技術分野ごとに、当該技術分野に属するコンテンツの増加率に基づいて成長性を推定する推定部と、
前記推定部により推定された成長性が所定の条件を満たす技術分野を選択する選択部と
を有し、
前記抽出部は、前記選択部により選択された技術分野に属するコンテンツから抽出された文章に含まれる単語組を抽出する
を有することを特徴とする公開装置。
An extraction unit that extracts a word set having a predetermined structure and is included in a sentence indicating a predetermined process.
Using the word set extracted by the extraction unit, a generation unit that generates a program that realizes the predetermined processing, and a generation unit.
A public unit that publishes the program generated by the generator, and a public unit that publishes the program.
For each technology field, an estimation unit that estimates growth potential based on the rate of increase in content belonging to that technology field,
It has a selection unit for selecting a technical field in which the growth potential estimated by the estimation unit satisfies a predetermined condition.
The extraction unit extracts word sets included in sentences extracted from contents belonging to the technical field selected by the selection unit.
A public device characterized by having .
前記選択部は、前記成長性が所定の閾値を超える技術分野を選択する
ことを特徴とする請求項に記載の公開装置。
The publishing device according to claim 2 , wherein the selection unit selects a technical field in which the growth potential exceeds a predetermined threshold value.
前記推定部は、ある技術分野に属する文章により示される技術要素をノードとし、各技術要素間の関係性をノード間のリンクとして示すグラフ構造において、ポリアの壺に基づく確率で既存のノードから、当該ノードとリンクにより接続される新たなノードが発生するものとして、前記ノードの数とリンクの数との変化の傾向を推定し、
前記選択部は、前記ノードの数とリンクの数との増加率が所定の閾値を超える技術分野を選択する
ことを特徴とする請求項に記載の公開装置。
The estimation unit uses a technical element indicated by a sentence belonging to a certain technical field as a node, and in a graph structure showing the relationship between each technical element as a link between the nodes, from an existing node with a probability based on a polya jar. Assuming that a new node connected to the node by a link will occur, the tendency of change between the number of the node and the number of links is estimated.
The publishing device according to claim 3 , wherein the selection unit selects a technical field in which the rate of increase between the number of nodes and the number of links exceeds a predetermined threshold value.
前記推定部は、前記公開部により公開されたプログラムの売上げ値に基づいて、当該プログラムと関連する技術分野の成長性を推定する
ことを特徴とする請求項のうちいずれか1つに記載の公開装置。
According to any one of claims 2 to 4 , the estimation unit estimates the growth potential of a technical field related to the program based on the sales value of the program published by the public unit. The listed public device.
前記推定部はベイズ最適化により前記成長性を示す値の最適値を推定する
ことを特徴とする請求項に記載の公開装置。
The public device according to claim 5 , wherein the estimation unit estimates the optimum value of the value indicating the growth potential by Bayesian optimization.
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出部と、
前記抽出部により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成部と、
前記生成部により生成されたプログラムを公開する公開部と
を有し、
前記生成部は、前記抽出部が抽出した単語組に含まれる名詞となる単語が示す情報を入力した際に、前記単語組に含まれる動詞となる単語が示す情報を出力するように、ニューラルチューリングマシンを用いてプログラムを生成する
ことを特徴とする公開装置。
An extraction unit that extracts a word set having a predetermined structure and is included in a sentence indicating a predetermined process.
Using the word set extracted by the extraction unit, a generation unit that generates a program that realizes the predetermined processing, and a generation unit.
With the public unit that publishes the program generated by the generator
Have,
When the generation unit inputs the information indicated by the noun word included in the word set extracted by the extraction unit, the neural Turing unit outputs the information indicated by the verb word included in the word set. A public device characterized by generating a program using a machine.
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出部と、
前記抽出部により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成部と、
前記生成部により生成されたプログラムを公開する公開部と
を有し、
前記生成部は、前記抽出部が抽出した単語組と、所定の操作を示す複数の単語とを組み合わせることで、前記抽出部が抽出した単語組から新たな単語組を生成し、生成した単語組を用いて、前記プログラムを生成する
ことを特徴とする公開装置。
An extraction unit that extracts a word set having a predetermined structure and is included in a sentence indicating a predetermined process.
Using the word set extracted by the extraction unit, a generation unit that generates a program that realizes the predetermined processing, and a generation unit.
With the public unit that publishes the program generated by the generator
Have,
The generation unit generates a new word set from the word set extracted by the extraction unit by combining the word set extracted by the extraction unit and a plurality of words indicating a predetermined operation, and the generated word set. A public device characterized in that the program is generated using the above.
前記抽出部は、前記単語組として、名詞となる単語と、副詞句となる単語若しくは単語組と、前記名詞となる単語に関する動詞となる単語とを含む単語組を抽出する
ことを特徴とする請求項1~のうちいずれか1つに記載の公開装置。
The extraction unit is characterized in that, as the word set, a word set including a word as a noun, a word or a word set as an adverbial phrase, and a word as a verb related to the word as the noun is extracted. Item 5. The public device according to any one of Items 1 to 8 .
公開装置が実行する公開方法であって、
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出工程と、
前記抽出工程により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成工程と、
前記生成工程により生成されたプログラムを公開する公開工程と
前記公開工程により公開されたプログラムを利用する利用者の情報を取得する取得工程と、
前記プログラムに関する情報と、当該プログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として提供する提供工程と
を含むことを特徴とする公開方法。
It is a publishing method performed by a publishing device.
An extraction step of extracting a word set having a predetermined structure, which is a word set included in a sentence indicating a predetermined process,
A generation step of generating a program that realizes the predetermined process using the word set extracted by the extraction step, and a generation step.
With the publishing process that publishes the program generated by the generation process
The acquisition process for acquiring the information of the user who uses the program released by the disclosure process, and the acquisition process.
A providing process for providing service information in which information about the program is associated with information about a user who uses the program as information about a service that can be sold.
A publishing method characterized by including.
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出手順と、
前記抽出手順により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成手順と、
前記生成手順により生成されたプログラムを公開する公開手順と
前記公開手順により公開されたプログラムを利用する利用者の情報を取得する取得手順と、
前記プログラムに関する情報と、当該プログラムを利用する利用者の情報とを対応付けたサービス情報を、販売可能なサービスに関する情報として提供する提供手順と
をコンピュータに実行させるための公開プログラム。
An extraction procedure for extracting a word set that is included in a sentence indicating a predetermined process and has a predetermined structure, and
A generation procedure for generating a program that realizes the predetermined process using the word set extracted by the extraction procedure, and a generation procedure.
With the publishing procedure to publish the program generated by the above generation procedure
The acquisition procedure for acquiring the information of the user who uses the program published by the publication procedure, and the acquisition procedure.
A provision procedure for providing service information in which information about the program is associated with information about a user who uses the program as information about a service that can be sold.
A public program that lets your computer run.
公開装置が実行する公開方法であって、It is a publishing method performed by a publishing device.
所定の処理を示す文章に含まれる単語組であって、所定の構造を有する単語組を抽出する抽出工程と、An extraction step of extracting a word set having a predetermined structure, which is a word set included in a sentence indicating a predetermined process,
前記抽出工程により抽出された単語組を用いて、前記所定の処理を実現するプログラムを生成する生成工程と、A generation step of generating a program that realizes the predetermined process using the word set extracted by the extraction step, and a generation step.
前記生成工程により生成されたプログラムを公開する公開工程とWith the publishing process that publishes the program generated by the generation process
技術分野ごとに、当該技術分野に属するコンテンツの増加率に基づいて成長性を推定する推定工程と、For each technical field, an estimation process that estimates growth potential based on the growth rate of content belonging to the technical field, and
前記推定工程により推定された成長性が所定の条件を満たす技術分野を選択する選択工程とA selection process for selecting a technical field in which the growth potential estimated by the estimation process satisfies a predetermined condition
を含み、Including
前記抽出工程は、前記選択工程により選択された技術分野に属するコンテンツから抽出された文章に含まれる単語組を抽出するThe extraction step extracts word sets included in sentences extracted from contents belonging to the technical field selected by the selection step.
ことを特徴とする公開方法。A publishing method characterized by that.
JP2018136051A 2018-07-19 2018-07-19 Publishing device, publishing method and publishing program Active JP7001559B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018136051A JP7001559B2 (en) 2018-07-19 2018-07-19 Publishing device, publishing method and publishing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018136051A JP7001559B2 (en) 2018-07-19 2018-07-19 Publishing device, publishing method and publishing program

Publications (2)

Publication Number Publication Date
JP2020013395A JP2020013395A (en) 2020-01-23
JP7001559B2 true JP7001559B2 (en) 2022-01-19

Family

ID=69170199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018136051A Active JP7001559B2 (en) 2018-07-19 2018-07-19 Publishing device, publishing method and publishing program

Country Status (1)

Country Link
JP (1) JP7001559B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022154054A1 (en) * 2021-01-14 2022-07-21 株式会社オシンテック Rule watch system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003323451A (en) 2002-05-02 2003-11-14 Univ Tokyo Web page group development process presentation system
JP2008084259A (en) 2006-09-29 2008-04-10 Japan Tobacco Inc Data gathering system
JP2011008338A (en) 2009-06-23 2011-01-13 Nec Corp Information providing system, information providing method, and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146785A (en) * 1993-11-24 1995-06-06 Hitachi Ltd Method for automatically generating program and device therefor
JPH07210556A (en) * 1994-01-21 1995-08-11 Toshiba Corp Device and method for processing natural language

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003323451A (en) 2002-05-02 2003-11-14 Univ Tokyo Web page group development process presentation system
JP2008084259A (en) 2006-09-29 2008-04-10 Japan Tobacco Inc Data gathering system
JP2011008338A (en) 2009-06-23 2011-01-13 Nec Corp Information providing system, information providing method, and program

Also Published As

Publication number Publication date
JP2020013395A (en) 2020-01-23

Similar Documents

Publication Publication Date Title
US11521110B2 (en) Learning apparatus, learning method, and non-transitory computer readable storage medium
JP6537340B2 (en) Summary generation device, summary generation method, and summary generation program
JP7032233B2 (en) Information processing equipment, information processing methods, and information processing programs
JP6767342B2 (en) Search device, search method and search program
Mardjo et al. HyVADRF: hybrid VADER–random forest and GWO for bitcoin tweet sentiment analysis
Chaubey et al. Sentiment Analysis of Image with Text Caption using Deep Learning Techniques
JP7001559B2 (en) Publishing device, publishing method and publishing program
JP6775366B2 (en) Selection device and selection method
JP2020135770A (en) Estimation device, estimation method and estimation program
JP6963988B2 (en) Providing equipment, providing method and providing program
JP6679683B2 (en) Information processing apparatus, information processing method, and information processing program
JP2010198278A (en) Apparatus, method, and program for classification of reputation information
Ventura The computational creativity complex
JP6680655B2 (en) Learning device and learning method
JP2019215823A (en) Extraction device, evaluation device, extraction method, and extraction program
JP2019021210A (en) Specification device and specification method
JP6942104B2 (en) Judgment device, judgment method, and judgment program
JP2018092347A (en) Information processing apparatus, information processing method and program
JP6991124B2 (en) Providing equipment, providing method and providing program
JP2020129306A (en) Information processing device, information processing method, and information processing program
JP7113661B2 (en) Information processing device, information processing method, and information processing program
JP7323669B1 (en) Ontology generation method and learning method
JP2019215483A (en) Leaning device, learning method, and learning program
JP7054645B2 (en) Generator, generation method, generation program and program parameters
CN110728533A (en) Method and device for generating comment text and computer readable storage medium

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210922

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211206

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: 20211221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211224

R150 Certificate of patent or registration of utility model

Ref document number: 7001559

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350