WO2020136790A1 - エッジシステム、情報処理方法及び情報処理プログラム - Google Patents

エッジシステム、情報処理方法及び情報処理プログラム Download PDF

Info

Publication number
WO2020136790A1
WO2020136790A1 PCT/JP2018/048071 JP2018048071W WO2020136790A1 WO 2020136790 A1 WO2020136790 A1 WO 2020136790A1 JP 2018048071 W JP2018048071 W JP 2018048071W WO 2020136790 A1 WO2020136790 A1 WO 2020136790A1
Authority
WO
WIPO (PCT)
Prior art keywords
semantic engine
edge system
unit
query
execution result
Prior art date
Application number
PCT/JP2018/048071
Other languages
English (en)
French (fr)
Inventor
郁海 森
弦矢 板垣
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to KR1020217018319A priority Critical patent/KR102310391B1/ko
Priority to CN201880100420.3A priority patent/CN113316774A/zh
Priority to JP2019533134A priority patent/JP6615420B1/ja
Priority to DE112018008165.6T priority patent/DE112018008165T5/de
Priority to PCT/JP2018/048071 priority patent/WO2020136790A1/ja
Publication of WO2020136790A1 publication Critical patent/WO2020136790A1/ja
Priority to US17/308,591 priority patent/US20210256073A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90348Query processing by searching ordered data, e.g. alpha-numerically ordered data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • G06F16/24566Recursive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/10Detection; Monitoring
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/30Control
    • G16Y40/35Management of things, i.e. controlling in accordance with a policy or in order to achieve specified objectives
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Definitions

  • the present invention relates to IoT (Internet of Things).
  • IoT information of various things (sensors) stored on a cloud system (hereinafter, also simply referred to as cloud) as big data is shared by a plurality of application programs (hereinafter, simply referred to as applications) across a plurality of domains.
  • applications application programs
  • OneM2M which is a standardization organization for IoT, is advancing standardization of a horizontally integrated IoT platform that receives a semantic query from an application and responds to the query (for example, Patent Document 1).
  • an ontology is used to manage the annotated sensor data.
  • the conventional horizontally integrated IoT platform is supposed to perform intensive processing on the cloud. Therefore, if the number of applications using the horizontally integrated IoT platform significantly increases, the processing load may increase and the response performance may decrease. When dealing with scale-up or scale-out, the application must bear the cost evenly. In addition, since the communication delay occurs in the centralized processing on the cloud, there are cases where the demand of the application that cannot tolerate the communication delay cannot be satisfied. It is also envisaged to use an edge system to reduce the load concentration on the cloud and to eliminate the communication delay. However, the edge system has limited computing resources and storage capacity. Therefore, it is necessary to accurately respond to the query from the application with the limited calculation resources and storage capacity of the edge system.
  • the present invention has been made in view of such circumstances. More specifically, the main purpose of the horizontally integrated IoT platform is to enable the edge system to accurately respond to a query from an application.
  • the edge system is An edge system compatible with a horizontally integrated IoT (Internet of Things) platform, A semantic engine, A depth acquisition unit that acquires a response depth that is a request for the search depth of the semantic engine, A search control unit that causes the semantic engine to repeat the search until the search depth of the semantic engine reaches the response depth.
  • IoT Internet of Things
  • the edge system causes the semantic engine to repeat the search until the search depth of the semantic engine reaches the response depth. Therefore, the edge system can appropriately respond to the query from the application.
  • FIG. 3 is a diagram showing a configuration example of an IoT system according to the first embodiment.
  • FIG. 3 is a diagram showing a functional configuration example of the edge system according to the first embodiment.
  • 3 is a flowchart showing an operation example of the edge system according to the first embodiment.
  • 3 is a flowchart showing details of response depth determination processing according to the first embodiment.
  • FIG. 6 is a diagram showing a configuration example of an IoT system according to the second embodiment.
  • FIG. 6 is a diagram showing a functional configuration example of an edge system (main system), an edge system (slave system), and a network storage according to the second embodiment.
  • 9 is a flowchart showing an operation example of the edge system (main system) according to the second embodiment.
  • FIG. 9 is a flowchart showing details of the semantic engine selection process according to the second embodiment.
  • 9 is a flowchart showing an operation example of the edge system (slave system) according to the second embodiment.
  • FIG. 6 is a diagram showing an example of functional configurations of an edge system and a cloud system according to a third embodiment.
  • 9 is a flowchart showing an operation example of the edge system according to the fourth embodiment.
  • 9 is a flowchart showing details of the relevance determination processing (execution result) according to the fourth embodiment.
  • FIG. 9 is a flowchart showing an operation example of the edge system according to the fifth embodiment.
  • 9 is a flowchart showing details of result extension processing according to the fifth embodiment.
  • FIG. 16 is a diagram showing a functional configuration example of an edge system and a cloud system according to a sixth embodiment.
  • 9 is a flowchart showing an operation example of the edge system according to the sixth embodiment.
  • 9 is a flowchart showing an operation example of the cloud system according to the sixth embodiment.
  • FIG. 1 shows a configuration example of an IoT system 1 according to this embodiment.
  • the cloud system 11 is connected to the Internet 13. Further, a plurality of edge systems 10 are connected to the Internet 13 and the intranet 14. Further, a plurality of sensors 12 are connected to the intranet 14.
  • each edge system 10 responds to a semantic query from an application.
  • the computing resources and storage capacity of each edge system 10 are smaller than the computing resources and storage capacity of the cloud system 11.
  • the processing described below allows the edge system 10 to accurately respond to a semantic query from an application. As a result, load concentration on the cloud system 11 can be reduced and communication delay can be eliminated.
  • the operation performed by the edge system 10 corresponds to an information processing method and an information processing program.
  • FIG. 2 shows a functional configuration example of the edge system 10.
  • the edge system 10 collects the data measured by the sensor 12 or the processed data that has been statistically processed by the sensor 12 via the intranet 14. In addition, the edge system 10 accesses the cloud system 11 via the Internet 13 as necessary, and stores data in the cloud system 11. The edge system 10 can also request a part of the processing from the cloud system 11.
  • measurement data the data measured by the sensor 12 or the processed data which has been subjected to the statistical processing by the sensor 12 will be collectively referred to as measurement data.
  • the edge system 10 is a computer including a communication device 900, a processor 901, and a storage device 902 as hardware.
  • the edge system 10 also includes a communication unit 100, a data collection unit 101, a data lake 102, an application 103, a response depth control unit 104, a semantic engine 105, and an ontology 106 as functional configurations.
  • the communication unit 100 receives the measurement data from the sensor 12.
  • the data collection unit 101 adds metadata such as collection time to measurement data.
  • the data collection unit 101 also performs statistical processing or normalization on the measurement data, if necessary. Then, the data collection unit 101 saves the measurement data (or the measurement data after statistical processing or normalization) received by the communication unit 100 in the data lake 102.
  • the application 103 outputs application metadata including the query and the response depth to the response depth control unit 104.
  • the response depth is a parameter for obtaining the result requested by the application. That is, the response depth is a request for the search depth (hereinafter, also referred to as execution depth) of the semantic engine 105.
  • the execution depth is the number of times (the number of recursion) the semantic engine 105 is executed. That is, the application 103 can specify a request for the number of recursion as the response depth.
  • the execution depth may be the depth of the parent-child relationship of the ontology (the number of edges from the node to the root node when the ontology is a tree structure).
  • the depth of the parent-child relationship is represented by, for example, the degree of abstraction defined in the depth specification table 1000 shown in FIG. That is, the application 103 can specify a request for the level of abstraction (1, 2, 3, etc.) shown in FIG. 23 as the response depth.
  • the response depth control unit 104 acquires application metadata including the query and the response depth. Further, the response depth control unit 104 requests the semantic engine 105 for the search. Further, the response depth control unit 104 causes the semantic engine 105 to repeat the search until the search depth of the semantic engine 105 reaches the response depth. For example, the response depth control unit 104 adjusts the number of times the semantic engine 105 is executed.
  • the response depth control unit 104 corresponds to the depth acquisition unit and the search control unit.
  • the processing performed by the response depth control unit 104 corresponds to the depth acquisition processing and the search control processing.
  • the semantic engine 105 is, specifically, an inference device using machine learning and/or RDF (Resource Description Framework).
  • the semantic engine 105 may use only part of machine learning and RDF.
  • the semantic engine 105 may also use machine learning and RDF in parallel or serially.
  • the data collection unit 101, the application 103, the response depth control unit 104, and the semantic engine 105 are realized by a program.
  • a program that implements the data collection unit 101, the application 103, the response depth control unit 104, and the semantic engine 105 is executed by the processor 901. Further, the data collection unit 101, the response depth control unit 104, and the semantic engine 105 may be realized by dedicated hardware.
  • FIG. 1 shows an example in which the data collection unit 101, the application 103, the response depth control unit 104, and the semantic engine 105 are realized by a program, and the processor 901 executes the program.
  • the communication unit 100 is realized by the communication device 900.
  • the data lake 102 and the ontology 106 are provided in the storage device 902 (including a memory and an auxiliary storage device).
  • the data lake 102 and the ontology 106 may be realized by dedicated hardware.
  • FIG. 3 shows an operation example of the edge system 10 according to the present embodiment.
  • the response depth control unit 104 acquires application metadata including a query and a response depth from the application 103 (step S01).
  • the response depth control unit 104 acquires the measurement data required for machine learning and the Linked Data required for the inferencer as input data from the data lake 102 and the ontology 106 (step S02). Then, the response depth control unit 104 outputs the input data to the semantic engine 105.
  • the semantic engine 105 performs a search according to the query included in the application metadata (step S03).
  • the semantic engine 105 may perform the search using the application metadata and the metadata of the measurement data stored in the data lake 102. Specifically, the semantic engine 105 can narrow down the data by the period, the installation location of the sensor, or the like.
  • the semantic engine 105 can also perform a recursive search using the previous execution result.
  • the response depth control unit 104 may read the Linked Data in advance when the edge system 10 is started in order to reduce the load load of the Linked Data.
  • the response depth control unit 104 After execution of the semantic engine 105, the response depth control unit 104 performs response depth determination processing (step S04). That is, the response depth control unit 104 determines whether the search depth (recursive count, abstraction level) of the semantic engine 105 reaches the response depth. If the result of the response depth determination processing is to continue the processing (YES in step S05), the processing after the input data acquisition (S02) is repeated. On the other hand, when the process is not continued (NO in step S05), the response depth control unit 104 returns the execution result of the semantic engine 105 to the application 103 (step S06).
  • FIG. 4 shows details of the response depth determination processing (step S04 in FIG. 3).
  • the response depth control unit 104 acquires the response depth requested by the application from the application metadata (step S601).
  • the response depth control unit 104 identifies the execution depth from the execution result of the semantic engine 105 or the depth of the parent-child relationship of the ontology (step S602).
  • the execution depth is, for example, the number of recursion of the semantic engine 105 or the degree of abstraction illustrated in FIG.
  • the response depth control unit 104 determines to continue the processing of the semantic engine 105 (step S604). If the execution depth is equal to or greater than the response depth (NO in step S603), the response depth control unit 104 determines to end the processing of the semantic engine 105 (step S605).
  • the response depth determination processing (step S04 in FIG. 3) is performed independently for each execution result.
  • the response depth control unit 104 causes the semantic engine 105 to repeat the search until the execution depth of the semantic engine 105 reaches the response depth. Therefore, even in the edge system 10 having limited calculation resources and storage capacity, it is possible to appropriately respond to the query from the application 103, similarly to the cloud system 11. That is, in the present embodiment, it is possible to make a response with an arbitrary response depth (abstract level) according to the request of the application 103.
  • the functions of the IoT system can be provided to the application 103 (improvement of availability) even when the cloud system 11 cannot be used because the Internet 13 cannot be used.
  • the judgment is made based on the number of recursion or the degree of abstraction, but the end condition of the recursive process may be judged based on the total number of results obtained in the process of recursive execution. Furthermore, the end condition of the recursive process may be determined depending on whether or not the upper nth (n is a natural number) of the scoring result described in the seventh embodiment is obtained. It should be noted that the application metadata describes which end condition of the recursive process is used.
  • Embodiment 2 a configuration that enables scale-out or scale-down of the edge system will be described. In the present embodiment, differences from the first embodiment will be mainly described. Note that items not described below are the same as those in the first embodiment.
  • FIG. 5 shows a configuration example of the IoT system 1 according to this embodiment.
  • a master-slave model that is easy to realize is adopted.
  • a network storage 15 and an edge system (slave) 16 are newly arranged on the intranet 14. Further, in the present embodiment, it is referred to as an edge system (main system).
  • the network storage 15 is not always necessary. However, storing the measurement data commonly used by the edge system (main system) 10 and the edge system (slave system) 16 in the network storage 15 facilitates the management of the measurement data.
  • FIG. 6 shows a functional configuration example of the network storage 15, the edge system (main system) 10, and the edge system (slave system) 16.
  • the data collection unit 101 and the data lake 102 described in the first embodiment are arranged in the network storage 15 instead of the edge system (main system) 10.
  • a semantic engine selection unit 107 is added to the edge system (main system) 10.
  • the semantic engine selection unit 107 selects a semantic engine according to the domain of the application query or the query at the time of recursive execution. More specifically, the semantic engine selection unit 107 selects a semantic engine to be searched from the semantic engine 105 included in the edge system (master) 10 and the semantic engine 401 included in the edge system (slave) 16. To do. Then, the semantic engine selection unit 107 causes the selected semantic engine to search. The semantic engine selection unit 107 selects either the semantic engine 105 of the edge system (master system) 10 or the semantic engine 401 of the edge system (slave system) 16 based on the endpoint specification table 2000 shown in FIG. 24, for example. .. In FIG.
  • an endpoint URI Uniform Resource Identifier
  • the semantic engine selection unit 107 selects the semantic engine corresponding to the domain of the query from the application 103 with reference to the endpoint specification table 2000 of FIG.
  • the endpoint identification table 2000 of FIG. 24 corresponds to selection criterion information.
  • the semantic engine selection unit 107 is realized by a program, for example, and is executed by the processor 901. Further, the semantic engine selection unit 107 may be realized by dedicated hardware.
  • the data collection unit 101 collects the measurement data of the sensor 12 via the intranet 14 and the communication unit 300.
  • the data collection unit 101 stores the collected measurement data in the data lake 102 as in the first embodiment.
  • the data acquisition unit 301 extracts data from the data lake 102 in response to a request from the edge system (main system) 10 or the edge system (slave system) 16. Further, the data acquisition unit 301 transmits the extracted data to the edge system (main system) 10 or the edge system (slave system) 16.
  • the data collection unit 101 and the data acquisition unit 301 are realized by a program.
  • a program that implements the data collection unit 101 and the data acquisition unit 301 is executed by the processor 701. Further, the data collection unit 101 and the data acquisition unit 301 may be realized by dedicated hardware.
  • FIG. 6 shows an example in which the data collection unit 101 and the data acquisition unit 301 are realized by a program, and the processor 701 executes the program.
  • the communication unit 300 is realized by the communication device 700.
  • the data lake 102 is provided in the storage device 702 (including a memory and an auxiliary storage device). The data lake 102 may be realized by dedicated hardware.
  • the edge system (subordinate system) 16 executes the semantic engine 401 based on the query from the edge system (main system) 10. Then, the edge system (subordinate system) 16 returns the execution result of the semantic engine 401 to the edge system (main system) 10. Further, the edge system (subordinate system) 16 acquires the input data necessary for executing the semantic engine 401 from the network storage 15 or the ontology 402 as necessary.
  • the communication unit 400 is realized by the communication device 600.
  • the semantic engine 401 is executed by the processor 601.
  • the semantic engine 401 may be realized by dedicated hardware.
  • FIG. 6 shows an example in which the semantic engine 401 is executed by the processor 601.
  • the ontology 402 is provided in the storage device 602 (including a memory and an auxiliary storage device).
  • the ontology 402 may be realized by dedicated hardware.
  • FIG. 7 shows an operation example of the edge system (main system) 10 according to the present embodiment. Only the differences from the first embodiment will be described below.
  • step S01 is the same as that of the first embodiment, description thereof will be omitted.
  • the semantic engine selection unit 107 selects a semantic engine (step S07).
  • the semantic engine selection unit 107 selects the semantic engine 105 (endpoint URI of the semantic engine 105) in the edge system (main system) 10 (YES in step S08)
  • the same processing as that of the first embodiment is performed.
  • the semantic engine selection unit 107 selects the semantic engine 401 of the edge system (subordinate system) 16 (endpoint URI of the semantic engine 401) (NO in step S08)
  • the semantic engine selection unit 107 determines the edge system ( A query is issued to the endpoint URI of the subordinate system 16 (step S09). Then, the semantic engine selection unit 107 acquires the execution result from the edge system (slave) 16.
  • the semantic engine selection unit 107 when the semantic engine selection unit 107 cannot specify the endpoint URI of the semantic engine, the semantic engine selection unit 107 skips without executing the query. Alternatively, the semantic engine selection unit 107 returns an error notification to the application 103.
  • the process after acquiring the execution result of the semantic engine is the same as that of the first embodiment (steps S04 to S06).
  • FIG. 8 shows details of the semantic engine selection process (step S07) of FIG.
  • the semantic engine selection unit 107 generates a query to be executed this time from application metadata or the execution result of the semantic engine. Then, the semantic engine selection unit 107 identifies the domain of the query (step S701).
  • the semantic engine selection unit 107 identifies the endpoint URI of the semantic engine corresponding to the identified query domain in the endpoint identification table 2000 of FIG. 24 (step S702).
  • FIG. 9 shows an operation example of the edge system (subordinate system) 16. More specifically, FIG. 9 shows a processing procedure for the query issued in step S09 of FIG.
  • the semantic engine 401 receives a query from the edge system (main system) 10 via the communication unit 400 (S901).
  • the semantic engine 401 acquires necessary input data (step S902).
  • the semantic engine 401 queries the data acquisition unit 301 of the network storage 15 to obtain the measurement data.
  • the semantic engine 401 loads the Linked Data from the ontology 402.
  • the semantic engine 401 executes the search using the input data (step S903). Then, the semantic engine 401 returns the execution result to the edge system (main system) 10 via the communication unit 400 (step S904).
  • an edge system (slave system) equivalent to the edge system (slave system) 16 is added to the intranet 14.
  • the semantic engine selection unit 107 adds to the endpoint identification table 2000 the domain of the query in charge of the newly added edge system (subordinate) and the endpoint URI.
  • the edge system (subordinate system) to be deleted is excluded from the intranet 14.
  • the semantic engine selection unit 107 deletes the domain of the query handled by the excluded edge system (subordinate) and the endpoint URI from the endpoint identification table 2000.
  • the master-slave model type is described as an example.
  • a model using a servant in which the functions of the edge system are symmetrical, such as pure P2P may be used.
  • the edge system (subordinate system) 16 arranged in the intranet 14 is used.
  • the edge system (slave system) 16 may be arranged on the Internet 13 and the edge system (slave system) 16 arranged on the Internet 13 may be used.
  • Embodiment 3 a configuration for selecting a semantic engine of a cloud system will be described. In the present embodiment, differences from the second embodiment will be mainly described. Note that matters not described below are the same as those in the second embodiment.
  • FIG. 10 shows a functional configuration example of the edge system 10 and the cloud system 11 according to the present embodiment.
  • the functional configuration of the edge system 10 is the same as that of the first embodiment.
  • the data collection unit 203 collects the measurement data of the sensor 12 from the edge system 10. Then, the data collection unit 203 stores the collected measurement data in the data lake 204.
  • the edge system 10 can select measurement data to be transmitted to the cloud system 11. In addition, the edge system 10 may anonymize the measurement data transmitted to the cloud system 11 by using a statistical value or the like.
  • the data collection unit 203 and the semantic engine 205 are executed by the processor 801. Further, the data collection unit 203 and the semantic engine 205 may be executed by dedicated hardware.
  • FIG. 10 shows an example in which the data collection unit 203 and the semantic engine 205 are executed by the processor 801.
  • the communication unit 200 is realized by the communication device 800.
  • the data lake 204 and the ontology 202 are provided in the storage device 802 (including a memory and an auxiliary storage device).
  • the data lake 204 and the ontology 202 may be realized by dedicated hardware.
  • the processing of the edge system 10 according to the present embodiment is almost the same as that of the edge system (main system) 10 of the second embodiment, so only the differences will be described.
  • the semantic engine selection unit 107 In order to use the semantic engine 205 of the cloud system 11, the semantic engine selection unit 107 additionally writes the domain of the query in charge of the semantic engine 205 and the endpoint URI in the endpoint specification table 2000 of FIG. Then, the semantic engine selection unit 107 selects either the semantic engine 105 of the edge system 10 or the semantic engine 205 of the cloud system 11 based on the endpoint identification table 2000.
  • the semantic engine 205 when the semantic engine 205 receives the query from the edge system 10, the semantic engine 205 acquires the input data necessary for executing the search. If metrology data is needed, the semantic engine 205 obtains the metrology data from the data lake 204. If the Linked Data is needed for RDF execution, the Semantic Engine 205 loads the Linked Data from the ontology 202. Then, the semantic engine 205 executes the search using the input data. Then, the semantic engine 205 returns the execution result to the edge system 10 via the communication unit 200.
  • the response variation to the application can be expanded by allowing a cloud system having abundant resources to handle a part of the search process of the semantic engine. Further, according to the present embodiment, it is possible to determine whether or not to use the cloud system in response to the request of the application, and thus it is possible to avoid load concentration on the cloud system.
  • FIG. 11 is a functional configuration example of the edge system 10 according to the present embodiment.
  • the relevance determination unit 108 is added between the semantic engine 105 and the response depth control unit 104.
  • the relevance determination unit 108 acquires a query to the semantic engine 105 from the response depth control unit 104. Then, the relevancy determining unit 108 predicts the execution result of the semantic engine 105 for the acquired query. Then, the relevance determination unit 108 determines whether the predicted execution result matches the execution result obtained by the application 103. The relevance determination unit 108 discards the query when the predicted execution result does not match the execution result requested by the application 103. Further, the relevance determination unit 108 acquires the execution result of the semantic engine 105. The query from the application 103 is compared with the execution result of the semantic engine 105.
  • the relevance determination unit 108 determines whether or not the execution result of the semantic engine 105 includes an execution result that does not match the query. When there is an execution result that does not match the query in the execution results of the semantic engine 105, the relevance determination unit 108 discards the execution result that does not match the query.
  • the relevance determining unit 108 corresponds to a query discarding unit and a result discarding unit.
  • FIG. 12 shows an operation example of the edge system 10 according to the present embodiment. Note that only the differences from the first embodiment will be described below.
  • step S01 is the same as that of the first embodiment, description thereof will be omitted.
  • the relevance determination unit 108 determines the relevance of the query to the semantic engine 105 (step S10). That is, the relevance determination unit 108 predicts the execution result of the semantic engine 105 for the query, and discards the query if the predicted execution result does not match the execution result requested by the application 103.
  • step S02 and step S03 are the same as those in the first embodiment, description thereof will be omitted.
  • the relevance determination unit 108 determines the relevance of the execution result of the semantic engine 105 (step S11). That is, when the execution result of the semantic engine 105 includes an execution result that does not match the query, the relevance determination unit 108 discards the execution result that does not match the query.
  • FIG. 13 shows details of the relevance determination processing (query) (step S10 in FIG. 12).
  • the relevance determination unit 108 acquires the application metadata from the response depth control unit 104 (step S1001).
  • the relevance determination unit 108 calculates the degree of similarity between the set of all answers (output set) output by the semantic engine 105 and the application metadata (step S1002). That is, the relevance determination unit 108 predicts all the answers output by the semantic engine 105.
  • the relevance determination unit 108 calculates the degree of similarity between each of all the predicted answers and the application metadata.
  • the relevance determination unit 108 calculates the degree of similarity as follows, for example.
  • the application metadata includes “behavior in the room” as a query. It is assumed that the output sets of the semantic engine are “cross the corridor (inside the room)”, “walking (outside)”, and “up the stairs”.
  • the relevance determination unit 108 uses a Euclidean distance, a correlation function, a likelihood function or the like as the similarity.
  • the likelihood function L is defined as follows. Let P(A
  • A) ⁇ P(A
  • B b) ( ⁇ is a proportional symbol) ..
  • the similarity of “crossing the corridor (indoor)” is L (behavior in room
  • walking outside) 0 and L (behavior in the room
  • climbing stairs) 1/2.
  • the "up stairs" event can be 1/2 as it can occur indoors or outdoors.
  • the relevance determination unit 108 compares the similarity with the threshold for all output sets (step S1003). When there is at least one output whose similarity is equal to or greater than the threshold value (YES in step S1003), the relevance determination unit 108 outputs the query to the semantic engine 105 (step S1004). On the other hand, if all the similarities of the output set are smaller than the threshold value (NO in step S1003), the relevance determination unit 108 does not output the query to the semantic engine 105 and excludes the query (step S1005). At this time, the relevance determination unit 108 notifies the response depth control unit 104 that there is no valid response.
  • FIG. 14 shows details of the relevance determination processing (execution result) (step S11 in FIG. 12).
  • the relevance determination unit 108 acquires the application metadata from the response depth control unit 104 (step S1101).
  • the relevance determination unit 108 calculates the similarity between the execution result of the semantic engine 105 and the application metadata (step S1102).
  • the relevance determination unit 108 calculates the degree of similarity by the same calculation method as the calculation method in step S1002 of FIG.
  • the relevance determination unit 108 compares the similarity with the threshold for all the execution results (step S1103). When the degree of similarity is smaller than the threshold value (NO in step S1103), the relevance determination unit 108 excludes the corresponding semantic engine execution result (step S1104). On the other hand, if the similarity is equal to or higher than the threshold value (YES in step S1103), the relevance determination unit 108 outputs the execution result to the response depth control unit 104.
  • Embodiment 5 a configuration in which the execution result of the semantic engine is expanded by a thesaurus (synonyms, related words, associative words) will be described.
  • the semantic engine recursively executes the search using the expanded execution result, so that the variation of the execution result can be increased.
  • differences from the first embodiment will be mainly described. Note that items not described below are the same as those in the first embodiment.
  • FIG. 15 shows a functional configuration example of the edge system 10 according to the present embodiment. Only the differences from the first embodiment will be described.
  • a result extension unit 109 is added between the semantic engine 105 and the response depth control unit 104.
  • the result extension unit 109 acquires the execution result of the semantic engine 105.
  • the result extension unit 109 uses the thesaurus 110 to extend the execution result of the semantic engine 105.
  • the result extension unit 109 returns the extended execution plan to the response depth control unit 104.
  • FIG. 16 shows an operation example of the edge system 10 according to the present embodiment. Note that only the differences from the first embodiment will be described below.
  • Steps S01 to S03 are the same as those in the first embodiment, and therefore the description is omitted.
  • the result extension unit 109 extends the execution result of the semantic engine 105 (step S12). As a result, variations in the input to the semantic engine 105 at the time of recursive execution increase.
  • Steps S04 to S06 are the same as those in the first embodiment, and therefore their explanations are omitted.
  • FIG. 17 shows details of the result extension process (step S12 in FIG. 16).
  • the result extension unit 109 acquires the execution result of the semantic engine 105 (step S1201).
  • the result expansion unit 109 identifies the synonyms, related words, associative words, and the like that are inferred from the execution result using the thesaurus 110 (step S1202). Then, the result extension unit 109 outputs the execution result of the semantic engine 105 and the word specified in step S1202 to the response depth control unit 104.
  • a configuration for acquiring RDF ontology (Linked Data) and machine learning model data used by the semantic engine of the edge system from the cloud system will be described.
  • the behavior of the semantic engine can be dynamically controlled.
  • differences from the first embodiment will be mainly described. Note that items not described below are the same as those in the first embodiment.
  • FIG. 18 shows a functional configuration example of the edge system 10 and the cloud system 11 according to this embodiment. Note that FIG. 18 illustrates only the configuration related to acquisition and extraction of ontology (Linked Data) and model data of machine learning. That is, in the edge system 10 according to the present embodiment, the ontology acquisition unit 111 is added to the configuration of the first embodiment. Further, in the cloud system 11 according to the present embodiment, the ontology extraction unit 201 is added to the configuration of the third embodiment.
  • ontology Linked Data
  • the ontology acquisition unit 111 acquires at least one of an ontology (Linked Data) used by the semantic engine 105 and model data for machine learning from the cloud system 11.
  • the ontology extraction unit 201 extracts at least one of an ontology (Linked Data) used by the semantic engine 105 and machine learning model data based on a request from the edge system 10. Then, the ontology extraction unit 201 transmits the extracted ontology (Linked Data) and/or model data to the edge system 10.
  • FIG. 19 shows an operation example of the edge system 10 according to the present embodiment.
  • the ontology acquisition unit 111 may receive only one of the Linked Data and the model data. Further, the ontology acquisition unit 111 may receive data other than Linked Data and model data as long as the data is used by the semantic engine 105.
  • the ontology acquisition unit 111 acquires application metadata (step S11101).
  • the ontology acquisition unit 111 transmits a query for acquiring LinkedData and model data to the cloud system 11 (step S11102).
  • the query includes application metadata.
  • the ontology acquisition unit 111 receives the Linked Data and the model data from the cloud system 11, and stores the received Linked Data and the model data in the ontology 106 (step S11103).
  • FIG. 20 shows an operation example of the cloud system 11 according to the present embodiment.
  • the ontology extraction unit 201 may extract only one of the Linked Data and the model data. Further, the ontology extraction unit 201 may extract data other than Linked Data and model data as long as the data is used by the semantic engine 105.
  • the ontology extraction unit 201 receives a query from the edge system 10 and extracts application metadata from the query (step S20101).
  • the ontology extraction unit 201 extracts, from the ontology 202, Linked Data and model data that meet the conditions, based on the information of the application metadata (step S20102). Specifically, the ontology extraction unit 201 uses the domain of the application (for example, the behavior of a person, the type of illness, the operation of the device, etc.) or the statistical information (the past usage record of other similar applications, etc.) Narrow Linked Data and model data that match. When extracting the Linked Data, the ontology extraction unit 201 may remove unnecessary links from the Linked Data. At that time, the ontology extraction unit 201 may determine the necessity of linking by using machine learning, statistical information, or the like.
  • domain of the application for example, the behavior of a person, the type of illness, the operation of the device, etc.
  • the statistical information the past usage record of other similar applications, etc.
  • the ontology extraction unit 201 returns the extracted LinkedData and model data to the edge system 10 (step S20103).
  • the ontology of the edge system can be appropriately updated. Therefore, according to the present embodiment, it is possible to improve the accuracy of the execution result output to the application. Further, according to the present embodiment, the cloud system can centrally manage the ontology. Therefore, according to the present embodiment, knowledge can be diverted to a similar application on another edge system. As a result, the accuracy of the execution result of the semantic engine can be improved from the beginning of the operation of the other edge system.
  • Embodiment 7 a configuration will be described in which priorities are set for the execution results of the semantic engine. As a result, the application can recognize the degree of importance in the execution result. In the present embodiment, differences from the first embodiment will be mainly described. Note that items not described below are the same as those in the first embodiment.
  • FIG. 21 shows a functional configuration example of the edge system 10 according to the present embodiment. Only the differences from the first embodiment will be described.
  • the scoring unit 112 is added between the response depth control unit 104 and the application 103.
  • the scoring unit 112 sets priorities for the execution results of the semantic engine 105. More specifically, the scoring unit 112 sets priorities for the execution results of the semantic engine 105 based on the inference process of the semantic engine 105. Note that FIG. 21 illustrates only the configuration necessary for explaining the scoring unit 112.
  • FIG. 22 is an example of Linked Data used in the RDF of the semantic engine 105.
  • Linked Data 3000 is composed of a directed graph of nodes 3001, 3003, 3004, 3005, 3006 and 3007, which are at least one of a subject and an object, and a predicate 3002 connecting the nodes.
  • the node 3001 is inferred from the measurement data by machine learning and the nodes 3003 and 3004 are inferred by RDF.
  • the nodes 3005, 3006, and 3007 are inferred.
  • the scoring unit 112 records, for each node, which node was passed during inference.
  • each of the nodes 3001, 3003, 3004, 3006 and 3007 records one passage
  • the node 3005 records two passages.
  • the scoring unit 112 treats the number of passages as a score. Then, the scoring unit 112 sets priorities to the execution results of the semantic engine 105 in descending order of score. Further, the scoring unit 112 preferentially presents the execution result having the higher priority to the application.
  • the node 3005 has the highest priority.
  • the nodes 3001, 3003, 3004, 3006, and 3007 all have the same priority.
  • the processor 901 is an IC (Integrated Circuit) that performs processing.
  • the processor 901 is a CPU (Central Processing Unit), a DSP (Digital Signal Processor), or the like.
  • the storage device 902 is a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an HDD (Hard Disk Drive), or the like.
  • the communication device 900 is an electronic circuit that executes a data communication process.
  • the communication device 900 is, for example, a communication chip or a NIC (Network Interface Card).
  • the storage device 902 also stores an OS (Operating System). Then, at least part of the OS is executed by the processor 901.
  • the processor 901 executes at least a part of the OS while collecting data, the application 103, the response depth control unit 104, the semantic engine 105, the semantic engine selection unit 107, the relevance determination unit 108, the result extension unit 109, and the ontology acquisition.
  • a program that implements the functions of the unit 111 and the scoring unit 112 is executed.
  • the processor 901 executes the OS, task management, memory management, file management, communication control, etc. are performed.
  • At least one of information, data, a signal value, and a variable value indicating the above is stored in at least one of the storage device 902, the register in the processor 901, and the cache memory.
  • the functions of the data collection unit 101, the application 103, the response depth control unit 104, the semantic engine 105, the semantic engine selection unit 107, the relevance determination unit 108, the result extension unit 109, the ontology acquisition unit 111, and the scoring unit 112 are realized.
  • the program to be executed may be stored in a portable recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD. Then, the functions of the data collection unit 101, the application 103, the response depth control unit 104, the semantic engine 105, the semantic engine selection unit 107, the relevance determination unit 108, the result extension unit 109, the ontology acquisition unit 111, and the scoring unit 112 are realized.
  • a portable recording medium in which the program to be stored is stored may be distributed commercially.
  • the edge system 10 may be realized by a processing circuit.
  • the processing circuit is, for example, a logic IC (Integrated Circuit), a GA (Gate Array), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array).
  • processing circuit the superordinate concept of the processor and the processing circuit is referred to as “processing circuit”. That is, each of the processor and the processing circuit is a specific example of “processing circuit”.
  • 1 IoT system 10 edge system, 11 cloud system, 12 sensor, 13 internet, 14 intranet, 15 network storage, 16 edge system (subordinate), 100 communication unit, 101 data collection unit, 102 data lake, 103 application, 104 Response depth control unit, 105 semantic engine, 106 ontology, 107 semantic engine selection unit, 108 relevance determination unit, 109 result extension unit, 110 thesaurus, 111 ontology acquisition unit, 112 scoring unit, 200 communication unit, 201 ontology extraction unit , 202 ontology, 203 data collection unit, 204 data lake, 205 semantic engine, 300 communication unit, 301 data acquisition unit, 400 communication unit, 401 semantic engine, 402 ontology, 600 communication device, 601, processor, 602 storage device, 700 communication Device, 701 processor, 702 storage device, 800 communication device, 801 processor, 802 storage device, 900 communication device, 901 processor, 902 storage device, 1000 depth identification table, 2000 endpoint identification table.

