WO2020240981A1 - 人工知能装置及びプログラム製造方法 - Google Patents

人工知能装置及びプログラム製造方法 Download PDF

Info

Publication number
WO2020240981A1
WO2020240981A1 PCT/JP2020/010112 JP2020010112W WO2020240981A1 WO 2020240981 A1 WO2020240981 A1 WO 2020240981A1 JP 2020010112 W JP2020010112 W JP 2020010112W WO 2020240981 A1 WO2020240981 A1 WO 2020240981A1
Authority
WO
WIPO (PCT)
Prior art keywords
artificial intelligence
data
intelligence function
function
output
Prior art date
Application number
PCT/JP2020/010112
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 EP20814672.0A priority Critical patent/EP3979137A4/en
Priority to JP2021522643A priority patent/JP7497726B2/ja
Priority to US17/610,562 priority patent/US20220222242A1/en
Publication of WO2020240981A1 publication Critical patent/WO2020240981A1/ja
Priority to JP2024081290A priority patent/JP2024098051A/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Definitions

  • the technology disclosed in this specification relates to an artificial intelligence device and a program manufacturing method related to an artificial intelligence function.
  • the development of a device with an artificial intelligence function is equivalent to developing an artificial intelligence program suitable for the criteria of unique problems such as reliability and values, and a device with an artificial intelligence function is given. It is essentially different from proposing a solution that retrains artificial intelligence functions by verifying against certain criteria.
  • training According to techniques related to training methods such as deep learning using a convolutional neural network, a large amount of data is processed instantly and features hidden in automatically feature-extracted data are used. Data can be classified (classified), learned (learned), and trained (train). In the following, the term "training” will be used as a general term for things such as classification, learning, and training.
  • the artificial intelligence function that operates with the trained model is trained to provide the required function. It is possible to develop a equipped device.
  • a device with artificial intelligence that can extract features that developers cannot imagine from a lot of data by training methods such as deep learning and solve complex problems that developers cannot imagine algorithms. Can be developed. That is, there are many advantages of deep learning.
  • a device with an artificial intelligence function that operates with a trained model may output inference results that identify, for example, a human face and an animal face with a less favorable analogy. is there.
  • the artificial intelligence function may cause a social problem because it performs an ethically problematic operation.
  • the artificial intelligence function behaves unfavorably.
  • the Applicant believes that it is desirable to appropriately modify the processing of the artificial intelligence function when a processing contrary to a predetermined specification is detected.
  • the purpose of the technique disclosed in the present specification is to verify the artificial intelligence function and train the artificial intelligence function so that the device equipped with the artificial intelligence function generates appropriate output data according to a predetermined standard. It is an object of the present invention to provide an artificial intelligence device and a program manufacturing method for manufacturing a computer program including a trained artificial intelligence function by training the artificial intelligence function.
  • An input data acquisition unit that acquires input data for the artificial intelligence function from a predetermined storage device
  • An input data verification unit that verifies the acquired input data based on a predetermined standard
  • a data input unit that inputs input data satisfying the criteria to the artificial intelligence function
  • the artificial intelligence device further includes a processing unit that performs processing when the input data does not meet the above criteria.
  • the processing unit deletes data that does not meet the criteria from the storage device, or stores data that does not meet the criteria in a storage device different from the storage device.
  • the artificial intelligence device includes an output data acquisition unit that acquires output data from the artificial intelligence function and an output data verification unit that verifies the acquired output data based on a predetermined output standard. Further prepare.
  • the output data verification unit verifies the output data based on the output standard for verifying fairness. When the output data does not meet the output criteria, the output data verification unit further verifies whether the output data is in the normal range and whether the operation of the artificial intelligence function is valid.
  • the second aspect of the technology disclosed herein is: An input data acquisition step of acquiring input data for an artificial intelligence function from a predetermined storage device, and An input data verification step that verifies the acquired input data based on a predetermined standard, and A data input step of inputting input data satisfying the criteria into the artificial intelligence function, A presentation step that presents input data that does not meet the criteria and criteria that the input data violates.
  • This is a program manufacturing method for manufacturing a computer program including a trained artificial intelligence function by training the artificial intelligence function.
  • an artificial intelligence device and a program manufacturing method for verifying the artificial intelligence function are provided so that the device having the artificial intelligence function generates appropriate output data based on a predetermined specification. can do.
  • a device equipped with an artificial intelligence function does not generate output data that the developer does not foresee and causes an unexpected social problem, and a predetermined standard is used.
  • Artificial intelligence equipment that verifies the artificial intelligence function and trains the artificial intelligence function, and artificial intelligence trained by training the artificial intelligence function so that the device equipped with the artificial intelligence function generates appropriate output data in light of It is possible to provide a program manufacturing method for manufacturing a computer program including an intelligent function.
  • FIG. 1 is a diagram showing a hardware configuration example of the artificial intelligence system 100.
  • FIG. 2 is a diagram showing a configuration example of application software equipped with an artificial intelligence function.
  • FIG. 3 is a diagram showing an operating state of a program and data for verifying input data when performing model training using the training artificial intelligence function.
  • FIG. 4 is a flowchart showing a processing procedure by the software for verifying the industrial intelligence function.
  • FIG. 5 is a diagram showing an operating state of a program and data for verifying the fairness of the trained data when performing model training using the training artificial intelligence function.
  • FIG. 6 is a flowchart showing a processing procedure by the artificial intelligence function verification manufacturing software when performing model training using the artificial intelligence function for training.
  • FIG. 7 is a diagram showing the operation status of programs and data that perform processes such as training rate test, data generation, and inference using a trained model.
  • FIG. 8 is a flowchart showing a processing procedure for determining the verification standard based on the output data of the training artificial intelligence function.
  • FIG. 9 is a flowchart showing a processing procedure for verifying the operation validity of the training artificial intelligence function.
  • FIG. 10 is a flowchart showing a detailed procedure of the explanation providing process.
  • FIG. 11 is a diagram showing an example of a preparation process performed at the time of learning the artificial intelligence function in order to provide an explanation regarding the operation correctness of the artificial intelligence function for training.
  • FIG. 12 is a diagram showing an example of a preparation process performed at the time of learning the artificial intelligence function in order to provide an explanation regarding the operation correctness of the artificial intelligence function for training.
  • FIG. 13 is a diagram showing a configuration example for performing a process of generating an explanation of the reason for the operation of the training artificial intelligence function.
  • FIG. 14 is a diagram showing a configuration example for performing a process of generating an explanation of the reason for the operation of the training artificial intelligence function.
  • FIG. 15 is a diagram showing a pseudo program expressing the processing shown in FIG.
  • FIG. 16 is a diagram showing a pseudo program expressing the processing shown in FIG.
  • FIG. 17 is a diagram showing a state transition of software for artificial intelligence function verification manufacturing.
  • FIG. 18 is a flowchart showing a processing procedure (training phase) for eliminating unfairness at the time of modifying the trained model.
  • FIG. 19 is a flowchart showing a processing procedure (model validation phase) for eliminating unfairness at the time of modifying the trained model.
  • FIG. 20 is a diagram showing a mechanism for recognizing an unfair state of a model by using a hostile generation network.
  • FIG. 21 is a diagram showing an example of a system configuration during learning of a hostile generation network.
  • FIG. 22 is a diagram showing an example of a guideline (reference) and selectable rules.
  • FIG. 23 is a diagram showing guidelines (references) and other examples (data structures) of selectable rules.
  • FIG. 24 is a diagram showing a mechanism for automatically generating an executable checklist from the guideline.
  • FIG. 24 is a diagram showing a mechanism for automatically generating an executable checklist from the guideline.
  • FIG. 25 is a diagram showing a checklist (reference) generated from the guideline.
  • FIG. 26 is a diagram showing an example of the checklist template data structure.
  • FIG. 27 is a diagram showing a system that achieves the conformity verification of the guideline.
  • FIG. 28 is a diagram showing an example of an API used between a server on the cloud and a client application.
  • Accountability is a function of manipulating a standard for verifying whether the output of a target device having an artificial intelligence function is appropriate in light of a predetermined specification.
  • criteria for verifying the device equipped with the target artificial intelligence function, rules (rule), policy (polisy), guidelines (guidrine), specifications (specification), etc., have the artificial intelligence function. It is clearly defined in a format that can be visually recognized from the outside through the user interface of an artificial intelligence device that has the function of manufacturing a computer program by verifying the computer program it has and training the artificial intelligence function. Then, by operating the artificial intelligence function that targets these criteria as a function, it is possible to judge the conformity with the criteria.
  • the "standard” includes restrictions on the purpose of operating the target artificial intelligence function and restrictions on the target user, region, and the like.
  • Standards also include expressions of moral perspectives or social norms.
  • the “criteria” are preferably provided so that the user can appropriately select from a set of a plurality of "criteria” according to the purpose, and each criterion contains a plurality of selectable setting items and requires verification. It also has an option that allows the user to change the selection of setting items as appropriate according to the content to be verified. Options include setting the priority of each item.
  • the user interface of the device that verifies the artificial intelligence function is configured so that the user can confirm what kind of behavior the target device having the artificial intelligence function is performing with respect to the standard. ..
  • the device equipped with the target artificial intelligence function detects the unintended use of the artificial intelligence function by verifying the output of the artificial intelligence function against the "standard", the user can use the artificial intelligence function.
  • the user interface of the device that verifies the above it is possible to control the operation of the artificial intelligence function (stop some or all of the functions, etc.).
  • the criteria can include, for example, items that specify the technical field as the intended use of the artificial intelligence function.
  • Examples of technical fields include biological research and general-purpose voice agents.
  • Fairness is a function that is required because the device with the artificial intelligence function of interest should treat everyone fairly. Specifically, fairness is ensured in the criteria for extracting the characteristics of the data input when training the artificial intelligence function and the criteria for the characteristics of the data output from the target device equipped with the artificial intelligence function. Is required to be.
  • being fair means that, in one aspect, there is no bias (hereinafter, also referred to as "bias") for data having a specific characteristic (that is, unbiased).
  • the model trained by the artificial intelligence function will be biased. That is, in terms of input / output, there is a high possibility that the ratio of a predetermined output to a specific input will be biased to the ratio of another output.
  • the existence of the bias can be confirmed through a device that verifies the artificial intelligence function, and the function for controlling the bias from the user's point of view as much as possible. Applicants believe that a user interface is required. Further, when a bias that the user considers to be undesirable is detected with respect to a predetermined input, a function capable of correcting the bias through such a user interface is required.
  • fairness means that certain data are true. If the input data for training is fake, it is not desirable because the model is trained so that the artificial intelligence function recognizes the fake as genuine. Even if it is not possible to completely eliminate the fake, the existence of the fake can be confirmed through a device that verifies the artificial intelligence function, and the function and user interface for controlling the fake as much as possible from the user's point of view, etc. Applicants believe that is necessary. Further, when the device for verifying the artificial intelligence function recognizes a state in which fairness is not ensured in the target artificial intelligence function, the operation control of the artificial intelligence function (of some or all functions) is performed through the user interface or the like. It is desirable to be able to stop).
  • the bias may be controlled according to the purpose or field to which the artificial intelligence function is applied. For example, if the criteria suggest that it is intended for biological research, it can be set to broadly tolerate racial bias. On the other hand, if the criteria suggest that it is intended for home-use voice agents, racial bias (ie, prejudice) can be set to be eliminated as much as possible.
  • racial bias ie, prejudice
  • the artificial intelligence function is applied for the purpose of automatically generating a new game character
  • the criterion for determining the authenticity of the training image can be relaxed.
  • the authenticity of the training image can be determined as strictly as possible. In this way, a desired artificial intelligence device can be developed by allowing the user to select a standard when developing a system having an artificial intelligence function.
  • Transparency is a function that identifies the input / output relationship of a device having a target artificial intelligence function. Transparency is explained and justified to the user by a device that verifies the artificial intelligence function about a decision or action (behavior) that the device having the artificial intelligence function makes to the user. It can also be said that it is a function for.
  • the device for verifying the artificial intelligence function can explain and justify the behavior of the device having the artificial intelligence function through the user interface or the like with respect to the "standard" defined from the viewpoint of transparency described above. It is composed.
  • the device that verifies the artificial intelligence function can explain the "input / output relationship" of the target artificial intelligence function (that is, which input generated which output) through the user interface or the like. That is, the device for verifying the artificial intelligence function can provide an appropriate reason for the behavior of the black-boxed artificial intelligence function. For example, the input that produced a particular output can be identified by reverse tracing from the output.
  • the device that verifies the artificial intelligence function can explain the "reason why the target artificial intelligence function has created such an input / output relationship" through the user interface or the like. That is, the device that verifies the artificial intelligence function is not only identifying the input from the output, but also the training data set (the reason for the output) used to generate the trained model used by the artificial intelligence function. ) Can be identified after training to verify the relationship between the training dataset and the output of the artificial intelligence function.
  • a device that verifies an artificial intelligence function can identify the cause of a situation caused by a device equipped with the target artificial intelligence function, explain it based on a standard, and justify it.
  • the operation control of the artificial intelligence function is performed through a user interface or the like ( It is possible to stop some or all of the functions).
  • FIG. 1 schematically shows a hardware configuration example of the artificial intelligence system 100 according to the present embodiment.
  • a part of the configuration of the artificial intelligence system 100 or the entire configuration except the cloud infrastructure may be configured as one artificial intelligence device (for example, a robot or a computer device).
  • the illustrated artificial intelligence system 100 includes a CPU (Central Processing Unit) 101 that controls the entire system in an integrated manner, and a virtual storage device 102 used by the CPU 101.
  • the CPU 101 is equipped with a neural network (NN) accelerator.
  • the virtual storage device 102 is a concept including a primary storage device as a local memory of the CPU 101, a cache memory, and a secondary storage device including a large-capacity external storage device such as a hard disk device (Hard Disk Drive: HDD).
  • An operating system (OS) and a plurality of software (or software executed by the CPU 101) that operate under the execution environment provided by the OS are mounted on the virtual storage device 102.
  • OS operating system
  • a plurality of software or software executed by the CPU 101
  • various sensors and actuators are interconnected with the CPU 101 and the virtual storage device 102 via the bus 103.
  • the sensor data acquired by each sensor is taken into the virtual storage device 102 and appropriately processed by software executed by the CPU 101. Further, each actuator is driven based on a command from the CPU 101 (or a software execution result).
  • the artificial intelligence system 100 includes a camera 104 and a microphone 105 as sensors.
  • the camera 104 is configured by using an image sensor such as a CMOS (Complementary Metal Oxide Semiconductor) or a CCD (Charge Coupled Device), for example.
  • the camera 104 may be a stereoscopic camera using two or more image sensors.
  • the microphone 105 may be a microphone array using two or more sound collecting elements.
  • the artificial intelligence system 100 includes a display 106 and a speaker 107 as actuators.
  • the display 106 includes a liquid crystal display, an organic EL (Electro-Luminescence) display, and the like.
  • the display 106 may be a touch panel type display in which a touch panel is superimposed on the screen. However, the touch panel can be classified as a sensor instead of an actuator.
  • the speaker 107 may be a speaker array (multi-channel speaker or ultra-multi-channel speaker) in which a plurality of speakers are combined.
  • the speaker array may include an "acoustic surface" that produces audio by vibrating the screen of the display 106 with one or more vibrators that generate vibrations.
  • the artificial intelligence system 100 further includes other sensor group 108 and actuator group 109.
  • the sensor group 108 may include common input devices such as keyboards and mice. Further, the sensor group 108 may include various biological sensors that sense the biological information of the user who uses the artificial intelligence function, various environmental sensors that sense the environment in which the artificial intelligence function is used, and the like.
  • the artificial intelligence function verification manufacturing software the application software equipped with the artificial intelligence function, and the GUI (Graphical UI) that provides the user interface are mounted on the virtual storage device 102. These softwares are loaded into the virtual storage device 102 by the OS and executed on the CPU 101 when the artificial intelligence system 100 operates.
  • application software equipped with an artificial intelligence function indirectly accesses OS functions when operating on the CPU 101 via a group of application programming interfaces (APIs) provided in the software for manufacturing artificial intelligence function verification. To do. Then, the application software equipped with the artificial intelligence function is verified by the software for verification and manufacturing of the artificial intelligence function, and is manufactured through the training of the artificial intelligence function.
  • APIs application programming interfaces
  • the artificial intelligence system 100 operates the GUI on the virtual storage device 102, and the user can control the operation and input / output of the artificial intelligence function verification manufacturing software by using the touch panel, the keyboard, or the voice input. ..
  • the artificial intelligence system 100 performs input / output operations using the camera 104, the microphone 105, the speaker 106, the other sensor group 108, and the actuator group 109 as needed by the application software equipped with the artificial intelligence function.
  • the artificial intelligence system 100 further includes a communication unit 110.
  • the communication unit 110 has a wired communication function such as Ethernet (registered trademark) or a wireless communication function such as Wi-Fi (registered trademark), and further has a cloud infrastructure on an external network via a router (not shown) or the like. It is interconnected to 120.
  • the cloud infrastructure 120 is composed of a server device, storage, and the like.
  • the artificial intelligence system 100 is equipped with an API for exchanging data with the cloud and requesting a part or all of processing related to the artificial intelligence function.
  • the artificial intelligence function verification manufacturing software operates to manufacture the artificial intelligence function to be installed in the application software.
  • the artificial intelligence function verification manufacturing software performs verification of input data and training data to the artificial intelligence function, verification of output data of the artificial intelligence function, etc. in the process of manufacturing the artificial intelligence function (described later).
  • the artificial intelligence function-equipped application software manufactured by the artificial intelligence function verification manufacturing software may operate on the same artificial intelligence system 100, or may be loaded into another device and used.
  • a device that operates artificial intelligence function verification manufacturing software and performs verification and training of artificial intelligence functions is also referred to as "a device that verifies artificial intelligence functions" in this specification.
  • a device that operates an artificial intelligence function that is a target of verification and training by a device that verifies the artificial intelligence function is also referred to as a "device having an artificial intelligence function” in the present specification.
  • a computer that executes application software equipped with an artificial intelligence function can also be called a "device having an artificial intelligence function”.
  • FIG. 2 schematically shows a configuration example of application software equipped with an artificial intelligence function loaded on the virtual storage device 102.
  • an application consists of a program and data.
  • a program of application software equipped with an artificial intelligence function at least two programs, an artificial intelligence function for training (train) and an artificial intelligence function for execution (deplay) are provided. These may be configured as distinctly different data and programs on the storage area, or may be configured to use common data and programs by mode designation.
  • the working storage area of the application equipped with the artificial intelligence function includes an input data storage area, an output data storage area, and an execution model storage area.
  • a trained model storage area that is trained, output, and maintained by the training artificial intelligence function is allocated.
  • the execution model storage area is usually a copy of the trained model storage area and is utilized by the execution artificial intelligence function. When the mode is specified, it is a common storage area.
  • the artificial intelligence function for training and the artificial intelligence function for execution are functions provided by machine training called deep learning, respectively.
  • Deep learning is realized by a multi-layer neural network (Deep Neural Network: DNN).
  • DNN is effective for training image data and audio data expressed as two-dimensional data of frequency and time.
  • DNN is a convolutional neural network (Convolutional Neural Network: CNN) consisting of a convolutional layer, a pooling layer, and a fully connected layer, a recursive neural network (Recurrent Neural Network: RNN) applied to time series data training, etc., by dimension compression. It can be realized by combining various networks such as an autoencoder that trains abstract data.
  • CNN convolutional Neural Network
  • RNN recursive neural network
  • FIG. 3 exemplifies a program that verifies input data and an operating state of data based on a standard when performing model training using the artificial intelligence function for training of an application equipped with an artificial intelligence function.
  • Artificial intelligence function verification manufacturing software can filter data using input data verification criteria before data is input to the training artificial intelligence function. Specifically, when the artificial intelligence function verification manufacturing software extracts the input data and the input data verification standard stored in the non-volatile memory in the virtual storage device 102, does the input data satisfy the input data verification standard? Preprocessing to verify whether or not it is performed is performed to determine whether or not to input the input data to the training artificial intelligence function.
  • FIG. 4 shows the processing procedure (when filtering the input data) by the artificial intelligence function verification manufacturing software when performing model training using the artificial intelligence function for training in the form of a flowchart.
  • the artificial intelligence function verification manufacturing software first reads the input data (step S401).
  • the input data may be any image data or voice data preprocessed for input to the training artificial intelligence function.
  • metadata is added to such input data.
  • the metadata is added in relation to the data at the time of data acquisition, for example, the data acquisition location (for example, GPS (Global Positioning System) data), and the data of the objects included in the data (for example, photographed).
  • the data acquisition location for example, GPS (Global Positioning System) data
  • personal identification information such as nationality and race of the person who is data
  • personal identification information of the data creator sensitive information such as name, nationality, race, hobby.
  • the artificial intelligence function verification manufacturing software compares the input data read in step S401 with the verification standard (step S402).
  • the comparison of the verification criteria is shown as a single judgment step. However, when there are a plurality of verification criteria, the input data is compared with each verification criterion. It is assumed that there are a plurality of determination steps in order to perform the above steps in order.
  • the verification standard may be a check item such as "whether specific personal identification information data such as race is included".
  • step S401 If the input data read in step S401 meets the (all) verification criteria (Yes in step S402), the artificial intelligence function verification manufacturing software uses the input data and its metadata for training artificial intelligence function. Is input to the training (step S405).
  • step S401 determines whether the input data read in step S401 does not meet the verification criteria (at least one of them) (No in step S402)
  • the artificial intelligence function verification manufacturing software performs the input data (and data identification information). Is displayed on the GUI together with the violating item (the item of the violating verification standard) (step S403), and prompts the user to decide the next processing to be performed.
  • step S403 data identification information that identifies the input data may be displayed on the GUI together with the input data that violates the verification criteria (or instead of the input data).
  • the metadata of the input data may also be displayed on the GUI.
  • the user instructs the next process to be performed via the GUI (or other input device). Then, the artificial intelligence function verification manufacturing software continues the process based on the instruction input from the user (step S404). Examples of the process instructed by the user include saving the displayed data as violation data in another storage device, deleting the violation data, and the like.
  • the effectiveness of accountability is ensured by comparing and judging the input data with the verification standard, and transparency is supported in terms of the input data. It has the effect of being able to.
  • FIG. 5 shows the operating status of a program and data for verifying the fairness of the trained data based on the criteria when performing model training using the artificial intelligence function for training of the application equipped with the artificial intelligence function. Is illustrated.
  • Artificial intelligence function verification manufacturing software is configured to collect statistical data of output data labeled by the training artificial intelligence function. This makes it possible to verify whether the trained data is fair in terms of labeling.
  • the standard for verifying fairness can be selected in advance. If it is fair for all labels, it can be "all clusters”. If it is sufficient to verify the bias only for some labels such as "race” and "nationality", the relevant cluster may be specified as the fairness verification standard. Also, if the focus is on the possibility that the data is fake, it can be set to verify the "authenticity" label.
  • FIG. 6 shows a processing procedure (when detecting an unfair state of output data) by the artificial intelligence function verification manufacturing software when performing model training using the artificial intelligence function for training in the form of a flowchart.
  • the unfair state detection process may be executed at regular intervals, or may be executed in response to the user's instruction to "start processing".
  • the user can instruct the start of processing by various methods such as selecting and operating the "process start” button (soft button) displayed on the GUI with the touch panel or keyboard, or speaking "process start” by voice. ..
  • the artificial intelligence function verification manufacturing software first reads the stored training label data statistical information (step S601). Here, it is desirable that the statistical information is displayed as a graph on the user interface.
  • the artificial intelligence function verification manufacturing software detects an unfair state to a specific data label for the item to be verified from the distribution of the training label data in the light of the verification standard, that is, With respect to the number of label data, it is checked whether or not the amount of data varies (step S602).
  • a specific verification standard such as "whether there is data that exceeds the average by 20%" can be given.
  • FIG. 6, for simplification of the explanation it is shown as a single judgment step with one verification standard, but when there are a plurality of verification standards, each verification standard is unfair in order. There shall be multiple determination steps to check the status.
  • step S601 If the distribution of the training label data read in step S601 meets the (all) verification criteria (No in step S602), the artificial intelligence function verification manufacturing software continues training on the training artificial intelligence function. (Step S605).
  • step S602 when a state in which the distribution of the training label data read in step S601 does not meet the verification criteria (at least one of them) is detected (Yes in step S602), the artificial intelligence function verification manufacturing software is a GUI.
  • the graph of the statistical information is updated, the data label in which the unfair state (for example, the state with strong bias) is detected is displayed (step S603), and the user is determined what to do next. Prompt.
  • the user can see the data label in an unfair state through the GUI. Then, the user instructs the next processing to be performed via the GUI (or other input device).
  • the artificial intelligence function verification manufacturing software continues the process based on the instruction input from the user (step S604).
  • the process instructed by the user includes saving the data in which unfairness is detected in another storage device.
  • FIG. 7 illustrates the operating status of programs and data that perform processing such as training rate test, data generation, and inference using a trained model using the artificial intelligence function for training of an application equipped with an artificial intelligence function.
  • the training rate test the training rate shall be measured by inputting test data different from the training data.
  • the artificial intelligence function verification manufacturing software manages the data input / output of the artificial intelligence function for execution, and verifies and provides the explanation of the data output generated by the artificial intelligence function for training.
  • the artificial intelligence function may be configured by combining a plurality of artificial intelligence functions (for example, by function such as face recognition and voice recognition, or by purpose such as game and surveillance).
  • the training rate is measured using the test data as described above for each individual artificial intelligence function.
  • the training can be restarted as the training artificial intelligence function again.
  • the condition in this case can be given as a standard such as the correctness of the operation. For example, a standard such as "the training rate is 98% or more" can be set.
  • the artificial intelligence function verification manufacturing software When verifying output data and providing explanations, the artificial intelligence function verification manufacturing software provides criteria such as output verification and operation validity, and explanation methods for the reasons why the operations occur from an external database in memory. It is designed to be fetched or obtained by communicating with an external database. Here, a method for explaining the reason why the operation has occurred may be provided as a program.
  • FIG. 8 shows in the form of a flowchart a processing procedure for determining the verification standard for the output data of the training artificial intelligence function by the artificial intelligence function verification manufacturing software in the artificial intelligence system 100.
  • the artificial intelligence function verification manufacturing software receives the output data of the training artificial intelligence function (step S801), it checks whether the output data meets the verification criteria (step S802). At this time, the verification reference is read from a predetermined storage area to make a judgment.
  • step S801 If the output data received in step S801 meets the verification criteria (Yes in step S802), the artificial intelligence function verification manufacturing software is inferred by an application that uses the artificial intelligence function for execution. The output data is provided to the application so that it can be done (step S805).
  • the artificial intelligence function verification manufacturing software uses the data (and identifier information capable of acquiring the data) as a reference. Along with the items defined as violations in the light, they are displayed via the GUI (display 106, etc.) of the artificial intelligence system 100 (step S803).
  • the identifier information from which the data can be acquired may be, for example, a URI (Universal Resource Identifier) that specifies the location of the data.
  • the artificial intelligence function verification manufacturing software performs the operation validity verification process of the training artificial intelligence function according to the instruction of the user through the GUI (step S804).
  • FIG. 9 shows a processing procedure for verifying the operation validity of the training artificial intelligence function executed in step S804 in the flowchart shown in FIG. 8 in the form of a flowchart.
  • the artificial intelligence function verification manufacturing software first determines whether or not it is necessary to provide an explanation about the situation (step S901).
  • the artificial intelligence system 100 may provide a user interface for the artificial intelligence system 100 to select and operate whether or not the user needs to provide an explanation.
  • the user interface may be software buttons using a GUI or a touch panel, keyboard operation, voice recognition of a user's voice command, or the like.
  • An explanation-providing flag for the need for explanation can be set based on the user's selection behavior. If the explanation provision flag is 1, it is determined that the explanation provision is necessary, and if the explanation provision flag is 0, it is determined that the explanation provision is unnecessary.
  • step S905 the software for manufacturing artificial intelligence function verification performs an explanation providing process. Although the procedure of the explanation providing process is shown in FIG. 10, the details will be described later. Then, when the explanation providing process is completed, the process returns to step S901.
  • step S901 the software for manufacturing artificial intelligence function verification subsequently provides data (label) output from the artificial intelligence function for training within a normal range and It is determined whether or not the operation is in an unjustified range (step S902). At that time, the verification of the output data and the reference for checking the validity of the operation are read from the predetermined storage area and the determination process is performed.
  • the artificial intelligence function verification manufacturing software uses the execution artificial intelligence function.
  • the output data is provided to the application so that the application can perform inference and the like (step S906).
  • the software for manufacturing the artificial intelligence function verification performs the data (and the identifier information capable of acquiring the data). ) Is displayed via the GUI (display 106, etc.) of the artificial intelligence system 100 together with the item defined as a violation in light of the standard (step S903).
  • the identifier information from which the data can be acquired may be, for example, a URI that specifies the location of the data.
  • the artificial intelligence function verification manufacturing software continues the verification process of the operation validity of the training artificial intelligence function according to the instruction of the user through the GUI (step S904).
  • FIG. 10 shows a detailed procedure of the explanation providing process executed in step S905 in the flowchart shown in FIG. 9 in the form of a flowchart.
  • the artificial intelligence function verification manufacturing software performs processing on the processor (CPU101) according to a method defined as a method for explaining the reason for the operation of the training artificial intelligence function (step S1001).
  • the description method can be selected from rules, scripts, functions, programs, or artificial intelligence techniques such as Deep Neural Networks.
  • step S1002 The result of the explanation is displayed via the GUI (display 106, etc.) of the artificial intelligence system 100 (step S1002). Then, the artificial intelligence function verification manufacturing software continues the verification process of the operation validity of the training artificial intelligence function according to the instruction of the user through the GUI (step S1003).
  • 11 and 12 show a preparation process performed by the artificial intelligence system 100 during learning of the artificial intelligence function in order to provide an explanation regarding the operation correctness of the artificial intelligence function for training according to the processing procedure shown in FIG. An example is shown.
  • FIG. 11 when learning an artificial intelligence function for training, a method of associating and storing labels and data generated by the artificial intelligence function in associative memory, or using blockchain technology instead of associative memory. It illustrates a method of distributed storage on a network.
  • a loss function (lossfunction) is input by inputting an output label of the artificial intelligence function for training and a desired label (not shown).
  • Is used to generate a training input for training the artificial intelligence function for training in the case of a neural network, changing the weights constituting the network).
  • FIG. 12 shows an example of a device configuration for learning a text explaining a situation together with input data and an output label of an artificial intelligence function for training by using a deep neural network instead of associative memory. ..
  • the second loss function used by the deep neural network is used together with the first loss function used by the training artificial intelligence function.
  • FIG. 13 and 14 show the case where the artificial intelligence system 100 needs to explain the reason for the operation of the training artificial intelligence function in the verification process of the output data of the training artificial intelligence function shown in FIG.
  • a configuration example for carrying out a process for generating an explanation in the process procedure shown in FIG. 10 is shown.
  • FIG. 13 is a configuration example corresponding to the case where the process shown in FIG. 11 is performed as a preparation for learning the artificial intelligence function.
  • a label for associative memory By providing a label for associative memory, a series of related data can be retrieved. Associative memory can associate multiple pieces of data with the same label using hashing techniques. Therefore, by providing the label, it is possible to output the first related data (image, etc.).
  • blockchain technology can be used for distributed storage on the network.
  • FIG. 15 shows a pseudo program expressing the process shown in FIG. 13, it corresponds to the case where the method for explaining the reason for the operation specified in the flowchart shown in FIG. 10 is a program.
  • the data retrieved from the associative memory is displayed on the display 106 in response to the message "One of the causes is that the following data input was input during training:”. Is displayed. One data may be used, or a plurality of data may be displayed together. In the example shown in FIG. 15, the data is displayed one by one, and the user corresponds to "Yes” according to the output such as "Do you need other data?" (Not shown) (not shown). It is designed to display the following data by making a positive) input via a touch panel, keyboard, or voice.
  • FIG. 14 is a configuration example corresponding to the case where the processing shown in FIG. 12 is performed as a preparation for learning the artificial intelligence function.
  • a text is output as to the corresponding reason.
  • the label is input to the deep neural network, but depending on the configuration of the deep neural network, the data input to the artificial intelligence function for execution may be input together with the label. You may want to generate the text. Further, as the output of the deep neural network, not only the text but also the related image may be displayed.
  • FIG. 16 shows a pseudo program expressing the processing shown in FIG. 14, but the method for explaining the reason for the operation specified in the flowchart shown in FIG. 10 is artificial intelligence (for example, a deep neural network). Applicable to the case.
  • the processing of the deep neural network being executed on the processor (CPU101) including the neural network accelerator, the data is displayed on the display 106, and at the same time, the text is output by voice using a speaker or the like, or the display 106. It is reproduced by displaying the text above.
  • FIG. 17 shows a state transition diagram of software for artificial intelligence function verification manufacturing. It should be understood that similar state transitions can be incorporated into each of the above-described embodiments.
  • the artificial intelligence function verification manufacturing software is in an execution state by transitioning between three modes of "normal mode (normal)", “verification mode (aware)", and "explanation mode (explain)". To determine. In the normal mode, the artificial intelligence function verification manufacturing software does not perform verification, and the artificial intelligence system 100 uses only the artificial intelligence function. That is, the artificial intelligence function verification manufacturing software does not perform any special processing in practice. In the verification mode, the artificial intelligence function verification manufacturing software performs verification. Further, in the explanation mode, in addition to the verification process, the artificial intelligence function verification manufacturing software performs a process of providing an explanation when an abnormality is detected in the input data or the like through the verification. When an abnormality is detected under the verification mode, the artificial intelligence function verification manufacturing software may stop the operation of the entire artificial intelligence system 100.
  • FIG. 18 shows in the form of a flowchart a processing procedure for the artificial intelligence function verification manufacturing software to eliminate unfairness when modifying a trained model.
  • the processing procedure shown in the figure is based on the premise that the artificial intelligence function verification manufacturing software transitions between the above three modes.
  • the artificial intelligence function verification manufacturing software trains the artificial intelligence function. Training of artificial intelligence function corresponds to "learning”.
  • the artificial intelligence function verification manufacturing software reads the training target data from a predetermined storage area, and then extracts label information (sometimes referred to as metadata) associated with the training target data (step S1801). Labels are identifying information about the data added by the data provider. For example, when the data is image data in which a cat and a person are displayed, each image data may be labeled as "cat”, "person”, or “cat", “man”, etc. It may be labeled as "one person”. Labels are important data in training such as deep learning. The reading of the training target data and the label information shall be repeated until the training phase is completed.
  • the artificial intelligence function verification manufacturing software determines whether the training target data is unfair data (or whether there is a possibility of unfair data) based on the artificial intelligence function verification manufacturing software label or the like.
  • Check (step S1802). For example, if there is a bias or if the data is fake, the data to be trained is unfair data. Specifically, the unfairness of the training target data is checked against the "fairness verification standard" read from a predetermined storage area.
  • the artificial intelligence function verification manufacturing software is in "normal mode". After preprocessing such as format conversion of the data, the data to be trained is input to the artificial intelligence function for training to carry out the training (step S1804). For training, use deep neural networks. After that, the artificial intelligence function verification manufacturing software stores the updated model of the artificial intelligence function (generally, a set of node weights of the neural network) as a trained model in a predetermined storage area.
  • the artificial intelligence function verification manufacturing software sets the mode.
  • the "normal mode” is changed to the "verification mode” (step S1803).
  • the artificial intelligence function verification manufacturing software preprocesses the training target data in the verification mode, inputs the training target data to the training artificial intelligence function, and executes the training (step S1805).
  • For training use deep neural networks.
  • the pre-processing of the training target data performed in step S1805 corrects a part of the data if it is unfair data in another processing flow, or corrects the data by filtering when the correction is not possible. Processing such as deleting from the input target can be mentioned. It is also possible to request the user to input the processing policy through the GUI. In this case, the target data (image, audio data, text, etc.) that may cause unfairness is displayed on the display, and the user from the list of processing candidates ("correct”, "delete”, “permit") The data may be displayed so that it can be selected, and the preprocessing of the data to be trained may proceed after waiting for the input from the user (selecting with the touch panel or keyboard, or selecting the item in the list by voice).
  • the artificial intelligence function verification manufacturing software changes the mode from "normal mode” to "verification mode” (step S1810). Then, the artificial intelligence function verification manufacturing software sets the trained model as the target artificial intelligence function, reads the verification target data from a predetermined storage area, and performs inference processing using the artificial intelligence function (the above artificial intelligence function). Step S1811). The artificial intelligence function verification manufacturing software repeats the process of step S1811 for all the verification target data until the model validation phase is completed.
  • the artificial intelligence function verification manufacturing software checks whether or not the state is "unfair” based on the label generated by the artificial intelligence function as an inference result (step S1812). For example, when a biased label is generated or when it is shown that fake data has been input, it is determined that an unfair state has occurred.
  • step S1812 If no unfairness has occurred (No in step S1812), the artificial intelligence function verification manufacturing software returns to step S1811 to read the next data and continues the inference processing of the artificial intelligence function.
  • the artificial intelligence function verification manufacturing software performs the unfairness suppression process (step S1813).
  • the unfairness suppression process for example, two methods of label storage process and notification process can be mentioned.
  • the artificial intelligence function verification manufacturing software uses a biased label or a label indicating that the data is fake data for user verification.
  • the output of the same label is suppressed after being stored in the storage device together with the output label.
  • the artificial intelligence function verification manufacturing software displays the occurrence of unfairness on the display or notifies by voice.
  • the trained model can be retrained for the same input data.
  • the artificial intelligence function verification manufacturing software performs the unfair suppression processing, then updates the model, and re-executes the inference processing on the same data using the trained model after the unfair suppression (step S1814). Then, the artificial intelligence function verification manufacturing software checks whether the unfair state of the trained model has been improved, that is, no unfair state has occurred (step S1815).
  • step S1815 If the unfair state of the trained model is improved (Yes in step S1815), the process returns to step S1811, and the artificial intelligence function verification manufacturing software reads out another verification data and continues the model validation. ..
  • step S1816 the artificial intelligence function verification manufacturing software implements another unfairness suppression process.
  • the artificial intelligence function verification manufacturing software performs a training method different from the process performed in step S1813. After this process, the trained model is updated and the process returns to the first unfairness suppression process (step S1813).
  • GAN Generative Adversarial Network
  • FIG. 20 illustrates a mechanism for recognizing the unfair state of the output data of the artificial intelligence function by using a hostile generation network.
  • the output is generated in response to the input of a randomly generated vector to generate an arbitrary unfair image (an image biased against a given label input, or an image that does not actually exist).
  • the generation network (unfair image generation network) 2001 and the differentiation network 2002 for inputting a normal image and determining the authenticity of the image are used.
  • the differentiation network 2002 determines whether or not the input image is unfair. Can be made to do.
  • the unfair image generation network 2001 learns to output an image that the differentiation network 2002 determines to be unfair or false as much as possible.
  • the differentiated network 2002 can be used for the recognition process of the unfair state in the flowchart shown in FIG.
  • FIG. 21 shows an example of the system configuration at the time of learning of the hostile generation network shown in FIG.
  • the unfair image generation network 2002 inputs randomly generated vectors to generate image data.
  • the image output by the unfair image generation network 2001 is image data that should be determined to be unfair by the differentiation network 2002.
  • the image data output by the unfair image generation network 2001 is input to the differentiation network 2002, and the output label is verified.
  • the output label is a real number between 0 and 1, and if it is close to 0, it is judged as "false", and if it is close to 1, it is judged as "true”.
  • the training gradient calculation is performed based on the output label indicating the truth and the generated data.
  • a certain value for example, 0.5
  • the output image should be easily output in the future.
  • backpropagation training is performed by modifying the node weights of the deep neural networks that make up the unfair image generation network 2001.
  • the output label becomes a value close to 1 when the correct data is input, and the output label is displayed when the output data of the unfair image generation network 2001 is input.
  • the training gradient is calculated so that the value is close to 0, and the training is performed by modifying the weights of the nodes of the deep neural network constituting the differentiated network 2002 by backpropagation.
  • the artificial intelligence function is made more fair by retraining the artificial intelligence function in order to improve the unfair state based on the recognition of the unfair state in the output of the artificial intelligence function.
  • FIG. 22 shows an example of guidelines and selectable rules.
  • the user can check the content by reading the content of the guideline by touch operation of the touch panel or the like.
  • the predicted behavior of the artificial intelligence system 100 with respect to the guideline is a checklist of whether or not the artificial intelligence system 100 created according to the guideline is operating correctly according to the guideline. Based on this checklist, select action items and perform verification in the verification mode among the modes shown in FIG. 17 to confirm whether the operation of the artificial intelligence system complies with the guidelines. Can be done.
  • the rules specific to each product are used as verification criteria in any of the above-mentioned examples, and the criteria may be selected by selecting the product. In addition, some of the rules may be changed or combined arbitrarily.
  • FIG. 23 shows the data structure on the storage area as another example of the guideline and selectable rules. Apart from the guidelines, a checklist is stored for each product and function (for face recognition, financial loans, human resources, etc.).
  • the model for example, the set of weights and labels of the nodes of the deep neural network
  • the data set to be checked are stored in association with the checklist.
  • each model is configured so that specific data can be referred to from an application having a corresponding artificial intelligence function or a data set.
  • FIG. 24 shows a mechanism for automatically generating an executable checklist from the guideline.
  • various checklists for example, for face recognition
  • the checklists are also displayed.
  • FIG. 25 shows a checklist (standard) generated from the guideline.
  • a model checklist is applied to check the model, and if the model is appropriate according to the criteria, it is output as a checked model, and each data is verified using the data checklist. However, if the data is appropriate according to the standard, it is shown to be output as checked data.
  • FIG. 26 shows an example of a model and data checklist template data structure.
  • This checklist items and their constraints are shown for each item to be checked.
  • the checklist includes each item of "Product / use area designation”, “Minimum specification definition”, and "Scope of application”.
  • the item “Limited to product / use area” indicates whether “Product” and “Limited to use area” are required items or options as constraints.
  • the sub-items of "product” and “use area” are further specified.
  • a product category is set in the sub-item "Product”.
  • the product category for example, "face recognition”, “financial loan”, “personnel” and the like are input arbitrarily via GUI or by selecting an item.
  • the “country name” and the "region name” are input arbitrarily via the GUI or by selecting the item.
  • the data of the sub-item can be omitted.
  • minimum specification definition indicates the priority that "fairness”, “explainability”, “performance”, etc. can take, and the sub-items “fairness”, “explainability”, “explainability”, etc. Includes “performance”.
  • the constraint conditions (fairness”> "performance") and ("explainability”> "performance") are described so that the operation verification can be performed according to these conditions. be able to.
  • the constraint conditions for the item "applicable range” are "model", “data”, and “common”. That is, the constraint condition of whether this checklist template is applied only to the “model”, only to the “data”, or both are used for "common” is described.
  • the "applicable range” is set to "data”, it indicates that this checklist template is applied to the input / output "data”.
  • the conformity of the guidelines may be checked uniformly in a common infrastructure. In such cases, common guideline compliance can be implemented in the infrastructure on the cloud. On the other hand, even in such a case, it is desirable to keep the data that depends on the structure and data of each product as small as possible.
  • FIG. 27 in response to such a case, a system that provides a common API, converts it into items specified by a standard, and exchanges data to achieve conformity verification of guidelines. It is shown in the figure.
  • a server on the cloud and a client application equipped with a plurality of artificial intelligence function verification manufacturing software are connected via a wired or wireless network (not shown) and via an API. Achieve guideline compliance verification in connected situations.
  • the API indicates both directions of access from the client side to the server and access from the server to the client.
  • FIG. 28 shows an example of the API used between the server on the cloud and the client application in the system shown in FIG. 27.
  • API for request from client to server (1) Request: A model or data as a set or a single unit specified by a predetermined identifier (ID, for example, URI) is transmitted to the server, and a request is made to check whether these data conform to the standard. As an argument, “model” or “data”, “set” or “single substance”, and “identifier (ID)” are specified. (2) Response: An API for notifying the requesting client from the server of the check result. As an argument, "Authenticated” or “Not-authenticated” indicating the answer, and the identifier (ID) of the target model or data are returned.
  • ID a predetermined identifier
  • API for request from server to client (1) Diag: Whether the server conforms to the standard for "input data” or “output data” for the client's artificial intelligence function (model) from the server to the client at a constant sampling rate for a certain period. It is an API that asks you to send it so that you can check it. As arguments, "input” or “output”, “sampling rate”, and “(monitoring) period” are specified.
  • Model_output API for sending predetermined data to the server when "output” is specified in response to a Diag request. Specify the data and identifier (ID) as arguments.
  • Model_input API for sending predetermined data to a server when "input” is specified in response to a Diag request. Specify the data and identifier (ID) as arguments.
  • Status An API in which the server transmits to the application whether or not the data specified by the ID is determined to be "Authenticated” or "Not-authenticated” after checking the data.
  • a predetermined “reference” may be specified by one of the arguments of Model_output or Model_input.
  • the guidelines for each organization conform to, for example, international standards by sharing the guidelines to be complied with in the cloud.
  • the guidelines for each organization conform to, for example, international standards by sharing the guidelines to be complied with in the cloud.
  • the three basic functions of "accountability”, “fairness”, and “transparency” of the artificial intelligence function are verified, and the artificial intelligence function that guarantees these basic functions is provided. Can be manufactured.
  • the artificial intelligence function verification manufacturing technology a plurality of criteria for verifying the target device having the artificial intelligence function are given, and one of the criteria can be selected by the user. Then, when a device having a target artificial intelligence function is trained based on input data, or when a predetermined input is made to a device having a target artificial intelligence function using a trained model, the input is performed. Criteria that verify that the output is appropriate against a given criterion can be manipulated as a function. Therefore, the artificial intelligence function verification manufacturing technology guarantees accountability.
  • the input data for training can be generated so that the device equipped with the target artificial intelligence function can generate an appropriate output based on a predetermined specification.
  • Fairness for example, no bias (unbiased), not fake (fake)
  • inappropriate data can be corrected or filtered as necessary. Therefore, the artificial intelligence function verification manufacturing technology guarantees fairness.
  • the artificial intelligence function verification manufacturing technology when the output of the device equipped with the target artificial intelligence function seems to be inappropriate in light of the predetermined specifications, the input / output relationship is specified. Alternatively, the relationship between the trained model that generated the output and the input during training can be specified. Therefore, the artificial intelligence function verification manufacturing technology ensures transparency.
  • the artificial intelligence function verification manufacturing technology at the time of development or use of the device equipped with the target artificial intelligence function, appropriate processing is performed based on an appropriate input in light of a predetermined specification.
  • the device having the target artificial intelligence function can verify the artificial intelligence function in order to generate an appropriate output, and train the artificial intelligence function through the verification process.
  • the artificial intelligence function verification manufacturing technology it is possible to manufacture a device having an artificial intelligence function with high reliability and high utility value from the viewpoint of accountability, fairness, and transparency.
  • Various techniques disclosed in the present specification include image recognition in cameras, image synthesis in televisions, voice recognition in headphones, natural language understanding and document synthesis in document processing systems, recognition and action generation in actions of agents and robots, and so on. It can be applied to the verification of a device having an artificial intelligence function applied to various fields and the manufacture of a computer program used in the device.
  • the technology disclosed in this specification can also have the following configuration.
  • An input data acquisition unit that acquires input data for an artificial intelligence function from a predetermined storage device, and An input data verification unit that verifies the acquired input data based on a predetermined standard, A data input unit that inputs input data satisfying the criteria to the artificial intelligence function, Input data that does not meet the above criteria and a presentation unit that presents the criteria that the input data violates.
  • An artificial intelligence device equipped with.
  • the processing unit performs at least one of deletion of data that does not meet the criteria from the storage device and storage of data that does not meet the criteria in a storage device different from the storage device.
  • the artificial intelligence device according to (2) above.
  • the criteria include at least one of the rules, policies, guidelines and specifications.
  • the standard includes at least one of a restriction on the purpose for which the artificial intelligence function operates, a restriction on a target user, a region, and the like, and a field to which the artificial intelligence function is applied.
  • the artificial intelligence device according to (3) above.
  • An output data acquisition unit that acquires output data from the artificial intelligence function, and An output data verification unit that verifies the acquired output data based on a predetermined output standard,
  • the artificial intelligence device according to any one of (1) to (5) above.
  • the output data verification unit verifies the output data based on the output standard for verifying fairness.
  • the artificial intelligence device according to (6) above.
  • the control unit stops a part or all of the artificial intelligence functions when the output data does not satisfy the output criteria.
  • the control unit continues data input to the artificial intelligence function when the output data satisfies the output reference.
  • the artificial intelligence device according to (9) above.
  • the presenting unit further presents output data that does not meet the output criteria and output criteria that the output data violates.
  • the artificial intelligence device according to any one of (6) to (9) above.
  • the output data verification unit further verifies whether the output data is in the normal range and whether the operation of the artificial intelligence function is valid.
  • the artificial intelligence device according to any one of (6) to (10) above.
  • the presenting unit When the output data is not normal or the operation of the artificial intelligence function is not valid, the presenting unit further presents the output data that does not meet the output standard and the output standard that the output data violates. , The artificial intelligence device according to (11) above.
  • the artificial intelligence device according to any one of (6) to (10) above.
  • the output data of the artificial intelligence function is stored in the output data storage device.
  • the artificial intelligence device according to any one of (1) to (12) above.
  • the output data storage device stores the output data of the artificial intelligence function based on the blockchain technology.
  • the artificial intelligence device according to (13) above.
  • an application programming interface for instructing a device different from the artificial intelligence device to verify the input data for the artificial intelligence function or the output data from the artificial intelligence function.
  • the artificial intelligence device according to any one of (1) to (14) above.
  • the device operates on the cloud.
  • the artificial intelligence device according to (15) above.
  • the artificial intelligence function trains input data or generates data based on the input data.
  • the artificial intelligence device according to any one of (1) to (16) above.
  • the artificial intelligence function includes a neural network.
  • the artificial intelligence device according to any one of (1) to (18) above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

人工知能機能を備えた装置が所定の仕様に基づいて適切な出力データを生成するように、人工知能機能を検証する人工知能装置を提供する。 人工知能装置は、人工知能機能に対する入力データを所定の記憶装置から取得する取得部と、前記取得した入力データを所定の基準に基づいて検証する検証部と、前記基準を満たす入力データを前記人工知能機能に入力する入力部と、前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示部を具備する。情報処理装置は、入力データが前記基準データを満たさない場合の処理を実施する処理部をさらに備える。

Description

人工知能装置及びプログラム製造方法
 本明細書で開示する技術は、人工知能機能に関する人工知能装置及びプログラム製造方法に関する。
 近年、言語の理解や推論を始めとする、本来は人間が行うさまざまな知的行動をコンピュータに行わせる人工知能技術に関する期待が高まってきている。人工知能機能が用いられる技術分野は、カメラによる画像認識、テレビにおける画像合成、ヘッドホンなどにおける音声認識、文書処理システムにおける自然言語理解や文書合成、エージェントやロボットにおける行動認識や行動生成など、多岐の応用に及ぶ。また、人工知能機能の普及に伴って、人工知能機能を備えた装置の信頼性を高める技術や、組織の価値観に対応可能な人工知能モジュールを開発する技術も広まってきている。
 例えば、解析目的に適応した人工知能モジュール(ニューラルネットワークなど)を自ら選択し、自動学習によって、信頼性の高い人工知能モジュールを生成する人工知能モジュール開発方法について提案がなされている(特許文献1を参照のこと)。
 また、個人や個人の所属する組織・グループ毎に異なり変化し続ける価値、価値観を解析、学習、予測し、その価値、価値観に合った情報提供、提案を行う人工知能に必要な機能を実現する技術について提案がなされている(特許文献2を参照のこと)。
特開2019-12555号公報 特開2014-182483号公報
 上述したように人工知能機能を備えた装置の開発は、信頼性や価値観といった固有の問題の基準に適した人工知能プログラムを開発することに相当し、人工知能機能を備えた装置を与えられた所定の基準に照らして検証して、人工知能機能を再訓練する解決方法を提案することとは本質的に相違する。
 畳み込みニューラルネットワーク(Convolutional Neural Network)を用いたディープラーニング(DeepLearning)などの訓練方法に関する技術によれば、大量のデータを瞬時に処理し、自動的に特徴抽出されたデータに隠された特徴を用いてデータを分類(classify)、学習(learn)、訓練(train)することができる。なお、以下では、分類、学習、訓練といったものを総称として「訓練」という用語を用いる。
 例えば、猫と犬を見分ける人工知能機能に大量の訓練用データを与えてディープラーニングを行うことにより、要求される機能を提供できるように訓練させて、訓練済みのモデルにより動作する人工知能機能を備えた装置を開発することが可能である。ディープラーニングなどの訓練方法により、開発者には想像できない特徴を多くのデータから抽出して、開発者がアルゴリズムを想定し得ないような複雑な問題解決を行うことのできる人工知能機能を有する装置を開発することができる。すなわち、ディープラーニングの利点は多い。
 一方、訓練済みのモデルにより動作する人工知能機能を備えた装置が、例えば人間の顔と動物の顔とを、あまり好ましくない類比によって同一視するような推論結果を出力してしまうようなこともある。このような場合、人工知能機能が倫理的に課題のある動作を行うとして、社会問題を生じるおそれがある。
 人工知能機能が好ましくない動作をするといった問題を完全に解決することは難しい。しかしながら、人工知能機能が少なくとも所定の仕様に従った処理を提供できるか否かを検証することは可能である。所定の仕様に反する処理が検出された場合に、人工知能機能の処理を適宜修正することが望ましい、と本出願人は考えている。
 そこで、本明細書で開示する技術の目的は、所定の基準に照らして人工知能機能を備えた装置が適切な出力データを生成するように、人工知能機能を検証し、人工知能機能を訓練する人工知能装置、及び人工知能機能を訓練することにより訓練済み人工知能機能を含むコンピュータプログラムを製造するプログラム製造方法を提供することにある。
 本明細書で開示は、上記課題を参酌してなされたものであり、その第1の側面は、
 人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得部と、
 前記取得した入力データを所定の基準に基づいて検証する入力データ検証部と、
 前記基準を満たす入力データを前記人工知能機能に入力するデータ入力部と、
 前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示部と、
を具備する人工知能装置である。
 第1の側面に係る人工知能装置は、入力データが前記基準を満たさない場合の処理を実施する処理部をさらに備える。前記処理部は、前記基準を満たさないデータの前記記憶装置からの削除、又は前記基準を満たさないデータの前記記憶装置とは別の記憶装置への保存のうち少なくとも一方を実施する。
 また、第1の側面に係る人工知能装置は、前記人工知能機能からの出力データを取得する出力データ取得部と、前記取得した出力データを所定の出力用基準に基づいて検証する出力データ検証部をさらに備える。前記出力データ検証部は、公平性を検証する前記出力用基準に基づいて出力データを検証する。出力データが前記出力用基準を満たさないときに、前記出力データ検証部は、出力データが正常な範囲であるか、及び前記人工知能機能の動作が正当かどうかをさらに検証する。
 また、本明細書で開示する技術の第2の側面は、
 人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得ステップと、
 前記取得した入力データを所定の基準に基づいて検証する入力データ検証ステップと、
 前記基準を満たす入力データを前記人工知能機能に入力するデータ入力ステップと、
 前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示ステップと、
を有し、
 前記人工知能機能を訓練することにより訓練済み人工知能機能を含むコンピュータプログラムを製造するプログラム製造方法である。
 本明細書で開示する技術によれば、人工知能機能を備えた装置が所定の仕様に基づいて適切な出力データを生成するように、人工知能機能を検証する人工知能装置及びプログラム製造方法を提供することができる。
 本明細書で開示する技術によれば、人工知能機能を備えた装置が、開発者が予見しないような出力データを生成して、想定し得ない社会問題を生じる事態を引き起こさず、所定の基準に照らして人工知能機能を備えた装置が適切な出力データを生成するように、人工知能機能を検証し、人工知能機能を訓練する人工知能装置、及び人工知能機能を訓練することにより訓練済み人工知能機能を含むコンピュータプログラムを製造するプログラム製造方法を提供することができる。
 なお、本明細書に記載された効果は、あくまでも例示であり、本明細書で開示する技術によりもたらされる効果はこれに限定されるものではない。また、本明細書で開示する技術が、上記の効果以外に、さらに付加的な効果を奏する場合もある。
 本明細書で開示する技術のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
図1は、人工知能システム100のハードウェア構成例を示した図である。 図2は、人工知能機能搭載アプリケーションソフトウェアの構成例を示した図である。 図3は、訓練用人工知能機能を用いてモデル訓練を行う際に、入力データの検証を行うプログラムやデータの動作状況を示した図である。 図4は、工知能機能検証製造用ソフトウェアによる処理手順を示したフローチャートである。 図5は、訓練用人工知能機能を用いてモデル訓練を行う際に、訓練されたデータにおける公平性の有無の検証を行うプログラムやデータの動作状況を示した図である。 図6は、訓練用人工知能機能を用いてモデル訓練を行う際の人工知能機能検証製造用ソフトウェアによる処理手順を示したフローチャートである。 図7は、訓練済みモデルを使った訓練率テスト、データ生成、推論といった処理を行うプログラムやデータの動作状況を示した図である。 図8は、訓練用人工知能機能の出力データが検証用基準を判定するための処理手順を示したフローチャートである。 図9は、訓練用人工知能機能の動作正当性を検証するための処理手順を示したフローチャートである。 図10は、説明提供処理の詳細な手順を示したフローチャートである。 図11は、訓練用人工知能機能の動作正当性に関する説明を提供するために、人工知能機能の学習時に行う準備の処理例を示した図である。 図12は、訓練用人工知能機能の動作正当性に関する説明を提供するために、人工知能機能の学習時に行う準備の処理例を示した図である。 図13は、訓練用人工知能機能の動作の理由の説明を生成する処理を実施する構成例を示した図である。 図14は、訓練用人工知能機能の動作の理由の説明を生成する処理を実施する構成例を示した図である。 図15は、図13に示した処理を表現した擬似プログラムを示した図である。 図16は、図14に示した処理を表現した擬似プログラムを示した図である。 図17は、人工知能機能検証製造用ソフトウェアの状態遷移を示した図である。 図18は、訓練済みモデルの修正時の不公平を解消するための処理手順(訓練フェーズ)を示したフローチャートである。 図19は、訓練済みモデルの修正時の不公平を解消するための処理手順(モデル検証フェーズ)を示したフローチャートである。 図20は、敵対的生成ネットワークを利用してモデルの不公平状態を認識する仕組みを示した図である。 図21は、敵対的生成ネットワークの学習時のシステム構成の一例を示した図である。 図22は、ガイドライン(基準)と選択可能な規則の一例を示した図である。 図23は、ガイドライン(基準)と選択可能な規則の他の例(データ構造)を示した図である。 図24は、ガイドラインから実行可能なチェックリストを自動生成する仕組みを示した図である。 図25は、ガイドラインから生成したチェックリスト(基準)を示した図である。 図26は、チェックリストテンプレートデータ構造の一例を示した図である。 図27は、ガイドラインの適合性検証を達成するシステムを示した図である。 図28は、クラウド上のサーバとクライアントアプリケーション間で使用されるAPIの例を示した図である。
 以下、図面を参照しながら本明細書で開示する技術の実施形態について詳細に説明する。
A.基本機能
 本明細書で提案する人工知能機能は、「アカウンタビリティ」、「公平性」、及び「透明性」という3つの基本機能を備えている。以下、各基本機能について説明しておく。
(1)アカウンタビリティ(accountability):
 アカウンタビリティは、対象とする人工知能機能を備えた装置の出力が所定の仕様に照らして適切であるかどうか検証を行うための基準を操作する機能である。
 対象とする人工知能機能を備えた装置の検証を行うための「基準(criteria)」として、規則(rule)、政策(policy)、ガイドライン(guideline)、仕様(specification)などが、人工知能機能を有するコンピュータプログラムを検証し、人工知能機能を訓練することによりコンピュータプログラムを製造する機能を有する人工知能装置のユーザインタフェースを通じて、外部から視覚的に認識できるような形式で明確に定義されている。そして、これらの基準を関数として対象とする人工知能機能を動作させることで、基準との適合性を判断することができる。
 ここで、「基準」は、対象とする人工知能機能の動作する目的上の制限や、対象とするユーザ、地域などの制限を含む。また、「基準」は、道徳的な観点又は社会的な規範の表現を含む。「基準」は、好ましくは、複数の「基準」の集合からユーザが目的に合わせて適宜選択できるように提供され、それぞれの基準は選択可能な複数の設定項目を含んでおり、検証を必要とするユーザが、検証したい内容に応じて適宜設定項目の選択を変更することができるようなオプションも備えている。オプションは、各項目の優先順位の設定を含む。
 対象とする人工知能機能を備えた装置が基準に関してどのような行動を行っているかを、ユーザが確認できるように、人工知能機能を検証する装置のユーザインタフェースが構成されていることが必要である。対象とする人工知能機能を備えた装置は、「基準」に照らして人工知能機能の出力を検証することにより、人工知能機能の目的外使用などを検出した場合には、ユーザは、人工知能機能を検証する装置のユーザインタフェースを通じて、人工知能機能の動作制御(一部又は全部の機能の停止など)が可能である。
 基準は、例えば、対象とする人工知能機能の用途としての技術分野を指定する項目を含むことができる。技術分野としては、生物学的研究、汎用ボイスエージェントなどを挙げることができる。
(2)公平性(fairness):
 公平性は、対象とする人工知能機能を備えた装置が、すべての人を公平に扱うべきであることにより必要とされる機能である。具体的には、人工知能機能を訓練させるときに入力されるデータの特性の抽出基準や、対象とする人工知能機能を備えた装置から出力されるデータの特性に関する基準において、公平性が確保されていることが要求される。ここで、公平であるということは、ある側面では、特定の特性を持つデータに対する偏り(以下、「バイアス(bias)」とも呼ぶ)がないということ(すなわち、unbiased)である。
 人工知能機能を訓練させるときに用いられる入力データの特性にバイアスある場合には、人工知能機能が訓練したモデルがバイアスを持つこととなる。すなわち、入出力の関係において、特定の入力に対し、所定の出力がなされる割合が、別の出力がされる割合に対してバイアスを持つものとなる可能性が高い。
 バイアスを完全に排除することは可能ではないとしても、人工知能機能を検証する装置などを通じて、バイアスの存在を確認することができ、また、バイアスをできる限りユーザの視点で制御するための機能やユーザインタフェースが必要である、と本出願人は考えている。また、所定の入力に対し、ユーザが望ましくないと考えるバイアスが検出された場合には、このようなユーザインタフェースを通じて、バイアスを修正できるような機能が必要である。
 また別の側面では、公平とは特定のデータが真正(true)であるということである。訓練用の入力データが偽物(fake)である場合、人工知能機能が偽物を本物と認識するようにモデルの訓練が行われるため、望ましくない。偽物を完全に排除することは可能ではないとしても、人工知能機能を検証する装置などを通じて、偽物の存在を確認でき、また、ユーザの視点で偽物をできる限り制御するための機能やユーザインタフェースなどが必要である、と本出願人は考えている。さらに、人工知能機能を検証する装置は、対象とする人工知能機能において公平性が確保されない状態を認識した場合には、ユーザインタフェースなどを通じて、人工知能機能の動作制御(一部又は全部の機能の停止など)が可能であることが望ましい。
 また、人工知能機能が適用される目的や分野に応じて、バイアスをコントロールするようにしてもよい。例えば、基準が生物学的研究用を目的とすることを示唆する場合においては、人種についてのバイアスを広く許容するように設定することができる。一方、基準が家庭で使われるボイスエージェント用を目的とすることを示唆する場合においては、人種についてのバイアス(つまり、偏見(prejudice))をできる限り排除するように設定することができる。他の例として、新たなゲームキャラクタを自動で生成することを目的として人工知能機能が応用される場合には、訓練用画像の真正判定の基準を緩くすることもできる。一方、インターネットにおいて著作物が偽物であるかどうか判定することを目的とする応用の場合には、訓練用画像の真正判定はできる限り厳格に行うようにできる。このように、人工知能機能を備えたシステムの開発時に、ユーザが基準を選択できるようにすることで、所望の人工知能装置を開発することができる。
(3)透明性(transparency):
 透明性は、対象とする人工知能機能を備えた装置の入出力の関係を特定する機能である。透明性は、人工知能機能を有する装置がユーザに対して行う決定や行為(行動)について、人工知能機能を検証する装置などが、ユーザに対して説明(explain)し、正当化(justify)するための機能ということもできる。
 本実施形態に係る人工知能機能を検証する装置は、上述した透明性の観点で定義される「基準」に関して、人工知能機能を有する装置の行動を、ユーザインタフェースなどを通じて説明し正当化できるように構成される。
 第一に、人工知能機能を検証する装置は、対象とする人工知能機能の「入出力の関係性」(すなわち、どの入力が、どの出力を生成したか)を、ユーザインタフェースなどを通じて説明できる。すなわち、人工知能機能を検証する装置は、ブラックボックス化した人工知能機能の行動について、適切な理由を提供することができる。例えば、特定の出力を生成した入力を、出力から逆トレースして特定できる。
 第二に、人工知能機能を検証する装置は、対象とする人工知能機能がそのような「入出力関係を生じた理由」について、ユーザインタフェースなどを通じて説明できる。すなわち、人工知能機能を検証する装置は、単に出力から入力を特定するだけでなく、人工知能機能が使用する訓練済みモデルを生成するために使用された訓練用データセット(出力の理由となるもの)を訓練後に特定して、訓練用データセットと人工知能機能の出力との関係を検証することができる。人工知能機能を検証する装置は、対象とする人工知能機能を備えた装置が起こした状況の原因を特定し、基準に基づいて説明し、正当化することができる。例えば、人工知能機能を検証する装置は、対象とする人工知能機能を備えた装置の行動が正当化できない状態になったと判定した場合には、ユーザインタフェースなどを通じて、その人工知能機能の動作制御(一部又は全部の機能の停止など)が可能である。
B.人工知能システムの構成例
 続いて、人工知能システムの構成例について説明する。図1には、本実施形態に係る人工知能システム100のハードウェア構成例を模式的に示している。ここで、人工知能システム100の構成の一部又はクラウドインフラストラクチャを除く全部を1つの人工知能装置(例えば、ロボットやコンピュータ装置)として構成してもよい。
 図示の人工知能システム100は、システム全体を統括的にコントロールするCPU(Central Processing Unit)101と、CPU101が使用する仮想記憶装置102を含んでいる。本実施形態では、CPU101は、ニューラルネットワーク(NN)アクセラレータを搭載することを想定している。また、仮想記憶装置102は、CPU101のローカルメモリとしての1次記憶装置と、キャッシュメモリと、ハードディスク装置(Hard Disc Drive:HDD)などの大容量外部記憶装置からなる2次記憶装置を含んだ概念である。仮想記憶装置102上には、オペレーティングシステム(OS)と、OSが提供する実行環境下で動作する複数の(若しくは、CPU101が実行する)ソフトウェアが搭載されている。
 また、バス103を介して各種のセンサー及びアクチュエータがCPU101並びに仮想記憶装置102と相互接続されている。各センサーが取得したセンサーデータは、仮想記憶装置102に取り込まれ、CPU101が実行するソフトウェアによって適宜処理される。また、各アクチュエータは、CPU101からの指令(若しくは、ソフトウェアの実行結果)に基づいて駆動する。
 図1に示す例では、人工知能システム100は、センサーとして、カメラ104、並びにマイクロホン105を備えている。カメラ104は、例えばCMOS(Complementary Metal Oxyde Semiconductor)やCCD(Charge Coupled Device)などのイメージセンサーを用いて構成される。また、カメラ104は、2個以上のイメージセンサーを用いた立体視カメラであってもよい。また、マイクロホン105は、2個以上の収音素子を用いたマイクロホンアレイであってもよい。
 また、人工知能システム100は、アクチュエータとして、ディスプレイ106とスピーカ107を備えている。ディスプレイ106は、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイなどからなる。ディスプレイ106は、画面にタッチパネルが重畳されたタッチパネル式ディスプレイであってもよい。但し、タッチパネルは、アクチュエータではなくセンサーに分類することができる。また、スピーカ107は、複数のスピーカを組み合わせたスピーカーアレイ(多チャンネルスピーカー若しくは超多チャンネルスピーカー)であってもよい。スピーカーアレイは、振動を生成する1つ以上の加振器(アクチュエータ)によってディスプレイ106の画面を振動させることで音声出力を行う「アコースティックサーフェス」を含んでもよい。
 人工知能システム100は、その他のセンサー群108及びアクチュエータ群109をさらに備えている。センサー群108は、キーボードやマウスなどの一般的な入力デバイスを含んでもよい。また、センサー群108は、人工知能機能を利用するユーザの生体情報をセンシングする各種生体センサーや、人工知能機能が利用される環境をセンシングする各種環境センサーなどを含んでもよい。
 本実施形態では、人工知能機能検証製造用ソフトウェアと、人工知能機能搭載アプリケーションソフトウェアと、ユーザインタフェースを提供するGUI(Graphical UI)が仮想記憶装置102に搭載されることを想定している。これらのソフトウェアは、人工知能システム100の動作時に、OSによって仮想記憶装置102にロードされ、CPU101上で実行される。
 例えば、人工知能機能搭載アプリケーションソフトウェアは、CPU101上で動作する際に、人工知能機能検証製造用ソフトウェアに備えられている一群のアプリケーションプログラミングインタフェース(API)を介して、間接的にOSの機能にアクセスする。そして、人工知能機能搭載アプリケーションソフトウェアは、人工知能機能検証製造用ソフトウェアによる検証を受け、人工知能機能の訓練を通じて製造されることになる。
 さらに、人工知能システム100は、仮想記憶装置102上でGUIを動作させ、タッチパネル、キーボード、又は音声入力を用いて、ユーザが人工知能機能検証製造用ソフトウェアの動作や入出力を制御することができる。また、人工知能システム100は、人工知能機能搭載アプリケーションソフトウェアの必要に応じて、カメラ104やマイクロホン105、スピーカ106、あるいはその他のセンサー群108、アクチュエータ群109を使った入出力動作を行う。
 また、人工知能システム100は、通信部110をさらに備えている。通信部110は、イーサネット(登録商標)などの有線通信機能、又はWi-Fi(登録商標)などの無線通信機能を備え、さらにルータ(図示しない)などを経由して外部ネットワーク上のクラウドインフラストラクチャ120に相互接続されている。クラウドインフラストラクチャ120は、サーバ装置とストレージなどで構成されている。後述するように、人工知能システム100は、クラウドとの間でデータ交換を行ったり、人工知能機能に関する処理の一部又は全部を依頼したりするAPIを装備している。
 人工知能システム100上では、人工知能機能検証製造用ソフトウェアが動作して、アプリケーションソフトウェアに搭載する人工知能機能の製造を行う。人工知能機能検証製造用ソフトウェアは、人工知能機能の製造の過程において、人工知能機能への入力データや訓練データの検証、人工知能機能の出力データの検証などを実施する(後述)。人工知能機能検証製造用ソフトウェアによって製造された人工知能機能搭載アプリケーションソフトウェアは、同じ人工知能システム100上で動作してもよいし、他の装置にロードして使用されてもよい。
 なお、人工知能機能検証製造用ソフトウェアが動作し、人工知能機能の検証や訓練を行う装置のことを、本明細書では「人工知能機能を検証する装置」とも呼ぶ。また、人工知能機能を検証する装置による検証や訓練の対象となる人工知能機能が動作する装置のことを、本明細書では「人工知能機能を備えた装置」とも呼ぶ。人工知能機能搭載アプリケーションソフトウェアを実行するコンピュータは、「人工知能機能を備えた装置」ということもできる。
 図2には、仮想記憶装置102上にロードされる、人工知能機能搭載アプリケーションソフトウェアの構成例を模式的に示している。一般に、アプリケーションは、プログラムとデータからなる。人工知能機能搭載アプリケーションソフトウェアのプログラムとしては、少なくとも訓練用人工知能機能(train)と、実行用人工知能機能(deploy)の2つが提供される。これらは記憶領域上で明確に異なるデータ及びプログラムとして構成してもよいし、共通のデータ及びプログラムをモード指定により使うように構成してもよい。また、人工知能機能搭載アプリケーションの作業用の記憶領域としては、入力データ記憶領域、出力データ記憶領域、及び、実行用モデル記憶領域がある。さらに、訓練用人工知能機能によって訓練され、出力され、且つ、長期的に維持される訓練済みモデル記憶領域が割り当てられている。実行用モデル記憶領域は、通常、訓練済みモデル記憶領域のコピーであり、実行用人工知能機能によって利用される。モードを指定する場合には、共通の記憶領域である。
 訓練用人工知能機能及び実行用人工知能機能は、それぞれディープラーニング(Deep Learning)と称される機械訓練によって提供される機能である。ディープラーニングは、多層のニューラルネットワーク(Deep Neural Network:DNN)によって実現される。DNNは、画像データや、周波数及び時間の2次元データとして表現された音声データの訓練に有効である。DNNは、畳み込み層、プーリング層、及び全結合層からなる畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)、時系列データ訓練などに応用される再帰型ニューラルネットワーク(Recurrent Neural Network:RNN)、次元圧縮によって抽象的なデータを訓練するオートエンコーダ(Autoencoder)など、さまざまなネットワークを組み合わせて実現することができる。
 以下では、本実施形態に係る人工知能システム100が人工知能機能検証製造用ソフトウェアによって人工知能機能の検証並びに製造を行うための具体的な構成や処理方法に関するいくつかの実施例を説明しながら、人工知能システム100が備える基本的な機能などについて説明する。
 ここでは、データの検証(learning data prior-verification)に関する人工知能システム100の実施例について説明する。
 図3には、人工知能機能搭載アプリケーションの訓練用人工知能機能を用いてモデル訓練を行う際に、基準に基づいて、入力データの検証を行うプログラムやデータの動作状況を例示している。
 人工知能機能検証製造用ソフトウェアは、訓練用人工知能機能にデータが入力される前に、入力データ検証用基準を用いて、データのフィルタリングを行うことができる。具体的には、人工知能機能検証製造用ソフトウェアは、仮想記憶装置102内の不揮発性メモリに記憶される入力データ及び入力データ検証用基準を取り出すと、入力データが入力データ検証用基準を満たすか否かを検証する前処理を実施して、入力データを訓練用人工知能機能に入力するかどうかの判断を行う。
 図4には、訓練用人工知能機能を用いてモデル訓練を行う際の人工知能機能検証製造用ソフトウェアによる処理手順(入力データのフィルタリングを行う場合)をフローチャートの形式で示している。
 人工知能機能検証製造用ソフトウェアは、まず入力データを読み込む(ステップS401)。入力データは、画像データや音声データを訓練用人工知能機能に対する入力用に前処理されたものであればよい。また、このような入力データに対して、メタデータ(属性データ)が付加されている。メタデータは、例えば、データ取得時に、データと関連して付加されたものであり、データの取得場所(例えばGPS(Global Positioning System)データ)、データに含まれるオブジェクトのデータ(例えば、写真に写っている人物の国籍、人種などの個人特定情報)、データ作成者の個人特定情報(名前、国籍、人種、趣味などの機微情報)である。
 次に、人工知能機能検証製造用ソフトウェアは、ステップS401で読み込んだ入力データと検証用基準との比較を行う(ステップS402)。図4では、説明の簡素化のため、検証用基準の比較を単一の判定ステップとして示されているが、検証用基準が複数ある場合には、入力データと各々の検証用基準との比較を順に行うべく、複数の判定ステップになるものとする。検証用基準は、例えば、「人種などの特定の個人特定情報データが含まれているか」などのチェック項目であればよい。
 ステップS401で読み込んだ入力データが(すべての)検証用基準を満たしている場合には(ステップS402のYes)、人工知能機能検証製造用ソフトウェアは、入力データ及びそのメタデータを訓練用人工知能機能に入力して、訓練を実施する(ステップS405)。
 一方、ステップS401で読み込んだ入力データが(少なくともいずれかの)検証用基準を満たさない場合には(ステップS402のNo)、人工知能機能検証製造用ソフトウェアは、その入力データ(及びデータ特定情報)を違反項目(違反した検証用基準の項目)とともにGUI上に表示して(ステップS403)、ユーザに対して次に行うべき処理を決定するように促す。ステップS403では、検証用基準に違反した入力データとともに(又は、入力データの代わりに)、入力データを特定するデータ特定情報をGUI上に表示するようにしてもよい。また、入力データのメタデータも併せてGUI上に表示するようにしてもよい。
 ユーザは、GUI(又は、その他の入力デバイス)を介して、次に行うべき処理を指示する。そして、人工知能機能検証製造用ソフトウェアは、ユーザからの指示入力に基づいて、処理を続行する(ステップS404)。ユーザが指示する処理としては、表示されたデータを、違反データとして別の記憶装置に保存すること、又は、違反データを削除することなどが挙げられる。
 図4に示した処理手順(若しくは、第1の実施例)によれば、入力データを検証用基準と比較判定することでアカウンタビリティの実効性を担保するとともに、透明性を入力データの面で支援することができる、という効果がある。
 続いて、人工知能機能の訓練における訓練データのバイアス検出(bias detection)に関する人工知能システム100の実施例について説明する。
 図5には、人工知能機能搭載アプリケーションの訓練用人工知能機能を用いてモデル訓練を行う際に、基準に基づいて、訓練されたデータにおける公平性の有無の検証を行うプログラムやデータの動作状況を例示している。
 人工知能機能検証製造用ソフトウェアは、訓練用人工知能機能によってラベリングされた出力データの統計データを収集するように構成されている。これによって、訓練されたデータがラベルの観点で、公平性が担保されているかどうか検証することができる。なお、検証用基準は、公平性を検証するための基準をあらかじめ選択することができる。あらゆるラベルについて公平である場合には、「すべてのクラスタ」とすればよい。また、「人種」、「国籍」など一部のラベルについてのみバイアスを検証することで足りるのであれば、該当するクラスタを公平性検証用基準として指定すればよい。また、データが偽物である可能性に着目するのであれば、「真偽性」のラベルについて検証するように設定することもできる。
 図6には、訓練用人工知能機能を用いてモデル訓練を行う際の人工知能機能検証製造用ソフトウェアによる処理手順(出力データの不公平状態を検出する場合)をフローチャートの形式で示している。なお、不公平状態の検出処理は、一定間隔毎に実行するようにしてもよいし、ユーザが「処理開始」を指示したことに応答して実行するようにしてもよい。ユーザは、例えば、GUIで表示された「処理開始」ボタン(ソフトボタン)をタッチパネルやキーボードで選択動作する、音声で「処理開始」と話し掛ける、などさまざまな方法で処理開始を指示することができる。
 人工知能機能検証製造用ソフトウェアは、まず、記憶されている訓練ラベルデータ統計情報を読み込む(ステップS601)。ここで、統計情報がユーザインタフェース上にグラフとして表示されることが望ましい。
 次に、人工知能機能検証製造用ソフトウェアは、検証用基準に照らして、訓練ラベルデータの分布から検証対象とされる項目について、特定のデータラベルへの不公平な状態が検出されるか、すなわちラベルデータの数に関して、データ量にばらつきがあるかどうかのチェックを行う(ステップS602)。検証用基準としては、「平均を20%超過するデータがあるかどうか」など、具体的な検証用基準を与えることもできる。また、図6では、説明の簡素化のため、検証用基準を1つとする単一の判定ステップとして示されているが、検証用基準が複数ある場合には、各検証用基準について順に不公平状態をチェックするべく、複数の判定ステップになるものとする。
 ステップS601で読み込んだ訓練ラベルデータの分布が(すべての)検証用基準を満たしている場合には(ステップS602のNo)、人工知能機能検証製造用ソフトウェアは、訓練用人工知能機能に訓練を継続させる(ステップS605)。
 一方、ステップS601で読み込んだ訓練ラベルデータの分布が(少なくともいずれかの)検証用基準を満たさない状態が検出された場合には(ステップS602のYes)、人工知能機能検証製造用ソフトウェアは、GUI上で、統計情報のグラフを更新するともに、不公平な状態(例えばバイアスが強い状態)の検出されたデータラベルを表示して(ステップS603)、ユーザに対して次に行うべき処理を決定するように促す。
 ユーザは、GUIを通じて、不公平な状態のデータラベルが判然とする。そして、ユーザは、GUI(又は、その他の入力デバイス)を介して、次に行うべき処理を指示する。人工知能機能検証製造用ソフトウェアは、ユーザからの指示入力に基づいて、処理を続行する(ステップS604)。ユーザが指示する処理としては、不公平が検出されたデータを別の記憶装置に保存することなどが挙げられる。また、ユーザインタフェースなどを通じて、人工知能機能の動作制御(一部又は全部の機能の停止など)が可能である。
 図6に示した処理手順(若しくは、第2の実施例)によれば、バイアスのない公平な訓練データを用いて、公平性を有するように人工知能機能を訓練させることができるという効果がある。
 続いて、訓練済みモデルを使った出力データの検証及び説明の提供(run time data verification and AI behavior explanation provision)に関する人工知能システム100の実施例について説明する。
 図7には、人工知能機能搭載アプリケーションの訓練用人工知能機能を用いて、訓練済みモデルを使った訓練率テスト、データ生成、推論といった処理を行うプログラムやデータの動作状況を例示している。訓練率テストでは、訓練用データとは異なるテストデータを入力して訓練率を測定するものとする。ここでは、人工知能機能検証製造用ソフトウェアは、実行用人工知能機能のデータ入出力を管理しつつ、訓練用人工知能機能の生成するデータ出力の検証及び説明提供を行う。
 人工知能機能は、複数の人工知能機能(例えば、顔認識用や音声認識用など機能別、あるいはゲーム用や監視用など目的用途別)を組み合わせて構成されることもある。このような場合には、個別の人工知能機能毎に上述したようなテストデータを用いた訓練率の測定を行う。そして、測定結果が所定の条件を達成できていない人工知能機能については、再び訓練用人工知能機能として訓練を再開させるようにすることができる。この場合の条件は、動作の正当性などの基準として与えることができる。例えば「訓練率が98%以上であること」というような基準を設けることができる。
 人工知能機能検証製造用ソフトウェアは、出力データの検証及び説明の提供の際、出力検証・動作の正当性等の基準、及び動作が起こった理由についての説明方法を、外部のデータベースからメモリ内に取り込む、または、外部のデータベースと通信によって取得するようにされている。ここで、動作が起こった理由についての説明方法は、プログラムとして提供されていてもよい。
 図8には、人工知能システム100において、人工知能機能検証製造用ソフトウェアによって、訓練用人工知能機能の出力データが検証用基準を判定するための処理手順をフローチャートの形式で示している。
 まず、人工知能機能検証製造用ソフトウェアは、訓練用人工知能機能の出力データを受信すると(ステップS801)、その出力データが検証用基準を満たしているかどうかのチェックを行う(ステップS802)。この際、検証用基準を所定の記憶領域から読み出して判断がなされる。
 ステップS801で受信した出力データが検証用基準を満たしている場合には(ステップS802のYes)、人工知能機能検証製造用ソフトウェアは、実行用人工知能機能を利用するアプリ―ケーションが推論などを行うことができるように、その出力データをアプリケーションに提供する(ステップS805)。
 一方、ステップS801で受信した出力データが検証用基準を満たしていない場合には(ステップS802のNo)、人工知能機能検証製造用ソフトウェアは、データ(及びデータを取得できる識別子情報)を、基準に照らして違反と定義される項目とともに、人工知能システム100のGUI(ディスプレイ106など)を介して表示する(ステップS803)。なお、データを取得できる識別子情報は、例えばデータの置き場所を特定するURI(Universal Resource Identifier)であってもよい。さらに、人工知能機能検証製造用ソフトウェアは、GUIを通じたユーザの命令に従って、訓練用人工知能機能の動作正当性の検証処理を行う(ステップS804)。
 図9には、図8に示したフローチャート中のステップS804で実行される、訓練用人工知能機能の動作正当性を検証するための処理手順をフローチャートの形式で示している。
 人工知能機能検証製造用ソフトウェアは、まず、状況についての説明提供が必要かどうかを判定する(ステップS901)。
 例えば、人工知能システム100が、ユーザが説明提供の必要の有無を選択動作するためのユーザインタフェースを、人工知能システム100で用意するようにしてもよい。ユーザインタフェースは、GUI又はタッチパネルを利用したソフトウェアボタン、キーボード操作、ユーザの音声コマンドの音声認識などでもよい。ユーザの選択動作に基づいて、説明の必要性についての説明提供フラグを設定することができる。説明提供フラグが1である場合には説明提供が必要と判定し、説明提供フラグが0であれば、説明提供が不要と判定する。
 説明提供が必要な場合には(ステップS901のYes)、人工知能機能検証製造用ソフトウェアは、説明提供処理を実施する(ステップS905)。図10に説明提供処理の手順を示しているが、詳細については後述に譲る。そして、説明提供処理が終了したら、ステップS901に戻る。
 また、説明提供が不要な場合には(ステップS901のNo)、人工知能機能検証製造用ソフトウェアは、続いて、訓練用人工知能機能から出力されたデータ(ラベル)が正常な範囲で、且つ、動作非正当な範囲であるかどうかを判定する(ステップS902)。その際、出力データの検証並びに動作の正当性の検査用基準を所定の記憶領域から読み出して判定処理がなされる。
 訓練用人工知能機能の出力データが検証用基準を満たし、且つ、動作が正当な範囲である場合には(ステップS902のYes)、人工知能機能検証製造用ソフトウェアは、実行用人工知能機能を利用するアプリ―ケーションが推論などを行うことができるように、その出力データを同アプリケーションに提供する(ステップS906)。
 一方、訓練用人工知能機能の出力データが検証用基準を満たしていないと判断される場合には(ステップS902のNo)、人工知能機能検証製造用ソフトウェアは、データ(及びデータを取得できる識別子情報)を、基準に照らして違反と定義される項目とともに、人工知能システム100のGUI(ディスプレイ106など)を介して表示する(ステップS903)。なお、データを取得できる識別子情報は、例えばデータの置き場所を特定するURIであってもよい。さらに、人工知能機能検証製造用ソフトウェアは、GUIを通じたユーザの命令に従って、訓練用人工知能機能の動作正当性の検証処理を続行する(ステップS904)。
 図10には、図9に示したフローチャート中のステップS905で実行される説明提供処理の詳細な手順をフローチャートの形式で示している。
 人工知能機能検証製造用ソフトウェアは、訓練用人工知能機能の動作の理由を説明する方法として定義される方法に従って、プロセッサ(CPU101)上で処理を行う(ステップS1001)。説明方法は、規則、スクリプト、関数、プログラム、又はディープニューラルネットワーク(DeepNeural Network)など人工知能の技術から選択することができる。
 説明の結果は、人工知能システム100のGUI(ディスプレイ106など)を介して表示される(ステップS1002)。そして、人工知能機能検証製造用ソフトウェアは、GUIを通じたユーザの命令に従って、訓練用人工知能機能の動作正当性の検証処理を続行する(ステップS1003)。
 図11及び図12には、人工知能システム100が、図10に示した処理手順に従って、訓練用人工知能機能の動作正当性に関する説明を提供するために、人工知能機能の学習時に行う準備の処理例を示している。
 図11には、訓練用人工知能機能を学習させる際に、当該人工知能機能が生成したラベルとデータとを、連想記憶において関連付けて記憶する方法、又は連想記憶の代わりにブロックチェーン技術を用いてネットワーク上に分散記憶させる方法を図解している。同図に示す構成では、人工知能システム100において訓練用人工知能機能を訓練する1つの方法として、訓練用人工知能機能の出力ラベルと所望のラベル(図示せず)を入力として、損失関数(lossfunction)を用いて計算された結果を用いて、当該訓練用人工知能機能の訓練(ニューラルネットワークの場合、ネットワークを構成する重みの変更)を行うための訓練用入力が生成される。
 また、図12には、連想記憶の代わりに、ディープニューラルネットワークを用いて、状況の説明を行うテキストを訓練用人工知能機能の入力データと出力ラベルとともに学習するための装置構成例を示している。同図では、訓練用人工知能機能が用いる第1の損失関数とともに、ディープニューラルネットワークが用いる第2の損失関数を用いている。人工知能システム100において状況の説明を行うディープニューラルネットワークを訓練するために、ディープニューラルネットワークの出力テキストと所望のテキスト(図示せず)を入力として、第2の損失関数を用いて計算された結果を用いて、当該ディープニューラルネットワークのネットワークを構成する重みの変更を行うための訓練用入力が生成される。
 図13及び図14には、人工知能システム100が、図8に示した訓練用人工知能機能の出力データの検証処理において訓練用人工知能機能の動作の理由を説明する必要が生じた場合に、図10に示した処理手順において説明を生成する処理を実施するための構成例を示している。
 図13には、人工知能機能の学習時に行う準備として図11に示した処理を行う場合に対応する構成例である。連想記憶に対してラベルを提供することで、関連する一連のデータを取り出すことができる。連想記憶は、ハッシュ技術を用いて複数のデータを同一のラベルに対して関連付けることができる。したがって、ラベルを提供することで、第1の関連データ(画像など)を出力させることができる。又は、連想記憶の代わりにブロックチェーン技術を用いてネットワーク上に分散記憶させることもできる。
 図15には、図13に示した処理を表現した擬似プログラムを示しているが、図10に示したフローチャート中で指定された動作の理由説明方法がプログラムである場合に相当する。このプログラムが実行されることで、ディスプレイ106上に、「下記のデータ入力が訓練時に入力されたことが原因の1つです:」と表示されたことに応じて、連想記憶から取り出されたデータを表示する。データは1つでもよいし、複数まとめて表示するようにしてもよい。図15に示す例では、データが1つずつ表示されるようになっており、「他にデータが必要ですか?」(図示しない)といった出力に応じて、ユーザが「Yes」に相当する(肯定的な)入力をタッチパネル、キーボード、又は音声によって行うことにより、次のデータが表示されるように設計されている。
 また、図14は、人工知能機能の学習時に行う準備として図12に示した処理を行う場合に対応する構成例である。ディープニューラルネットワークに実行用人工知能機能が生成したラベルを入力することにより、対応する理由についてテキストが出力される。なお、図14に示す例ではラベルのみをディープニューラルネットワークに入力しているが、ディープニューラルネットワークの構成によっては、ラベルの他に、実行用人工知能機能に入力されるデータをともに入力することでテキストを生成するようにしてもよい。また、ディープニューラルネットワークの出力としては、テキストのみだけではなく、関連する画像を表示するようにしてもよい。
 図16には、図14に示した処理を表現した擬似プログラムを示しているが、図10に示したフローチャート中で指定された動作の理由説明方法が人工知能(例えば、ディープニューラルネットワーク)である場合に該当する。ディープニューラルネットワークの処理がニューラルネットワークアクセラレータを含むプロセッサ(CPU101)上で実行された結果、ディスプレイ106上にデータが表示され、同時にテキストがスピーカなどを用いて音声により出力されることで、又はディスプレイ106上にテキストが表示されることで再現される。
 第3の実施例によれば、人工知能機能を動作させるアプリケーションの行動をより透明性のあるものにすることが可能になる、という具体的な効果がある。
 続いて、人工知能機能の公平性を実現する方法に関する実施例について説明する。
 図17には、人工知能機能検証製造用ソフトウェアの状態遷移図を示している。なお、上述した各実施例にも、同様の状態遷移を組み込むことができるものと理解されたい。
 本実施形態に係る人工知能機能検証製造用ソフトウェアは、「通常モード(normal)」、「検証モード(aware)」、及び「説明モード(explain)」という3つのモード間を遷移することにより実行状態を決定する。通常モードでは、人工知能機能検証製造用ソフトウェアが検証を行わず、人工知能システム100が人工知能機能のみを使用するモードである。つまり、人工知能機能検証製造用ソフトウェアは、事実上、特段の処理を行わない。検証モードでは、人工知能機能検証製造用ソフトウェアは検証を行う。また、説明モードでは、人工知能機能検証製造用ソフトウェアは、検証処理に加え、検証を通じて、入力されるデータなどに異常が検出された場合に、説明を提供する処理を行う。検証モード下で、異常が検出された場合、人工知能機能検証製造用ソフトウェアは人工知能システム100全体の動作を停止させるようにしてもよい。
 図18には、人工知能機能検証製造用ソフトウェアが訓練済みモデルの修正時の不公平を解消するための処理手順をフローチャートの形式で示している。但し、図示の処理手順は、人工知能機能検証製造用ソフトウェアが上記の3つのモード間を遷移することを前提とする。
 まず、訓練フェーズにおける処理手順について、図18を参照しながら説明する。訓練フェーズでは、人工知能機能検証製造用ソフトウェアは、人工知能機能を訓練する。人工知能機能の訓練とは、「学習」に相当する。人工知能機能検証製造用ソフトウェアは、訓練対象データを所定の記憶領域から読み出し、さらにその後に訓練対象データに関連付けられているラベル情報(メタデータと呼ぶこともある)などを取り出す(ステップS1801)。ラベルはデータの提供者によって付加されるデータに関する識別情報である。例えば、データが、猫と人が表示される画像データである場合には、各画像データに「猫」、「人」などのラベルが付けられる場合もあれば、「猫」、「男」、「一人」などとラベルが付けられることもある。ラベルは、ディープラーニングなどの訓練においては重要なデータである。訓練フェーズが終了するまで、訓練対象データ及びラベル情報の読み出しを繰り返し実施するものとする。
 次いで、人工知能機能検証製造用ソフトウェアは、訓練対象データが不公平なデータかどうか(若しくは、不公平なデータの可能性があるかどうか)を、人工知能機能検証製造用ソフトウェアラベルなどに基づいてチェックする(ステップS1802)。例えば、バイアスを生じている場合や、偽データである場合には、訓練対象データは不公平なデータである。具体的には、所定の記憶領域から読み出した「不公平検証用基準に照らして、訓練対象データの不公平性をチェックする。
 訓練対象データが不公平なデータでない(若しくは、不公平なデータである可能性がない)と判定された場合には(ステップS1802のNo)、人工知能機能検証製造用ソフトウェアは、「通常モード」に移行して、データをフォーマット変換など前処理した後、訓練対象データを訓練用人工知能機能に入力して、訓練を実施する(ステップS1804)。訓練には、ディープニューラルネットワークなどを活用する。その後、人工知能機能検証製造用ソフトウェアは、更新された人工知能機能のモデル(一般には、ニューラルネットワークのノードの重みの集合)を訓練済みモデルとして、所定の記憶領域に格納する。
 一方、訓練対象データが不公平なデータである(若しくは、不公平なデータの可能性がある)と判定された場合には(ステップS1802のYes)、人工知能機能検証製造用ソフトウェアは、モードを「通常モード」から「検証モード」に変更する(ステップS1803)。その後、人工知能機能検証製造用ソフトウェアは、検証モードで訓練対象データを前処理した後、訓練対象データを訓練用人工知能機能に入力して、訓練を実施する(ステップS1805)。訓練には、ディープニューラルネットワークなどを活用する。
 ステップS1805で実施される訓練対象データの前処理は、別の処理フローにおいて不公平なデータである場合には、データの一部を修正したり、修正が不可能な場合には、フィルタリングによってデータ入力対象から削除したりする、といった処理が挙げられる。また、GUIを通じて、ユーザに対して、処理方針の入力を求めるようにすることもできる。この場合には、不公平を生じうる対象データ(画像、音声データ、テキストなど)をディスプレイに表示するとともに、処理候補のリスト(「修正」、「削除」、「許可」)の中からユーザが選択できるように表示し、ユーザからの入力(タッチパネルやキーボードで選択、又は音声によりリスト中の項目を選択)を待って訓練対象データの前処理を進めるようにすればよい。
 次に、モデル検証フェーズにおける処理手順について、図19を参照しながら説明する。モデル検証フェーズでは、人工知能機能検証製造用ソフトウェアは、モードを「通常モード」から「検証モード」に変更する(ステップS1810)。そして、人工知能機能検証製造用ソフトウェアは、訓練済みモデルを対象の人工知能機能に設定した上で、所定の記憶領域から検証対象データを読み込んで、上記人工知能機能を用いて推論処理を行う(ステップS1811)。人工知能機能検証製造用ソフトウェアは、モデル検証フェーズが終了するまで、すべての検証対象データについてステップS1811の処理を繰り返し行う。
 次いで、人工知能機能検証製造用ソフトウェアは、推論結果として上記人工知能機能が生成したラベルに基づいて、「不公平を生じている」状態かどうかのチェックを行う(ステップS1812)。例えば、バイアスのあるラベルを生じてしまった場合や、偽データが入力されてしまったことが示される場合には、不公平を生じている状態と判定される。
 不公平を生じていない場合には(ステップS1812のNo)、人工知能機能検証製造用ソフトウェアは、ステップS1811に戻って次のデータを読み出し、上記人工知能機能の推論処理を継続する。
 一方、不公平を生じている場合には(ステップS1812のYes)、人工知能機能検証製造用ソフトウェアは、不公平抑制処理を行う(ステップS1813)。不公平抑制処理として、例えば、ラベルの記憶処理と通知処理の2つの方法を挙げることができる。前者の方法では、人工知能機能検証製造用ソフトウェアは、図11又は図12に示したように、バイアスのあるラベル、又は偽データであることを示すラベルを生じた入力データをユーザの検証のために、出力ラベルとともに記憶装置に記憶するようにした上で、同じラベルの出力を抑制するようにする。また、後者の方法では、人工知能機能検証製造用ソフトウェアは、不公平が生じたことを、ディスプレイ上に表示したり、音声によって通知したりする。このような通知処理に加え、同じ入力データに対して、訓練済みモデルを再度訓練するようにすることもできる。
 人工知能機能検証製造用ソフトウェアは、不公正抑制処理を行った後、モデルを更新するとともに、同じデータに関して、不公平抑制後の訓練済みモデルを用いて推論処理を再度実施する(ステップS1814)。そして、人工知能機能検証製造用ソフトウェアは、訓練済みモデルの不公平状態が改善したか、すなわち、不公平状態は生じていないことをチェックする(ステップS1815)。
 訓練済みモデルの不公平状態が改善された場合には(ステップS1815のYes)、ステップS1811に戻って、人工知能機能検証製造用ソフトウェアは、別の検証用データを読み出して、モデル検証を継続する。
 一方、訓練済みモデルの不公平状況が再度確認された場合には(ステップS1815のNo)、人工知能機能検証製造用ソフトウェアは、別の不公平抑制処理を実施する(ステップS1816)。例えば、人工知能機能検証製造用ソフトウェアは、ステップS1813で実施した処理とは異なる訓練方法を実施するようにする。この処理の後、訓練済みモデルを更新するとともに、最初の不公平抑制処理(ステップS1813)に戻る。
 本実施例では、不公平状態の認識を行う必要がある。例えば、人工知能機能が所定の画像やラベルに応じて関連する画像を生成する機能を有し、その人工知能機能が生成した画像データに不公平が生じている場合に、その検出を行う方法として、敵対的生成ネットワーク(Generative Adversarial Network:GAN)を利用することができる。
 図20には、敵対的生成ネットワークを利用して、人工知能機能の出力データの不公平状態を認識する仕組みを図解している。図示の敵対的生成ネットワークにおいては、ランダムに生成されたベクトルの入力に応じて出力を任意の不公平画像(所定のラベル入力に対してバイアスの乗った画像、又は実際にはない画像)を生成する生成ネットワーク(不公平画像生成ネットワーク)2001と、通常の画像を入力して画像の真偽を判断する差別化ネットワーク2002を利用する。
 不公平画像生成ネットワーク2001と差別化ネットワーク2002を相互に動作させつつ、排他的時間をずらして訓練することで、差別化ネットワーク2002は、入力された画像を不公平なものであるかどうかを判定するようにさせることができる。一方、不公平画像生成ネットワーク2001は、できる限り、差別化ネットワーク2002が不公平又は偽であると判断するような画像を出力するように学習する。
 差別化ネットワーク2002が生成したラベルが一定の値を超えている場合には不公平(バイアスがある、または偽画像である)と判断することができる。したがって、差別化ネットワーク2002を、図18に示したフローチャート中の不公平状態の認識処理に利用することができる。
 図21には、図20に示した敵対的生成ネットワークの学習時のシステム構成の一例を示している。
 不公平画像生成ネットワーク2002は、ランダムに生成されたベクトルを入力して画像データを生成する。ここで、不公平画像生成ネットワーク2001が出力する画像は、差別化ネットワーク2002により不公平であると判断されるべき画像データである。
 不公平画像生成ネットワーク2001が出力する画像データを差別化ネットワーク2002に入力し、出力ラベルを検証する。出力ラベルは0から1の間の実数であり、0に近い場合には「偽」、1に近い場合は「真」と判断される。この状況では、不公平画像生成ネットワーク2001を訓練しようとしているため、真偽を示す出力ラベルと、生成されたデータをもとに訓練勾配計算を行う。一例として、出力ラベルが一定の値(例えば0.5)より大きい場合には、差別化ネットワーク2002を「うまく騙すことができた」と判断し、出力した画像が、今後も出力され易くするようにバックプロパゲーションによって、不公平画像生成ネットワーク2001を構成するディープニューラルネットワークのノードの重みを修正することで訓練する。
 一方、差別化ネットワーク2002の訓練においては、正しいデータを入力された場合には、出力ラベルが1に近い値となり、不公平画像生成ネットワーク2001の出力したデータが入力された場合には出力ラベルが0に近い値となるように訓練勾配を計算し、バックプロパゲーションによって、差別化ネットワーク2002を構成するディープニューラルネットワークのノードの重みを修正することで訓練する。
 第4の実施例によれば、人工知能機能の出力における不公平状態の認識に基づいて、不公平状態を改善するために人工知能機能を再訓練することで人工知能機能をより公平性のあるものにすることが可能になる、という具体的効果がある。
 続いて、人工知能機能が検証用基準に沿った動作を行っていることの説明を提供する実施例(explanation that AI behavior is in compliance with a selected guideline)について説明する。
 上述したように、本明細書で提案する人工知能機能の基本機能の1つであるアカウンタビリティを実現するために、対象とする人工知能機能を備えた装置を検証する基準として、規則、政策、ガイドライン、仕様などが、人工知能システム100のユーザインタフェースを通じて、外部から視覚的に認識できるような形式で、明確に定義されている。
 図22には、ガイドライン(基準)と選択可能な規則の一例を示している。ガイドラインをGUIの最上位に提示することで、ユーザがタッチパネルのタッチ動作などで、ガイドラインの内容を読み出すことで、内容を確認できるようにしている。
 ガイドラインに対する人工知能システム100の予測行動は、ガイドラインに従って作成された人工知能システム100が、ガイドラインに従って正しく動作しているかどうかのチェックリストである。このチェックリストに基づいて、行動項目を選択した上で、図17に示したモードのうち検証モードで検証を行うことで、人工知能システムの動作がガイドラインに沿ったものであるかどうか確認することができる。
 製品毎に特化した規則は、前述した実施例のいずれかで検証用基準として用いられるものであり、製品を選択することで、基準が選択できるようにしてもよい。また、任意に規則の一部を変更したり組み合わせたりできるようにしてもよい。
 図23には、ガイドライン(基準)と選択可能な規則の他の例として、記憶領域上のデータ構造を示している。ガイドラインとは別に、各製品や機能(顔認識向け、金融ローン向け、人事向け、など)についてチェックリストが格納されている。
 さらに、チェックリストに関連付けて、チェックリストの対象となるモデル(例えば、ディープニューラルネットワークのノードの重みの集合やラベルなど)及びデータ集合が格納される。
 また、各モデルからは対応する人工知能機能を有するアプリケーション、又はデータ集合からは、具体的なデータが参照できるように構成されている。
 図24には、ガイドラインから実行可能なチェックリストを自動生成する仕組みを示している。同図には、自然言語のテキストとして記載されているガイドラインを対象に、製品カテゴリーや使用目的を特定することで、各種チェックリスト(例えば、顔認識用など)が作成され、さらに、チェックリストが、モデル用チェックリストとデータ用チェックリストに分割される様子が示されている。
 図25には、ガイドラインから生成したチェックリスト(基準)を示している。同図には、モデルチェックリストを適用して、モデルをチェックし、モデルが基準に沿って適切な場合には、チェック済みモデルとして出力されるとともに、データチェックリストを用いて、各データを検証し、データが基準に沿って適切な場合には、チェック済みデータとして出力される様子が示されている。
 図26には、モデル及びデータのチェックリストテンプレートデータ構造の一例を示している。このチェックリストでは、項目とその制約条件が、チェックすべき項目毎に示されている。チェックリストは、「製品・使用地域指定」、「最低限の仕様定義」、及び「適用範囲」の各項目を含んでいる。
 項目「製品・使用地域限定」では、制約条件として「製品」及び「使用地域限定」が必須項目又はオプションのいずれであるかを示している。「製品・使用地域限定」が必須項目の場合には、さらに「製品」及び「使用地域」のサブ項目が指定されるように構成されている。サブ項目「製品」には製品カテゴリーが設定される。製品カテゴリーには、例えば「顔認識」、「金融ローン」、「人事」などが、GUIを介して任意に又は項目を選択することで入力される。また、サブ項目「使用地域」には、「国名」や「地域名」が、GUIを介して任意に又は項目を選択することで入力される。また、項目「製品・使用地域限定」がオプションの場合には、サブ項目のデータを省略することができる。
 項目「最低限の仕様定義」は、「公平性」、「説明可能性」、「性能」などが取り得る優先順位を示し、且つ、サブ項目として「公平性」、「説明可能性」、「性能」を含む。優先順位としては、(「公平性」>「性能」)且つ(「説明可能性」>「性能」)という制約条件を記載することで、この条件に沿って、動作検証がなされるようにすることができる。各サブ項目では、各々のデータ値が取り得る範囲を指定し、又は閾値のみを指定することも可能である。
 また、それぞれのサブ項目については、例えば「公平性」>0.5という制約条件を記載することで、公平性は、データ統計において、0.5を超える程度保たれる必要があることを示すことができる。
 項目「適用範囲」の制約条件は、「モデル」、「データ」、「共通」である。すなわち、このチェックリストテンプレートが「モデル」だけに適用されるのか、「データ」だけに適用されるのか、又は、両方「共通」に使われるのか、という制約条件が記載される。「適用範囲」が「データ」と設定された場合には、このチェックリストテンプレートが入出力される「データ」に適用されることを示す。
 第5の実施例によれば、共通のガイドラインのテンプレートから必要に応じて応用毎に異なる基準を生成するようにできる、という具体的効果がある。
 続いて、クラウド上におけるガイドライン適合性検証に関する実施例ついて説明する。
 ガイドラインの適合性検証をすべて単一の装置で実施する必要はない。例えば、ガイドラインのうち、一部が国際規格のようにして定義されていた場合には、共通のインフラストラクチャで統一的に、ガイドラインの適合性がチェックされる場合もある。このような場合には、共通するガイドライン適合性を、クラウド上のインフラストラクチャにおいて実施するようにできる。一方、このような場合であっても、各製品の構造やデータに依存するデータについては、できる限り外部に出さないようにする方法が望まれる。
 図27には、このような場合に対応して、共通のAPIを提供し、標準規格で規定された項目に変換して、データを交換することで、ガイドラインの適合性検証を達成するシステムを図示している。
 図27に示すシステム構成例では、クラウド上のサーバと、複数の人工知能機能検証製造用ソフトウェアを搭載したクライアントアプリケーションとが、有線又は無線のネットワークを介して(図示せず)、APIを介して接続されている状況でガイドラインの適合性検証を達成する。APIは、クライアント側からサーバに対するアクセス、又はサーバからクライアントへのアクセスの両方向が示される。
 また、図28には、図27に示したシステムにおいて、クラウド上のサーバとクライアントアプリケーション間で使用されるAPIの例を示している。