Abstract

応答深度制御部(104)は、セマンティックエンジン(105)の検索の深度に対する要求である応答深度を取得する。また、応答深度制御部(104)は、セマンティックエンジン(105)の検索の深度が応答深度に達するまで、セマンティックエンジン(105)に検索を繰り返させる。

Description

エッジシステム、情報処理方法及び情報処理プログラム
 本発明は、IoT(Internet of Things)に関する。
 IoTでは、ビッグデータとしてクラウドシステム(以下、単にクラウドともいう)上に蓄積される様々なモノ(センサー)の情報を、複数のドメインにわたる複数のアプリケーションプログラム(以下、単にアプリケーションともいう)が共用するケースがある。この場合に、アプリケーションはセンサーのドメイン知識(設置場所、収集するデータの種類、精度など)を意識することなく利用できることが望ましい。
 IoTに関する標準化団体であるoneM2Mは、アプリケーションからセマンティックなクエリを受け付け、クエリに応答する水平統合型IoTプラットフォームの標準化を進めている(例えば、特許文献1)。水平統合型IoTプラットフォームでは、オントロジーを使用して注釈を付与したセンサデータを管理する。また、水平統合型IoTプラットフォームでは、推論器によってアプリケーションのセマンティックなクエリに対する応答を実現する。これにより、アプリケーションはセンサーのドメイン知識なしで、データを利用することができる。
 また、センサー側とアプリケーション側にメタデータを付与し、オントロジーを使用してメタデータ同士のマッチングを行い、アプリケーションの要求を満たすセンサデータを提供可能なセンサーの候補を抽出する技術も提案されている(例えば、特許文献2)。
特表2018-503905号公報 特開2018-81377号公報
 従来の水平統合型IoTプラットフォームは、クラウド上で集中的に処理を行うことが想定されている。このため、水平統合型IoTプラットフォームを利用するアプリケーションが著しく増加すると、処理負荷が高まり、応答性能が低下する恐れがある。スケールアップやスケールアウトで対応する場合も、その費用をアプリケーションが一律に負担する必要がある。また、クラウド上の集中処理では通信遅延が生じるため、通信遅延を許容できないアプリケーションの要求を満たせない場合がある。
 クラウドへの負荷集中を軽減し、また通信遅延を解消するために、エッジシステムを用いることも想定される。しかしながら、エッジシステムの計算リソース及び記憶容量は限られている。このため、エッジシステムの限られた計算リソース及び記憶容量でアプリケーションからのクエリに的確に応答する必要がある。
 本発明は、このような事情に鑑みたものである。より具体的には、水平統合型IoTプラットフォームにおいて、エッジシステムがアプリケーションからのクエリに的確に応答できるようにすることを主な目的とする。
 本発明に係るエッジシステムは、
 水平統合型IoT(Internet of Things)プラットフォームに対応したエッジシステムであって、
 セマンティックエンジンと、
 前記セマンティックエンジンの検索の深度に対する要求である応答深度を取得する深度取得部と、
 前記セマンティックエンジンの検索の深度が前記応答深度に達するまで、前記セマンティックエンジンに検索を繰り返させる検索制御部とを有する。
 本発明に係るエッジシステムは、セマンティックエンジンの検索の深度が応答深度に達するまで、セマンティックエンジンに検索を繰り返させる。このため、エッジシステムがアプリケーションからのクエリに的確に応答することができる。