クライアントからサーバに対する依頼用API:
(1)Request:所定の識別子(ID、例えばURIなど)で指定される集合又は単体としてのモデル又はデータをサーバに送信し、これらのデータが、「標準規格に合致しているかどうかチェックを依頼するためのAPIである。引数として、「モデル」又は「データ」、「集合」又は「単体」、及び「識別子(ID)」が指定される。
(2)Response:チェック結果をサーバから依頼元のクライアントに通知するためのAPIである。引数として、回答を示す「Authenticated」又は「Not-authenticated」、及び対象となるモデル又はデータの識別子(ID)が返される。
 なお、ここでは、「標準規格に合致」としているが、「所定の基準に合致」するかどうかのチェック用のAPIを設けることもできる。この場合には、Requestの引数の1つで、所定の「基準」を指定するようにすればよい。
サーバからクライアントに対する依頼用API:
(1)Diag:サーバから、クライアントに対して一定期間において一定のサンプリングレートで、クライアントの人工知能機能(モデル)に対する「入力データ」又は「出力データ」について、サーバが標準規格に合致しているかどうかチェックできるように送信することを依頼するAPIである。引数として、「入力」又は「出力」、「サンプリングレート」、及び「(監視)期間」が指定される。
(2)Model_output:Diagリクエストに応じて、「出力」が指定された場合に、所定のデータをサーバに送るためのAPIである。引数としてデータと識別子(ID)を指定する。
(3)Model_input:Diagリクエストに応じて、「入力」が指定された場合に、所定のデータをサーバに送るためのAPIである。引数としてデータと識別子(ID)を指定する。
(4)Status:サーバが、データのチェック後に、アプリケーションに対して、IDで指定されるデータが、「Authenticated」又は「Not-authenticated」のいずれと判断されたかどうかを送信するAPIである。
 なお、ここでは、「標準規格に合致」としているが、「所定の基準に合致」するかどうかのチェック用のAPIを設けることもできる。この場合には、Model_output又はModel_inputの引数の1つで、所定の「基準」を指定するようにすればよい。
 第6の実施例によれば、異なる組織で異なるガイドラインを整備している場合に、準拠すべきガイドラインをクラウドで共有することにより、組織毎のガイドラインが例えば国際規格に準拠することが確認できるため、人工知能機能の適切な検証が可能になる、という具体的な効果がある。
 最後に、上述した各実施例で紹介した人工知能機能検証製造技術によってもたらされる効果についてまとめておく。
 当該人工知能機能検証製造技術によれば、人工知能機能の「アカウンタビリティ」、「公平性」、及び「透明性」という3つの基本機能を検証し、これらの基本機能を担保した人工知能機能を備えた装置を製造することができる。
 第一に、当該人工知能機能検証製造技術によれば、対象とする人工知能機能を備えた装置の検証を行うための基準を複数与えて、ユーザによっていずれかの基準を選択可能としている。そして、対象とする人工知能機能を備えた装置を入力データに基づいて訓練した場合、あるいは訓練済みモデルを用いて対象とする人工知能機能を備えた装置に所定の入力を行った場合に、その出力が所定の基準に照らして適切であるかどうかを検証する基準を、関数として操作することができる。したがって、当該人工知能機能検証製造技術は、アカウンタビリティを担保している。
 第二に、当該人工知能機能検証製造技術によれば、対象とする人工知能機能を備えた装置が所定の仕様に基づいて適切な出力を生成することができるように、訓練用の入力データの公平性(例えば、偏りがないこと(unbiased)、偽物(fake)でないこと)の検証を行い、必要に応じて不適切なデータの修正やフィルタリングなどを行うことができる。したがって、当該人工知能機能検証製造技術は、公平性を担保している。
 第三に、当該人工知能機能検証製造技術によれば、対象とする人工知能機能を備えた装置の出力が所定の仕様に照らして適切でないと思われる場合に、入出力の関係を特定し、又は、その出力を生成せしめた訓練済みモデル及び訓練時の入力との関係を特定することができる。したがって、当該人工知能機能検証製造技術は、透明性を担保している。
 要するに、当該人工知能機能検証製造技術によれば、対象とする人工知能機能を備えた装置の開発時又は使用時において、所定の仕様に照らして、適切な入力に基づき、適切な処理を行い、又は、対象とする人工知能機能を備えた装置が適切な出力を生成するためにその人工知能機能を検証し、検証処理を通じて人工知能機能を訓練することができる。当該人工知能機能検証製造技術によれば、アカウンタビリティ、公平性、及び透明性の観点で、高信頼性で利用価値の高い人工知能機能を備えた装置を製造することができる。
 以上、特定の実施形態を参照しながら、本明細書で開示する技術について詳細に説明してきた。しかしながら、本明細書で開示する技術の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
 本明細書で開示する技術は、カメラにおける画像認識、テレビにおける画像合成、ヘッドホンなどにおける音声認識、文書処理システムにおける自然言語理解や文書合成、エージェントやロボットにおける行動に認識や行動生成を始め、さまざまな分野に適用される人工知能機能を備えた装置の検証や装置で用いられるコンピュータプログラムの製造に適用することができる。
 要するに、例示という形態により本明細書で開示する技術について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本明細書で開示する技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。
 なお、本明細書の開示の技術は、以下のような構成をとることも可能である。