実施の形態1に係るIoTシステムの構成例を示す図。 実施の形態1に係るエッジシステムの機能構成例を示す図。 実施の形態1に係るエッジシステムの動作例を示すフローチャート。 実施の形態1に係る応答深度判定処理の詳細を示すフローチャート。 実施の形態2に係るIoTシステムの構成例を示す図。 実施の形態2に係るエッジシステム(主系)、エッジシステム(従系)及びネットワークストレージの機能構成例を示す図。 実施の形態2に係るエッジシステム(主系)の動作例を示すフローチャート。 実施の形態2に係るセマンティックエンジン選択処理の詳細を示すフローチャート。 実施の形態2に係るエッジシステム(従系)の動作例を示すフローチャート。 実施の形態3に係るエッジシステムとクラウドシステムの機能構成例を示す図。 実施の形態4に係るエッジシステムの機能構成例を示す図。 実施の形態4に係るエッジシステムの動作例を示すフローチャート。 実施の形態4に係る関連性判定処理(クエリ)の詳細を示すフローチャート。 実施の形態4に係る関連性判定処理(実行結果)の詳細を示すフローチャート。 実施の形態5に係るエッジシステムの機能構成例を示す図。 実施の形態5に係るエッジシステムの動作例を示すフローチャート。 実施の形態5に係る結果拡張処理の詳細を示すフローチャート。 実施の形態6に係るエッジシステムとクラウドシステムの機能構成例を示す図。 実施の形態6に係るエッジシステムの動作例を示すフローチャート。 実施の形態6に係るクラウドシステムの動作例を示すフローチャート。 実施の形態7に係るエッジシステムの機能構成例を示す図。 実施の形態7に係るLinked Dataの例を示す図。 実施の形態1に係る深度特定表を示す図。 実施の形態2に係るエンドポイント特定表を示す図。
 以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分又は相当する部分を示す。
 実施の形態1.
***構成の説明***
 図1は、本実施の形態に係るIoTシステム1の構成例を示す。
 本実施の形態では、クラウドシステム11がインターネット13に接続されている。また、複数のエッジシステム10がインターネット13とイントラネット14に接続されている。また、複数のセンサー12がイントラネット14に接続されている。
 本実施の形態では、クラウドシステム11に代わって、各エッジシステム10がアプリケーションからのセマンティックなクエリへの応答を行う。各エッジシステム10の計算リソース及び記憶容量はクラウドシステム11の計算リソース及び記憶容量よりも少ない。しかしながら、以下に示す処理によりエッジシステム10はアプリケーションからのセマンティックなクエリに的確に応答することができる。この結果、クラウドシステム11への負荷集中を軽減し、また通信遅延を解消することができる。
 なお、エッジシステム10で行われ動作は、情報処理方法及び情報処理プログラムに相当する。
 図2は、エッジシステム10の機能構成例を示す。
 エッジシステム10は、センサー12が計測したデータ、あるいは、センサー12が統計処理等を行った処理済みのデータを、イントラネット14を経由して収集する。また、エッジシステム10は、必要に応じてクラウドシステム11にインターネット13経由でアクセスし、データをクラウドシステム11に蓄積する。また、エッジシステム10は、クラウドシステム11に処理の一部を依頼することもできる。
 以降、センサー12が計測したデータ、あるいは、センサー12が統計処理等を行った処理済みのデータを合わせて、計測データと呼ぶ。
 エッジシステム10は、ハードウェアとして、通信装置900、プロセッサ901及び記憶装置902を有するコンピュータである。
 また、エッジシステム10は、機能構成として、通信部100、データ収集部101、データレイク102、アプリケーション103、応答深度制御部104、セマンティックエンジン105及びオントロジー106を有する。
 通信部100は、センサー12からの計測データを受信する。
 データ収集部101は、収集時刻等のメタデータを計測データに付与する。また、データ収集部101は、必要であれば、計測データに対して統計処理又は正規化を実施する。そして、データ収集部101は、通信部100が受信した計測データ(もしくは統計処理又は正規化の後の計測データ)をデータレイク102に保存する。
 アプリケーション103は、クエリと応答深度が含まれるアプリケーションメタデータを応答深度制御部104へ出力する。
 ここで、応答深度とは、アプリケーションが要求する結果を得るためのパラメータである。つまり、応答深度は、セマンティックエンジン105の検索の深度(以下、実行深度ともいう)に対する要求である。例えば、実行深度は、セマンティックエンジン105を実行する回数(再帰回数)である。つまり、アプリケーション103は、再帰回数に対する要求を応答深度として指定することができる。また、実行深度は、オントロジーの親子関係の深さ(オントロジーが木構造の場合は、ノードから根ノードまでのエッジ数)であってもよい。親子関係の深さは、例えば、図23に示す深度特定表1000に規定される抽象度で表される。つまり、アプリケーション103は、図23に示す抽象度のレベル(1、2、3等)に対する要求を応答深度として指定することができる。
 応答深度制御部104は、クエリと応答深度が含まれるアプリケーションメタデータを取得する。
 また、応答深度制御部104は、セマンティックエンジン105に検索を依頼する。また、応答深度制御部104は、セマンティックエンジン105の検索の深度が応答深度に達するまで、セマンティックエンジン105に検索を繰り返させる。例えば、応答深度制御部104は、セマンティックエンジン105を実行する回数の調整を行う。
 応答深度制御部104は、深度取得部及び検索制御部に相当する。また、応答深度制御部104で行われる処理は、深度取得処理及び検索制御処理に相当する。
 セマンティックエンジン105は、具体的には、機械学習又は/及びRDF(Resource Description Framework)を用いた推論器等である。セマンティックエンジン105は、機械学習及びRDFの一部のみを用いてもよい。また、セマンティックエンジン105は、機械学習及びRDFを並列的又は直列的に使用してもよい。
 データ収集部101、アプリケーション103、応答深度制御部104及びセマンティックエンジン105は、プログラムにより実現される。データ収集部101、アプリケーション103、応答深度制御部104及びセマンティックエンジン105を実現するプログラムはプロセッサ901により実行される。
 また、データ収集部101、応答深度制御部104及びセマンティックエンジン105は専用のハードウェアによって実現されてもよい。
 図1では、データ収集部101、アプリケーション103、応答深度制御部104及びセマンティックエンジン105がプログラムにより実現され、プロセッサ901がプログラムを実行する例を示す。
 通信部100は、通信装置900で実現される。
 データレイク102及びオントロジー106は、記憶装置902(メモリ、補助記憶装置を含む)内に設けられる。なお、データレイク102及びオントロジー106を専用のハードウェアで実現してもよい。
***動作の説明***
 図3は、本実施の形態に係るエッジシステム10の動作例を示す。
 先ず、応答深度制御部104が、アプリケーション103からクエリ及び応答深度が含まれるアプリケーションメタデータを取得する(ステップS01)。
 次に、応答深度制御部104は、機械学習に必要な計測データ及び推論器に必要なLinked Dataを入力データとしてデータレイク102及びオントロジー106から取得する(ステップS02)。
 そして、応答深度制御部104は入力データをセマンティックエンジン105に出力する。
 次に、セマンティックエンジン105がアプリケーションメタデータに含まれるクエリに従って検索を行う(ステップS03)。
 なお、セマンティックエンジン105は、アプリケーションメタデータとデータレイク102に保存している計測データのメタデータとを用いて検索を行ってもよい。具体的には、セマンティックエンジン105は、期間、センサーの設置場所等でデータを絞り込むことができる。また、セマンティックエンジン105は、前回の実行結果を用いて再帰的に検索を行うことも可能である。
 セマンティックエンジン105内でRDFを使用する場合は、Linked Dataのロード負荷の低減のために、エッジシステム10の起動時に応答深度制御部104がLinked Dataを予め読み込むようにしてもよい。
 セマンティックエンジン105の実行後に、応答深度制御部104が、応答深度判定処理を行う(ステップS04)。つまり、応答深度制御部104は、セマンティックエンジン105の検索の深度(再帰回数、抽象度)が応答深度に達しているか否かを判定する。応答深度判定処理の結果、処理を続行する場合(ステップS05でYES)は、入力データ取得(S02)以降の処理が繰り返される。一方、処理を続行しない場合(ステップS05でNO)は、応答深度制御部104は、セマンティックエンジン105の実行結果をアプリケーション103に返却する(ステップS06)。
 図4は、応答深度判定処理(図3のステップS04)の詳細を示す。
 応答深度制御部104は、アプリケーションメタデータからアプリケーションが要求する応答深度を取得する(ステップS601)。
 次に、応答深度制御部104は、セマンティックエンジン105の実行結果又はオントロジーの親子関係の深さから実行深度を特定する(ステップS602)。
 前述したように、実行深度は、例えば、セマンティックエンジン105の再帰回数又は図23に例示する抽象度である。
 実行深度が応答深度より小さい場合(ステップS603でYES)は、応答深度制御部104は、セマンティックエンジン105の処理続行を決定する(ステップS604)。
 実行深度が応答深度以上である場合(ステップS603でNO)は、応答深度制御部104は、セマンティックエンジン105の処理を終了することを決定する(ステップS605)。
 なお、セマンティックエンジン105の実行結果が複数であっても、応答深度判定処理(図3のステップS04)はそれぞれの実行結果に対して独立に実施される。
***実施の形態の効果の説明***
 このように、本実施の形態では、応答深度制御部104は、セマンティックエンジン105の実行深度が応答深度に達するまで、セマンティックエンジン105に検索を繰り返させる。このため、計算リソース及び記憶容量が限られているエッジシステム10であっても、クラウドシステム11と同様に、アプリケーション103からのクエリに的確に応答することができる。つまり、本実施の形態では、アプリケーション103の要求に応じた、任意の応答深度(抽象度)で応答を行うことができる。
 また、本実施の形態では、イントラネット14上のエッジシステム10でIoTシステムの大部分の機能が動作する。このため、本実施の形態によれば、インターネット13が利用できないなどの理由でクラウドシステム11が使用不可能な状況においてもIoTシステムの機能をアプリケーション103へ提供することができる(可用性の向上)。
 また、本実施の形態では、アプリケーション103ごとに専用のIoTシステムを構築する必要がない(コストの低減、開発の効率化)。
 なお、本実施の形態では、再帰回数又は抽象度で判定しているが、再帰実行の過程で得られた結果の総数で再帰処理の終了条件を判定してもよい。更には、実施の形態7で述べるスコアリング結果の上位n番(nは自然数)が得られたか否かで再帰処理の終了条件を判定してもよい。なお、アプリケーションメタデータには、いずれの再帰処理の終了条件が用いられるかが記載されるものとする。
 実施の形態2.
 本実施の形態では、エッジシステムのスケールアウト又はスケールダウンを可能にする構成を説明する。
 本実施の形態では、主に実施の形態1との差異を説明する。
 なお、以下で説明していない事項は、実施の形態1と同様である。
***構成の説明***
 図5は、本実施の形態に係るIoTシステム1の構成例を示す。
 図5では、実現が容易なマスタースレーブモデルが採用されている。
 本実施の形態では、イントラネット14上に、ネットワークストレージ15及びエッジシステム(従系)16が新たに配置される。また、本実施の形態では、エッジシステム(主系)と表記する。
 ネットワークストレージ15は必ずしも必要ではない。しかし、エッジシステム(主系)10及びエッジシステム(従系)16が共通して使用する計測データをネットワークストレージ15に格納しておくことで、計測データの管理が容易になる。
 なお、エッジシステム(従系)16は、複数あってもよい。
 図6は、ネットワークストレージ15、エッジシステム(主系)10、エッジシステム(従系)16の機能構成例を示す。
 本実施の形態では、実施の形態1で説明したデータ収集部101及びデータレイク102が、エッジシステム(主系)10ではなく、ネットワークストレージ15に配置される。一方、エッジシステム(主系)10には、セマンティックエンジン選択部107が追加される。
 セマンティックエンジン選択部107は、アプリケーションのクエリあるいは再帰実行時のクエリのドメインに応じて、セマンティックエンジンを選択する。より具体的には、セマンティックエンジン選択部107は、エッジシステム(主系)10に含まれるセマンティックエンジン105とエッジシステム(従系)16に含まれるセマンティックエンジン401から、検索を行わせるセマンティックエンジンを選択する。そして、セマンティックエンジン選択部107は、選択したセマンティックエンジンに検索を行わせる。
 セマンティックエンジン選択部107は、例えば、図24に示すエンドポイント特定表2000に基づき、エッジシステム(主系)10のセマンティックエンジン105とエッジシステム(従系)16のセマンティックエンジン401のいずれかを選択する。図24では、クエリのドメイン(検索の種類)ごとに選択すべきセマンティックエンジンのエンドポイントURI(Uniform Resource Identifier)が定義されている。セマンティックエンジン選択部107は、アプリケーション103からのクエリのドメインに対応するセマンティックエンジンを、図24のエンドポイント特定表2000を参照して選択する。なお、図24のエンドポイント特定表2000は、選択基準情報に相当する。
 セマンティックエンジン選択部107は、例えば、プログラムにより実現され、プロセッサ901により実行される。また、セマンティックエンジン選択部107は専用のハードウェアで実現されてもよい。
 ネットワークストレージ15において、データ収集部101がイントラネット14及び通信部300を介してセンサー12の計測データを収集する。データ収集部101は、収集した計測データを、実施の形態1と同様にデータレイク102に格納する。
 データ取得部301は、エッジシステム(主系)10又はエッジシステム(従系)16の要求に応じて、データレイク102からデータを取り出す。また、データ取得部301は、取り出したデータをエッジシステム(主系)10又はエッジシステム(従系)16に送信する。
 データ収集部101及びデータ取得部301は、プログラムにより実現される。データ収集部101及びデータ取得部301を実現するプログラムはプロセッサ701により実行される。
 また、データ収集部101及びデータ取得部301は専用のハードウェアによって実現されてもよい。
 図6では、データ収集部101及びデータ取得部301がプログラムにより実現され、プロセッサ701がプログラムを実行する例を示す。
 通信部300は、通信装置700で実現される。
 データレイク102は、記憶装置702(メモリ、補助記憶装置を含む)内に設けられる。なお、データレイク102を専用のハードウェアで実現してもよい。
 エッジシステム(従系)16は、エッジシステム(主系)10からのクエリに基づき、セマンティックエンジン401を実行する。そして、エッジシステム(従系)16は、セマンティックエンジン401の実行結果をエッジシステム(主系)10に返却する。また、エッジシステム(従系)16は、必要に応じ、セマンティックエンジン401の実行に必要な入力データを、ネットワークストレージ15又はオントロジー402から取得する。
 通信部400は、通信装置600で実現される。
 セマンティックエンジン401は、プロセッサ601により実行される。セマンティックエンジン401は、専用のハードウェアによって実現されてもよい。
 図6では、セマンティックエンジン401がプロセッサ601により実行される例を示す。
 オントロジー402は、記憶装置602(メモリ、補助記憶装置を含む)内に設けられる。なお、オントロジー402を専用のハードウェアで実現してもよい。