(1)人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得部と、
 前記取得した入力データを所定の基準に基づいて検証する入力データ検証部と、
 前記基準を満たす入力データを前記人工知能機能に入力するデータ入力部と、
 前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示部と、
を具備する人工知能装置。
(2)入力データが前記基準を満たさない場合の処理を実施する処理部をさらに備える、
上記(1)に記載の人工知能装置。
(2-1)前記処理部は、前記基準を満たさないデータの前記記憶装置からの削除、又は前記基準を満たさないデータの前記記憶装置とは別の記憶装置への保存のうち少なくとも一方を実施する、
上記(2)に記載の人工知能装置。
(3)前記基準を選択する選択部をさらに含む、
上記(1)又は(2)のいずれかに記載の人工知能装置。
(4)前記基準は、規則、政策、ガイドライン、仕様のうち少なくとも1つを含む、
上記(3)に記載の人工知能装置。
(5)前記基準は、前記人工知能機能の動作する目的上の制限、対象とするユーザ、地域などの制限、前記人工知能機能が適用される分野のうち少なくとも1つを含む、
上記(3)に記載の人工知能装置。
(6)前記人工知能機能からの出力データを取得する出力データ取得部と、
 前記取得した出力データを所定の出力用基準に基づいて検証する出力データ検証部と、