***動作の説明***
 図7は、本実施の形態に係るエッジシステム(主系)10の動作例を示す。
 以下では、実施の形態1との差分のみ説明する。
 ステップS01は、実施の形態1と同様であるため、説明を省略する。
 次に、セマンティックエンジン選択部107が、セマンティックエンジンを選択する(ステップS07)。
 セマンティックエンジン選択部107が、エッジシステム(主系)10内のセマンティックエンジン105(セマンティックエンジン105のエンドポイントURI)を選択した場合(ステップS08でYES)は、実施の形態1と同様の処理が行われる(ステップS02~S06)。
 一方、セマンティックエンジン選択部107がエッジシステム(従系)16のセマンティックエンジン401(セマンティックエンジン401のエンドポイントURI)を選択した場合(ステップS08でNO)は、セマンティックエンジン選択部107は、エッジシステム(従系)16のエンドポイントURIに対してクエリを発行する(ステップS09)。そして、セマンティックエンジン選択部107は、エッジシステム(従系)16から実行結果を取得する。
 なお、図7に図示はしていないが、セマンティックエンジン選択部107がセマンティックエンジンのエンドポイントURIを特定できない場合は、セマンティックエンジン選択部107は、そのクエリを実行せずスキップする。または、セマンティックエンジン選択部107は、アプリケーション103にエラー通知を返却する。
 セマンティックエンジンの実行結果を取得した後の処理は、実施の形態1と同様である(ステップS04~S06)。
 図8は、図7のセマンティックエンジン選択処理(ステップS07)の詳細を示す。
 セマンティックエンジン選択部107は、アプリケーションメタデータ、あるいは、セマンティックエンジンの実行結果から今回実行するクエリを生成する。そして、セマンティックエンジン選択部107は、そのクエリのドメインを特定する(ステップS701)。
 次に、セマンティックエンジン選択部107は、図24のエンドポイント特定表2000において、特定したクエリのドメインに対応するセマンティックエンジンのエンドポイントURIを特定する(ステップS702)。
 図9は、エッジシステム(従系)16の動作例を示す。
 より具体的には、図9は、図7のステップS09で発行されたクエリに対する処理手順を示す。
 先ず、セマンティックエンジン401が、通信部400を介して、エッジシステム(主系)10からクエリを受信する(S901)。
 次に、セマンティックエンジン401は、必要な入力データを取得する(ステップS902)。
 計測データが必要な場合は、セマンティックエンジン401は、ネットワークストレージ15のデータ取得部301に問合せ、計測データを得る。また、RDF実行のためのLinked Dataが必要な場合は、セマンティックエンジン401は、オントロジー402からLinked Dataをロードする。
 そして、セマンティックエンジン401は、入力データを用いて検索を実行する(ステップS903)。
 そして、セマンティックエンジン401は、実行結果を通信部400を介してエッジシステム(主系)10に返却する(ステップS904)。
 なお、スケールアウト時は、エッジシステム(従系)16と同等なエッジシステム(従系)がイントラネット14上に追加される。その後、セマンティックエンジン選択部107が、エンドポイント特定表2000に、新たに追加されたエッジシステム(従系)が担当するクエリのドメインと、エンドポイントURIとを追記する。
 一方、スケールダウン時は、イントラネット14上から削除対象のエッジシステム(従系)が除外される。セマンティックエンジン選択部107は、エンドポイント特定表2000から、除外したエッジシステム(従系)が担当するクエリのドメインと、エンドポイントURIとを削除する。
 なお、本実施の形態では、マスタースレーブモデル型を例にして説明を行った。しかし、ピュアP2Pのような、エッジシステムの機能が対称であるようなサーバントを使用したモデルを用いてもよい。
 また、本実施の形態では、イントラネット14に配置されたエッジシステム(従系)16を用いる例を説明した。代わりに、インターネット13にエッジシステム(従系)16を配置し、インターネット13に配置されたエッジシステム(従系)16を用いるようにしてもよい。
***実施の形態の効果の説明***
 以上、本実施の形態によれば、スケールアウト及びスケールダウンが容易である。つまり、本実施の形態によれば、容易に処理能力を増強することができ、また、容易に処理能力を削減することができる。
 また、本実施の形態によれば、同じ機能を持つエッジシステム(従系)を複数台用意することで、冗長化が可能となり、可用性が向上する。
 実施の形態3.
 本実施の形態では、クラウドシステムのセマンティックエンジンを選択する構成を説明する。
 本実施の形態では、主に実施の形態2との差異を説明する。
 なお、以下で説明していない事項は、実施の形態2と同様である。
***構成の説明***
 図10は、本実施の形態に係るエッジシステム10とクラウドシステム11の機能構成例を示す。
 エッジシステム10の機能構成は、実施の形態1と同様である。
 クラウドシステム11において、データ収集部203は、エッジシステム10からセンサー12の計測データを収集する。そして、データ収集部203は、収集した計測データをデータレイク204に格納する。
 エッジシステム10は、クラウドシステム11に送信する計測データを選択することができる。また、エッジシステム10は、クラウドシステム11に送信する計測データを統計値にする等により匿名化してもよい。
 データ収集部203及びセマンティックエンジン205は、プロセッサ801により実行される。
 また、データ収集部203及びセマンティックエンジン205は、専用のハードウェアで実行されてもよい。
 図10では、データ収集部203及びセマンティックエンジン205がプロセッサ801により実行される例を示す。
 通信部200は、通信装置800で実現される。
 データレイク204及びオントロジー202は、記憶装置802(メモリ、補助記憶装置を含む)内に設けられる。データレイク204及びオントロジー202を専用のハードウェアで実現してもよい。
***動作の説明***
 本実施の形態に係るエッジシステム10の処理は、実施の形態2のエッジシステム(主系)10とほぼ同様であるので、差分のみ説明する。
 セマンティックエンジン選択部107は、クラウドシステム11のセマンティックエンジン205を利用するために、図24のエンドポイント特定表2000にセマンティックエンジン205が担当するクエリのドメインと、エンドポイントURIとを追記する。
 そして、セマンティックエンジン選択部107は、エンドポイント特定表2000に基づき、エッジシステム10のセマンティックエンジン105とクラウドシステム11のセマンティックエンジン205のいずれかを選択する。
 クラウドシステム11では、セマンティックエンジン205が、エッジシステム10からクエリを受信すると、検索の実行に必要な入力データを取得する。
 計測データが必要な場合は、セマンティックエンジン205は、データレイク204から計測データを得る。
 RDF実行のためのLinked Dataが必要な場合は、セマンティックエンジン205は、オントロジー202からLinked Dataをロードする。
 そして、セマンティックエンジン205は、入力データを用いて検索を実行する。
 そして、セマンティックエンジン205は、実行結果を通信部200を介してエッジシステム10に返却する。
***実施の形態の効果の説明***
 本実施の形態によれば、セマンティックエンジンの検索処理の一部をリソースが豊富なクラウドシステムに担当させることで、アプリケーションへの応答バリエーションを拡充することができる。
 また、本実施の形態によれば、アプリケーションの要求に応じ、クラウドシステムの使用有無を判断できるため、クラウドシステムへの負荷集中を回避できる。
 実施の形態4.
 本実施の形態では、セマンティックエンジンの実行結果から、アプリケーションからのクエリと関連性が低い結果を除去し、実行結果の精度を向上させる構成を説明する。
 本実施の形態では、主に実施の形態1との差異を説明する。
 なお、以下で説明していない事項は、実施の形態1と同様である。
***構成の説明***
 図11は、本実施の形態に係るエッジシステム10の機能構成例である。
 実施の形態1との差分のみ説明する。
 図11では、関連性判定部108がセマンティックエンジン105と応答深度制御部104との間に追加されている。
 関連性判定部108は、応答深度制御部104からセマンティックエンジン105へのクエリを取得する。そして、関連性判定部108は、取得したクエリに対するセマンティックエンジン105の実行結果を予測する。そして、関連性判定部108は、予測した実行結果がアプリケーション103が求める実行結果に合致するか否かを判定する。関連性判定部108は、予測した実行結果がアプリケーション103が求める実行結果に合致しない場合に、当該クエリを破棄する。
 また、関連性判定部108は、セマンティックエンジン105の実行結果を取得する。アプリケーション103からのクエリとセマンティックエンジン105の実行結果とを比較する。そして、関連性判定部108は、セマンティックエンジン105の実行結果にクエリに合致しない実行結果が存在するか否かを判定する。セマンティックエンジン105の実行結果にクエリに合致しない実行結果が存在する場合に、関連性判定部108は、クエリに合致しない実行結果を破棄する。
 関連性判定部108は、クエリ破棄部及び結果破棄部に相当する。
***動作の説明***
 図12は、本実施の形態に係るエッジシステム10の動作例を示す。
 なお、以下では、実施の形態1との差分のみ説明する。
 ステップS01は、実施の形態1と同様であるため、説明を省略する。
 次に、関連性判定部108が、セマンティックエンジン105へのクエリの関連性判定を実施する(ステップS10)。
 つまり、関連性判定部108は、クエリに対するセマンティックエンジン105の実行結果を予測し、予測した実行結果がアプリケーション103が求める実行結果に合致しない場合に、当該クエリを破棄する。
 ステップS02及びステップS03は、実施の形態1と同様であるため、説明を省略する。
 次に、関連性判定部108が、セマンティックエンジン105の実行結果の関連性判定を実施する(ステップS11)。
 つまり、関連性判定部108は、セマンティックエンジン105の実行結果にクエリに合致しない実行結果が存在する場合に、クエリに合致しない実行結果を破棄する。
 図13は、関連性判定処理(クエリ)(図12のステップS10)の詳細を示す。
 関連性判定部108は、応答深度制御部104からアプリケーションメタデータを取得する(ステップS1001)。
 次に、関連性判定部108は、セマンティックエンジン105が出力する全ての答えの集合(出力集合)とアプリケーションメタデータとの類似度を算出する(ステップS1002)。
 すなわち、関連性判定部108は、セマンティックエンジン105が出力する全ての答えを予測する。次に、関連性判定部108は、予測した全ての答えの各々とアプリケーションメタデータとの類似度を算出する。
 関連性判定部108は、例えば、次のように類似度を算出する。
 ここでは、アプリケーションメタデータにクエリとして「室内における行動」が含まれていると考える。セマンティックエンジンの出力集合として、「(室内の)廊下を渡る」、「(外で)散歩している」及び「階段を上る」が得られたとする。関連性判定部108は、類似度として、ユークリッド距離、相関関数、尤度関数等を用いる。ここでは、関連性判定部108が尤度関数を利用するものとする。
 尤度関数Lは次のように定義される。
 P(A|B=b)をB=bが発生した場合にAが起きる条件付き確率とすると、L(b|A)=∝P(A|B=b)と表す(∝は比例記号)。
 「(室内の)廊下を渡る」の類似度は、L(室内における行動|(室内の)廊下を渡る)>0となる。即ち、「(室内の)廊下を渡る」という事象は、室内における行動として尤もらしい。
 同様に、L(室内における行動|(外で)散歩している)=0、L(室内における行動|階段を上る)=1/2となる。「階段を上る」事象は、屋内でも屋外でも発生し得るため、1/2となる。
 次に、関連性判定部108は、全ての出力集合に対して、類似度と閾値とを比較する(ステップS1003)。
 類似度が閾値以上の出力がひとつでも存在する場合(ステップS1003でYES)は、関連性判定部108は、クエリをセマンティックエンジン105へ出力する(ステップS1004)。
 一方、出力集合の類似度がすべて閾値より小さい場合(ステップS1003でNO)は、関連性判定部108は、クエリをセマンティックエンジン105へ出力せず、クエリを除外する(ステップS1005)。この時、関連性判定部108は、応答深度制御部104へ、有効な応答が存在しない旨を通知する。
 図14は、関連性判定処理(実行結果)(図12のステップS11)の詳細を示す。
 関連性判定部108は、応答深度制御部104からアプリケーションメタデータを取得する(ステップS1101)。
 次に、関連性判定部108は、セマンティックエンジン105の実行結果とアプリケーションメタデータとの類似度を算出する(ステップS1102)。
 関連性判定部108は、図13のステップS1002の算出方法と同様の算出方法で類似度を算出する。
 次に、関連性判定部108は、全ての実行結果に対して、類似度と閾値とを比較する(ステップS1103)。
 類似度が閾値より小さい場合(ステップS1103でNO)は、関連性判定部108は、対応するセマンティクエンジン実行結果を除外する(ステップS1104)。
 一方、類似度が閾値以上であれば(ステップS1103でYES)、関連性判定部108は、応答深度制御部104に実行結果を出力する。
***実施の形態の効果の説明***
 本実施の形態によれば、不要な再帰処理を抑制することで、消費リソースを低減することができる。
 また、本実施の形態によれば、アプリケーションへの応答に、ノイズが少なくなる。
 実施の形態5.
 本実施の形態では、セマンティックエンジンの実行結果をシソーラス(類語、関連語、連想語)によって拡張する構成を説明する。セマンティックエンジンが、拡張された実行結果を用いて再帰的に検索を実行することで、実行結果のバリエーションを増加させることができる。
 本実施の形態では、主に実施の形態1との差異を説明する。
 なお、以下で説明していない事項は、実施の形態1と同様である。