をさらに備える、上記(1)乃至(5)のいずれかに記載の人工知能装置。
(7)前記出力データ検証部は、公平性を検証する前記出力用基準に基づいて出力データを検証する、
上記(6)に記載の人工知能装置。
(8)前記出力用基準を選択する選択部をさらに含む、
上記(6)又は(7)のいずれかに記載の人工知能装置。
(9)出力データが前記出力用基準を満たさない場合の前記人工知能機能の動作を制御する制御部をさらに備える、
上記(6)乃至(8)のいずれかに記載の人工知能装置。
(9-1)前記制御部は、出力データが前記出力用基準を満たさない場合に前記人工知能機能の一部又は全部の機能を停止させる、
上記(9)に記載の人工知能装置。
(9-2)前記制御部は、出力データが前記出力用基準を満たす場合に、前記人工知能機能へのデータ入力を継続させる、
上記(9)に記載の人工知能装置。
(10)前記提示部は、前記出力用基準を満たさない出力データ及び出力データが違反した出力用基準をさらに提示する、
上記(6)乃至(9)のいずれかに記載の人工知能装置。
(11)出力データが前記出力用基準を満たさないときに、前記出力データ検証部は、出力データが正常な範囲であるか、及び前記人工知能機能の動作が正当かどうかをさらに検証する、
上記(6)乃至(10)のいずれかに記載の人工知能装置。
(11-1)出力データが正常でない又は前記人工知能機能の動作が正当でない場合に、前記提示部は、前記出力用基準を満たさない出力データ及び出力データが違反した出力用基準をさらに提示する、
上記(11)に記載の人工知能装置。
(12)出力データが前記出力用基準を満たさないときに、前記人工知能機能の動作の理由に関する説明を提供する提供部をさらに備える、
上記(6)乃至(10)のいずれかに記載の人工知能装置。
(13)前記人工知能機能の出力データを出力データ記憶装置に記憶する、
上記(1)乃至(12)のいずれかに記載の人工知能装置。
(14)前記出力データ記憶装置は、前記人工知能機能の出力データをブロックチェーン技術に基づいて記憶する、
上記(13)に記載の人工知能装置。
(15)前記人工知能機能に対する入力データ又は前記人工知能機能からの出力データの検証を、前記人工知能装置とは異なる装置に命令するアプリケーションプログラミングインタフェースを備える、
上記(1)乃至(14)のいずれかに記載の人工知能装置。
(16)前記装置はクラウド上で動作する、
上記(15)に記載の人工知能装置。
(17)前記人工知能機能は、入力データの訓練又は入力データに基づくデータを生成する、
上記(1)乃至(16)のいずれかに記載の人工知能装置。
(18)前記訓練はディープラーニングによって実施される、
上記(17)に記載の人工知能装置。
(19)前記人工知能機能は、ニューラルネットワークを含む、
上記(1)乃至(18)のいずれかに記載の人工知能装置。
(20)人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得ステップと、
 前記取得した入力データを所定の基準に基づいて検証する入力データ検証ステップと、
 前記基準を満たす入力データを前記人工知能機能に入力するデータ入力ステップと、
 前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示ステップと、
を有し、
 前記人工知能機能を訓練することにより訓練済み人工知能機能を含むコンピュータプログラムを製造するプログラム製造方法。
 100…人工知能システム、101…CPU、102…仮想記憶装置
 103…バス、104…カメラ、105…マイクロホン
 106…ディスプレイ、107…スピーカ、108…センサー群
 109…アクチュエータ群、110…通信部

Claims (20)

  1.  人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得部と、
     前記取得した入力データを所定の基準に基づいて検証する入力データ検証部と、
     前記基準を満たす入力データを前記人工知能機能に入力するデータ入力部と、
     前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示部と、
    を具備する人工知能装置。
  2.  入力データが前記基準を満たさない場合の処理を実施する処理部をさらに備える、
    請求項1に記載の人工知能装置。
  3.  前記基準を選択する選択部をさらに含む、
    請求項1に記載の人工知能装置。
  4.  前記基準は、規則(rule)、政策(policy)、ガイドライン(guideline)、仕様(specification)のうち少なくとも1つを含む、
    請求項3に記載の人工知能装置。
  5.  前記基準は、前記人工知能機能の動作する目的上の制限、対象とするユーザ、地域などの制限、前記人工知能機能が適用される分野のうち少なくとも1つを含む、
    請求項3に記載の人工知能装置。
  6.  前記人工知能機能からの出力データを取得する出力データ取得部と、
     前記取得した出力データを所定の出力用基準に基づいて検証する出力データ検証部と、
    をさらに備える、請求項1に記載の人工知能装置。
  7.  前記出力データ検証部は、公平性を検証する前記出力用基準に基づいて出力データを検証する、
    請求項6に記載の人工知能装置。
  8.  前記出力用基準を選択する選択部をさらに含む、
    請求項6に記載の人工知能装置。
  9.  出力データが前記出力用基準を満たさない場合の前記人工知能機能の動作を制御する制御部をさらに備える、
    請求項6に記載の人工知能装置。
  10.  前記提示部は、前記出力用基準を満たさない出力データ及び出力データが違反した出力用基準をさらに提示する、
    請求項6に記載の人工知能装置。
  11.  出力データが前記出力用基準を満たさないときに、前記出力データ検証部は、出力データが正常な範囲であるか、及び前記人工知能機能の動作が正当かどうかをさらに検証する、
    請求項6に記載の人工知能装置。
  12.  出力データが前記出力用基準を満たさないときに、前記人工知能機能の動作の理由に関する説明を提供する提供部をさらに備える、
    請求項6に記載の人工知能装置。
  13.  前記人工知能機能の出力データを出力データ記憶装置に記憶する、
    請求項1に記載の人工知能装置。
  14.  前記出力データ記憶装置は、前記人工知能機能の出力データをブロックチェーン技術に基づいて記憶する、
    請求項13に記載の人工知能装置。
  15.  前記人工知能機能に対する入力データ又は前記人工知能機能からの出力データの検証を、前記人工知能装置とは異なる装置に命令するアプリケーションプログラミングインタフェースを備える、
    請求項1に記載の人工知能装置。
  16.  前記装置はクラウド上で動作する、
    請求項15に記載の人工知能装置。
  17.  前記人工知能機能は、入力データの訓練又は入力データに基づくデータを生成する、
    請求項1に記載の人工知能装置。
  18.  前記訓練はディープラーニングによって実施される、
    請求項17に記載の人工知能装置。
  19.  前記人工知能機能は、ニューラルネットワークを含む、
    請求項1に記載の人工知能装置。
  20.  人工知能機能に対する入力データを所定の記憶装置から取得する入力データ取得ステップと、
     前記取得した入力データを所定の基準に基づいて検証する入力データ検証ステップと、
     前記基準を満たす入力データを前記人工知能機能に入力するデータ入力ステップと、
     前記基準を満たさない入力データ及び入力データが違反した基準を提示する提示ステップと、
    を有し、
     前記人工知能機能を訓練することにより訓練済み人工知能機能を含むコンピュータプログラムを製造するプログラム製造方法。