***構成の説明***
 図15は、本実施の形態に係るエッジシステム10の機能構成例を示す。
 実施の形態1との差分のみ説明する。
 図15では、結果拡張部109がセマンティックエンジン105と応答深度制御部104との間に追加されている。
 結果拡張部109は、セマンティックエンジン105の実行結果を取得する。そして、結果拡張部109は、シソーラス110を用いてセマンティックエンジン105の実行結果を拡張する。結果拡張部109は、拡張された実行計画を応答深度制御部104に返却する。
***動作の説明***
 図16は、本実施の形態に係るエッジシステム10の動作例を示す。
 なお、以下では、実施の形態1との差分のみ説明する。
 ステップS01~S03は、実施の形態1と同様であるため、説明を省略する。
 次に、結果拡張部109が、セマンティックエンジン105の実行結果の拡張する(ステップS12)。
 この結果、再帰実行する際のセマンティックエンジン105への入力のバリエーションが増える。
 ステップS04~S06は、実施の形態1と同様であるため、説明を省略する。
 図17は、結果拡張処理(図16のステップS12)の詳細を示す。
 結果拡張部109は、セマンティックエンジン105の実行結果を取得する(ステップS1201)。
 次に、結果拡張部109は、実行結果から類推される類語、関連語、連想語などを、シソーラス110を使用して特定する(ステップS1202)。
 そして、結果拡張部109は、セマンティックエンジン105の実行結果と、ステップS1202で特定された語を応答深度制御部104に出力する。
***実施の形態の効果の説明***
 本実施の形態によれば、語の揺らぎによる推論の取りこぼしを防止することで、アプリケーションへ返答する結果の精度が向上する。
 実施の形態6.
 本実施の形態では、エッジシステムのセマンティックエンジンが使用するRDFのオントロジー(Linked Data)及び機械学習のモデルデータをクラウドシステムから取得する構成を説明する。オントロジー(Linked Data)及びモデルデータをクラウドシステムから取得することにより、動的にセマンティックエンジンの挙動を制御することができる。
 本実施の形態では、主に実施の形態1との差異を説明する。
 なお、以下で説明していない事項は、実施の形態1と同様である。
***構成の説明***
 図18は、本実施の形態に係るエッジシステム10とクラウドシステム11の機能構成例を示す。
 なお、図18では、オントロジー(Linked Data)及び機械学習のモデルデータの取得及び抽出に関する構成のみを示している。
 つまり、本実施の形態に係るエッジシステム10では、実施の形態1の構成に、オントロジー取得部111が追加されている。また、本実施の形態に係るクラウドシステム11では、実施の形態3の構成に、オントロジー抽出部201が追加されている。
 エッジシステム10において、オントロジー取得部111は、セマンティックエンジン105が用いるオントロジー(Linked Data)及び機械学習のモデルデータの少なくともいずれかをクラウドシステム11から取得する。
 クラウドシステム11において、オントロジー抽出部201は、エッジシステム10からの要求に基づき、セマンティックエンジン105が用いるオントロジー(Linked Data)及び機械学習のモデルデータの少なくともいずれかを抽出する。そして、オントロジー抽出部201は、抽出したオントロジー(Linked Data)又は/及びモデルデータをエッジシステム10に送信する。
***動作の説明***
 図19は、本実施の形態に係るエッジシステム10の動作例を示す。
 なお、以下では、オントロジー取得部111がLinked Data及びモデルデータを受信する例を説明するが、オントロジー取得部111はLinked Data及びモデルデータのいずれか一方のみを受信してもよい。また、オントロジー取得部111は、セマンティックエンジン105が用いるデータであれば、Linked Data、モデルデータ以外のデータを受信してもよい。
 先ず、オントロジー取得部111は、アプリケーションメタデータを取得する(ステップS11101)。
 次に、オントロジー取得部111は、クラウドシステム11にLinked Data及びモデルデータの取得のためのクエリを送信する(ステップS11102)。当該クエリにはアプリケーションメタデータが含まれている。
 次に、オントロジー取得部111は、クラウドシステム11からLinked Data及びモデルデータを受信し、また、受信したLinked Data及びモデルデータを、オントロジー106に格納する(ステップS11103)。
 図20は、本実施の形態に係るクラウドシステム11の動作例を示す。
 なお、以下では、オントロジー抽出部201がLinked Data及びモデルデータを抽出する例を説明するが、オントロジー抽出部201はLinked Data及びモデルデータのいずれか一方のみを抽出してもよい。また、オントロジー抽出部201は、セマンティックエンジン105が用いるデータであれば、Linked Data、モデルデータ以外のデータを抽出してもよい。
 先ず、オントロジー抽出部201が、エッジシステム10からクエリを受信し、クエリからアプリケーションメタデータを抽出する(ステップS20101)。
 次に、オントロジー抽出部201は、アプリケーションメタデータの情報を基に、オントロジー202から条件に合うLinked Data及びモデルデータを抽出する(ステップS20102)。
 具体的には、オントロジー抽出部201は、アプリケーションのドメイン(例えば、人の行動、病気の種類、機器の動作等)又は統計情報(他の類似のアプリケーションのこれまでの使用実績等)で、条件に合うLinked Data及びモデルデータを絞り込む。なお、オントロジー抽出部201は、Linked Dataを抽出する場合は、Linked Dataから不要なリンクを取り除いてもよい。その際、オントロジー抽出部201は、機械学習、統計情報等を用いて、リンクの要否を判定してもよい。
 次に、オントロジー抽出部201は、抽出したLinked Data及びモデルデータをエッジシステム10に返信する(ステップS20103)。
***実施の形態の効果の説明***
 本実施の形態によれば、エッジシステムのオントロジーを適切に更新することができる。このため、本実施の形態によれば、アプリケーションに出力する実行結果の精度を向上させることができる。
 また、本実施の形態によれば、クラウドシステムでオントロジーを一元管理することができる。このため、本実施の形態によれば、他のエッジシステム上の類似のアプリケーションに知識を転用することができる。この結果、他のエッジシステムの稼働の初期からセマンティックエンジンの実行結果の精度を向上させることができる。
 実施の形態7.
 本実施の形態では、セマンティックエンジンの実行結果に優先順位を設定する構成を説明する。この結果、アプリケーションは、実行結果における重要度を認識することができる。
 本実施の形態では、主に実施の形態1との差異を説明する。
 なお、以下で説明していない事項は、実施の形態1と同様である。
***構成の説明***
 図21は、本実施の形態に係るエッジシステム10の機能構成例を示す。
 実施の形態1との差分のみ説明する。
 図21では、スコアリング部112が応答深度制御部104とアプリケーション103との間に追加されている。
 スコアリング部112は、セマンティックエンジン105の実行結果に優先順位を設定する。より具体的には、スコアリング部112は、セマンティックエンジン105の推論過程に基づき、セマンティックエンジン105の実行結果に優先順位を設定する。
 なお、図21では、スコアリング部112を説明するために必要な構成のみを図示している。
***動作の説明***
 次に、スコアリング部112の動作を説明する。
 図22は、セマンティックエンジン105のRDFで使用するLinked Dataの例である。
 Linked Data3000は、主語及び目的語の少なくともいずれかであるノード3001、3003、3004、3005、3006、3007と、ノードを結ぶ述語3002の有向グラフで構成される。
 セマンティックエンジン105の1回目の実行において、計測データから機械学習によりノード3001が推論され、さらにRDFによりノード3003、3004が推論されたとする。セマンティックエンジン105の2回目の実行において、ノード3005、3006、3007が推論されたとする。スコアリング部112は、ノードごとに、推論時にどのノードの通過があったかを記録する。図22の例では、ノード3001、3003、3004、3006、3007の各々は1回の通過、ノード3005は2回の通過が記録される。
 スコアリング部112は、通過回数をスコアとして扱う。そして、スコアリング部112は、スコアの高い順にセマンティックエンジン105の実行結果に優先順位を設定する。更に、スコアリング部112は、優先順位が高い実行結果を優先してアプリケーションに提示する。上記の例では、ノード3005の優先順位が最も高い。ノード3001、3003、3004、3006、3007の優先順位は全て同じである。
***実施の形態の効果の説明***
 本実施の形態によれば、推論の過程の情報を利用して、スコアリングを実施できるので、結果の正当性を確認することができる。
 また、本実施の形態によれば、アプリケーションは、どの実行結果が重要であるかを判断しやすくなる。
***ハードウェア構成の説明***
 最後に、エッジシステム10のハードウェア構成の補足説明を行う。
 プロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。
 プロセッサ901は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
 記憶装置902は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
 通信装置900は、データの通信処理を実行する電子回路である。
 通信装置900は、例えば、通信チップ又はNIC(Network Interface Card)である。
 また、記憶装置902には、OS(Operating System)も記憶されている。
 そして、OSの少なくとも一部がプロセッサ901により実行される。
 プロセッサ901はOSの少なくとも一部を実行しながら、データ収集部101、アプリケーション103、応答深度制御部104、セマンティックエンジン105、セマンティックエンジン選択部107、関連性判定部108、結果拡張部109、オントロジー取得部111、スコアリング部112の機能を実現するプログラムを実行する。
 プロセッサ901がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
 また、データ収集部101、アプリケーション103、応答深度制御部104、セマンティックエンジン105、セマンティックエンジン選択部107、関連性判定部108、結果拡張部109、オントロジー取得部111、スコアリング部112の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、記憶装置902、プロセッサ901内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
 また、データ収集部101、アプリケーション103、応答深度制御部104、セマンティックエンジン105、セマンティックエンジン選択部107、関連性判定部108、結果拡張部109、オントロジー取得部111、スコアリング部112の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に格納されていてもよい。そして、データ収集部101、アプリケーション103、応答深度制御部104、セマンティックエンジン105、セマンティックエンジン選択部107、関連性判定部108、結果拡張部109、オントロジー取得部111、スコアリング部112の機能を実現するプログラムが格納された可搬記録媒体を商業的に流通させてもよい。
 また、データ収集部101、応答深度制御部104、セマンティックエンジン選択部107、関連性判定部108、結果拡張部109、オントロジー取得部111、スコアリング部112の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
 また、エッジシステム10は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)である。
 なお、本明細書では、プロセッサと処理回路との上位概念を、「プロセッシングサーキットリー」という。
 つまり、プロセッサと処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
 1 IoTシステム、10 エッジシステム、11 クラウドシステム、12 センサー、13 インターネット、14 イントラネット、15 ネットワークストレージ、16 エッジシステム(従系)、100 通信部、101 データ収集部、102 データレイク、103 アプリケーション、104 応答深度制御部、105 セマンティックエンジン、106 オントロジー、107 セマンティックエンジン選択部、108 関連性判定部、109 結果拡張部、110 シソーラス、111 オントロジー取得部、112 スコアリング部、200 通信部、201 オントロジー抽出部、202 オントロジー、203 データ収集部、204 データレイク、205 セマンティックエンジン、300 通信部、301 データ取得部、400 通信部、401 セマンティックエンジン、402 オントロジー、600 通信装置、601 プロセッサ、602 記憶装置、700 通信装置、701 プロセッサ、702 記憶装置、800 通信装置、801 プロセッサ、802 記憶装置、900 通信装置、901 プロセッサ、902 記憶装置、1000 深度特定表、2000 エンドポイント特定表。