PCT/JP2020/010112 2019-05-27 2020-03-09 人工知能装置及びプログラム製造方法 WO2020240981A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP20814672.0A EP3979137A4 (en) 2019-05-27 2020-03-09 ARTIFICIAL INTELLIGENCE DEVICE AND PROGRAM MANUFACTURING PROCESS
JP2021522643A JP7497726B2 (ja) 2019-05-27 2020-03-09 人工知能装置及びプログラム製造方法
US17/610,562 US20220222242A1 (en) 2019-05-27 2020-03-09 Artificial intelligence device and program creation method
JP2024081290A JP2024098051A (ja) 2019-05-27 2024-05-17 人工知能装置及びプログラム製造方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019098587 2019-05-27
JP2019-098587 2019-05-27

Publications (1)

Publication Number Publication Date
WO2020240981A1 true WO2020240981A1 (ja) 2020-12-03

Family

ID=73553327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/010112 WO2020240981A1 (ja) 2019-05-27 2020-03-09 人工知能装置及びプログラム製造方法

Country Status (4)

Country Link
US (1) US20220222242A1 (ja)
EP (1) EP3979137A4 (ja)
JP (2) JP7497726B2 (ja)
WO (1) WO2020240981A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022254626A1 (ja) 2021-06-02 2022-12-08 富士通株式会社 機械学習プログラム,機械学習方法および機械学習装置
EP4350582A1 (en) 2022-10-06 2024-04-10 Fujitsu Limited Machine learning program, machine learning method, and information processing apparatus
JP7530134B1 (ja) 2024-03-28 2024-08-07 株式会社Citadel AI 情報処理装置、プログラム及び情報処理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194919A (ja) * 2017-05-12 2018-12-06 富士通株式会社 学習プログラム、学習方法及び学習装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7886359B2 (en) * 2002-09-18 2011-02-08 Symantec Corporation Method and apparatus to report policy violations in messages
US11841789B2 (en) * 2016-01-27 2023-12-12 Microsoft Technology Licensing, Llc Visual aids for debugging
WO2017214665A1 (en) * 2016-06-14 2017-12-21 Ip Now Pty Ltd Improvements in or relating to forms
JP2019003603A (ja) * 2017-04-10 2019-01-10 株式会社クロスコンパス 人工知能モジュール開発方法、人工知能モジュール開発システム及び人工知能モジュール開発統合システム
US10877957B2 (en) * 2018-06-29 2020-12-29 Wipro Limited Method and device for data validation using predictive modeling

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194919A (ja) * 2017-05-12 2018-12-06 富士通株式会社 学習プログラム、学習方法及び学習装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022254626A1 (ja) 2021-06-02 2022-12-08 富士通株式会社 機械学習プログラム,機械学習方法および機械学習装置
EP4350582A1 (en) 2022-10-06 2024-04-10 Fujitsu Limited Machine learning program, machine learning method, and information processing apparatus
JP7530134B1 (ja) 2024-03-28 2024-08-07 株式会社Citadel AI 情報処理装置、プログラム及び情報処理方法

Also Published As

Publication number Publication date
JPWO2020240981A1 (ja) 2020-12-03
EP3979137A4 (en) 2022-08-10
JP7497726B2 (ja) 2024-06-11
US20220222242A1 (en) 2022-07-14
EP3979137A1 (en) 2022-04-06
JP2024098051A (ja) 2024-07-19

Similar Documents

Publication Publication Date Title
WO2020240981A1 (ja) 人工知能装置及びプログラム製造方法
US10977519B2 (en) Generating event definitions based on spatial and relational relationships
JP7393515B2 (ja) 分散型製品欠陥分析システム、方法及びコンピュータ可読記憶媒体
Branke et al. Automated design of production scheduling heuristics: A review
US10397046B1 (en) Contextual state-based user interface notification triggering
Wang et al. Applications of explainable AI for 6G: Technical aspects, use cases, and research challenges
Tao et al. Testing and quality validation for ai software–perspectives, issues, and practices
US8660973B1 (en) Systems and methods for cognition-based processing of knowledge
US20240070054A1 (en) Requirements to test system and method
WO2021160857A1 (en) Method for injecting human knowledge into ai models
CN115952966A (zh) 使用用于机器人过程自动化的语义人工智能在源与目标之间的自动数据传输
US20240134687A1 (en) Systems and methods for operating an autonomous system
Carey et al. The incentives that shape behaviour
KR20220145408A (ko) 인공지능 기반으로 화면 정보를 인지하여 화면 상의 오브젝트에 이벤트를 발생시키는 방법 및 시스템
US20240202221A1 (en) Generative artificial intelligence enterprise search
Zhang et al. Robustness analysis and enhancement of deep reinforcement learning-based schedulers
WO2023275765A1 (en) Systems and methods for operating an autonomous system
Doohan et al. Implementation of AI based Safety and Security System Integration for Smart City
Qin et al. Robust Testing for Cyber-Physical Systems using Reinforcement Learning
US20050055664A1 (en) Notification spheres in workflow management systems
Serafini et al. On some foundational aspects of human-centered artificial intelligence
JP6360197B2 (ja) 知識の認識ベースの処理のためのシステムおよび方法
Bhattacharya et al. Trustworthiness of Artificial Intelligence: Teaching Factors that Influence AI-Supported Decision Making
Lu et al. Growing Software: Objective, Methodology, and Technology
EP4113062A1 (en) System and method for generation of action strategies by an autonomous system

Legal Events

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

Ref document number: 20814672

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2021522643

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020814672

Country of ref document: EP

Effective date: 20220103