Claims (14)

  1.  水平統合型IoT(Internet of Things)プラットフォームに対応したエッジシステムであって、
     セマンティックエンジンと、
     前記セマンティックエンジンの検索の深度に対する要求である応答深度を取得する深度取得部と、
     前記セマンティックエンジンの検索の深度が前記応答深度に達するまで、前記セマンティックエンジンに検索を繰り返させる検索制御部とを有するエッジシステム。
  2.  前記エッジシステムは、更に、
     前記セマンティックエンジンと、他のシステムに含まれるセマンティックエンジンとのいずれかを選択し、選択したセマンティックエンジンに検索を行わせるセマンティックエンジン選択部を有する請求項1に記載のエッジシステム。
  3.  前記セマンティックエンジン選択部は、
     前記セマンティックエンジンと、他のエッジシステムに搭載されるセマンティックエンジンとのいずれかを選択する請求項2に記載のエッジシステム。
  4.  前記セマンティックエンジン選択部は、
     前記セマンティックエンジンと、クラウドシステムに搭載されるセマンティックエンジンとのいずれかを選択する請求項2に記載のエッジシステム。
  5.  前記セマンティックエンジン選択部は、
     検索の種類ごとに選択すべきセマンティックエンジンが示される選択基準情報を参照し、実行対象の検索の種類に対応するセマンティックエンジンを選択する請求項2に記載のエッジシステム。
  6.  前記セマンティックエンジン選択部は、
     前記他のシステムのスケールアウト及びスケールダウンの少なくともいずれかに従い、前記選択基準情報を更新する請求項5に記載のエッジシステム。
  7.  前記エッジシステムは、更に、
     前記セマンティックエンジンへのクエリを取得し、前記クエリに対する前記セマンティックエンジンの実行結果を予測し、予測した実行結果が前記クエリの発行元が求める実行結果に合致するか否かを判定し、予測した実行結果が前記クエリの発行元が求める実行結果に合致しない場合に、前記クエリを破棄するクエリ破棄部を有する請求項1に記載のエッジシステム。
  8.  前記エッジシステムは、更に、
     前記セマンティックエンジンへのクエリと前記セマンティックエンジンの実行結果とを取得し、前記クエリと前記セマンティックエンジンの実行結果とを比較し、前記セマンティックエンジンの実行結果に前記クエリに合致しない実行結果が存在するか否かを判定し、前記セマンティックエンジンの実行結果に前記クエリに合致しない実行結果が存在する場合に、前記クエリに合致しない実行結果を破棄する結果破棄部を有する請求項1に記載のエッジシステム。
  9.  前記エッジシステムは、更に、
     前記セマンティックエンジンの実行結果を取得し、シソーラスを用いて前記セマンティックエンジンの実行結果を拡張する結果拡張部を有する請求項1に記載のエッジシステム。
  10.  前記エッジシステムは、更に、
     前記セマンティックエンジンが用いるデータを取得するオントロジー取得部を有する請求項1に記載のエッジシステム。
  11.  前記エッジシステムは、更に、
     前記セマンティックエンジンの実行結果に優先順位を設定するスコアリング部を有する請求項1に記載のエッジシステム。
  12.  前記スコアリング部は、
     前記セマンティックエンジンの推論過程に基づき、前記セマンティックエンジンの実行結果に優先順位を設定する請求項11に記載のエッジシステム。
  13.  セマンティックエンジンを有するコンピュータである、水平統合型IoT(Internet of Things)プラットフォームに対応したエッジシステムが、
     前記セマンティックエンジンの検索の深度に対する要求である応答深度を取得し、
     前記セマンティックエンジンの検索の深度が前記応答深度に達するまで、前記セマンティックエンジンに検索を繰り返させる情報処理方法。
  14.  セマンティックエンジンを有するコンピュータである、水平統合型IoT(Internet of Things)プラットフォームに対応したエッジシステムに、
     前記セマンティックエンジンの検索の深度に対する要求である応答深度を取得する深度取得処理と、
     前記セマンティックエンジンの検索の深度が前記応答深度に達するまで、前記セマンティックエンジンに検索を繰り返させる検索制御処理とを実行させる情報処理プログラム。
PCT/JP2018/048071 2018-12-27 2018-12-27 エッジシステム、情報処理方法及び情報処理プログラム WO2020136790A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020217018319A KR102310391B1 (ko) 2018-12-27 2018-12-27 에지 시스템, 정보 처리 방법 및 기록 매체에 저장된 정보 처리 프로그램
CN201880100420.3A CN113316774A (zh) 2018-12-27 2018-12-27 边缘系统、信息处理方法以及信息处理程序
JP2019533134A JP6615420B1 (ja) 2018-12-27 2018-12-27 エッジシステム、情報処理方法及び情報処理プログラム
DE112018008165.6T DE112018008165T5 (de) 2018-12-27 2018-12-27 Edge-system, informationsverarbeitungsverfahren und informationsverarbeitungsprogramm
PCT/JP2018/048071 WO2020136790A1 (ja) 2018-12-27 2018-12-27 エッジシステム、情報処理方法及び情報処理プログラム
US17/308,591 US20210256073A1 (en) 2018-12-27 2021-05-05 Edge system, information processing method and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/048071 WO2020136790A1 (ja) 2018-12-27 2018-12-27 エッジシステム、情報処理方法及び情報処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/308,591 Continuation US20210256073A1 (en) 2018-12-27 2021-05-05 Edge system, information processing method and computer readable medium

Publications (1)

Publication Number Publication Date
WO2020136790A1 true WO2020136790A1 (ja) 2020-07-02

Family

ID=68763446

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/048071 WO2020136790A1 (ja) 2018-12-27 2018-12-27 エッジシステム、情報処理方法及び情報処理プログラム

Country Status (6)

Country Link
US (1) US20210256073A1 (ja)
JP (1) JP6615420B1 (ja)
KR (1) KR102310391B1 (ja)
CN (1) CN113316774A (ja)
DE (1) DE112018008165T5 (ja)
WO (1) WO2020136790A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022157873A1 (ja) * 2021-01-21 2022-07-28 三菱電機株式会社 情報処理装置、情報処理方法及び情報処理プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113791840A (zh) * 2021-09-10 2021-12-14 中国第一汽车股份有限公司 一种管理系统、管理方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014056372A (ja) * 2012-09-12 2014-03-27 Dainippon Printing Co Ltd 電子チラシ閲覧システム
JP2015046178A (ja) * 2009-11-10 2015-03-12 プライマル フュージョン インコーポレイテッド インターラクティブグラフィカルインタフェースを用いてデータ構造を生成及び操作するシステム、方法、及びコンピュータプログラム
JP2018532208A (ja) * 2015-10-30 2018-11-01 コンヴィーダ ワイヤレス, エルエルシー セマンティックiotのためのrestful動作

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065319B2 (en) * 2007-04-01 2011-11-22 Nec Laboratories America, Inc. Runtime semantic query optimization for event stream processing
US8402018B2 (en) 2010-02-12 2013-03-19 Korea Advanced Institute Of Science And Technology Semantic search system using semantic ranking scheme
WO2016109521A1 (en) 2014-12-30 2016-07-07 Convida Wireless, Llc Semantics annotation and semantics repository for m2m systems
US11593671B2 (en) * 2016-09-02 2023-02-28 Hithink Financial Services Inc. Systems and methods for semantic analysis based on knowledge graph
JP6406335B2 (ja) 2016-11-14 2018-10-17 オムロン株式会社 マッチング装置、マッチング方法及びプログラム
US11188568B2 (en) * 2016-11-14 2021-11-30 Nec Corporation Prediction model generation system, method, and program
JP2018206206A (ja) * 2017-06-07 2018-12-27 株式会社東芝 データベース管理装置、データベース管理システム、およびデータベース管理方法
US10845937B2 (en) * 2018-01-11 2020-11-24 International Business Machines Corporation Semantic representation and realization for conversational systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015046178A (ja) * 2009-11-10 2015-03-12 プライマル フュージョン インコーポレイテッド インターラクティブグラフィカルインタフェースを用いてデータ構造を生成及び操作するシステム、方法、及びコンピュータプログラム
JP2014056372A (ja) * 2012-09-12 2014-03-27 Dainippon Printing Co Ltd 電子チラシ閲覧システム
JP2018532208A (ja) * 2015-10-30 2018-11-01 コンヴィーダ ワイヤレス, エルエルシー セマンティックiotのためのrestful動作

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022157873A1 (ja) * 2021-01-21 2022-07-28 三菱電機株式会社 情報処理装置、情報処理方法及び情報処理プログラム
JPWO2022157873A1 (ja) * 2021-01-21 2022-07-28
JP7262688B2 (ja) 2021-01-21 2023-04-21 三菱電機株式会社 情報処理装置、情報処理方法及び情報処理プログラム

Also Published As

Publication number Publication date
CN113316774A (zh) 2021-08-27
DE112018008165T5 (de) 2021-09-16
JP6615420B1 (ja) 2019-12-04
US20210256073A1 (en) 2021-08-19
KR102310391B1 (ko) 2021-10-07
KR20210080569A (ko) 2021-06-30
JPWO2020136790A1 (ja) 2021-02-15

Similar Documents

Publication Publication Date Title
US11423082B2 (en) Methods and apparatus for subgraph matching in big data analysis
Yagoubi et al. Massively distributed time series indexing and querying
US8559731B2 (en) Personalized tag ranking
US20150142829A1 (en) System, apparatus, program and method for data aggregatione
US8909615B2 (en) System and method of managing capacity of search index partitions
US20100235390A1 (en) Search device, search method, and computer-readable recording medium storing search program
JP2018005446A (ja) 情報処理装置、ストレージ制御プログラム、及びストレージ制御方法
KR20160124742A (ko) 비정형 텍스트내의 특징들의 중의성을 해소하는 방법
JP2008250722A (ja) 文書検索システム、文書番号部分列取得装置、および文書検索方法
US20190188289A1 (en) Data management device, data management method, and non-transitory computer readable storage medium
US20140229496A1 (en) Information processing device, information processing method, and computer program product
US20210256073A1 (en) Edge system, information processing method and computer readable medium
US10095737B2 (en) Information storage system
US8484221B2 (en) Adaptive routing of documents to searchable indexes
CN116842099B (zh) 一种多源异构数据处理方法和系统
JPWO2012081165A1 (ja) データベース管理装置及びデータベース管理方法
JP6624062B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
CN112307272A (zh) 确定对象之间关系信息的方法、装置、计算设备及存储介质
JP6040141B2 (ja) キーワード付与装置、キーワード付与方法及びプログラム
WO2013150633A1 (ja) 文書処理システム、及び、文書処理方法
JP7211255B2 (ja) 検索処理プログラム、検索処理方法及び情報処理装置
KR101096285B1 (ko) 연관 검색 쿼리 추출 방법 및 시스템
KR100525618B1 (ko) 연관 검색 쿼리 추출 방법 및 시스템
Yang et al. Data quality for web log data using a hadoop environment
Anand et al. Improving difficult queries by leveraging clusters in term graph

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019533134

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18944837

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20217018319

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 18944837

Country of ref document: EP

Kind code of ref document: A1