WO2010134319A1 - 知識ベースシステム、論理演算方法、プログラム、及び記録媒体 - Google Patents

知識ベースシステム、論理演算方法、プログラム、及び記録媒体 Download PDF

Info

Publication number
WO2010134319A1
WO2010134319A1 PCT/JP2010/003327 JP2010003327W WO2010134319A1 WO 2010134319 A1 WO2010134319 A1 WO 2010134319A1 JP 2010003327 W JP2010003327 W JP 2010003327W WO 2010134319 A1 WO2010134319 A1 WO 2010134319A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
attributes
knowledge
identifier
true
Prior art date
Application number
PCT/JP2010/003327
Other languages
English (en)
French (fr)
Inventor
柳瀬隆敏
Original Assignee
Yanase Takatoshi
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 Yanase Takatoshi filed Critical Yanase Takatoshi
Priority to JP2010541357A priority Critical patent/JP4829381B2/ja
Priority to US13/320,801 priority patent/US8818930B2/en
Priority to EP20100777557 priority patent/EP2472447A4/en
Publication of WO2010134319A1 publication Critical patent/WO2010134319A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually

Definitions

  • the present invention relates to a knowledge base system.
  • Things can be expressed in words. In languages like English and Japanese, things are expressed in words, or words. A thing has an attribute which is a fixed property. This attribute is also expressed in words.
  • a word can be represented by a character string that is a collection of characters, that is, a word. Therefore, a word representing an object has an attribute, and both an object and its attribute can be represented by a character string written in characters, that is, a word. By using characters, information can be retained and recorded for a long time. Words can also be expressed using words other than letters, such as speech and gestures. The feature is that the word itself represents the meaning of the word itself.
  • Objects include not only concrete objects such as stones and the sun, but also abstract objects such as warmth, concepts, images, sounds, and WEB pages. Unknowns may not have attributes.
  • the attribute represents the property of the object, such as “has a red color” or “has a sweet taste”.
  • a machine such as a computer can compare two character strings and determine whether the two character strings are equal. It is possible to determine whether two character strings are the same, and to generate a true value if they are the same, or a false value if they are different. The computer can determine whether the words represented in letters are the same and generate a truth value.
  • a symbol associated with a word represents the meaning of the associated word.
  • the symbol in this case represents a meaning.
  • the symbol can be said to be an identifier.
  • the identifier associated with the word and representing the word represents the meaning of the associated word. Therefore, an identifier associated with a word and representing the meaning of the word is also a word. If the word “dog” is associated with the identifier “ABC”, ABC is a word representing the meaning of the dog.
  • Words can be generated not only by character combinations but also by combinations of sounds and figures. Since a word generated by a combination of sounds and figures can be replaced with a word generated by letters, it is not essential what the word is generated except for ease of recording.
  • relay type computer There used to be a relay type computer. A mechanism for performing three operations of AND, OR, and NOT using a relay was realized. Although the components of current computers have changed from relays to semiconductors, the principle is the same as for relay computers.
  • the current computer does not hold the procedure for performing the logical operation as a combination of machine parts, but holds the procedure for performing the logical operation as information called a program. By changing information called a program, different logical operations can be performed on the same device.
  • COBOL is a program that can be understood by humans. Something like COBOL is called a programming language.
  • a program that can be directly handled by a computer, which is a machine, is called a machine language.
  • a program called a compiler converts a program written in a programming language into a machine language program.
  • Objects generally have several attributes. One word representing an object has zero or more attributes.
  • PROLOG There is a programming language called PROLOG.
  • a word representing an attribute is used to represent the attribute.
  • Experiments to realize artificial intelligence using such a programming language were conducted, but there was a limit.
  • Socrates is a person in the programming language called PROLOG, it will become (man Associates).
  • PROLOG programming language
  • the two words “man” and “Socrats” are arranged to express the property of the object, that is, the attribute of the object.
  • things and attributes that are properties are stored as words.
  • the criterion for determining that “man” is “man” is whether the words are the same.
  • the word itself expresses meaning. Words are interpreted as objects, attributes, and relationships depending on the order of the sequence.
  • a relationship and two things are stored as a sequence of three words.
  • the meaning changes if the order of the word sequence is different. Meaning is included in the order of word arrangement.
  • the meaning is expressed by the number and order of words. In this method, a two-level relationship between one object and another can be expressed, but a three-level or higher relationship such as child ⁇ father ⁇ grandfather cannot be expressed directly.
  • This technology can hold objects, attributes, and relationships as a database, but it only holds a sequence of words representing things, attributes, and relationships.
  • An attribute that is a property of an object is expressed by a word sequence, and a relationship is expressed by a word sequence. Both attributes and relationships are expressed in the same way: word sequences.
  • word sequences Assuming that information is systematized, knowledge is stored in a plurality of words that represent information, and the stored word sequence is used as knowledge. In this method, information that directly represents the relationship between objects in three or more layers is not retained.
  • the word sequence is associated with each other. By searching for a matching word, the relationship between the information represented by the word sequence is examined each time.
  • Patent Document 1 discloses the following technique. Web pages that can be viewed by software called browsers that are stored on a web server on the Internet and run on a personal computer or the like, information such as document files are called nodes, and a group of nodes is called a space. An apparatus for evaluating information held by a node is disclosed. Information linked to a node is called a property. The implementation of properties (attributes) is not specified at all, and the implementation of properties is entirely left up to the program implementer. This technique does not disclose that an object retains an attribute. In addition, an attribute evaluation method is not disclosed.
  • Bayesian networks are probabilistic models with a graph structure, to make inferences.
  • a certain event it is considered that another event occurs with a certain probability, and a chain in which another event occurs from a certain event is expressed by a graph structure.
  • the probability that another event will occur from one event is always maintained.
  • An event having the highest occurrence probability can be found by tracing a graph held in advance with a certain event as a starting point.
  • inference can be made by this processing.
  • things, attributes, and relationships are not distinguished, and all are expressed as events. Events are represented by words in the language, and events are directly connected.
  • Bayesian networks are included in the language.
  • a meaningful word is generated by combining characters.
  • a word is in a language and has the meaning of that word directly in the language. It is a word that has a direct meaning and represents information such as attributes such as things, properties, characteristics, meanings, and concepts.
  • a word sequence consisting of a word representing an object and a word representing an attribute is created, and the nature of the object and the relationship between the object and the object are represented by the word sequence.
  • a sequence of a plurality of words was accumulated, and the accumulated sequence of words was used as knowledge. In this method, knowledge is built using only words that have the meaning of the word itself.
  • the present invention has been made in view of the above problems, and an object of the present invention is to provide a knowledge base system capable of expressing the semantic content of an object or attribute without depending on language.
  • a knowledge base system includes a storage unit that stores a knowledge base, and an operation unit that performs a logical operation on the knowledge base stored in the storage unit. It includes an object identifier for identifying an object, and at least one attribute of the object, which is an attribute associated with the object identifier of the object.
  • the attribute is associated with an attribute identifier for identifying the attribute, at least one data representing the attribute, feature data associated with the attribute identifier for identifying the attribute, and a word representing the attribute. And at least one of identification data associated with the attribute identifier.
  • the object identifier is not a word representing an object, but is composed of a symbol having no meaning in itself.
  • the attribute identifier is not a word representing an attribute, but is a symbol having no meaning in itself.
  • the object and the attributes of the object can be represented by an identifier that does not represent the meaning of the object or the attribute, retained, and further subjected to calculation.
  • a thing is designated means that a thing identifier for identifying the thing is designated.
  • the feature data represents at least one of an attribute shape, a sound, an aroma, a taste, a color, a pressure, a temperature, a length, a coordinate value, and an area identified by an attribute identifier associated with the feature data. It may be data. Thus, the concept (meaning content) of each attribute is defined by the feature data associated with the attribute identifier.
  • the knowledge base system includes an input unit that acquires information on the attribute, a feature extraction unit that extracts at least one of the feature data and the identification data from the information acquired by the input unit, and the feature A data storage unit that stores at least one of the feature data and the identification data extracted by the extraction unit in the knowledge base in association with an attribute identifier that identifies the attribute may be provided.
  • the new relationship between the feature data, the identification data, and the attribute identifier can be stored in the knowledge base.
  • the attribute identifier may include a main identifier and a sub-identifier.
  • the attribute identifier may identify the attribute by a combination of the main identifier and the sub-identifier.
  • the basic identifier can represent the basic property of the attribute
  • the sub-identifier can represent a more detailed property such as the degree and appearance.
  • the arithmetic unit may perform the logical operation on at least an attribute of the specified object when the one object is specified as an object of the operation.
  • the arithmetic unit further provides a true / false value indicating whether the attribute is true or false for each of the attributes. Are collected, only the attributes having the same attribute identifier and whose associated true / false values are both true or false are collected, and the true / false values are associated with individual attributes. If not, an AND operation for generating a new set of attributes may be performed by collecting only attributes having the same attribute identifier.
  • the operation unit further collects attributes belonging to at least one of the attribute sets when two attribute sets consisting of at least one attribute are specified, thereby generating a new attribute set.
  • An OR operation to be generated may be performed.
  • each of the attributes is associated with a true / false value indicating whether the attribute is true or false
  • the calculation unit further includes a set of attributes including at least one attribute.
  • an attribute that is changed to false is generated if the associated truth value is true, and true if the truth value is false.
  • a NOT operation for generating a set of new attributes whose true / false values are changed may be performed by generating the attributes changed to.
  • each of the attributes is associated with a true / false value indicating whether the attribute is true or false
  • the calculation unit further includes a set of attributes including at least one attribute.
  • a set of new attributes is generated by collecting only attributes having the same attribute identifier and whose associated truth values are both true or false. For each attribute included in the generated new attribute set, an attribute that is changed to false is generated if the associated truth value is true, and an attribute that is changed to true if the truth value is false.
  • a NAND operation for generating a new set of attributes whose true / false values are changed may be performed.
  • each of the attributes is associated with a true / false value indicating whether the attribute is true or false
  • the calculation unit further includes a set of attributes including at least one attribute.
  • the true / false value is true, an attribute that is changed to false is generated, and if the true / false value is false, an attribute that is changed to true is generated. You may perform the NOR calculation to produce
  • the arithmetic unit when the two sets of attributes including at least one attribute are specified, the arithmetic unit further indicates whether each attribute is true or false indicating whether the attribute is true or false.
  • the number of attributes that are included in any set of attributes and that have the same associated truth value is counted as a common degree, and each of the attributes is counted as the authenticity.
  • the number of attributes included in any attribute set may be counted as the degree of commonality.
  • the arithmetic unit when the two sets of attributes including at least one attribute are specified, the arithmetic unit further indicates whether each attribute is true or false indicating whether the attribute is true or false.
  • the number of attributes that are included in any set of attributes and that have different associated truth values is counted as a degree of dissimilarity. If they are not associated with each other, the number of attributes included only in one of the attribute sets may be counted as the non-commonness.
  • the attribute identifier may include a main identifier and a sub-identifier. Further, in the case where two sets of attributes including at least one attribute are designated, the arithmetic unit is associated with each attribute with a true / false value indicating whether the attribute is true or false. If the number of attributes having the same primary identifier and the same true / false value is counted as a similarity, and the true / false value is not associated with each of the attributes, The number of attributes having the same main identifier may be counted as the similarity.
  • the attribute identifier may include a main identifier and a sub-identifier. Further, in the case where two sets of attributes including at least one attribute are designated, the arithmetic unit is associated with each attribute with a true / false value indicating whether the attribute is true or false. When the number of attributes having the same primary identifier and different true / false values is counted as dissimilarity, and the true / false values are not associated with individual attributes, The number of attributes included only in the set may be counted as dissimilarity.
  • each of the attributes is associated with a true / false value indicating whether the attribute is true or false
  • the calculation unit further includes a set of attributes including at least one attribute.
  • an attribute that belongs to at least one of the attribute sets and that is included in any attribute set and that has a different associated truth value is excluded.
  • An OR operation for generating a set of attributes may be performed.
  • the arithmetic unit further generates a new attribute set by excluding attributes belonging to any attribute set when two attribute sets consisting of at least one attribute are specified. XOR operation may be performed.
  • the knowledge base system can execute various arithmetic processes using a specified set of attributes as an operation target.
  • the “attribute set” typically refers to a set of zero or more attribute identifiers associated with the object identifier, but is not limited thereto.
  • Cold attributes refers to collecting attribute identifiers that meet a condition.
  • the calculation unit may generate a collection of knowledge having the attribute by collecting object identifiers associated with the specified attribute.
  • the object it may be determined whether the object identifier of the object belongs to the knowledge collection.
  • the arithmetic unit includes an object identifier for identifying the generated collection of knowledge, an attribute identifier for identifying the specified at least one attribute, and an attribute identifier for an attribute indicating an abstract object.
  • An abstract object may be newly generated by association.
  • the knowledge base may include a knowledge network that is a connection of nodes associated with objects.
  • the node may include an object identifier corresponding to the node and knowledge network information that is information about the knowledge network to which the node belongs.
  • the knowledge network information may include a knowledge network identifier for identifying the knowledge network and a pointer to another node connected to the node in the knowledge network.
  • the arithmetic unit is connected to the specified object by referring to the object identifier and knowledge network information included in the nodes constituting the knowledge network. You may identify other things that you have. Furthermore, when the attribute identifier is designated, the arithmetic unit may search a knowledge network associated with the attribute identifier and obtain a knowledge network identifier of the searched knowledge network. As a result, one thing can be used as a starting point to reach other things that may be related to the thing. This process is associated with “inference”.
  • the arithmetic unit further associates an entity identifier for identifying the knowledge network with at least one attribute identifier associated with the knowledge network and an attribute identifier for an attribute indicating an abstract entity.
  • An abstract object may be newly generated.
  • the logical operation method includes a step of performing processing by at least the above-described arithmetic unit on the knowledge base included in the above-described knowledge base system.
  • a program according to an embodiment of the present invention is a program for a knowledge base system, and causes a computer to execute the steps included in the logical operation method described above.
  • a recording medium is a computer-readable recording medium for a knowledge base system, in which the knowledge base described above and the program described above are recorded.
  • the present invention can be realized not only as a knowledge base system but also as a program for causing a computer to execute the functions of the knowledge base system. Needless to say, such a program can be distributed via a recording medium such as a CD-ROM and a transmission medium such as the Internet.
  • FIG. 1 is a diagram for comparing and explaining a conventional knowledge base and a knowledge base according to an embodiment of the present invention.
  • FIG. 2A is a diagram showing a first-layer graphic representing the relationship between attributes and feature data.
  • FIG. 2B is a diagram showing a first-layer graphic representing the relationship between attributes and identification data.
  • FIG. 3 is a diagram showing a graphic of the second hierarchy representing the relationship between objects and attributes.
  • FIG. 4 is a diagram illustrating a graphic of the third hierarchy representing the relationship between objects.
  • FIG. 5 is a diagram showing a figure in which the first to third layers are integrated.
  • FIG. 6 is a conceptual diagram of a knowledge base system according to an embodiment.
  • FIG. 7 is a block diagram of a computer system according to an embodiment.
  • FIG. 1 is a diagram for comparing and explaining a conventional knowledge base and a knowledge base according to an embodiment of the present invention.
  • FIG. 2A is a diagram showing a first-layer graphic representing the relationship between attributes and feature data
  • FIG. 8 is a functional block diagram of a knowledge base system according to an embodiment.
  • FIG. 9 is a diagram showing a correspondence table between attribute identifiers and feature data according to an embodiment.
  • FIG. 10 is a diagram illustrating a correspondence table between an object identifier and an attribute identifier according to an embodiment.
  • FIG. 11 is a diagram showing two-dimensional orthogonal coordinates.
  • FIG. 12 is a diagram showing three-dimensional coordinates that intersect at an angle smaller than a right angle.
  • FIG. 13 is a diagram showing an example in which attributes are represented by coordinate axes.
  • FIG. 14 is a diagram illustrating an example of a fuzzy set.
  • FIG. 15 is a diagram illustrating the relationship between objects.
  • FIG. 16 is a diagram illustrating a relationship between a knowledge network and attributes.
  • FIG. 17A is a diagram illustrating a data list that is a source of attributes.
  • FIG. 17B is a diagram showing a correspondence table between object names and object identifiers.
  • FIG. 18 is a diagram showing a correspondence table between attributes and attribute identifiers.
  • FIG. 19 is a diagram showing a list of objects and attributes.
  • FIG. 20A is a diagram showing a correspondence table of objects, main attributes, and sub-attributes.
  • FIG. 20B is a diagram showing a correspondence table between main attributes and sub-attributes.
  • FIG. 21 is a flowchart illustrating an AND operation.
  • FIG. 22 is a flowchart illustrating the OR operation.
  • FIG. 23 is a flowchart illustrating the NOT calculation.
  • FIG. 21 is a flowchart illustrating an AND operation.
  • FIG. 22 is a flowchart illustrating the OR operation.
  • FIG. 23 is a flowchart illustrating the NOT calculation.
  • FIG. 21 is a flowchart
  • FIG. 24 is a diagram showing a flowchart of the NAND operation.
  • FIG. 25 is a flowchart showing the XOR operation.
  • FIG. 26 is a flowchart illustrating a process for calculating the commonality.
  • FIG. 27 is a diagram illustrating a flowchart of a process for calculating the dissimilarity.
  • FIG. 28A is a diagram showing a correspondence table between object names and object identifiers.
  • FIG. 28B is a diagram showing a correspondence table between knowledge networks and attributes.
  • FIG. 28C is a diagram illustrating a data structure of the knowledge network.
  • FIG. 29 is a diagram illustrating a data structure of a node.
  • FIG. 30 is a diagram showing attribute hierarchy information.
  • FIG. 31 is a flowchart of processing for searching a knowledge collection.
  • FIG. 31 is a flowchart of processing for searching a knowledge collection.
  • FIG. 32 is a flowchart of processing for tracing the knowledge network.
  • FIG. 33 is a diagram illustrating an example of a data structure in the knowledge base.
  • FIG. 34 is a diagram illustrating an example of a data structure in the knowledge base.
  • FIG. 35 is a diagram illustrating an example of a data structure in the knowledge base.
  • FIG. 36 is a diagram illustrating an example of a data structure in the knowledge base.
  • FIG. 37 is a diagram for explaining a knowledge collection in the knowledge base.
  • FIG. 38 is a diagram for explaining a knowledge collection in the knowledge base.
  • FIG. 39 is a diagram for explaining a knowledge network in the knowledge base.
  • FIG. 40 is a diagram for explaining a knowledge network in the knowledge base.
  • FIG. 41 is a diagram for explaining a knowledge network in the knowledge base.
  • FIG. 42 is a diagram illustrating an example of a knowledge network.
  • FIG. 43 is a diagram illustrating the relationship among objects, attributes, and feature data.
  • FIG. 44 is a diagram illustrating an example of a knowledge network.
  • FIG. 45 is a diagram illustrating an example of a knowledge network.
  • FIG. 46 is a diagram showing a triangle.
  • FIG. 47 is a diagram illustrating a knowledge network in which a triangle is represented by three points.
  • FIG. 48 is a diagram showing a knowledge network in which a triangle is represented by three points and three lines.
  • FIG. 49 is a diagram showing a knowledge network in which triangles are represented by three lines.
  • FIG. 50 is a diagram illustrating a triangular pyramid.
  • FIG. 51 is a diagram illustrating a knowledge network representing a triangular pyramid.
  • FIG. 52 is a schematic view of the eyes, nose, and mouth.
  • FIG. 53 is a diagram showing a knowledge network representing the distance between eyes, nose and mouth.
  • FIG. 54 is a diagram showing a knowledge network representing a shogi board.
  • FIG. 55 is a diagram showing an example of implementation of the correspondence table by the network.
  • FIG. 56 is a diagram showing a correspondence table between feature data and attributes.
  • FIG. 57 is a diagram showing a correspondence table between one feature data and an attribute.
  • FIG. 58 is a diagram showing a correspondence table between one attribute and feature data.
  • Fig. 1 The figure on the left side of Fig. 1 is the knowledge base of the prior art.
  • the knowledge base of the prior art is included in languages such as English, Japanese, and Chinese. Since the knowledge base of the prior art holds words in the language, there is always a portion that overlaps the language. The knowledge base of the prior art loses the common part with the language and cannot be generated outside the language.
  • the objects in the real world are directly connected to words in the language.
  • the object is not a word.
  • the knowledge base is composed of words in a language.
  • Prior art knowledge bases are included in the language.
  • the word “dog” is directly associated with the real world object dog that is the source of the data.
  • the word “dog” not only identifies the dog that is the object, but also directly includes the nature, characteristics, meaning, or concept of the dog that is the object. Only the word “dog” can be used to understand the characteristics, nature, meaning, or concept of a mammal, four-legged dog. Words exist only in the language, and the words themselves directly contain their properties, characteristics, meanings or concepts. Thus, a word in a language directly represents the nature, characteristics, meaning or concept of the word with just that word. The real world and language have no common part. And there is language outside the real world. The object is only in the real world. Words and words are only in the language. A word or word directly identifies an object or an attribute of the object. Furthermore, a word or word directly includes the meaning of the word or word itself.
  • This knowledge base is not included in the language and has no common parts with the language. This knowledge base is outside the language. This knowledge base is outside the real world. Furthermore, this knowledge base has nothing in common with the real world.
  • feature data generated from information such as images and sounds directly emitted from objects in the real world are stored and held in the knowledge base. For example, feature data (image data) that is emitted directly from a dog of an object that is not a word and generated from the acquired video of the dog is stored and held in the knowledge base.
  • identification data is generated from the word by the feature extraction unit, and stored and held in the knowledge base. Identification data is not generated from information that is directly emitted from an object that is not a word, but is generated from information that is generated from a word in a language.
  • the feature data is not generated from words in the language but is generated from information directly emitted from the object.
  • Feature data is generated from information such as video and sound directly emitted from objects in the real world and stored in the knowledge base.
  • the object is not a word.
  • an attribute is generated in the knowledge base, and the stored feature data is connected to the attribute.
  • objects are generated in the knowledge base. Receives direct information from non-word objects, generates input data from the received information, generates feature data from the input data, connects the generated feature data and attributes, and generates the attributes Connected with things.
  • attributes connected to feature data and connections to objects are created by a knowledge base system.
  • feature data are not directly connected. Even among feature data connected to the same attribute, each feature data is once connected to an attribute, and is connected to other feature data via the attribute.
  • the identification data is the same, and the identification data is not directly connected. Even among identification data connected to the same attribute, each identification data is once connected to the attribute, and is connected to other identification data via the connected attribute. Feature data and identification data are not directly connected. Even in the feature data and the identification data connected to the same attribute, the feature data is once connected to the attribute and connected to the identification data through the connected attribute.
  • the attribute and the feature data are connected without going through the object, other attributes, identification data, and other feature data.
  • Such a connection between the attribute and the feature data is described as a direct connection between the attribute and the feature data.
  • the attribute and the identification data are connected without going through an object, other attributes, other identification data, and feature data.
  • Such a connection between the attribute and the identification data is described as a direct connection between the attribute and the identification data.
  • an object and an attribute are connected without passing through another object, another attribute, identification data, and feature data.
  • Such a connection between an object and an attribute is described as a direct connection between the object and the attribute.
  • things are connected to each other without passing through other things, attributes, identification data, and feature data.
  • This way of connecting things is described as connecting things directly.
  • an object and identification data may be connected without passing through another object, attribute, other identification data, and feature data.
  • Such a connection between the object and the identification data is described as a direct connection between the object and the identification data.
  • an object and feature data may be connected without passing through another object, attribute, identification data, and other feature data. This way of connecting the object and the feature data is described as connecting the object and the feature data directly.
  • the attribute is identified by the identification data by being directly connected to the identification data. If an attribute that is directly connected to identification data is connected to an object, an attribute that is directly connected to identification data can be acquired by the identification data, and an object that is directly connected to the acquired attribute can be acquired. With the identification data, only an attribute directly connected to the identification data and an object directly connected to the attribute can be acquired.
  • the identification data is used only to associate a language outside the knowledge base of one embodiment of the present technology with objects and attributes in the knowledge base of one embodiment of the present technology.
  • the attribute identifier and the identification data are common in that both are attribute identification information and information that supports identification by a computer (knowledge base system).
  • the attribute identifier is information (data) associated with the attribute
  • the identification data is different in that it is a word or information (data) associated with the word.
  • the feature data and the identification data are common in that they are specific examples (instances) of attributes.
  • feature data is an attribute entity
  • identification data is different in that a computer (knowledge base system) is data for identifying an attribute.
  • the word and the word are information (data) that supports identification by a human.
  • a word and a conceptual collection of words is a “language” or “language world”.
  • a figure in which only an object and an attribute are directly connected and associated with each other is a figure in the second hierarchy shown in FIG. In this hierarchy, zero or more attributes are directly associated with one thing.
  • the number of attributes directly associated with one object is not limited to one. In this hierarchy, things are not connected.
  • a figure in which only objects are directly connected and associated is the figure in the third hierarchy shown in FIG. In this hierarchy, things and attributes are not connected.
  • the connection only between these things can be various ways such as straight line, ring, tree structure, network structure.
  • a figure in which only attributes and feature data are directly connected and associated is the figure in the first hierarchy shown in FIG. 2A.
  • the attribute itself has no direct meaning.
  • the attribute has a meaning or the meaning of the attribute is generated.
  • a concept is generated by directly connecting attributes and feature data. For example, the feature data generated from the video of the shirt turned inside out is directly connected to the attribute, and the meaning or concept of “inside out” is generated.
  • One attribute may be directly connected to multiple feature data.
  • one meaning or one concept can be generated from a plurality of feature data.
  • the attribute representing the Romanesque style is directly connected to a plurality of feature data generated from videos of a plurality of buildings in the Romanesque style.
  • the number of feature data directly associated with one attribute is not limited to one.
  • One feature data may be directly connected to multiple attributes.
  • the attribute directly associated with one feature data is not limited to one.
  • the feature data of the bonfire video is directly linked to an attribute, and the concept of bonfire color is generated.
  • the feature data of the bonfire video is directly connected to another attribute, and the concept of bonfire warmth is generated.
  • the thing itself has no meaning.
  • the nature, characteristics, meaning, or concept of an object is determined by the attributes that are directly connected to the object and associated with each other.
  • FIG. 5 is a diagram in which three layers are connected.
  • one attribute corresponds to one nerve cell
  • one object corresponds to one nerve cell.
  • the feature extraction unit in the brain extracts features from the received information, and stores the extracted features as feature data in a storage area in the brain.
  • Various features such as shape, incense, and taste are stored as feature data.
  • a nerve cell that is an attribute of an attribute region in the brain is connected to feature data, and a meaning or concept is generated.
  • An attribute is connected to a nerve cell that is an object in the brain, so that the property, characteristic, meaning, or concept of the object is determined.
  • One feature data may generate multiple concepts. Assume that the feature data of the flame image is in the knowledge base. This feature data is connected to a certain attribute and generates the concept of flame color. Also, the same feature data is connected to another attribute and generates the concept of warmth. You may feel warmth just by looking at the picture of the fire burning in the fireplace.
  • One attribute is connected to multiple feature data. Assume that there is an attribute connected to the characteristic data of acidity.
  • the feature data of the image of the lemon is connected to the sour attribute, and the concept of sourness is generated.
  • the characteristic data of the blue apple image may be connected to the above-mentioned attribute of sourness. Saliva may be produced by just looking at the lemon, but it can be explained by thinking like this. In this way, different feature data may be connected to one and the same attribute to generate one concept.
  • the above-mentioned three-layer structure can express and store knowledge without using identification data generated from words, and systematize the knowledge. Using this method, even animals without words can systematically maintain knowledge and process knowledge such as inference.
  • identification data generated from the video of words represented by letters or the sound of words represented by speech, etc. are retained, and the identification data and attributes can be linked and correlated. it can. If the feature data is directly connected to the attribute that is directly connected to the identification data, the word in the language from which the identification data is based and the feature data connected to the attribute are indirect via the identification data and the attribute. Are associated with each other. If the feature data is not directly connected to the attribute directly connected to the identification data and there is an object directly connected to the attribute, the word in the language from which the identification data is based and the object directly connected to the attribute , The identification data and the attribute are indirectly associated with each other. Of course, the identification data can be directly connected to one object.
  • one attribute represents a plurality of identification data in a bundle. Is more convenient. If the identification data generated from the video of the character is directly connected to the attribute directly connected to the identification data generated from the audio, the identification data generated from the video of the character is immediately acquired without acquiring other attributes. You can get it. Quick conversion from voice to text. For example, it is possible to acquire an attribute directly connected to identification data generated from speech, and then acquire identification data generated from a video of a character connected to the attribute.
  • the identification data associates the word in the language that is the basis of the identification data with the object or attribute in the knowledge base. However, it merely associates the identification data of words represented by video or audio with attributes and objects. Identification data does not directly represent or generate properties, features, meanings or concepts, but only identifies attributes and objects in the knowledge base.
  • Information received directly from the object itself is received using a sensory organ, and feature data extracted from the received data is the source of properties, features, meanings or concepts. It is also possible to directly connect identification data generated from words and objects.
  • the object is directly identified by them.
  • the feature data or identification data may be directly connected to the object.
  • the feature data or identification data directly connected to the object is not limited to one, and a plurality of feature data or identification data may be directly connected to the object.
  • Feature data or identification data directly connected to an object can be directly connected to an attribute at the same time, and the feature data can generate a meaning and a concept.
  • Specify feature data and attributes issue instructions to the learning unit of the knowledge base system from outside the knowledge base system to connect the specified feature data and attributes, and specify the feature data and specified attributes specified in the learning unit Can be connected to learn.
  • the human brain may work instead of the part where other parts of the brain do not work even if part of the brain does not work due to internal bleeding. This can be explained by thinking that other nerve cells play the same role by connecting other nerve cells to things instead of nerve cells that have stopped working.
  • Objects and attributes correspond to nerve cells. Objects and attributes themselves have no meaning, and objects and attributes are simply identified by identifiers that have no meaning for objects or attributes. Even if you switch to another object or attribute, you can show the same correspondence as before switching.
  • All objects can be identified with a single identifier.
  • a single form of identifier can identify all attributes.
  • All feature data and identification data can be identified with a single type of identifier.
  • a single type of identifier can also identify all things, all attributes, all feature data and identification data. Two types of identifiers or three types of identifiers may be used. It is possible to use more than four types of identifiers, but the mechanism is only complicated.
  • Both identification data and feature data can be connected to one attribute. It is also possible to create only two types of attributes, that is, an attribute connected only to identification data and an attribute connected only to feature data.
  • an attribute connected only to identification data and an attribute connected only to feature data are connected to one object. For example, if there is identification data in the knowledge base that matches the speech identification data generated from the speech of a word heard by the ear, the attribute directly connected to the matching feature data is acquired, and the object directly connected to the attribute is obtained. get. Furthermore, if other attributes directly connected to the object are acquired and feature data directly connected to the acquired attribute is acquired, the nature, characteristics, meaning, or concept of the object represented by the word can be known. This is a function corresponding to association. Further, identification data is generated from one word, and the generated identification data is directly connected to one attribute, and when the attribute is directly connected to several different objects, different objects can be represented by one identification data. This corresponds to an ambiguous word.
  • Identification data and feature data can be directly connected to the same attribute.
  • an attribute directly connected to the identification data is acquired, and feature data directly connected to the acquired attribute is acquired.
  • the acquired feature data represents the nature, feature, meaning or concept directly included in the word from which the identification data is based.
  • identification data generated from one word is directly connected to a plurality of different attributes
  • the identification data generated from one word is associated with a plurality of meanings or concepts. This also corresponds to an ambiguous word. If the identification data is directly connected to the object, the object can be directly selected and identified by the identification data. Since an object can be acquired without acquiring an attribute, an object can be acquired more quickly.
  • knowledge can be accumulated and knowledge processing such as recognition and inference can be performed without identification data.
  • the fourth information process is positioned between the second information process and the third information process.
  • the knowledge base system according to the embodiment of the present technology can perform the fourth information processing.
  • Knowledge can be accumulated and processed using a knowledge base consisting only of objects, attributes, and identification data.
  • the knowledge base system in this case does not include properties, features, meanings or concepts. Since the object and the attribute are identified only by the identification data and the feature data is not processed, the object and the attribute can be processed more quickly and the processing load can be reduced. Even if the knowledge base includes feature data, it is possible to perform knowledge processing such as inference using only objects, attributes, and identification data.
  • a crow that feeds the city center of Tokyo breaks the garbage bags that were put out late at night or early in the morning and treats them with food.
  • Garbage is scattered from the bag, detracting from aesthetics. Humans take measures by changing the color of the bag to make it difficult to see the contents, or by adding ingredients that hate crows to the bag.
  • the crow continues to beat the trash in the bag overcoming the measures taken by humans. It seems that crows are learning and comparing wisdom with humans. It is unlikely that learning as seen in the crow example is performed in the third information processing. It is natural to think that learning is performed in a simpler method than the third information processing. In the present application, this is called fourth information processing.
  • fourth information processing When knowledge expressed in the above-described three-layer structure is constructed, fourth information processing can be performed.
  • FIG. 6 shows a knowledge base system 1000 which is an embodiment of the present technology.
  • a camera, a microphone, an infrared sensor, and the like are connected to the computer as input devices.
  • the computer shown in FIG. 7 is used in the knowledge base system 1000 shown in FIG.
  • FIG. 7 is a conceptual diagram of a computer.
  • the computer shown in FIG. 7 includes an input device 1, an arithmetic device (Central Processing Unit: CPU) 2, a communication device 3, an external storage device 5, a main storage device 6, and an auxiliary storage device 7.
  • CPU Central Processing Unit
  • the arithmetic device 2 issues an instruction to the auxiliary storage device 7 and reads the program 9 stored in the auxiliary storage device 7 and the data 10 used by the program 9 into the main storage device 6. Further, the program and data in the main storage device 6 are stored in the auxiliary storage device 7 in accordance with an instruction from the arithmetic device 2. The arithmetic device 2 issues an instruction to the external storage device 5 and reads the data 12 and the program 11 stored in the external storage device 5 into the main storage device 6. Further, the program and data in the main storage device 6 are stored in the external storage device 5 in accordance with an instruction from the arithmetic device 2.
  • the input device 1 includes a keyboard, a mouse, a scanner for reading an image, a camera, a microphone, a temperature sensor, a pressure sensor, and the like. Analog data such as images, sounds, and temperatures are converted into digital data.
  • the output device 8 includes a display device such as a flat display, a printer, a device that outputs sound (speaker), a relay contact, a device that controls equipment, and the like.
  • the computing device 2 gives an instruction to the communication device 3 and communicates with other computers and devices not shown through the network 4.
  • the arithmetic device 2 reads the program 9 of the auxiliary storage device 7 or the program 11 of the external storage device 5 into the main storage device 6, the arithmetic device 2 performs processing according to the procedure described in the read programs 9 and 11.
  • the programs 9 and 11 include input from the input device 1, output to the output device 8, communication using the communication device 3, reading and writing of data with the main storage device 6, auxiliary storage device 7 and external storage A processing procedure for reading and writing data with the device 5 is included.
  • the knowledge base program 13 is a program that performs logical operations, knowledge collections, and knowledge network processing using the present technology.
  • the relational database 14 creates tabular data 10 and 12 in the auxiliary storage device 7 or the external storage device 5, and performs processing of adding / searching / referring / updating / deleting data to the created table.
  • the knowledge base program 13 uses the relational database 14 to add, search, reference, update, and delete data from the table.
  • FIG. 8 is a functional block diagram of the knowledge base system 1000 according to an embodiment of the present invention.
  • Each functional block shown in FIG. 8 is stored as the knowledge base program 13 in the auxiliary storage device 7 shown in FIG. 4, for example.
  • the knowledge base program 13 includes, for example, a data input unit 1010, a feature extraction unit 1020, a data comparison unit 1030, a data storage unit 1040, a learning unit 1050,
  • a program 9 is read into the main storage device 6 and executed by the arithmetic device 2.
  • the data input unit 1010 and the output unit 1080 are also read into the main storage device 6 and executed by the arithmetic device 2.
  • the data input unit 1010 automatically acquires video data with a camera and acquires sound data with a microphone as follows. For example, when it is determined by an infrared sensor that a person or an animal is in front of the camera, this triggers acquisition of video data with the camera and acquisition of sound data with a microphone.
  • video data may be acquired with a camera and sound data may be acquired with a microphone due to a human clicking operation.
  • Feature extraction unit 1020 generates feature data or identification data from the input data input to data input unit 1010.
  • the data comparison unit 1030 includes feature data (or identification data) extracted by the feature extraction unit 1020 and feature data (or identification data) already stored in the data 10 (or data 12, the same applies hereinafter). And compare.
  • the data storage unit 1040 stores the new feature data or identification data in the data 10. Further, the data storage unit 1040 generates an attribute identifier of a new attribute and stores it in the data 10 in association with the new feature data or identification data. Further, the data storage unit 1040 generates an object identifier of a new object and stores it in the data 10 in association with the attribute identifier of the new attribute.
  • the data storage unit 1040 actually requests the relational database 14 to store new feature data or identification data in the data 10.
  • the relational database 14 is requested to perform processing such as data addition, search, reference, update, and deletion, and the processing result is obtained. Obtained from the relational database 14.
  • the description regarding the processing of the relational database 14 is omitted for the sake of simplicity.
  • the data input unit 1010 acquires input data such as video data and sound data directly emitted from the object.
  • the input data such as video data or sound data acquired by the data input unit 1010 is extracted by the feature extraction unit 1020 and becomes feature data or identification data.
  • the feature data or the identification data is stored in a knowledge base in the data 10 after being subjected to several processes.
  • the feature extraction unit 1020 extracts feature data from the input data acquired from the data input unit 1010 and passes the extracted feature data to the data comparison unit 1030.
  • the data comparison unit 1030 compares the feature data already stored in the data 10 with the passed feature data and checks whether there is the same feature data.
  • the data storage unit 1040 stores the feature data in the knowledge base, generates an attribute in the knowledge base, and directly connects the stored feature data and the generated attribute. Further, the data storage unit 1040 generates an object, and directly connects the generated object to the generated attribute.
  • the data storage unit 1040 stores the generated identification data in the knowledge base, generates an attribute in the knowledge base, and directly connects the stored identification data and the generated attribute. . Further, the data storage unit 1040 generates an object, and directly connects the generated object to the generated attribute.
  • One attribute directly connected to some feature data represents all the connected feature data by bundling and consolidating all the connected feature data, and represents the nature, feature, meaning or concept.
  • One attribute connected to only one feature data also represents the nature, feature, meaning or concept of the feature data.
  • the feature data connected to the attribute is not limited to one.
  • One attribute that is directly connected to some identification data represents all connected identification data by bundling and consolidating all connected identification data.
  • the identification data connected to the attribute is not limited to one.
  • FIG. 9 is a diagram illustrating an example of a correspondence table between attribute identifiers and feature data.
  • FIG. 10 is a diagram illustrating an example of a correspondence table between object identifiers and attribute identifiers.
  • the attribute identifier and the feature data identifier are held in association with each other. That is, the “attribute” in this specification includes an attribute identifier and feature data associated with the attribute identifier, as shown in FIG.
  • the attribute identifier is not a word representing the attribute itself, but is composed of a symbol (in this example, a numeric string) that has no meaning in itself.
  • the feature data is data representing the semantic content of the attribute, for example, the shape, sound, incense, taste, color, pressure, temperature, length, coordinate value, and area of the attribute identified by the attribute identifier This data represents at least one of the following.
  • FIG. 9 may hold an attribute identifier and identification data (or its identifier) associated with the attribute identifier.
  • the identification data is data generated from words representing the attribute.
  • a plurality of feature data may be associated with one attribute identifier, and one feature data (or identification data) has different attributes. Sometimes associated with an identifier.
  • the object identifier and the attribute identifier are stored in association with each other.
  • the object identifier is not a word representing the object itself, but is composed of a symbol having no meaning in itself. That is, “thing” in the present specification is represented by a thing identifier and a set of zero or more attribute identifiers associated with the thing identifier.
  • the data storage unit 1040 stores new feature data (or identification data; the same applies hereinafter) extracted by the feature extraction unit 1020 in the data 10, and then generates a new attribute identifier. At this time, the data storage unit 1040 generates a new attribute identifier so as not to overlap with the attribute identifier already registered in FIG. Then, the data storage unit 1040 associates the newly generated attribute identifier with the identifier of the feature data stored in the data 10 and registers it in the attribute identifier / feature data correspondence table shown in FIG.
  • the data storage unit 1040 generates a new object identifier.
  • the data storage unit 1040 generates a new object identifier so as not to overlap with the object identifier already registered in FIG.
  • the data storage part 1040 matches the said object identifier and the above-mentioned attribute identifier, and registers them in the correspondence table of the object identifier and attribute identifier shown by FIG.
  • an unused object identifier may be held in the data 10, and a new object identifier to be used may be acquired from the unused object identifiers. Further, an unused attribute identifier may be held in the data 10 and an attribute identifier to be newly used may be acquired from the unused attribute identifier. Further, an identifier of unused feature data or an identifier of unused identification data is held in the data 10, and is newly used from the identifier of unused feature data or the identifier of unused identification data. An identifier of feature data or an identifier of identification data may be acquired. If the attribute identifier, object identifier, feature data identifier, and identification data identifier are in the same common format, the mechanism becomes simple.
  • the learning unit 1050 arranges the relationship between the object identifier, the attribute identifier, and the feature data identifier (identification data identifier) shown in FIGS. 9 and 10 based on information acquired from the outside.
  • the search unit 1060 searches the correspondence tables shown in FIGS. 9 and 10 in accordance with instructions from the data comparison unit 1030 or the learning unit 1050. Details of these processes will be described later.
  • the operation unit 1070 performs a logical operation on the knowledge base stored in the data 10. More specifically, when at least one object identifier is designated as an operation target, a logical operation is performed on an attribute associated with the object identifier. Specific examples of the logical operation include, for example, AND operation, OR operation, NOT operation, NAND operation, NOR operation, common degree calculation, non-common degree calculation, similarity calculation, and dissimilarity calculation. . Details of these processes will be described later.
  • the output unit 1080 functions as a device driver that outputs the learning result of the learning unit 1050, the calculation result of the calculation unit 1070, and the like to the output device 8.
  • an object identifier for identifying the object and an attribute identifier for identifying the attribute are processing targets.
  • the thing and the attribute are connected means that the object identifier and the attribute identifier are associated with each other and registered in the correspondence table of the object identifier and the attribute identifier shown in FIG.
  • “acquiring an object connected to an attribute” indicates that an object identifier associated with the attribute identifier is acquired.
  • “generate an object” refers to generating a new object identifier. The above example is an example, and other similar descriptions shall be similarly interpreted.
  • the knowledge base system is an information system that handles knowledge
  • the information format of the knowledge base system is also a knowledge format.
  • the basic unit of knowledge is a thing.
  • the objects include not only concrete objects such as stones and mountains, but also abstract objects such as cold, size, WEB page, and sound.
  • Objects can have attributes that are predetermined properties.
  • the attribute of one object is not limited to one, and can have zero or more attributes.
  • a collection of zero or more attributes is called a set of attributes.
  • the logical operation has an aspect of operation on a set. When performing logical operations on attributes, it may be convenient to consider the entire attribute of one object as a set of attributes.
  • One attribute set has zero or more attributes. Things have attributes as attached information. Alternatively, an object has a set of attributes as attached information.
  • the thing having an attribute includes not only having the attribute itself but also having a pointer to the attribute. Similarly, having an attribute set includes having a pointer to the attribute set in addition to having the attribute set itself.
  • the X-axis and the Y-axis intersect at right angles, and a figure on a plane can be expressed. If the three coordinates of the X axis, the Y axis, and the Z axis intersect at right angles, a three-dimensional solid can be represented. If the X axis, Y axis, and Z axis intersect at an angle smaller than a right angle, the result is as shown in FIG. 12, and three coordinates can be expressed in a plane. If the angle at which the coordinate axes intersect is further reduced, more coordinate axes can be represented by a plane.
  • FIG. 13 is an example in which attributes are associated with coordinate axes in one embodiment.
  • the attribute is expressed by a three-dimensional coordinate axis.
  • One coordinate axis represents one attribute.
  • the coordinate axis 1 expresses the attribute “high”
  • the coordinate axis 2 expresses the attribute “salty”
  • the coordinate axis 3 expresses the attribute “sweet”.
  • the attributes are only associated with the coordinate axes for easy explanation. Corresponding attributes to coordinate axes is not essential for this embodiment. Further, in order to make the explanation of the present embodiment easy to understand, in FIG. 13, the coordinate axes 1, 2, and 3 are merely orthogonal. The angle at which the coordinate axes intersect is not essential to the present embodiment. It is an example for facilitating the explanation.
  • attributes are associated with coordinate axes.
  • the attribute is represented by a pair of a coordinate value and a true / false value indicating whether the attribute is true or false.
  • a boolean value can have one of three types of values: true, false, or neither false. For example, the true value is “1”, the false value is “ ⁇ 1”, and the value when neither true nor false is “0”.
  • an object having “1” as a truth value has an attribute represented by the coordinate axis.
  • an object having “ ⁇ 1” does not have the attribute, and an object having “0” indicates that it is not characterized by the attribute.
  • the true / false value can also be set to “0” when it is not known whether it is true or false, that is, when it is indefinite. It is natural that a pair of one attribute identifier for identifying an attribute and one true / false value becomes one attribute. Instead of the values “1”, “0”, “ ⁇ 1”, a truth value may be used as an identifier representing the truth value.
  • any of the three types of identifiers that are not “true”, “false”, and “true or false” can be set as a true / false value.
  • “true” may be “20005”
  • “false” may be “20006”
  • “not true or false” may be “20007”.
  • Attribute can have no Boolean value. If an object has an attribute, the truth value of that attribute can be true. On the other hand, when a thing does not have an attribute, there is a method in which the true / false value of the attribute is set to false. There is also a method in which a true / false value is false or indefinite when an object does not have an attribute. Indefinite means that it is not determined whether it is true or false. In this method, since there is no true / false value of the attribute, the logical operation process is simplified. In the world of mathematics, the discovery of the number 0 is a big event. Clearly distinguishing the state that an object does not have an attribute by having a false value of false may be a sophisticated way of holding information. Therefore, when it is limited to the fourth information processing, it may be more natural that the attribute does not have a true / false value.
  • mountains, rock salt, and mountains made of rock salt can be described as follows.
  • the coordinate axis 1 of the mountain is 1
  • For rock salt, coordinate axis 2 is 1, coordinate axis 3 is -1.
  • a mountain made of rock salt, coordinate axis 1 is 1, coordinate axis 2 is 1, coordinate axis 3 is -1.
  • the same content can be described using symbols as follows.
  • Mountain made of rock salt (1: 1, 2: 1, 3: -1)
  • the left parenthesis is a thing, the whole parenthesis represents a set of attributes that the word has, and the parentheses represent individual attributes that the thing has.
  • a number on the left side of “:” in parentheses is an attribute identifier representing an attribute, and a right side of “:” is a true / false value of the attribute. If an object is not characterized by a certain attribute, the attribute identifier and truth value description for that coordinate axis are omitted. Having no attribute means that the attribute does not affect the meaning of the object. Or it shows that there is no information about the relation between the object and its attribute.
  • the attribute may be described only when the object has an attribute, that is, only when the true / false value of the attribute of the object is true. In this case, it has no truth value. This may be more natural in the fourth information processing. This is closer to the above hypothesis.
  • An attribute that does not contain a true / false value is described only when the true / false value of the attribute of the object is true.
  • the attribute identifier representing the attribute can be composed of a main identifier and a sub-identifier.
  • the primary identifier represents the basic property of the attribute
  • the secondary identifier represents a more detailed property of the attribute such as degree and appearance.
  • the sub-identifier corresponds to an adverb.
  • the above-mentioned hypothesis main attribute identifier corresponds to the attribute main identifier
  • the above-mentioned hypothesis sub-attribute identifier corresponds to the attribute sub-identifier.
  • the attribute is composed only of the main attribute.
  • the main attribute and the sub attribute are attributes and have the same data structure.
  • the attribute of height can have more detailed attributes such as tall, slightly tall, and short.
  • a main identifier that is an identifier of a main attribute can be associated with height that is a basic attribute.
  • an attribute that modifies the basic attribute of high height and low height can be associated with a sub-identifier that is a sub-attribute identifier.
  • feature data generated from an image in which a person's height is measured with a height meter is directly connected to the main attribute and associated.
  • Feature data generated from a small person's video is directly linked to the sub-attribute and associated.
  • the feature data directly associated with the sub-attribute includes not only numerical feature data but also feature data generated from information obtained from sensory organs and sensors called the five senses such as sound and video.
  • the sub-identifier that is an identifier of the sub-attribute modifies the main identifier that is the identifier of the main attribute like an adverb.
  • the main identifier as a key
  • feature data directly corresponding to the main identifier of the attribute can be acquired.
  • feature data directly corresponding to the sub-identifier of the attribute can be acquired.
  • the sub-identifier corresponding to “Very salty” is set to 9
  • the sub-identifier corresponding to “feeling a little salty” is set to 1.
  • a plurality of sub-identifiers may be provided in stages between “feel a little salty” and “very salty”. This is expressed as follows. Since the sub-identifier is also an identifier, it may be an identifier indicating data indicating the feature of “very salty”, for example, feature data having a value of 9. In this example, the data representing the feature of “very salty” and its sub-identifier are represented by the same character as intuitively understood. (1) Mountain (1: 1) (2) Rock salt (2 * 9: 1, 3: -1) (3) Mountain made of rock salt (1: 1, 2 * 9: 1, 3: -1)
  • a mountain is represented by A
  • B a rock salt
  • C a mountain made of rock salt
  • “A” and “B” are not “words” indicating the meaning of the object, but are “object identifiers” that do not represent the meaning of the object but simply identify the object.
  • the thing represents that it consists of one “object identifier” and one attribute set.
  • an identifier of 30003 may be used. Since a set can have zero or more attributes as elements, the number of attribute identifiers representing the attributes of a “thing identifier” representing a thing is not limited to one, but two pieces, either zero or one That's fine.
  • objects can be expressed as points, lines, planes, solids, etc. in a space with attributes as coordinate axes.
  • the degree of overlap or proximity of two objects represents the magnitude of the relationship between the two objects.
  • objects and attributes associated with brain neurons can be expressed well.
  • an object or attribute By representing an object or attribute with an identifier for identifying the object or attribute, it is possible to express a connection between the object or attribute associated with a neuron in the brain.
  • searching for an object or attribute using an identifier for identifying the object or attribute as a key the connected object or attribute is acquired.
  • an object identifier connected to the attribute can be acquired.
  • a table that associates attribute identifiers with feature data is created in advance for connected attributes and feature data.
  • this table is searched using the attribute identifier as a key, feature data connected to the attribute can be acquired.
  • feature data connected to the attribute can be acquired.
  • an attribute identifier connected to the feature data can be acquired. In this way, the connection of things, attributes, and feature data can be imitated.
  • the neurons corresponding to the object or attribute are not connected to each other by dendrites or the like, but the object or attribute is represented only by an identifier that does not express its meaning, and the identifier is used as a key.
  • identifiers In conventional information systems, people are associated with identifiers called employee numbers. However, in the prior art, a person can have a plurality of identifiers of different formats such as an annuity number in addition to the identifier of an employee number.
  • An automobile has an identifier called a license plate number or a manufacturing number.
  • the employee number, pension number, and car number are different types of information. Even the same person can have different types of identifiers. Different objects, such as people and cars, have different types of identifiers.
  • the true / false value may be an identifier representing the true / false value.
  • the true / false value is either an attribute representing true or an attribute representing false.
  • An attribute representing true is connected to feature data representing true, and an attribute representing false is associated with feature data representing false.
  • All identifiers including the primary attribute identifier that is the primary attribute identifier, the secondary attribute identifier that is the secondary attribute identifier, and the true / false identifier can be limited to the same format as the entity identifier.
  • features are extracted from the received information.
  • the extracted features are stored as feature data.
  • the retained feature data is associated with the object identifier and the attribute identifier.
  • identification data connected to an object or attribute is acquired, a word is generated from the acquired identification data, and the generated word is output.
  • Identification data generated from the words “flower” in Japanese and “flower” in English is connected to one attribute.
  • the feature data generated from the image of the actually blooming flower is associated with another attribute identifier.
  • B is a word or identifier that represents an object and has a set of attributes.
  • the argument (2 * 9: 1) is a set of attributes including one attribute.
  • a set of attributes of the object is an operation target. In this case, it happens to be a set of one attribute, but there may be zero or a plurality of attributes.
  • the program “include ((2 * 9: 1))” returns a true value as a return value if the attribute set of B has the same attribute as the argument. If there is the same attribute identifier but the truth value is different, a false value is returned as a return value.
  • NULL may be used as a value indicating that it does not exist. Further, when there is no same attribute identifier, a false value may be returned as a return value.
  • a program called include performs the following process to generate a true or false value or a NULL value.
  • a thing having a set of attributes to be compared, BverySalt, that is, a set of attributes that are arguments of the program is called a set of attributes to be compared.
  • BverySalt that is, a set of attributes that are arguments of the program
  • a true value is returned as a return value.
  • a false value is returned as a return value.
  • NULL is returned as a return value in the sense that there is an attribute that cannot be compared. If the attribute set to be compared has no attribute in the set of attributes to be compared, false may be returned. Whether NULL is returned or false is returned depends on the design policy of the program.
  • the return values and the conditions listed here are examples. A combination of other conditions and return values may be used.
  • condition with false and NULL as return values is shown below. It is merely an example and other conditions may be used. Returns a false value as a return value if the primary identifier of the attribute of the set of attributes to be compared is in the set of attributes to be compared and if there are fewer than a predetermined number of matching true / false values . If there is no primary attribute identifier in the set of attributes to be compared, the NULL value is returned as a return value in the sense that comparison is not possible.
  • the above-mentioned conditions are examples, and other conditions may be used as long as they are appropriate.
  • Attribute sub-identifiers should indicate value, value range, degree, status, etc. as supplementary information.
  • a sub-identifier of an attribute that is, the sub-attribute is connected to a value, a range of values, a degree, and a situation as feature data. It is also possible to specify a main identifier, and use the determination whether the main identifier is the same and the sub-identifier is the same. If values and ranges, which are feature data corresponding to the sub-identifiers, are stored in advance, and information on the values and ranges is acquired using the sub-identifiers as keys, the values can be directly compared.
  • the main attribute of height can be connected to a sub-attribute connected to feature data of a specific value, for example, 190 cm.
  • a specific value for example, 190 cm.
  • attributes that are not clear such as the attribute of being tall. Considering Japanese men as a premise, almost all people judge that they are 185cm tall. 60% of people may determine that they are 180cm tall. As in this example, attributes often do not have clear boundaries.
  • Numerals, audio data, image data, video data, etc. are also included in the actual data.
  • the feature data generated from the actual data is connected to the same attribute together with the fuzzy function.
  • Actual data is not limited to the aforementioned data.
  • the ratio of width to length can be obtained from face image data, and the degree of the round face can be generated using the held membership function with the ratio as an argument.
  • FIG. 14 is an example of a fuzzy set in one embodiment.
  • the membership function is generated by generating values from 0 to 1 representing the degree indicated by the vertical axis in FIG. 14 when data such as a specific value which is the value on the horizontal axis in FIG. 14 is given. Returns a value representing the degree as a return value.
  • a method of generating unclear attributes there is a method of connecting various feature data and identification data to one attribute. For example, in speech recognition, a certain word is pronounced by many people, and identification data is generated from the pronunciation. The plurality of generated identification data are connected to one attribute. This attribute represents the phonetic representation of the word. When the same identification data as any of the identification data connected to the attribute is generated from the input voice, the input voice is recognized as the attribute.
  • This method can also be used for feature data, and can be applied to all kinds of information such as images in addition to audio.
  • This common degree is defined as a common degree. For example, with respect to a set of two attributes, it is checked whether there is an attribute having the same attribute identifier and true / false value. Thus, if a program that returns the number of sets of matching attributes as a common degree is created, the common degree can be obtained. When an attribute has a weight as attached information, the commonness may be obtained by adding the weights of matching attributes. Adding the weights is also included in the counting. The method for calculating the commonality is an example. Other methods may be used.
  • the degree of disagreement is defined as the non-commonness. For example, it is checked whether there is an attribute having the same attribute identifier and different true / false values with respect to a set of two attributes. To. Thus, if a program that returns the number of sets of corresponding attributes as the non-commonness is created, the non-commonness can be obtained. When an attribute has a weight as attached information, the degree of dissimilarity may be obtained by adding the weights of the corresponding attribute.
  • the non-commonness calculation method is an example. Other methods may be used.
  • ⁇ Commonness and non-commonness can be used as a measure to indicate how similar or how different two attribute sets are.
  • a list of matching attributes can be returned as a return value.
  • a list of non-matching attributes it is also possible to return a list of non-matching attributes as a return value.
  • the degree of commonality is large, it means that there are many common attributes. When the non-commonness is larger than 0, it means that the conflicting attribute may be included. When reading a book or listening to a story, you may feel "Oh, something strange”. This feeling can be associated when the non-commonness is greater than zero. If the degree of commonality is large, but the degree of commonality is not 0, there may be some inconsistency.
  • AND operation newly generates a set of attributes whose elements are attributes common to the two sets of attributes.
  • a program that performs an AND operation collects attributes having the same attribute identifier and the same true / false value for two attribute sets, and generates a new attribute set having the collected attributes as elements.
  • the AND operation is also a product set operation.
  • c is a set of attributes not including attributes.
  • the symbol ⁇ represents a set of attributes having no attribute.
  • the OR operation newly generates a set of attributes including all the attributes included in at least one of the two sets of attributes.
  • a program that performs an OR operation generates a new attribute set whose elements are all the attributes included in the two attribute sets.
  • the OR operation is also a union operation.
  • the lowercase alphabet is a set of attributes
  • the uppercase alphabet is a thing
  • the logical calculation formula does not change even if the number of attributes included in the attribute set is large or small. Usually, things have very many attributes. If this technology is used, a logical operation expression can be described very simply as compared with the conventional technology.
  • an object and an attribute of the object are not expressed by a word but by an identifier that is information having no meaning of the object or the attribute itself.
  • a set of attributes whose elements are attributes represented by identifiers, which are information that does not represent the meaning of the attributes themselves, is the target of the logical operation.
  • Each attribute that is an element of a set of attributes is associated with one coordinate axis.
  • a coordinate axis identifier for identifying a coordinate axis corresponding to each attribute is used as an attribute identifier, and the attribute is represented by a combination of the attribute identifier and a true / false value. If the attribute is true, the attribute is represented by a combination of an attribute identifier and a positive value. On the other hand, if the attribute is not true, the attribute is represented by a set of an attribute identifier and a negative value. This interpretation may be easy to understand.
  • the purpose of associating attributes with coordinate axes is to aid understanding of the present technology. It is not essential to associate attributes with coordinate axes.
  • the attribute may be an attribute identifier composed of a main identifier and a sub-identifier.
  • the primary attribute identifier corresponds to the primary identifier
  • the secondary attribute identifier corresponds to the secondary identifier.
  • a coordinate axis identifier for identifying a coordinate axis corresponding to each attribute is a main identifier, a value indicating a more detailed feature of the attribute, a range, a degree, etc. are sub-identifiers, and an identifier composed of a main identifier and a sub-identifier It is good also as an attribute which consists of a truth value.
  • a special value indicating that there is no sub-identifier for example, a special value such as NULL may be used as the sub-identifier. Alternatively, it may simply not have a sub-identifier.
  • the method of expressing the degree of attribute using the sub-identifier has been shown.
  • the criteria for determining the attribute of being tall is different depending on the race. Therefore, it is beneficial to be able to acquire actual information such as height from the attributes. It is only necessary to store actual height numerical information as feature data, generate an attribute called height, and associate the feature data of height with the sub-attribute.
  • the feature data generated from the whole body image may be connected to the attribute of height. Based on the feature data connected to the attribute of height, it is possible to determine whether the person is tall and change the meaning of the attribute. In this way, actual information can be acquired from the attribute identifier. Using the attribute identifier as a search key, actual information, that is, feature data can be acquired.
  • Attribute can be generated from all kinds of information such as images, videos, sounds, touch, temperature and pressure.
  • attributes such as face length and round face can be generated from a face image. It is assumed that a face portion is extracted from image data, and an aspect ratio calculation function for calculating a ratio between the width and length of the face from the extracted face image data is provided.
  • face image data is given
  • the aspect ratio of the face is calculated from the given face image data using the aspect ratio calculation function.
  • the attribute closest to the calculated aspect ratio of the face is selected, and the truth value of the selected attribute is made true.
  • identification data can be generated from a word and held, and the identification data generated from the word can be associated with an attribute.
  • the identification data generated from words is merely used to select an object or attribute, and is not used to represent the meaning or concept of the object or attribute.
  • an image diagnosis system can generate an attribute in which feature data generated from information other than words such as images, sound, touch, temperature, and pressure is connected, and perform a logical operation on a set of attributes including the generated attribute. It can be used for equipment monitoring systems.
  • a thing may inherit the set of attributes of another thing.
  • An object may also contain a set of attributes of another object.
  • the OR operation is associated with inheriting or including the attribute of another object.
  • a collection of things with common attributes is called a knowledge collection. Specify one or more attributes and select the one with the specified attribute identifier.
  • a collection of selected objects is a collection of knowledge. Normally, an object having the attribute identifiers of all the specified attributes is selected, but an object having a part of the specified attributes may be selected.
  • it may be a collection of knowledge consisting of only one thing. In this case, it can be interpreted that one object is identified and recognized by the attribute used for the search.
  • the thing becomes an abstract object that means a collection of things.
  • the abstract object can be identified by the identification data.
  • one thing and another thing may have a relationship. Connect these related objects.
  • This collection of connected objects is a knowledge network. Expressing the relationship between things by connecting things. There are two types of relationships: one is connected in both directions and the other is connected in one direction. When connected in both directions, the two connected objects cannot be distinguished from each other, so that the relationship is equal. When connected in one direction, two connected objects can be distinguished. For example, the parent-child relationship is represented by a one-way connection, and the parent thing is connected in one direction only to the child thing. In this way, it is possible to distinguish a parent and a child.
  • a relationship represented by a one-way connection can be associated with an object being included in another object, such as an inclusion relationship.
  • adding a connection between things, changing a connection method, and deleting a connection are associated with learning knowledge.
  • Adding new objects to the knowledge network or deleting existing ones can also be associated with knowledge learning.
  • Creating a new knowledge network is also associated with learning.
  • the existence and connection of things in the knowledge network is also knowledge. Things are also knowledge.
  • FIG. 15 shows the inclusion relationship of objects.
  • a circle shown in FIG. 15 is a node 60.
  • the node 60 holds an object identifier and represents an object.
  • the node 60 is only the thing represented by the thing identifier.
  • the attribute 61 and the set of attributes 61, feature data, and identification data are not the node 60.
  • the attribute 61 and the set of attributes 61 are attached information of an object that is the node 60.
  • Objects include not only concrete objects such as stones and dogs, but also shining objects and abstract objects such as WEB pages and concepts.
  • a node 60 having no attribute 61 is also possible. If there is an object that is not known, the object does not have the attribute 61.
  • the node 60 has zero or more attributes 61.
  • An entire attribute of one object can be regarded as a set of attributes 61.
  • the set of attributes 61 corresponds to the list of objects and attributes shown in FIG.
  • An arrow 62 represents the association of the node 60. That is, the arrow 62 represents the association of objects.
  • An arrow 63 represents the connection between the node 60 and the attribute 61.
  • the second method is as follows.
  • the thing of a subordinate concept does not have the attribute showing a superordinate concept.
  • the attributes representing the plurality of concepts can be arranged in the same order by connecting them in order from the attribute representing the higher concept to the attribute representing the lower concept.
  • An attribute after a certain attribute is selected from the hierarchical information of the attribute, and a collection of knowledge is generated by collecting objects having at least one selected attribute. If a collection of knowledge is generated by selecting all attributes after a certain attribute from the hierarchical information of the attribute, a collection of knowledge including all subordinate concepts can be generated.
  • you select a range of attributes you can generate a collection of knowledge with that range of attributes.
  • objects can be connected in a collection of knowledge.
  • a connected object is called a knowledge network.
  • things that do not have common attributes that is, things that are not included in the knowledge collection, can be connected to the knowledge network.
  • knowledge networks In addition to a tree structure in which one or more nodes are connected to one end node, there are knowledge networks of various connection methods. There are connections with direction and connections without direction. If there is a direction, it can indicate that there is a difference between the two connected objects. Connections without direction can be viewed as being connected to both rather than one direction. Directional connections are represented by arrows. Connections without direction are represented by lines.
  • An arrow has a starting point and an arriving point, and the one with the arrow is the arriving point, and the one that is not the arriving point without the arrow is the starting point.
  • the starting point may be called the start point of the arrow, and the arrival point may be called the end point of the arrow.
  • a knowledge network with a network structure without a root node as a starting point such as a tree structure is also possible. If things are connected, it is a knowledge network. Any connection method is acceptable. There can be only one thing or a zero knowledge network.
  • a connection by a dendrite or the like connecting nerve cells corresponds to an arrow.
  • Objects can belong to multiple knowledge collections.
  • An object can belong to a plurality of knowledge networks.
  • humans have an attribute called blood relationship. It also has attributes like a school of origin. If these multiple attributes are expressed by a single knowledge network, the knowledge network becomes very complex.
  • a knowledge network representing a blood relationship and a knowledge network representing a home university are respectively generated so that a human node belongs to a plurality of knowledge networks such as a knowledge network representing a blood relationship and a knowledge network representing a school of origin.
  • nodes that are objects are connected by a blood relationship.
  • nodes that are grades are connected.
  • the structure of each knowledge network becomes very simple if the connection between things is expressed by dividing it into several knowledge networks.
  • things belong to multiple knowledge networks.
  • knowledge networks things are directly connected by some relationship.
  • a knowledge network can express clearly systematized knowledge by connecting things having common attributes by only one predetermined relationship.
  • systematized knowledge about the object can be expressed and maintained.
  • Knowledge networks are connected only by things.
  • a knowledge collection is created by collecting objects having all the specified attributes, and if it is determined whether there is a given object in the generated knowledge collection, then the given object is the knowledge of the knowledge. You can determine if you have all the attributes that generated the collection.
  • a knowledge collection is a collection having an object (object identifier) as an element. Therefore, logical operations such as an AND operation, an OR operation, and a NOT operation are possible using an abstract object representing a collection of knowledge as an operation target.
  • an arrow connecting nodes in a certain knowledge network represents an inclusion relationship.
  • the starting point node includes the arriving point node. If node B can move to node A more than 0 times in the opposite direction of the arrow and reach node A, B is said to be A. When the number of movements is 0, node A and node B are the same node. Again, nodes represent things.
  • node B may be node D.
  • Node D there may be some relationship between Node B and Node D. The degree of possibility depends on how well the knowledge network is generated. When the total number of movements is 0, node B, node A, and node D are the same node.
  • the node D can be connected to the node B with one arrow.
  • a new knowledge network including node D and node B may be created, and node D and node B may be directly connected.
  • a one-way connection knowledge network was used as an example, but a two-way connection knowledge network is also possible. However, in the case of two-way connection, the difference between connected objects is not clear.
  • the relational database 14 can efficiently perform set operations such as extracting data that satisfies certain conditions from tabular data. Therefore, in this embodiment, an example using the relational database 14 will be described. You may implement without using the relational database 14.
  • FIG. In the technology of this application, instead of knowing the connected object or attribute by connecting the object and attribute and sending a signal to the connected object or attribute, the object, attribute, feature data, and identification data are represented by an identifier. And search. As a result, connected objects, attributes, feature data, and identification data are acquired.
  • the object identifier itself is an object
  • the attribute identifier itself is an attribute
  • the primary identifier of the attribute itself is the primary attribute
  • the secondary identifier of the attribute itself is the secondary attribute.
  • the feature data is represented by a pointer that is an identifier.
  • the feature data itself is in data 10.
  • the identification data is represented by a pointer that is an identifier.
  • the identification data itself is in data 10.
  • 17A, 17B, 18 and 19 schematically show the tables in the data 10 created by the relational database 14.
  • FIG. 17A is a list of data that is the basis of the attribute.
  • FIG. 17B is a correspondence table between the names of the objects and the object identifiers.
  • the data list that is the basis of the attribute includes a word that is the name of the object represented by characters, a word that represents the attribute of the object, and a truth value of the attribute.
  • the actual data is data that is a source of the truth value. If there is actual data, a true / false value may be generated from the actual data.
  • a Boolean value is not required. By applying the rule that a boolean value is true only when the attribute is listed in the table, the boolean value can be omitted.
  • the correspondence table between the object name and the object identifier associates a word that is the name of the object with the object identifier.
  • FIG. 18 is a correspondence table of attributes and attribute identifiers associated with words.
  • This table corresponds to the first hierarchy in FIGS. 2A and 2B.
  • the attribute identifiers in this table are associated with feature data stored in advance that is not shown.
  • a main identifier that is a main attribute is associated with a pointer that is an identifier of feature data of the main attribute.
  • a sub-identifier that is a sub-attribute is associated with a pointer that is an identifier of feature data of the sub-attribute.
  • the word associated with the attribute is associated with the attribute identifier.
  • the identifier of feature data that is a pointer to the feature data is also associated.
  • Attribute attribute and feature data outside the figure are connected, meaning or concept is generated.
  • the number of feature data pointers to be associated may be limited to one at a maximum, and as many table data rows as the number of feature data to be associated may be created, or all feature data pointers may be included in one row.
  • the correspondence table between attributes and attribute identifiers is a table for associating the attribute words in the data list that is the basis of the attributes in FIG. 17A with the attribute identifiers.
  • the corresponding attribute identifier is acquired from the attribute-attribute identifier correspondence table using the word associated with the attribute in the data list as the attribute source in FIG. 17A as a key.
  • the attribute identifier to be acquired may consist of a main identifier and a sub-identifier. Sometimes it consists only of the primary identifier. If a possible combination of a main identifier and a sub-identifier is predetermined, an unnatural combination can be detected using the combination. Even if possible combinations of primary identifiers and secondary identifiers are created in advance, possible combinations of primary identifiers and secondary identifiers can be added or deleted by learning.
  • the attribute of the data list that is the basis of the attribute in FIG. 17A may be an attribute composed of a main attribute and a sub attribute.
  • the correspondence table of attributes and attribute identifiers in FIG. 18 may have a condition that the true / false value of the attribute is true. If the correspondence table of attributes and attribute identifiers has a condition that the true / false value of the attribute is true and has actual data that is the attribute's source, the true / false value of the attribute is true.
  • the true / false value can be determined by judging whether or not the condition is satisfied.
  • the condition may be a determination function such as a membership function of a fuzzy set. In this case, the data on which the attribute is based may not have a true / false value.
  • Feature data is generated from the actual data.
  • 17A is a list of data that is the basis of attributes, a correspondence table between the names of the objects and the identifiers in FIG. From the identifier, the attribute identifier corresponding to the attribute, and the true / false value, as shown in FIG. 19, a list of the thing and the attribute that associates the object identifier, the attribute identifier of the thing and the true / false value, Generate. Boolean values can be omitted by applying the rule that true / false values are true if there is an entity identifier and the attribute identifier of the attribute that the entity has, and false otherwise. . Further, feature data generated from actual attribute data may or may not be included. Note that having an identifier of feature data also describes having feature data. When the attribute consists of one main attribute and one sub attribute, the main attribute and the sub attribute are distinguished by the column position of the table.
  • feature data outside the figure is associated with an object identifier and an attribute identifier. Then, by searching using the identifier of the feature data as a key, an object identifier and an attribute identifier associated with the feature data can be acquired.
  • Objects and attributes connected to feature data have feature data identifiers that are pointers to the feature data.
  • FIG. 20A is a table in which objects, main attributes, and sub-attributes are associated with each other.
  • This table is an example showing a set of one thing, one main attribute, and one sub attribute connected so as to form a triangle having the object, the main attribute, and the sub attribute as vertices. If this table is searched by specifying an object and a main attribute, sub-attributes that are remaining elements forming a triangle can be acquired.
  • the main attribute and the sub attribute are associated with each other, and an appropriate combination of the main attribute and the sub attribute is held.
  • the number of sub-attributes associated with one main attribute is not limited to one.
  • the number of sub-attributes associated with a certain main attribute is not limited to one, and there may be a plurality.
  • Choose an appropriate combination of main attribute and sub-attribute from this combination associate the object with the main attribute and sub-attribute, and list the associated object, main attribute and sub-attribute pair with the object and attribute. Can be added to.
  • the same feature data may be directly connected to and associated with the main attribute and the sub attribute constituting one attribute.
  • the number of feature data associated with the main attribute and the sub-attribute constituting one attribute is not limited to one, and there may be a plurality of feature data.
  • Both the main attribute and the sub attribute are attributes, and both are one or more, and feature data that is not limited to one is connected.
  • object, main attributes, and sub-attributes are connected in a triangle shape, if you specify two of the three elements of the objects, main attributes, and sub-attributes that make up the triangle, the remaining one element is determined.
  • an attribute connected to a certain object is composed of a main attribute and a sub-attribute, it is possible to search and acquire an attribute connected to both the object and the main attribute.
  • This attribute is a sub attribute.
  • the main attribute is connected to feature data representing a rough meaning or concept.
  • the sub-attribute is connected to feature data representing a more detailed meaning or concept. If you want to know a rough meaning or concept, you need to acquire feature data that leads to the main attribute. If you want to know more detailed meaning or concept, you need to acquire the feature data that leads to the sub-attribute.
  • This operation of selecting a common attribute from two attribute sets and generating a new attribute set having the selected attribute as an element is called an AND operation.
  • An operation of selecting an attribute included in at least one of the two attribute sets and newly generating a set having the selected attribute as an element is called an OR operation.
  • For an attribute that is an element of a set of attributes if the truth value is true, the truth value is set to false, and if the truth value is false, an attribute with the truth value set to true is generated.
  • An operation for newly generating a set of attributes having attributes as elements is called a NOT operation.
  • An operation of selecting an attribute included in only one of the two attribute sets and generating a new attribute set having the selected attribute as an element is called an XOR operation.
  • FIG. 21 is a flowchart of an AND operation according to an embodiment. The processing procedure of the AND operation will be described with reference to FIG.
  • an attribute set A and an attribute set B to be ANDed are designated (S21).
  • a set of zero or more attribute identifiers associated with the object identifier is specified.
  • an attribute having the same attribute identifier is selected from the attributes belonging to the attribute set A and the attributes belonging to the attribute set B (S22).
  • an attribute having the same attribute identifier and the same associated true / false value is selected, and a set of attributes having the selected attribute as an element is newly generated (S23). Then, a newly generated set of attributes is set as a result of the AND operation.
  • the attribute does not have a true / false value, an attribute having the same attribute identifier is selected, and a set of attributes having the selected attribute as an element is newly generated. It is described that two matching processes are combined to select matching attributes. Then, the AND operation selects a matching attribute for the attribute of the attribute set A and the attribute of the attribute set B, and newly generates an attribute set (common part) having the selected attribute as an element. It is.
  • FIG. 22 is a flowchart of an OR operation in one embodiment. The procedure of OR operation will be described with reference to FIG.
  • an attribute set A and an attribute set B to be ORed are designated (S31).
  • an attribute having the same attribute identifier and having both an affirmative value and a negative value is selected from the attributes of the attribute set A and the attribute set B (S32). If the attribute does not have a true / false value, an attribute having the same attribute identifier is selected. It is described that two matching processes are combined to select matching attributes. This process coincides with the result of the AND operation described above.
  • an attribute that is not included in the attribute set B among the attributes in the attribute set A is selected. That is, an attribute identifier included only in the attribute set A is selected.
  • an attribute that is not included in the attribute set A among the attributes of the attribute set B is selected. That is, an attribute identifier included only in the attribute set B is selected (S33).
  • a new set of attributes whose elements are all the attributes selected in S32 and S33 are generated as a result of the OR operation (S34).
  • the attribute set obtained by the above processing is a new attribute set (union set) in which attribute identifiers included in at least one of attribute set A and attribute set B are collected. It becomes.
  • the attribute set obtained by the above processing is, for example, from the sum of attribute set A and attribute set B to either attribute set A or attribute set B. It can also be obtained by removing attributes that are included and associated with different truth values.
  • FIG. 23 is a flowchart of a NOT operation according to an embodiment. The NOT calculation processing procedure will be described with reference to FIG.
  • a set of attributes to be operated is designated (S41).
  • the value of the associated truth value is inverted for all attributes included in the specified attribute set. That is, when the true / false value is a true value, a new attribute is generated, and when the true / false value is a false value, a new attribute is generated. Then, the generated attributes are collected to generate a new attribute set (S42).
  • FIG. 24 is a flowchart of NAND operation in one embodiment. A processing procedure of NAND operation will be described with reference to FIG.
  • an attribute set A and an attribute set B to be subjected to NAND operation are designated (S51).
  • an attribute having the same attribute identifier and the same associated truth value is selected to generate a new attribute set ( S52). This corresponds to the result of the above AND operation.
  • FIG. 25 is a flowchart of the XOR operation in one embodiment. The processing procedure of the XOR operation will be described with reference to FIG.
  • an attribute set A and an attribute set B to be subjected to the XOR operation are designated (S61).
  • an attribute that is not included in the attribute set B is selected among the attributes of the attribute set A. That is, an attribute identifier included only in the attribute set A is selected.
  • an attribute that is not included in the attribute set A among the attributes of the attribute set B is selected. That is, an attribute identifier included only in the attribute set B is selected (S62).
  • This process corresponds to the process of S33 shown in FIG.
  • a set of attributes having all the attributes selected in S62 as elements is newly generated as a result of the XOR operation (S63).
  • a new attribute set is generated by collecting attribute identifiers included only in one of the attribute set A and the attribute set B.
  • the attribute set obtained by the above processing is, for example, from the union of the attribute set A and the attribute set B (the result of the OR operation) to the common part of the attribute set A and the attribute set B (AND operation). It is also possible to obtain the result by removing the result.
  • FIG. 26 is a flowchart of a process for calculating the commonality according to an embodiment. With reference to FIG. 26, a processing procedure for calculating the commonality will be described.
  • an attribute set A and an attribute set B to be operated are designated (S71).
  • an attribute having the same attribute identifier and the same associated true / false value is selected (S72). If the attribute does not have a boolean value, select an attribute with the same attribute identifier. It is described that two matching processes are combined to select matching attributes. Even if the sub-identifiers are different, the attributes may be the same if the main identifiers are the same.
  • the result of counting the number of selected attributes is output as the degree of commonality (S73).
  • the condition for selecting the matching attribute is an example, and other conditions may be used.
  • the weight values may be summed instead of counting the number of pairs.
  • FIG. 27 is a flowchart of a process for calculating non-commonality in an embodiment. With reference to FIG. 27, a processing procedure for calculating the non-commonality will be described.
  • an attribute set A and an attribute set B to be operated are designated (S81).
  • an attribute having the same attribute identifier and having a different associated true / false value is selected from the attributes of attribute set A and attribute set B (S82). If the attribute does not have a true / false value, an attribute that exists only in one attribute set is selected.
  • the two selection processes are described as selecting mismatched attributes.
  • the result of counting the number of selected attributes is output as the non-commonness (83).
  • the method of selecting the non-matching attribute is an example, and other selection conditions may be used.
  • the weight values may be summed instead of counting the number of pairs.
  • processing for each attribute in the attribute set is automatically performed by the arithmetic unit 1070 held in advance.
  • the user of this logical operation system does not individually instruct processing for each attribute.
  • the operation is automatically performed on the attribute of the object or the attribute of the attribute set.
  • Objects are stored in the database, for example, in a data structure called a list of objects and attributes shown in FIG.
  • One or more attributes are specified, and an object having all the specified attributes is selected from the attribute list. Then, a collection of objects composed of objects having all the specified attributes is generated. This is called a knowledge collection.
  • a knowledge collection When all the attributes used to generate a knowledge collection are connected to a single object, the object becomes an abstract object that means a knowledge collection.
  • an attribute that directly connects identification data that identifies an abstract object that represents a collection of knowledge or an attribute that directly connects feature data that characterizes an abstract object that represents a knowledge collection represents an abstract object that represents that knowledge collection. Connect. Then, it becomes easy to distinguish an abstract object representing the knowledge collection from an object included in the knowledge collection.
  • the knowledge network represents systematized knowledge. You can create a knowledge network that is linked by age in the knowledge gathering of a family, or you can create a knowledge network by a parent-child relationship. A plurality of knowledge networks can be created in one knowledge collection.
  • An object in a knowledge network in one knowledge collection may belong to another knowledge network in another knowledge collection.
  • a single person may belong to a knowledge network called a family and at the same time belong to a knowledge network called a school.
  • 28A to 28C show an embodiment of a data structure for realizing the knowledge network of FIG.
  • FIG. 28A is a correspondence table 86 between the object name 87 and the object identifier 88, and corresponds to the correspondence table between the object name and the object identifier in FIG. 17B.
  • the correspondence table 86 associates a word, which is a character string describing the name of an object in words, with an object identifier 88.
  • FIG. 28B is a correspondence table 101 between knowledge networks and attributes, and associates the attribute identifier 103 that characterizes the knowledge network with the knowledge network identifier 102.
  • a weight may be directly associated with each row of the correspondence table 101, that is, with each knowledge network identifier 102 and attribute identifier 103 as attached information. This weight represents the strength of the relationship between the knowledge network and the attribute.
  • the node 80 which is an object in the knowledge network has only one object identifier 81. Further, the node 80 that is a thing can have knowledge network information 84. For each knowledge network to which a node that is a thing belongs, one piece of knowledge network information is held in the node that is the thing.
  • the number of the knowledge network information 84 possessed by the node 80 as one object may be zero or one, and is not limited to one and may be plural.
  • the knowledge network information 84 includes zero or more forward pointers 82, zero or more backward pointers 83, and one knowledge network identifier 85. When the forward pointer 82 and the backward pointer 83 are both zero, the node 80 which is a thing becomes one knowledge network.
  • node A which is a thing
  • node B which is a thing
  • node A holds the object identifier of node B in forward pointer 82
  • node B holds the object identifier of node A in backward pointer 83. To do. If it does in this way, the direction of a connection can be expressed, and it can move easily in the forward direction which is the direction of connection, and the reverse direction which is the reverse direction of connection.
  • the node A holds the node B object identifier in the forward pointer 82, and the node B stores the node A object in the forward pointer 82. Holds the identifier.
  • the start point of a pointer with direction may be distinguished from the upper side and the end point may be referred to as lower, or the start point of the direction pointer may be referred to as lower and the end point as upper. Also, when connected by a bidirectional pointer, there is no distinction between upper and lower, so it may be called parallel.
  • nodes A and C which are two connected objects, each have a forward pointer 82 connected to the other, they are connected in both directions. If one of the two connected nodes A and C holds the other object identifier in the forward pointer 82 and the other holds the one object identifier in the backward pointer 83, they are connected in one direction. .
  • the knowledge network information 84 of the node 80 may further have a weight 100, and the weight 100 may represent the strength of the relationship between the knowledge network and the object.
  • the weight 100 may not be retained.
  • the node 80 that is a thing holds the knowledge network identifier 85 and the weight 100 together, thereby expressing the strength of the relation between the thing and the knowledge network.
  • this weight 100 can be used as a criterion. Select a knowledge network having a larger weight 100 value, select a knowledge network having a smaller weight 100 value, or select a knowledge network in a range in which the weight 100 value is specified.
  • the weight 100 can be used as a selection criterion.
  • each of the forward pointer 82 or the backward pointer 83 of one knowledge network information 84 has a weight and represents the degree of strength of connection with the node indicated by the pointer. May be. Thereby, the weight can be used as a reference when one pointer is selected from several pointers.
  • Knowledge network identifier 85 is an identifier for identifying a knowledge network.
  • a knowledge network in a knowledge collection generated by specifying a plurality of attributes is characterized by the plurality of attributes. There can of course be a knowledge network characterized by one attribute.
  • the knowledge network identifier 85 When the knowledge network identifier 85 is connected to all the attributes that characterize the knowledge network, the knowledge network identifier 85 has an attribute that characterizes the knowledge network and becomes an abstract object representing the knowledge network. Attributes other than the attribute used for selection may be connected to the knowledge network identifier.
  • a knowledge network created regardless of the knowledge collection may identify the knowledge network with an attribute representing the characteristics of the knowledge network.
  • an attribute characterizing each knowledge network is added to distinguish them. In this way, it becomes easy to select one knowledge network from a plurality of knowledge networks in one knowledge collection.
  • FIG. 29 shows an embodiment of the data structure of the node.
  • the correspondence table between objects and knowledge networks shown in the upper part of FIG. 29 associates knowledge network identifiers with object identifiers.
  • the knowledge network identifier to which the object identified by the object identifier belongs is known.
  • the knowledge network identifier, the object identifier, and the weight may be associated with each other. Of course, this weight may be omitted. This weight represents the degree of relevance between the knowledge network and the object.
  • the pointer list shown in the lower part of FIG. 29 further associates a forward pointer and a backward pointer with a combination of an object identifier and a knowledge network identifier.
  • the pointer is divided into two pointers, a forward pointer and a backward pointer.
  • one pointer may be paired with information indicating the forward direction or the reverse method.
  • These pointers represent the connection of things in the knowledge network.
  • the pointer has an object identifier of another connected object.
  • a pointer value that is not used may be a special value such as NULL.
  • the pointer may also have a weight. This weight represents the degree of association with other connected objects. This weight may not be present.
  • a node consists of a correspondence table between objects and knowledge networks and a pointer list.
  • a pointer possessed by another object can be acquired.
  • the node that is the object identifier pointed to by the pointer is acquired.
  • acquiring the object identifier held by the pointer means that the object has been moved to the object specified by the pointer by tracing the pointer in the knowledge network. In other words, this means moving from one connected object to another in the knowledge network.
  • Deleting the knowledge network identifier, the object identifier, and the pointer from the pointer list is deleting the connection between the objects.
  • Adding knowledge network identifiers, object identifiers, and pointers to the pointer list is connecting objects.
  • a set of attribute identifiers for identifying each of the plurality of attributes and the knowledge network identifier is created by the number of attributes, and these sets are added to the knowledge network / attribute correspondence table 101 shown in FIG. 28B.
  • the attribute identifier of the attribute characterizing this knowledge network can be known.
  • the knowledge network / attribute correspondence table 101 is searched using one attribute identifier as a key.
  • the search result is searched using another attribute identifier as a key. By repeating this, the knowledge network identifier of the knowledge network characterized by all the attributes used for the search can be acquired.
  • a knowledge network characterized by a plurality of attributes that is, a knowledge network in a specific field
  • the attribute associated with the knowledge network may be selected from the attributes of all the objects in the knowledge network, or may be an attribute of some objects. Moreover, the attribute which the thing in the knowledge network does not have may be sufficient. Attributes specific to the knowledge network may be generated and associated with the knowledge network. If the correspondence table between the objects and the knowledge network in FIG. 29 is searched using the knowledge network identifier as a search key, the object identifiers of the objects belonging to the knowledge network can be acquired.
  • an object identifier having the knowledge network identifier can be acquired by searching for the node using the knowledge network identifier as a key. In other words, you can see what is contained in the knowledge network.
  • a pair of forward and backward pointers corresponds to an arrow between nodes.
  • the forward pointer is used when moving to a node connected in the direction of the arrow.
  • the backward pointer is used when moving to a node connected in the opposite direction to the arrow.
  • a weight is held in the pointer, and the strength of the relation between the object directly associated with the pointer and the object having the pointer can be expressed.
  • attribute hierarchy information It is one Embodiment of the hierarchy information of an attribute in the case of hierarchizing an attribute.
  • This example is a data structure called a so-called list structure.
  • An attribute identifier of one attribute holds a pointer to an upper layer and a pointer to a lower layer.
  • the pointer to the attribute of the higher hierarchy holds the attribute identifier of the attribute of the higher hierarchy.
  • the pointer to the lower hierarchy holds the attribute identifier of the attribute of the lower hierarchy. If the attribute does not have a pointer to the upper hierarchy or a pointer to the lower hierarchy, the pointer to the upper hierarchy or the lower hierarchy is a special value such as NULL indicating that there is no pointer.
  • an attribute identifier is specified as a search key and a column of pointers to a higher hierarchy is searched, an attribute lower than the specified attribute is selected. If a column of pointers to lower layers is searched using the attribute identifier as a search key, an attribute higher than the specified attribute is selected. If the attribute identifier column is searched using the attribute identifier as a search key, a pointer to the upper hierarchy and a pointer to the lower hierarchy of the specified attribute are selected.
  • a knowledge collection of graduates of a school is generated. Search the knowledge collection of graduates by Suzuki's identifier. If Mr. Suzuki's identifier can be selected, it can be determined that Mr. Suzuki is a graduate of this school. If a given thing is included in a knowledge collection generated by specifying one or more given attribute identifiers in advance, the given thing is a condition that is a given attribute. It is judged that
  • Learning is to create or delete a knowledge network, add or delete an object to the knowledge network, add, delete, or change a connection between objects.
  • the combination can be changed by combining addition and deletion. That is, when a connection that is no longer needed is deleted and a new connection is added, the connection is changed. It is also learning to add and delete attributes that are attached information of objects. It is also learning to add or delete feature data or identification data from the attribute.
  • a knowledge network can be generated as follows.
  • the knowledge network information 84 is added to the node 80 that is an object
  • the object is added to the knowledge network.
  • the knowledge network identifier and the object identifier are added to the correspondence table between the object and the knowledge network in FIG. 29 in association with each other. This adds knowledge network information to the node.
  • the forward pointer 82 and the backward pointer 83 are added to the knowledge network information 84, an object can be connected. It is assumed that the two connected objects already have the knowledge network information 84. Specifically, if a forward direction pointer and a backward direction pointer are added to the pointer list of FIG. 29, the objects are connected. One object identifier and knowledge network identifier are associated with the forward pointer or backward pointer in which the other object identifier is set, and added to the pointer list. Similarly, the other object identifier and the knowledge network identifier are associated with the forward pointer or the backward pointer in which one object identifier is set, and added to the pointer list. This connects two things.
  • the two objects are connected in both directions. If one of the former and the latter sets the other object identifier in the forward pointer, and the other sets one object identifier in the backward pointer, the two objects are connected in one direction.
  • the two connected objects have pointers set with each other's object identifiers. If two pointers are deleted from the pointer list, the connection between the two objects can be deleted. If there is no pointer in the knowledge list for which an object identifier in the pointer list is set, the object may be deleted from the knowledge network. If the line that associates the knowledge network identifier with the object identifier is deleted from the correspondence table between the object and the knowledge network, the object is deleted from the knowledge network.
  • the list of objects and attributes shown in FIG. 19 is searched using the object identifier and attribute identifier as keys. Deleting the selected line deletes the connection between the attribute and the object. It does not delete the attribute itself.
  • An attribute can be added to an object by adding the correspondence between the object identifier and the attribute identifier to the list of objects and attributes.
  • One attribute is extracted from the given attributes, and a list of objects and attributes is searched using the attribute identifier of the attribute as a key. Next, one attribute is extracted from the remaining given attributes, and the search result is further searched using the attribute identifier of the extracted attribute as a key. This process is repeated for all the given attributes, and when there is one kind of object identifier in the selected row, the object identifier represents an object having all the given attributes. The thing is identified by the given attribute.
  • the search is repeated for all the given attributes, if there are a plurality of types of object identifiers, it can be seen that the plurality of object identifiers are candidates for the object to be identified. In this case, an attribute may be added and repeated until there is one kind of object identifier.
  • Attribute is selected as follows. Feature data or identification data in the knowledge base determined to be the same as the feature data or identification data generated from the information input to the knowledge base system is selected and acquired. An attribute directly connected to and directly associated with the selected or acquired feature data or identification data is selected and acquired. Using this selected and acquired attribute, an object is recognized as described above.
  • an object identifier of an object to be a starting point that is, a starting point node is designated (S141).
  • the knowledge network identifier of the knowledge network to which the product identified by the product identifier belongs can be obtained.
  • an object (node) associated with the object identified by the initially specified object identifier can be acquired (S143).
  • the moved object identifiers are recorded in order, the recorded route becomes the travel path.
  • ⁇ ⁇ ⁇ Move from one object to another connected object by following the pointer. There may be some relationship between the starting point and the destination. This process is also inference.
  • the weights of the pointers are compared, and the pointer having the highest degree of association can be selected and moved.
  • the weight of each knowledge network information can be compared to move to a knowledge network with the least degree of association.
  • the word “Dog” in the language is input to the knowledge base system by voice, and identification data is generated and stored in the knowledge base of one embodiment.
  • the feature extraction unit 1020 When the word “Dog” is input by voice, the feature extraction unit 1020 generates identification data of the voice data.
  • the feature extraction unit 1020 when a character image “Dog” as a word is input, the feature extraction unit 1020 generates image identification data. Further, when “Dog” is input as the character code of the word, the feature extraction unit 1020 generates character code identification data.
  • “Dog” is represented by a phonetic symbol, but the expression format of the identification data is not limited to this, and may be the above-described audio data, video data, or character code.
  • the expression format of the identification data is not limited to this, and may be the above-described audio data, video data, or character code.
  • binary data representing the signal intensity for each frequency component, such as a sound intensity of 100 Hertz being 55, a sound intensity of 200 Hertz being 156.
  • Pattern data in which numerical values are arranged becomes identification data.
  • the feature data and the identification data represented by the note marks in FIG. 33 and the like are the above-described sound data or sound pattern data.
  • identification data is not used as a direct representation of meaning or concept.
  • the feature data directly holds and represents the meaning and concept. Therefore, the meaning and concept cannot be understood unless the feature data is acquired.
  • the knowledge base of one embodiment includes objects and attributes.
  • an object (3003) shown in FIG. 33 represents a dog.
  • the attribute (1003) represents the feature of the appearance of the dog.
  • “thing (xxxx)” refers to an entity identifier “xxxx”
  • “attribute (yyyy)” refers to an attribute identifier “yyyy”.
  • a video of a dog is taken by a camera, and the video data is input to a knowledge base system 1000 which is an embodiment of the present technology.
  • a camera as an input device captures a video of a dog, and the captured video data is input to the knowledge base system 1000 by the data input unit 1010.
  • Video data that is input data received by the data input unit 1010 is passed to the feature extraction unit 1020.
  • the feature extraction unit 1020 extracts features from input data and generates feature data.
  • the generated feature data is passed to the data comparison unit 1030.
  • the data comparison unit 1030 compares the already stored feature data with the passed feature data to check whether there is the same feature data.
  • the data storage unit 1040 stores the passed feature data in the knowledge base, generates a new attribute in the knowledge base, and stores the stored feature data and the newly generated attribute. connect.
  • the data storage unit 1040 generates a new object in the knowledge base, and connects the newly generated object and the generated attribute.
  • an object that is indirectly associated with the dog that is the object that directly emitted the video is generated in the knowledge base.
  • Objects in the knowledge base are not directly associated with objects.
  • a dog's call “bow” is input to the knowledge base system 1000 from a microphone while a video of a dog, which is an object, is being shot by a camera.
  • the video of the puppy that is the object is taken by the camera and input to the data input unit 1010 of the knowledge base system 1000.
  • the video data input to the data input unit 1010 is passed to the feature extraction unit 1020.
  • the feature extraction unit 1020 generates feature data from the input video data.
  • the data comparison unit 1030 checks whether the same feature data is already in the knowledge base. Since there is no same feature data, the data storage unit 1040 stores the feature data in the knowledge base, generates the attribute (1021) of FIG. 33, and connects the stored feature data to the attribute (1021).
  • the data storage unit 1040 generates the object (3003) of FIG. 33 and connects the attribute (1021) and the object (3003).
  • the knowledge base system 1000 receives information from outside the knowledge base system 1000, generates feature data from the received information, and stores the generated feature data in the knowledge base.
  • An attribute is generated and the stored feature data is linked to that attribute.
  • an object is generated, and the generated attribute is connected to the generated object. It is learning by addition of an object that feature data is connected to a newly generated object via an attribute.
  • ⁇ ⁇ Input processing is performed in the same way for dog calls input from microphones.
  • the voice data “dogwow” of the dog input to the data input unit 1010 through the microphone is passed to the feature extraction unit 1020.
  • the feature extraction unit 1020 generates feature data from the acquired voice data.
  • the data comparison unit 1030 determines that the same feature data is not in the knowledge base.
  • the generated feature data is stored in the knowledge base by the data storage unit 1040.
  • the data storage unit 1040 generates the attribute (1011) in FIG. 33 and connects the stored feature data to the attribute (1011).
  • an object may be generated and an attribute (1011) may be connected to the generated object. Of course, this product need not be generated.
  • the learning unit 1050 performs the following learning process.
  • the following learning process may be automatically started.
  • the learning process may be instructed in advance by performing keyboard input or mouse operation at the start of input in step 1.
  • the learning unit 1050 acquires feature data in the knowledge base that is first generated and stored, or feature data in the knowledge base that is determined to be the same as the feature data that is generated first.
  • the search unit 1060 acquires an attribute (1021) connected to the acquired feature data. Furthermore, the search unit 1060 acquires an object (3003) connected to the acquired attribute (1021). The learning unit 1050 acquires the acquired object (3003) and recognizes the object (3003).
  • the learning unit 1050 acquires feature data generated from the dog's bark “bow” and stored later, or feature data in the knowledge base determined to be the same as the feature data generated later.
  • the search unit 1060 acquires an attribute (1011) connected to the feature data.
  • the two attributes (1021, 1011) are not directly connected to the same object, so the learning unit 1050 performs the following process.
  • the learning unit 1050 connects the recognized object (3003) and the attribute (1011) that is generated later and is not directly connected to the recognized object (3003).
  • the thing (3003) has the characteristic data of the dog's cry through the attribute (1011). Step 1 in FIG. 33 is in this state.
  • the standard for determining whether or not data is input continuously is held in the knowledge base system 1000 in advance.
  • a new standard can be received from outside the knowledge base system 1000, the standard can be maintained, and the standard can be additionally changed.
  • a criterion for determining whether or not they are the same is also stored in the knowledge base system 1000 in advance.
  • a new standard can be received from outside the knowledge base system 1000, the standard can be maintained, and the standard can be additionally changed.
  • the feature data is stored in the knowledge base and the knowledge base is constructed as described above, the following recognition process can be performed.
  • a dog cry is input to the data input unit 1010 of the knowledge base system 1000 through a microphone.
  • the voice data of the dog cry is passed from the data input unit 1010 to the feature extraction unit 1020, and the feature extraction unit 1020 generates feature data from the delivered voice data.
  • the data comparison unit 1030 receives the generated feature data and checks whether the same feature data exists in the knowledge base.
  • the search unit 1060 acquires the attribute (1011) connected to the found feature data. Further, the search unit 1060 acquires and recognizes an object (3003) connected to the attribute (1011).
  • the search unit 1060 can acquire another attribute (1021) connected to the object (3003), and can acquire other feature data generated from the video of the dog connected to the attribute (1021).
  • the acquired feature data is feature data generated from information such as an image directly emitted from a recognized object. In this way, other feature data other than the call used to recognize the object (3003) can be acquired.
  • the output unit 1080 displays the video of the dog on the display device that is the output device based on the feature data.
  • the object can be recognized by the cry and the image of the dog that is the recognized object can be output.
  • the dog's call “bow” is input to the knowledge base system 1000 from the microphone.
  • the voice data input to the data input unit 1010 through the microphone is passed to the feature extraction unit 1020 to generate feature data.
  • the data comparison unit 1030 receives the generated feature data and checks whether the same feature data exists in the knowledge base.
  • the search unit 1060 acquires an attribute (1011) connected to the found feature data. Further, the search unit 1060 acquires an object (3003) connected to the attribute (1011). Through the above processing, the object (3003) is recognized by the dog's cry “bowwow” input with the microphone.
  • the judgment criteria for judging whether or not they are the same are provided in the knowledge base system 1000 in advance.
  • a new criterion can be acquired from outside the knowledge base system 1000 and held.
  • Judgment criteria for judging whether or not they are the same are called the same criteria.
  • the video data input to the data input unit 1010 is passed to the feature extraction unit 1020.
  • the feature extraction unit 1020 generates feature data from the input video data.
  • the data comparison unit 1030 that has received the generated feature data checks whether the same feature data exists in the knowledge base. In this case, it is determined that there is no same feature data.
  • the data storage unit 1040 stores the generated feature data in the knowledge base, generates the attribute (1022) in FIG. 33, and connects the stored feature data to the generated attribute (1022).
  • an object may be generated by the data storage unit 1040, and the generated object may be connected to the attribute (1022). This product need not be generated.
  • the learning unit 1050 performs the following learning process.
  • the following learning process may be automatically started. Learning processing may be instructed in advance by performing keyboard input or mouse operation before input.
  • the learning unit 1050 obtains feature data in the knowledge base that is generated from the dog's call “bowwow” and is determined to be the same as the feature data that was first passed.
  • the search unit 1060 acquires an attribute (1011) connected to the acquired feature data. Further, the search unit 1060 acquires an object (3003) connected to the acquired attribute (1011). The learning unit 1050 acquires the acquired object (3003) and recognizes the object (3003).
  • the learning unit 1050 obtains feature data that is generated from a large dog video, passed later, and stored.
  • the search unit 1060 acquires an attribute (1022) connected to the feature data. Since the two acquired attributes (1011 and 1022) are not connected to the same object, the learning unit 1050 performs the following process.
  • the learning unit 1050 connects the recognized object (3003) and the attribute (1022) acquired later and not directly connected to the recognized object (3003).
  • An object (3003) has characteristic data generated from a video of a large dog via only the attribute (1022).
  • This learning process is an integration process of feature data stored in the knowledge base, which is performed after the learning process by adding the feature data in Step 2. This is a process for connecting feature data connected to two different attributes to one common attribute.
  • the learning unit 1050 performs the following integration processing. It may be instructed by mouse operation or keyboard input to perform integration processing at the start of step 2.
  • the video of a small dog is input from the camera, and the feature data is generated by the feature extraction unit 1020.
  • the data comparison unit 1030 checks whether the same feature data as the generated feature data exists in the knowledge base. Since the same feature data exists in the knowledge base, the attribute (1021) connected to the feature data is acquired by the search unit 1060. Further, an object (3003) connected to the acquired attribute (1021) is acquired by the search unit 1060.
  • the data comparison unit 1030 checks whether the same feature data as the generated feature data exists in the knowledge base. Since the same feature data exists in the knowledge base, the attribute (1022) connected to the feature data is acquired by the search unit 1060. Further, an object (3003) connected to the acquired attribute (1022) is acquired by the search unit 1060.
  • the learning unit 1050 performs the following process.
  • the learning unit 1050 acquires two attributes (1021, 1022). When the number of feature data connected to two different attributes is one, the learning unit 1050 performs the following process. A new attribute (1003) is generated, the two feature data are connected to the generated attribute (1003), and the connection of the object (3003) with the two attributes (1021, 1022) is deleted. Without generating a new attribute (1003), one of the two attributes (1021, 1022) is directly connected to the feature data connected to the other attribute, and the other attribute is connected to the object (3003). May be deleted.
  • the learning unit 1050 When only the number of feature data connected to one attribute is 1 and only the number of feature data connected to the other attribute is greater than 1, the learning unit 1050 performs the following process.
  • the feature data of the attribute to which only one feature data is connected is connected to the other attribute, and the connection of the object with the attribute to which only one feature data is connected is deleted.
  • feature data When the feature data is newly stored in the knowledge base, an attribute is generated, and the generated attribute is connected to the stored feature data.
  • feature data When feature data is stored in the knowledge base, only one feature data is connected to an attribute connected to the feature data. Therefore, feature data can be aggregated as described above.
  • Attribute that multiple feature data is connected is a bundle of several feature data connected to the attribute, and represents the nature, feature, meaning or concept of the aggregated feature data.
  • the recognition process can be performed even in the state of step 3.
  • feature data is generated from the input dog bark.
  • the generated feature data is compared with the feature data in the knowledge base.
  • the attribute (1011) connected to the found feature data is acquired.
  • the object (3003) connected to the acquired attribute (1011) is acquired, if only one other attribute (1003) connected to the object (3003) is acquired, a plurality (two in this example) of feature data Can be obtained.
  • the two feature data cannot be acquired unless the two attributes (1021) and (1022) are acquired.
  • Feature data is generated from the dog cry input by the feature extraction unit 1020, and the generated feature data is passed to the data comparison unit 1030. Since the feature data generated from the dog's bark is already stored in the knowledge base, the data comparison unit 1030 determines that there is the same feature data. Then, the search unit 1060 acquires the attribute (1011) connected to the feature data determined to be the same. Further, the search unit 1060 acquires an object (3003) connected to the attribute (1011). And if the other attribute (1003) connected with the thing (3003) is acquired, the feature data connected with the attribute (1003) can be acquired. Based on the acquired feature data, the output unit 1080 displays the image of the dog on the display device. Through this series of processing, it is recognized that the dog is a dog from the cry of the dog, and the image of the recognized dog is displayed.
  • step 2 In the state of step 2, two attributes of the attribute (1021) and the attribute (1022) are acquired, but in the state of step 3, if one attribute (1003) is acquired, two feature data are acquired. Can be obtained. Since the number of times of acquiring the attribute connected to the object is reduced, the feature data can be acquired faster than Step 2.
  • the video of the puppy is input from the camera to the data input unit 1010 of the knowledge base system 1000.
  • Feature data is generated from the video input by the feature extraction unit 1020, and it is checked whether the same feature data as the feature data generated by the data comparison unit 1030 exists in the knowledge base. The same feature data is found, and the attribute (1003) to which the same feature data is connected is acquired by the search unit 1060. Further, the search unit 1060 acquires an object (3003) connected to the acquired attribute (1003). As described above, it is recognized from the video of the puppy input from the camera that the object directly emitting the video is the object (3003).
  • the word “Dog” is input to the data input unit 1010 of the knowledge base system 1000 from the microphone.
  • Identification data is generated from the voice input by the feature extraction unit 1020, and it is checked whether the same identification data as the identification data generated by the data comparison unit 1030 exists in the knowledge base. Since the same identification data cannot be found, the generated identification data is stored in the knowledge base by the data storage unit 1040.
  • the data storage unit 1040 further generates an attribute (1013), and connects the generated attribute (1013) and the stored identification data.
  • an object may be generated by the data storage unit 1040, and the attribute (1013) stored in the generated object may be connected. This product need not be generated.
  • the learning unit 1050 performs the following learning process.
  • the following learning process may be automatically started. It may be instructed by mouse operation or keyboard input to perform integration processing at the start of step 4.
  • the learning unit 1050 acquires feature data in the knowledge base that is generated from the video of the puppy and is determined to be the same as the feature data that was first passed.
  • the search unit 1060 acquires an attribute (1003) connected to the acquired feature data. Further, the search unit 1060 acquires an object (3003) connected to the acquired attribute (1003).
  • the learning unit 1050 acquires the acquired object (3003) and recognizes the object (3003).
  • the learning unit 1050 acquires identification data that is generated from the voice of the word “Dog”, passed later, and stored.
  • the search unit 1060 acquires an attribute (1013) connected to the identification data. Since the two acquired attributes (1003, 1013) are not connected to the same object, the learning unit 1050 performs the following process.
  • the learning unit 1050 connects the recognized object (3003) and the attribute (1013) acquired later and not directly connected to the recognized object (3003).
  • the object (3003) has the identification data generated from the word “Dog” via the attribute (1013).
  • identification data generated from the speech of the word “Dogy” is stored in the knowledge base.
  • An attribute (1014) is generated and linked to the stored identification data.
  • the generated attribute (1014) is connected to the object (3003).
  • the video of the puppy and the word “Doggy” may be associated with each other, or the word “Dog” and the word “Doggy” may be associated with each other.
  • This learning process is an integration process of identification data stored in the knowledge base, which is performed after the learning process by adding the identification data in Step 4. This is a process of connecting identification data connected to two different attributes to one common attribute.
  • the learning unit 1050 performs the following integration process. It may be instructed by mouse operation or keyboard input to perform integration processing at the start of step 4.
  • the voice of the word “Dog” is input from the microphone, and the identification data is generated by the feature extraction unit 1020.
  • the data comparison unit 1030 checks whether the same identification data as the generated identification data exists in the knowledge base. Since the same identification data exists in the knowledge base, an attribute (1013) connected to the identification data is acquired by the search unit 1060. Further, an object (3003) connected to the attribute (1013) is acquired by the search unit 1060.
  • the voice of the word “Dogy” is input from the microphone, and the feature extraction unit 1020 generates the identification data.
  • the data comparison unit 1030 checks whether the same identification data as the generated identification data exists in the knowledge base. Since the same identification data exists in the knowledge base, the attribute (1014) connected to the identification data is acquired by the search unit 1060. Further, the search unit 1060 acquires an object (3003) connected to the attribute (1014).
  • the learning unit 1050 performs the following process.
  • Learning unit 1050 acquires two attributes (1013, 1014). When the number of identification data connected to two different attributes is one, the learning unit 1050 performs the following process. Create a new attribute, connect the two identification data to the generated attribute, connect the generated attribute to the object (3003), and delete the connection between the two attributes (1013, 1014) and the object (3003) To do. Or, without generating a new attribute, one of the two attributes (1013, 1014), for example, the attribute (1013) is connected to the identification data connected to the other attribute (1014), and the other attribute The connection between (1014) and the object (3003) may be deleted. In order to make the figure easier to see, the attribute (1014), the attribute (1021), and the attribute (1022) are omitted in the diagram of step 5.
  • the learning unit 1050 When only the number of identification data connected to one attribute is 1 and only the number of identification data connected to the other attribute is larger than 1, the learning unit 1050 performs the following process.
  • the identification data of the attribute connected to only one identification data is connected to the other attribute, and the connection between the attribute connected to only one identification data and the object is deleted.
  • An attribute to which a plurality of identification data is connected represents a collection of identification data that is aggregated by bundling together several identification data connected to the attribute.
  • the feature extraction unit 1020 extracts the feature and generates identification data.
  • the data comparison unit 1030 checks whether the same identification data as the generated identification data exists in the knowledge base. Since the same identification data exists in the knowledge base, the search unit 1060 acquires an attribute (1013) connected to the identification data. Furthermore, the search unit 1060 acquires an object (3003) connected to the acquired attribute (1013).
  • the search unit 1060 acquires another attribute (1003) connected to the object (3003), and acquires feature data connected to the attribute (1003).
  • the output unit 1080 displays a dog image on the display device based on the acquired feature data. Further, the search unit 1060 acquires another attribute (1011) connected to the object (3003), and acquires feature data connected to the attribute (1011). Based on the acquired feature data, the output unit 1080 outputs the dog's call “bow” from the voice reproduction device which is an output device. The dog is recognized from the word “Dog”, and the video of the dog and the cry of the dog are output.
  • identification data is not necessary.
  • An animal that does not have a language is considered to construct a knowledge base that does not include identification data and perform knowledge processing such as recognition and inference using the knowledge base that does not include identification data.
  • a person who has learned a language is thought to have built a knowledge base that includes both identification data and feature data.
  • (1) Knowledge base made up of feature data, attributes and objects without identification data (2) Knowledge base made up of identification data, attributes and things without feature data, (3) Identification data, feature data
  • a knowledge base made up of attributes and objects can be constructed. When performing only symbolic logic, the knowledge base of (2) may be used.
  • feature data, identification data, attributes, and objects in the knowledge base may be added or deleted.
  • feature data, identification data, attributes, and connection of objects are added or deleted and changed.
  • identification data in the knowledge base of one embodiment is generated from only words in a language, and only from data such as video and audio directly emitted from objects in the real world, Feature data in the knowledge base of one embodiment is generated.
  • the object is not a word.
  • identification data is not used as a direct representation of meaning or concept.
  • the attribute connected to the identification data is acquired, the object connected to the attribute is acquired, the other attribute connected to the acquired object is acquired, and the attribute is acquired.
  • the object (3003) is indirectly associated with the object called a dog.
  • the object (3003) may be indirectly associated with an object called a cat instead of an object called a dog. Therefore, by generating identification data from words in the language, connecting the identification data with objects and attributes in the knowledge base, and associating them, information can be exchanged between different knowledge bases via words. Yes.
  • the identification data is used to associate a language with a knowledge base outside the language.
  • Different knowledge bases have different identifier values assigned to the same objects and attributes, so information cannot be exchanged without using identifiers generated from words in the language.
  • the identification data can also be used to extract knowledge in the knowledge base into the language.
  • Knowledge in the knowledge base can be extracted from the knowledge base into the language by converting the identification data into words using the intervening data. For example, if an object represented by an identifier in the knowledge base is converted into a word with identification data as an intermediary, it becomes easier to distinguish the object than distinguishing an object only by the identifier.
  • an object identifier or attribute identifier in the knowledge base is converted into a word, it can be written in characters. And it becomes easy to understand by recognizing the written thing and attribute as a word using vision.
  • New feature data may be generated from one stored feature data.
  • feature data of four legs is generated and stored in the knowledge base. This is further generated by the feature extraction unit 1020 from feature data generated from already stored videos of dogs, cats, lizards, and the like.
  • the knowledge base of FIG. 34 includes an object representing a human (3001), an object representing a dolphin (3002), an object representing a dog (3003), an object representing a cat (3004), an object representing a lizard (3005), and a snake.
  • An object to be represented (3006) is stored.
  • FIG. 35 shows objects and attributes newly generated by the learning process performed by the learning unit 1050 based on the knowledge base of FIG.
  • the voice of the word “mammal” is input to the data input unit 1010 of the knowledge base system 1000 using a microphone.
  • Features are extracted by the feature extraction unit 1020, and identification data is generated.
  • the data comparison unit 1030 checks that the identification data is not in the knowledge base, and the data storage unit 1040 stores the identification data in the knowledge base.
  • the attribute (1015) is generated by the data storage unit 1040, and the generated identification data is connected to the generated attribute (1015).
  • an object (3007) is generated by the data storage unit 1040, and the generated attribute (1015) is connected.
  • Attribute integration processing is instructed by mouse operation or keyboard input.
  • the voice of the word “mammal” is input to the data input unit 1010 of the knowledge base system 1000 with the microphone.
  • Features are extracted by the feature extraction unit 1020, and identification data is generated.
  • the data comparison unit 1030 checks whether the identification data is in the knowledge base.
  • the search unit 1060 acquires an attribute (1015) connected to the same identification data, and acquires an object (3007) connected to the acquired attribute (1015).
  • the learning unit 1050 acquires and recognizes the acquired object (3007).
  • the learning unit 1050 When an instruction to generate a new attribute is input to the knowledge base system 1000 by mouse operation or keyboard input, the learning unit 1050 generates the attribute (1008), and the generated attribute (1008) is recognized (3007). ) And the generated attribute (1008) is acquired. A list of attributes already connected to the recognized object (3007) is displayed on the display device, and one attribute can be specified from the list to acquire the specified attribute.
  • a video of “big dog” is input from the camera to the data input unit 1010 of the knowledge base system 1000, and features are extracted by the feature extraction unit 1020 to generate feature data.
  • the data comparison unit 1030 checks whether the same feature data as the generated feature data exists in the knowledge base. Since there is the same feature data, the search unit 1060 acquires the same feature data in the knowledge base.
  • the acquired feature data is connected to the acquired attribute (1008) by the learning unit 1050.
  • the attribute (1008) is connected to a plurality of feature data generated from the image of the mammal, and the attribute (1008) represents the meaning or concept of a mammal.
  • This attribute (1008) leads to an object (3007) representing a mammal.
  • An object representing an animal (3008) and an object representing a reptile (3009) are produced in the same manner.
  • FIG. 36 shows a knowledge base in which the three attributes (1008, 1009, 1010) of FIG. 35 are added to FIG. 34 and the attribute (1008) is connected to the thing (3001, 3002, 3003, 3004).
  • an attribute (1008) representing a mammal is added to the object (3001, 3002, 3003, 3004), and the attribute (1008) is obtained. Similar processing is performed for the attributes (1009, 1010).
  • Attribute addition processing by the learning unit 1050 is performed as follows.
  • the voice of the word “mammal” is input from the microphone to the data input unit 1010 of the knowledge base system 1000.
  • Features are extracted by the feature extraction unit 1020, and identification data is generated.
  • the data comparison unit 1030 confirms that the same identification data as this identification data exists in the knowledge base.
  • the attribute (1015) connected to the same identification data is acquired by the search unit 1060.
  • an object (3007) connected to the attribute (1015) is acquired and recognized by the search unit (1060).
  • “human” video is input from the camera, feature data is generated, and an attribute (1001) to which the same feature data as the generated feature data is connected is acquired. Further, an object (3001) connected to the attribute (1001) is acquired and recognized by the search unit 1060. If the first recognized object (3007) is different from the next recognized object (3001), the learning unit 1050 determines that the attribute (1008) directly connected to the first recognized object (3007) and the later Connected to the recognized object (3001).
  • an object representing a human (3001), an object representing a dolphin (3002), an object representing a dog (3003), and an object representing a cat (3004) are connected to an attribute representing a mammal (1008).
  • objects connected to the attribute (1008) can be selected, and objects having the attribute (1008) can be collected.
  • Objects (3001, 3002, 3003, 3004) are selected and collected. This collected object is called a knowledge collection.
  • Objects having the attribute of mammal (1008) are collected, and a collection of knowledge of mammals is generated.
  • FIG. 37 shows four knowledge collections: animals, mammals, reptiles, and quadruped animals.
  • a knowledge collection 166 For example, inferring "whether snakes are mammals”. Collecting things connected to the attribute (1008) representing mammals, a knowledge collection 166 is created.
  • This knowledge collection 166 includes an object representing a person (3001), an object representing a dolphin (3002), an object representing a dog (3003), and an object representing a cat (3004). It is checked whether or not there is an object (3006) representing a snake in this knowledge collection. In this example, since the object representing the snake (3006) is not included in the knowledge collection representing the mammal, it can be inferred that "the snake is not a mammal".
  • a collection of knowledge is an abstract object. Therefore, as with a specific object, a knowledge collection having an abstract knowledge collection as an element can also be generated. Add the same attribute to several abstract objects. Collecting objects with added attributes creates a new collection of knowledge.
  • an abstract object (3007, 3008, 3009) representing a collection of knowledge newly generated in FIG. 35 is added and directly connected to the corresponding attribute.
  • a collection of knowledge is stored in the knowledge base as an abstract object.
  • an abstract object (3009) representing a reptile is connected to an attribute (1010).
  • This attribute (1010) represents the reptile by connecting the feature data generated from the snake image and the feature data generated from the lizard image.
  • an abstract object (3009) called a reptile and a specific object such as a snake or a lizard (3005, 3006) constituting the reptile are represented by the same structure in the knowledge base.
  • feature data and attributes are connected, and the attributes are connected to objects. Therefore, it is possible to generate a knowledge collection whose elements are abstract objects called knowledge collections.
  • objects are connected by arrows.
  • an object representing an mammal (3007) An arrow extending to an object (3001), an arrow extending from an object representing a mammal (3007) to an object representing a dolphin (3002), an arrow extending from an object representing a mammal (3007) to an object representing a dog (3003), an arrow representing a mammal
  • Objects are connected to each other by an arrow extending to.
  • FIG. 40 is a diagram in which only the connection between objects is extracted.
  • Several such connected objects that is, an entire connected object is a knowledge network.
  • this knowledge network represents the classification of animal species.
  • the start point of the arrow represents the upper classification, and the end point of the arrow represents the lower classification.
  • This knowledge network connection represents an inclusive relationship, and an object located at the upper level includes an object located at the lower level.
  • One knowledge network in FIG. 40 can be created by combining a plurality of knowledge networks.
  • the object 41 is connected to an attribute (1030) representing a knowledge network and an attribute (1009) representing an animal, and is an abstract object that is an animal knowledge network.
  • the object (3012) is connected to the attribute (1030) representing the knowledge network and the attribute (1008) representing the mammal, and is an abstract object that is a knowledge network about the mammal.
  • the object (3013) is connected to the attribute (1030) representing the knowledge network and the attribute (1010) representing the reptile, and is an abstract object that is a knowledge network regarding the reptile.
  • FIG. 42 is a diagram in which connections between the objects in FIG. 41 are extracted.
  • a connection between an object that is a knowledge network and a specific object that is omitted in FIG. 41 for example, a connection between an object (3011) that is an animal knowledge network and an object (3008) that represents an animal.
  • an object (3011) that is an animal knowledge network for example, a connection between an object (3011) that is an animal knowledge network and an object (3008) that represents an animal.
  • FIG. 41 since the figure becomes complicated and difficult to see, it is omitted.
  • This knowledge network is an abstract object (3011) which is a knowledge network related to animals, and is a portion surrounded by an ellipse 169 in FIG.
  • the thing (3007) which is a mammal and the thing (3001) which is a person are connected
  • the thing (3007) which is a mammal and the thing (3002) which is a dolphin are connected
  • the thing (3007) which is a mammal and a dog are connected
  • a thing (3003) is connected
  • a thing (3007) that is a mammal and a thing (3004) that is a cat are connected
  • a knowledge network is generated.
  • This knowledge network is an abstract object (3012) which is a knowledge network related to mammals, and is a portion surrounded by an ellipse 170 in FIG.
  • This knowledge network is an abstract object (3013) which is a knowledge network related to reptiles, and is a portion surrounded by an ellipse 171 in FIG.
  • an abstract entity (3011) that is a knowledge network about animals is connected to an abstract entity (3012) that is a knowledge network about mammals, and an abstract that is a knowledge network about animals.
  • a general object (3011) and an abstract object (3013) which is a knowledge network about reptiles are connected to generate a knowledge network. Note that this knowledge network is not drawn in FIG. 42 because it is difficult to see. In this way, a new knowledge network can be generated by connecting abstract objects that are knowledge networks.
  • An abstract object that is a knowledge network is directly connected to each object included in the knowledge network.
  • an abstract object (3011) which is a knowledge network is directly connected to an object (3007, 3008, 3009) included in the knowledge network.
  • an abstract object that is a knowledge network is designated, it is possible to know what is included in the knowledge network.
  • a collection of knowledge is a thing, and a knowledge network is also a thing.
  • the data structure is the same for specific objects such as dogs and cats and abstract objects such as knowledge collections and knowledge networks. Therefore, it is possible to generate a knowledge network including a collection of knowledge that is an abstract object or a knowledge network that is an abstract object.
  • a collection of knowledge can be generated that includes a collection of knowledge that is abstract or a knowledge network that is abstract.
  • Abstract knowledge is also accumulated by this mechanism, and the accumulated abstract knowledge is systematized. In addition, inferences are made using accumulated and systematic abstract knowledge.
  • a knowledge network (3012) about mammals it is possible to move from a human thing (3001) to a mammal thing (3007).
  • the thing (3007) which is a mammal belongs to not only the knowledge network (3012) regarding a mammal but the knowledge network (3011) related to an animal.
  • the animal moves to the animal knowledge network (3011) which is a different knowledge network from the mammal knowledge network (3012) via the mammal object (3007).
  • the object moves from the mammal (3007) to the animal (3008).
  • connection changes, make that part another knowledge network. Within one knowledge network, the meaning of the connection is the same. Then, the meaning of the knowledge network becomes clear. Further, if the attributes characterizing the knowledge network represent the meaning of the connection, knowledge networks having different connection meanings are always characterized by combinations of different attributes.
  • the knowledge network can also be used as a search system for searching for related objects.
  • tacit knowledge There is a conventional knowledge base that expresses knowledge by connecting words in a language. It connects words to create a single connection and expresses knowledge. However, it was not possible to express all knowledge with a lump of words. Therefore, knowledge that could not fit into a single block of words was called tacit knowledge.
  • tacit knowledge For example, if a person belongs to a company organization, there is a connection in the company organization. There is a family relationship at home. Everything, not just people, has various connections depending on the cut. It is impossible to express this with a lump of connections. Forcibly expressed as a group of connections, knowledge or information that cannot fit into a group of connections must be called tacit knowledge.
  • a lump of connections is made for each cut.
  • This group of connections is a knowledge network.
  • knowledge can be organized by connecting knowledge networks with common objects, and a wide range of knowledge can be organized without using tacit knowledge. You can move from one object belonging to a certain knowledge network to another knowledge network connected to that knowledge network, move to another object in the other knowledge network, and check the connection with the object in the other knowledge network. .
  • the brain is made up of many nerve cells. Furthermore, nerve cells are connected to each other by tissues called dendrites and transmit signals. In the actual brain, one nerve cell corresponds to an object.
  • information directly generated from an external object is received by the sensory organ 110.
  • Features are extracted from the information received by the sensory organ 110 by the feature extraction unit 114, and feature data is generated.
  • the generated feature data is held in the storage area 112.
  • the feature data is connected to one nerve cell 71 in the attribute region 115 by a dendrite or the like, and the feature data is associated with the nerve cell 71 in the attribute region 115.
  • a plurality of feature data may be connected to the same nerve cell 71 in the attribute region 115 and associated therewith.
  • the nerve cell 71 in the attribute area 115 represents an attribute by being associated with feature data.
  • the nerve cell 71 representing the attribute and the nerve cell 70 in the object region 111 are connected by a dendrite or the like, and the attribute is associated with the object. In this way, things have attributes.
  • the feature extraction unit 114 extracts features from the sweetness information, and the extracted features are held in the storage area 112 and become feature data.
  • the feature data is connected to the nerve cell 71 in the attribute region 115, the attribute that the nerve cell is sweet is represented.
  • the nerve cell 71 representing the attribute of sweetness is directly associated with the object and directly connected to the nerve cell 70 representing the object. Thereby, it is learned that “the object is sweet” or “the object has a sweet attribute”.
  • one feature data can be connected to a plurality of different attributes.
  • a plurality of feature data can be connected to one attribute to generate one meaning or concept.
  • one meaning and concept can be generated from a plurality of feature data, or a plurality of meanings and concepts can be generated from one feature data.
  • the feature data may be associated with the nerve cell 70 in the object area 111 without passing through the nerve cell 71 in the attribute area 115. In this case, the signal reaches the nerve cell 70 in the object area 111 faster than the nerve cell 71 in the attribute area 115.
  • information is received from the sensory organ 110 and it is determined that the feature data extracted from the information received by the feature extraction unit 114 is identical or similar to the feature data already stored in the storage area 112. If the nerve cell 70 in the object region 111 and its feature data are directly connected, a signal reaches the nerve cell 70 in the object region 111 connected to the feature data in advance. At this time, the object is recognized.
  • a mechanism that immediately recognizes a fire when viewing the image of a flame burning in red is associated with the aforementioned mechanism.
  • a red round object is eaten and sweet.
  • one neuron 70 in the object region 111 becomes a red round object, and it is connected to the feature data of the sweetness of the nerve cell and the red round object, which is the attribute connected to the feature data of the image of the red round object.
  • the nerve cells 71 in the attribute region 115 are connected to the red round nerve cells.
  • the feature data that can be eaten is connected to the nerve cell 71 in the attribute region 115, and the nerve cell 71 in the attribute region 115 is connected to the nerve cell 70 corresponding to the red round object in the object region 111.
  • the nerve cell 71 in the attribute area 115 connected to the feature data that can be eaten sends a signal to the nerve cell 70 in the object area 111. That is, when eating, a signal is sent from the nerve cell 71 in the attribute area 115 to the nerve cell 70 in the object area 111. Then, only the nerve cell 70 in the region 111 of the object connected to the nerve cell 71 in the attribute region 115 that can be eaten receives the signal and is activated. The entire nerve cell 70 in the activated object region 111 becomes a collection of objects having an attribute of being eaten. This gathering becomes a knowledge gathering. It is also possible to send a signal from the neuron 71 of one or more attribute regions 115 to generate a knowledge collection.
  • the nerve cell 70 in the object region 111 represents an object.
  • the nerve cells in the knowledge collection represent things with common attributes. By connecting nerve cells in one knowledge collection, the relationship between objects can be maintained.
  • a collection of connected objects is a knowledge network. Of course, you can also connect things that are not in the knowledge collection. Furthermore, a knowledge network may be created by connecting objects regardless of the knowledge collection.
  • Adding or deleting object, attribute or feature data is learning.
  • Learning to add or delete connections is also learning.
  • adding connections between objects deleting connections between objects, adding new neurons to the knowledge network in association with objects, objects and attributes, attributes and feature data, feature data and objects Learning to add and delete connections with.
  • the feature extraction unit 114 extracts the above two types of information as features.
  • the two extracted features are held in the storage area 112 as a set of feature data.
  • the same feature data already exists in the storage area 112 it is possible not to newly store the feature data.
  • one of the unused nerve cells in the attribute area 115 is connected to the feature data and becomes a nerve cell corresponding to the feature data.
  • one of the nerve cells in the attribute region 115 is connected to the feature data and becomes a nerve cell corresponding to the feature data.
  • the feature data of sweetness and the nerve cells in the attribute area 115 are connected, and the feature data of the degree of sweetness and another nerve cell in the attribute area 115 are connected.
  • An attribute representing the degree of sweetness can be linked to another attribute as an attribute representing the degree.
  • Auxiliary attributes connect to other attributes and modify the meaning and concept of the attribute. Auxiliary attributes are easy to understand if they are considered to correspond to adjectives and adverbs.
  • a nerve cell associated with an object that is a source of information also receives a signal.
  • the two nerve cells in the attribute region 115 that have received the signal are each connected to a nerve cell corresponding to an object that is a source of information.
  • Objects, attributes, and auxiliary attributes are all connected to form a triangle. If two of the three elements are specified, the remaining one element is always determined. For example, if an object and an attribute are specified, only one auxiliary attribute connected to both is determined. In this way, auxiliary attributes related to the attribute can be acquired when necessary. Of course, if the feature data connected to the attribute is acquired, the information that is the source of the auxiliary attribute can be acquired, so that more detailed information can be acquired.
  • the auxiliary attribute is also an attribute, and is merely connected to the feature data and the nerve cell in the attribute region 115. One auxiliary attribute is connected to various attributes, and the meaning and concept of the connected attribute can be modified.
  • Feature data corresponding to sweetness is a main feature, and feature data corresponding to the degree of sweetness is a subfeature.
  • the attribute corresponding to the main feature is the main attribute
  • the attribute corresponding to the sub feature is the sub attribute.
  • the attribute called the auxiliary attribute is the sub attribute.
  • the feature extraction unit 114 When the feature extraction unit 114 receives information from the sensory organ 110, a main feature and sub features are extracted as necessary. The extracted main feature and sub feature are stored in the storage area 112 as feature data.
  • the feature data that is the main feature of sweetness is connected to the nerve cell that represents the main attribute of sweetness
  • the feature data that is the subfeature of the degree of sweetness is connected to the nerve cell that represents the subattribute corresponding to the subfeature of the degree of sweetness.
  • a nerve cell that represents the main attribute of sweetness is connected to a nerve cell that represents the subattribute of the degree of sweetness.
  • This sub-attribute may be connected to a main attribute other than sweetness to modify the main attribute. Attributes modified from other attributes are main attributes, and attributes that modify other attributes are sub-attributes.
  • Attribute may be composed of only one main attribute or one main attribute and one or more sub-attributes. This corresponds to the case of modification with an adjective and an adverb.
  • the feature data of sweetness sends a signal to a nerve cell representing the attribute of sweetness.
  • the characteristic data of the degree of sweetness sends a signal to a nerve cell that represents an attribute associated with the degree of sweetness.
  • the degree of sweetness can be understood by imagining the taste of an aqueous sugar solution. The higher the sugar concentration, the greater the degree of sweetness. The lower the sugar concentration, the less sweetness.
  • a nerve cell that represents an attribute associated with the sweetness that received the signal and a nerve cell that represents the attribute associated with the degree of sweetness received the signal are connected by a dendrite or the like. In this way, an object can have an attribute and a degree of the attribute, that is, a main attribute and a sub attribute.
  • taste information is received from the gustatory nerve, and feature data is created in which information representing the strength of each taste type is arranged in a certain order, such as bitter after sweetness and sour after bitterness.
  • the feature data is connected to specific nerve cells in the attribute region 115 in the order of the taste feature data.
  • specific nerve cells in the attribute region 115 express a specific taste.
  • Characteristic data of individual tastes such as sweetness and sourness of a certain object can also be obtained. Attributes that express individual tastes can be used by all things in common. Further, if the pattern of the entire feature data of tastes arranged in a certain order is converted into one feature data and connected to one attribute, the attribute of the entire taste of the object can be created.
  • a nerve cell associated with an attribute is referred to as an attribute nerve cell
  • a nerve cell associated with an object is referred to as an object nerve cell.
  • a neuron associated with the main attribute is called a main attribute neuron
  • a neuron associated with the sub attribute is called a sub attribute neuron.
  • the information is received from the sensory organ 110 which is an information input unit for inputting information, the feature extraction unit 114 extracts the feature from the received information, and the extracted feature is compared with the feature data already stored in the storage area 112. .
  • information such as sound is input from the sensory organ 110, and a plurality of features such as sound pitch, sound volume, frequency distribution, and sound waveform are extracted by the feature extraction unit 114. If there is feature data that is the same as or similar to the extracted feature, a signal is sent from the feature data to the attribute connected to the feature data. This process is repeated for the newly generated feature.
  • the one or more attributes that receive the signal send a signal to the object connected to the attribute.
  • One object that has received the signal is recognized as an object that has provided information to the sensory organ 110.
  • the object that has received the most signals is recognized as the object that has given information to the sensory organ 110.
  • This procedure is a procedure for performing recognition.
  • a collection of things with the same attributes is a collection of knowledge.
  • the relationship between things is expressed by connecting things.
  • a connected knowledge network is a knowledge network. The meaning of the relationship varies depending on the knowledge network. For example, the relationship between objects can express various relationships such as parent-child relationships, time context, and inclusion relationships.
  • a knowledge network may be created by connecting things other than the knowledge collection to the knowledge network in the knowledge collection.
  • a knowledge network may be created by selecting things from all things without being limited to those in a certain knowledge collection, and connecting the selected things.
  • Knowledge network is also an abstract object. Therefore, it is possible to generate a knowledge collection or knowledge network including a knowledge network as an abstract object.
  • a nerve cell 70 associated with an object in the object region 111 is also called an object.
  • the nerve cell 71 in the attribute region 115 is called an attribute.
  • the object area 111 includes all objects. In this state, it is difficult to find a specific object from the object region 111. You can choose several things as follows. Send a signal from an attribute to the object connected to that attribute. An object is activated when it receives a signal from an attribute. The activated object has the attribute. In this way, a collection of objects having certain attributes can be generated. This is called a knowledge collection.
  • the attribute for sending a signal is not limited to one, and may be one or more.
  • Attribute (4) is an attribute called the Suzuki family.
  • the object (F) represents the father of the Suzuki family
  • the object (G) represents the mother of the Suzuki family
  • the object (H) represents the child of the Suzuki family.
  • a thing (H) that is a child of the Suzuki family is connected from a thing (F) that is the father of the Suzuki family, and a thing (H) that is a child of the Suzuki family from the thing (F) that is a mother of the Suzuki family.
  • connection may be bidirectional. However, many relationships are thought to have direction. Therefore, a single direction, that is, a connection with a direction is common. Suppose two things are connected in a single direction. When this unidirectional connection is associated with the inclusion relationship, for example, the connection starting point object includes a thing (superordinate concept), and the connection arrival point object includes a subordinate concept. Of course, it can be reversed.
  • a knowledge network with the same family can create various knowledge networks, such as a knowledge network linked by height, a knowledge network linked by age, and a knowledge network linked by parent-child relationship.
  • a knowledge network connected by a height order relationship is characterized by an attribute of height in addition to the attribute of XX house.
  • Knowledge network may express the relationship of components such as “water is made up of hydrogen and oxygen”.
  • the knowledge network may represent an inclusive relationship such as “human beings are included in mammals”. It is assumed that the object A and the object B are connected only from the object A to the object B and represent an inclusion relationship. For example, the object A is a mammal and the object B is a human.
  • the thing A has an attribute common to mammals and an attribute representing mammals, and the common attribute possessed only by humans, the attribute representing mammals in the superordinate concept, and the attribute representing humans that are the concepts of the thing B itself are subordinate concepts. Make thing B have. In this way, the thing representing the lower concept may not have the attributes of the higher concept.
  • the attribute which the attribute which the thing which represents the superordinate concept has, and the attribute which the thing B which represents the subordinate concept has has the attribute which the thing which represents the subordinate concept has. In this way, the connection between objects and attributes can be reduced. What is necessary is just to acquire the attribute which the thing showing the high-order concept has as needed.
  • One-way connections can also be related to blood relationships. These are examples, and various relationships can be expressed by the connection of things in one direction.
  • the knowledge collection or knowledge network it is possible to check whether the information input from the outside is consistent with the knowledge collection or knowledge network knowledge. For example, assume that one object and several attributes are input from the outside. Generate a knowledge collection with all the attributes entered. If the given object is included in the knowledge collection, it can be understood that the object has the input attribute. In addition, if the following is performed, it is possible to determine whether there is a relationship between two given objects. If one thing can trace the connection of the knowledge network and reach the other, it can be seen that there is a relationship between the two. Thus, the relationship between the two objects given can be acquired.
  • a signal is sent from the attribute of the family of the Suzuki family. Everything that receives a signal has the attribute of the Suzuki family. The whole thing that receives the signal becomes a collection of knowledge with the attribute of the Suzuki family. If there is a thing called Hanako in the generated knowledge collection, Hanako can be determined to be included in the Suzuki family. If there is no such thing as Hanako in the generated knowledge collection, it can be determined that Hanako is not included in the Suzuki family.
  • the left frame in FIG. 45 is a knowledge network representing the Yuzo Suzuki family.
  • the right frame in FIG. 45 is a knowledge network representing the Jiro Suzuki family. Mr. Jiro belongs to these two knowledge networks.
  • the Yuzo, Yue, Ichiro, and Jiro members of the Yusan family are connected to the attributes representing the Yuzo family.
  • the Jiro, Jika, Mika, Taro, and Hanako of the Jiro Suzuki family are connected to the attributes that represent the Jiro family of Suzuki.
  • the two knowledge networks have a common thing called Jiro.
  • the attribute representing the Yuzo family of Suzuki is connected to feature data generated from a video in which, for example, Yuzo, Megumi, Ichiro, and Jiro are together. Further, the object representing Yuzo is connected to, for example, an attribute connected to feature data generated from Yuzo's video.
  • a word representing the name “Yuzo” is described, but this is described only for explanation.
  • Jiro also belongs to a knowledge network called Yuzo Suzuki. Therefore, it moves from a knowledge network called Jiro Suzuki to a knowledge network called Yuzo Suzuki through a thing called Jiro. Then, in the knowledge network called Yuzo Suzuki, Jiro moves to Yuzo. In this way, since it is possible to move from Hanako to Yuzo of another knowledge network, there may be some relationship between Hanako and Yuzo. In fact, Yuzo is Hanako's grandfather. Thus, inference can be made using not only one knowledge network but also connected knowledge networks.
  • the use of knowledge collection is effective for finding relationships between things. There is a possibility that a collection of knowledge having a common thing is related.
  • the use of a knowledge network is also an effective method for finding out whether there is a relationship between things. If a route is found between two things, then the attributes of the two things are compared to see if the two things have the same or similar attributes. If there is the same attribute, it can be determined that two things are related to the attribute. If there is a similar attribute, it can be determined that there is a high possibility that the two objects are related. Thus, in this embodiment, inference can be performed without identification data generated from words.
  • ⁇ ⁇ ⁇ Use the specified object as a starting point to find an object that can be moved from the starting point.
  • the attributes of the found object and the specified object that is the starting point are compared to see what common or similar attributes the two objects have. If a common attribute is found, it can be seen that two things are related by a common attribute. If similar attributes are found, it can be seen that two things may be related by similar attributes. However, just because there are many common or similar attributes does not mean that there is an important meaningful relationship. Only one common attribute or only one similar attribute has an important meaning, and a connection between a newly found object and an object may be an important and meaningful relationship.
  • a collection of things with common attributes is a collection of knowledge.
  • a signal is sent from a neuron of a certain attribute to a neuron of an object in the domain of the object. All the nerve cells of the object that receives the transmitted signal constitute an object of knowledge about the attribute.
  • the thing with which the attribute is associated is knowledge.
  • an attribute nerve cell may be referred to as an attribute
  • an object nerve cell may be referred to as an object.
  • Specified attribute to generate a collection of knowledge about the attribute. Further, another attribute is specified for the generated knowledge collection, and a new knowledge collection is generated by collecting objects having the attribute. By repeating this, a collection of knowledge can be generated by specifying a plurality of attributes.
  • This connected collection of things is a knowledge network.
  • This connection can be meaningful. For example, inclusive relationships such as “human being a mammal”, blood relationships such as “Yuzo is Jiro's father”, positional relationships, time relationships, etc. Can be expressed.
  • FIG. 16 shows an example of generating a knowledge collection related to a certain attribute.
  • the object (A) belongs to both the knowledge collection generated by the attribute (1) and the knowledge collection generated by the attribute (2). In this way, a collection of knowledge can be created for each of the various attributes of the object, and the knowledge can be organized and used.
  • Making things and attributes, connecting things, attributes, and connecting things and attributes are learning. Learning is also creating feature data, connecting feature data and objects, and feature data and attributes. Learning is also creating identification data, connecting identification data and objects, and identification data and attributes. It is also learning to delete the connection between objects, attributes, feature data, and identification data.
  • a feature is extracted by the feature extraction unit 1020 from the input information. If there is feature data of the same feature in the storage area and the feature data is connected to the object via the attribute of the attribute area, a signal is sent from the feature data to the object. When there is feature data similar to the extracted feature, a signal is sent in the same manner, and the object receives the signal. The one that receives the signal is activated. This is a method for recognizing an object. Signals reach several objects from multiple feature data via attributes. The thing that receives the strongest signal is the first candidate for that thing.
  • the feature extraction unit in FIG. 5 extracts features from the sound received by the ear which is a sensory organ.
  • the data comparison unit in the brain corresponding to the data comparison unit 1030 compares the extracted features with the feature data held in the storage area. Then, the data comparison unit in the brain sends a signal to the attribute corresponding to the matching or similar feature data, and the attribute receiving the signal sends the signal to the object, so that the object is recognized by the sound heard by the ear. .
  • a knowledge collection is generated by specifying an attribute identifier of one or more attributes given in advance.
  • the specified attribute is a condition for an object to be included in this knowledge collection.
  • the knowledge collection is searched for whether or not the given object is included in the knowledge collection. If it is included, it can be determined that the given object satisfies the condition.
  • Inference can be made using the knowledge network of this embodiment.
  • Objects in this knowledge collection have the attribute of illness.
  • the attribute of illness is connected to characteristic data generated from images of people who are sleeping due to illness and characteristic data of various symptoms when ill.
  • the abstract attribute of illness is connected with the attribute of illness.
  • the feature data is generated, and it is checked whether the same feature data is in the knowledge base. If there is the same feature data, the attribute of illness connected to the feature data of the face having a poor facial color is acquired. Next, an abstract object called “disease” connected to the attribute of “disease” is acquired and recognized as a disease.
  • This knowledge collection includes individual diseases such as colds and pneumonia.
  • Each disease such as a cold and tuberculosis has a disease name and symptoms as attributes.
  • the attribute of a cold disease name is connected to identification data generated from a video image of the word “cold” and identification data generated from the sound of the word “cold”.
  • the identification data representing the above-mentioned disease name itself is not used as a meaning or concept relating to the disease.
  • a cold has an attribute of swelling of the tonsils.
  • the attribute of swelling of tonsils is connected with feature data of swollen tonsils video.
  • the concept and meaning are generated by connecting the feature data to the attribute.
  • Feature data generated from images of many types of tonsils can be linked to one attribute such as swelling of the tonsils. The more types of feature data are connected to one attribute, the more appropriate the judgment can be made.
  • an image of swollen tonsils is input from the outside to the knowledge base system, features are extracted from the images, and feature data is generated. Next, it is searched whether there is feature data determined to be the same as the generated feature data in the knowledge base. When feature data determined to be the same is found, an attribute connected to the feature data is acquired.
  • a diagnosis education system and a diagnosis support system can be created by displaying some of the acquired diseases connected with the attribute on the display device.
  • a knowledge network can be created in this knowledge collection. It is possible to generate a knowledge network where various diseases are systematically connected starting from the disease. A knowledge network that links related diseases can also be created. For example, in a knowledge network, a cold and pneumonia are connected. It expresses the relationship between the two diseases that pneumonia occurs when a cold is squeezed in a one-way connection. By using such a knowledge network, it is possible to display a related disease name and support diagnosis. For example, a patient with a cold symptom can be advised to check with a doctor for signs of pneumonia.
  • the technology of the present application can be used to construct a judgment work support system or a judgment work education support system in a work to make any judgment.
  • voice recognition There is a technology called voice recognition.
  • This technology can also be used for voice recognition.
  • Features are extracted from speech, the extracted features are stored as identification data, and the identification data is associated with objects and attributes in advance.
  • Objects, attributes, and identification data are connected in the above-described three-layer structure. In this way, based on the input voice, not only the identification data of the word represented by the voice but also the concept, meaning and object corresponding to the voice can be acquired.
  • Features are extracted from the input speech and identification data is generated. It is possible to acquire and recognize attributes and objects connected to identification data that is similar or coincident with the generated identification data. Other attributes connected to the recognized object can be acquired, and feature data and identification data connected to the attribute can be acquired.
  • a speech recognition system can be implemented by extracting features from the video. If features are extracted from sensors such as a temperature sensor and a pressure sensor, they can also be used as a facility monitoring system. Of course, it can also be used for information written in text.
  • FIG. 46 shows a triangle 121 as an example of a figure. It may be a figure other than a triangle. Moreover, not only a plane figure but a solid figure may be sufficient.
  • the triangle 121 includes three lines (straight lines) 123, three points (vertices) 122 at which the three lines 123 intersect with each other, and a plane 124 surrounded by the three lines 123. Instead of the line 123, a figure can be formed by a curve.
  • the surface 124 may be a curved surface instead of a flat surface. Considering the line 123, the point 122, and the surface 124 as objects, a knowledge network composed of the line 123, the point 122, or the surface 124 is created.
  • FIG. 47 is a knowledge network representing a triangle 121 by three points 122. Since each point 122 is a thing, it can have an attribute. The point 122 can have, for example, a coordinate value as an attribute.
  • FIG. 48 is a knowledge network representing a plane figure of a triangle 121 with points 122 and lines 123.
  • a figure is represented by a knowledge network in which points 122 and lines 123 are alternately connected.
  • the point 122 has a coordinate position and an interior angle as attributes.
  • the line 123 has the length of the line as an attribute.
  • the attribute is not limited to the coordinate position or length.
  • FIG. 49 shows a knowledge network in which a plane figure called a triangle 121 is connected to a line 123 that is a component of the figure. All the components of the graphic may be connected to the plane, or one or more components may be connected to the plane. Of course, it may contain things called dots.
  • ⁇ As attributes of the plane it may have a feature that the area, the length of two sides are equal, the name of an isosceles triangle, and the like.
  • a graphic element is connected to feature data generated from a video to generate its meaning and concept.
  • An attribute which is a feature that the lengths of two sides are equal leads to feature data generated from an isosceles triangle image.
  • the attribute representing the name of an isosceles triangle is connected to identification data generated from a video image of the word isosceles triangle and identification data generated from a sound of an isosceles triangle.
  • the attribute representing only the identification data generated from the word isosceles triangle is not connected to the feature data representing the meaning or concept of the isosceles triangle.
  • an attribute that has no meaning and is only for identification is clearly separated from an attribute that represents the concept or meaning of an object.
  • FIG. 50 is a three-dimensional figure called a triangular pyramid, and is composed of four triangles (surfaces) 121.
  • FIG. 51 is an example in which a solid is represented by a knowledge network, taking a triangular pyramid as an example.
  • a triangle (surface) 121 that is a three-dimensional component is connected to a graphic element constituting the surface.
  • the lines (sides) 123 shared by the respective faces are connected to each other. In this way, it is possible to represent how the surfaces constituting the solid are in contact.
  • the same points and lines can be used on a plurality of surfaces for the shared components such as points and lines.
  • Several representation methods are possible, such as a three-dimensional development view.
  • FIG. 52 shows the eyes 126, the nose 127, and the mouth 128.
  • FIG. 53 shows an example of a knowledge network in which a straight line connecting the eyes, a straight line connecting the eyes and the nose, and a straight line connecting the nose and the mouth are connected to each other.
  • a knowledge network that represents the graphical features of the face.
  • Each line has a line length as an attribute. From this knowledge network, ratios such as the length between eyes and the length from eyes to nose can be obtained. These ratios become facial features.
  • features are extracted from the image of the face given from the outside, a knowledge network as shown in FIG. 53 is generated, and the distance ratio between eyes, nose and mouth is obtained. The same ratio is calculated for the face knowledge network held in advance, and the two are compared. In this way, it is possible to determine whether or not the face image given from the outside is similar to the stored face.
  • FIG. 54 is a knowledge network representing a shogi board.
  • a place 129 where a shogi piece is placed is a thing. This is a knowledge network where the places 129 are connected like a grid.
  • the place 129 where the piece is placed has information indicating the position on the board as an attribute. For example, it is represented by the vertical and horizontal position from one corner of the board as (1, 1).
  • the type of the placed piece is added to the attribute of the place 129 where the piece is placed.
  • King, Ayumu, etc. are the types of pieces.
  • the state where there is no piece is expressed by having an attribute indicating that it is vacant or having no piece attribute. When a piece moves, the attribute of that piece is moved to the destination.
  • the original place should have no pieces.
  • As an attribute of the place 129 where the piece is placed various information such as a value indicating the degree of safety and importance of the place can be held.
  • a thing that represents a piece outside the figure is a thing, and has attributes such as the kind of piece and the movable range.
  • a place 129 where a piece at a position where each piece can move may have an attribute such as “movable walk”.
  • the place 129 where the piece that is an object is placed may be connected to the piece that is an object, and the piece itself may have attributes such as the movement operation range of the piece. A more suitable method can be adopted according to the purpose.
  • Judgment or reasoning can be made based on the separation of objects.
  • Judgment or inference can be made based on the position in the space created by connecting objects. This corresponds to a big picture.
  • an abstract object representing the meaning or concept represented by the attribute can also be handled.
  • the attribute connected to the feature data representing the meaning of the abstract object is connected to the object.
  • an abstract object called “heat” an attribute is connected to characteristic data of the sense of heat when touching a hot object, and that attribute is connected to the object.
  • the abstract object “heat” can be connected to the identification data generated from the word “heat”, but may not have the attribute connected to the identification data generated from the word “heat”.
  • identification or selection can be performed using the identification data generated from the word.
  • An object directly connected to the identification data can be identified by the identification data.
  • the attribute connected to the identification data can be identified by the identification data.
  • the object can be indirectly selected and identified by the identification data.
  • the knowledge base system can construct a knowledge base from feature data, attributes, and objects without identification data, accumulate knowledge, and perform knowledge processing such as inference.
  • a knowledge base is constructed from identification data, feature data, attributes, and objects, knowledge is accumulated, and knowledge processing such as inference can be performed. It is also possible to construct a knowledge base consisting of identification data, attributes, and objects without feature data, accumulate knowledge, and perform knowledge processing such as inference. In this case, however, the knowledge base has no meaning or concept.
  • a knowledge base according to an embodiment of the present technology includes identification data or feature data, attributes, and objects.
  • the relational database 14 can handle tables efficiently. However, other software that can handle connections may be used. Software that can handle a data structure called a list structure is also possible, but in order to realize the list structure, data in the form of a table is used.
  • a list structure is represented by a connection pointer between elements as used in a data structure that realizes a node that is an object. When representing a connection in a table, a table in which connected elements are arranged in one row is created. The difference is whether the connection is expressed by the pointer or the elements are arranged in one line to express the connection.
  • the associative memory may be a device such as an associative memory or an electronic component such as an integrated circuit.
  • the associative memory has a table inside and performs the following processing by hardware. Data is received from outside the associative memory, and it is checked whether there is data in the table that matches part or all of the received data. If there is matching data in the table, data associated with the matching data is acquired from the table in the associative memory, and the acquired data is output.
  • a table in the associative memory a table representing connections such as a table in which objects are associated with each other, a table in which objects are associated with attributes, and a table in which attributes are associated with feature data is created.
  • the associative memory is an electronic component such as a device or an integrated circuit having a search, addition, and deletion function of the relational database 14 and tabular data.
  • the network in FIG. 55 is an embodiment, and is not limited to the network in FIG.
  • Such a network is called a search network.
  • identifiers can be associated using a network as shown in FIG. 55 as shown in FIG. 55 . You can use this network to search, add, and delete associated identifiers.
  • the network in FIG. 55 is one of the auxiliary storage devices 7 in FIG. 7 that holds only the table.
  • the data equivalent to the table in the relational database 14 is decomposed and held in the communication device in the network in FIG. A search process equivalent to 14 is performed. Searches can be performed faster than the relational database 14.
  • a normal network transmits information including a communication device identifier that is a destination, and a communication device whose destination matches the communication device identifier receives the information.
  • information including the communication device identifier of the transmission source is transmitted without including the destination.
  • data can be transmitted to a partner designated in advance without designating a recipient.
  • FIG. 55 shows the network 151.
  • the network 151 in FIG. 55 includes a transmission device 152, a communication device 156, a control unit 160, and a transmission reception unit 161 connected to each other via a communication path 155.
  • the transmission device 152 includes a transmission unit 153.
  • the communication device 156 includes a reception unit 157, a communication device identifier 158, a receivable identifier 159, a search unit 162, and an address 163.
  • this network 151 information is transmitted to the communication device 156 using the shared transmission device 152.
  • the transmission device 152 and the transmission unit 153 may be mounted so as to be included in each communication device 156. However, since only the transmission unit 153 of one transmission device 152 can transmit at the same time, it is desirable to share one transmission device 152 and transmission unit 153 with a plurality of communication devices 156.
  • the reason for limiting the number of transmission devices 152 to one is that transmission data does not collide on the communication path 155 and transmission efficiency is greatly improved. Since transmission is simultaneously performed from the transmission device 152 to the plurality of communication devices 156, the efficiency is further improved.
  • the transmission reception unit 161 receives a transmission instruction and transmission data from the control unit 160.
  • the transmission data does not include a destination, and includes only one communication device identifier 158 that is an identifier of the transmission source communication device 156.
  • One communication device 156 is associated with one object, attribute, feature data, and identification data.
  • the transmission unit 153 includes only one transmission source communication device identifier 158 received by the transmission reception unit 161 and transmits information including no destination to the communication path 155.
  • the communication path 155 connects the transmission device 152 and the communication device 156.
  • the communication path 155 may be a communication path 155 in addition to electric wires and optical cables.
  • the communication path 155 may be anything.
  • the communication device 156 includes a reception unit 157, a communication device identifier 158 that is an identifier of the communication device 156 itself, a receivable identifier 159 that is an identifier of the receivable communication device 156, and a search unit 162.
  • the communication device identifier 158 is an identifier for identifying the communication device 156 in one network, and is set in the communication device 156 by the control unit 160 in advance.
  • the receivable identifier 159 is a communication device identifier 158 of another communication device 156 corresponding to another nerve cell connected to the communication device 156 corresponding to one nerve cell.
  • the receivable identifier 159 is preset in the communication device 156 by the control unit 160.
  • the control unit 160 can additionally delete the receivable identifier 159 of the communication device 156.
  • the communication devices 156 corresponding to nerve cells can be connected to each other, or the connection can be deleted.
  • the receiving unit 157 receives the communication device identifier 158 of the transmission source in the data transmitted from the transmission device 152 from the communication path 155.
  • the search unit 162 checks whether the received communication device identifier 158 matches any of the receivable identifiers 159. If the received communication device identifier 158 matches with any of the receivable identifiers 159, the search unit 162 outputs data including the communication device identifier 158 of the communication device 156 itself to the control unit 160. This corresponds to the communication device 156 corresponding to the nerve cell receiving a signal from another communication device 156 that is another connected nerve cell.
  • the communication device 156 does not output the communication device identifier 158. In this case, it represents that the communication device 156 corresponding to the nerve cell identified by the received communication device identifier 158 is not connected to the communication device 156 corresponding to the nerve cell.
  • a table in which a certain communication device identifier is associated with another communication device identifier is searched with a certain communication device identifier, and another communication device identifier associated with the communication device identifier is obtained. The same processing can be performed. In other words, the table can be searched using this network.
  • control unit 160 When the control unit 160 receives the communication device identifier 158 output from the search unit 162, the data including the received communication device identifier 158 is passed to a device outside the figure.
  • the control unit 160 receives a transmission instruction including a transmission source communication device identifier 158 that is an identifier of a communication device corresponding to a nerve cell from an unshown device, and sends the received transmission instruction to the transmission reception unit 161.
  • the address 163 of each communication device 156 uniquely identifies the communication device 156.
  • the control unit 160 designates the communication device 156 with the address 163 and sets data including the communication device identifier 158 and the receivable identifier 159.
  • the computer or knowledge base system outside the figure sends data including the communication device identifier 158, the receivable identifier 159, and the address 163 of the communication device 156 to the control unit 160, and sends the communication device identifier to the communication device 156 specified by the address 163.
  • 158, data including a receivable identifier 159 is set.
  • the communication device identifier 158 identifies the communication device 156 within the network 151, and the address 163 of the communication device 156 is used to identify the communication device 156 from outside the network 151.
  • a transmission instruction including the communication device identifier 158 of the transmission source is sent from the device outside the figure to the controller 160 device.
  • the network 151 performs the above-described processing.
  • the control unit 160 Upon receiving the communication device identifier 158 of another communication device 156 connected to the communication device 156 identified by the communication device identifier 158 of the transmission source included in the transmission instruction, the control unit 160 communicates with the communication device of the other communication device 156 connected. Data including the identifier 158 is sent to a device not shown.
  • the search processing in each communication device 156 can be performed in parallel, and the search processing for each communication device 156 is performed in hardware, so that the table can be searched very quickly. Yes. For this reason, the processing speed is remarkably increased. It can also be used in fields where a quick response is required.
  • the communication device 156 of this network has a simple structure and can be easily implemented as an integrated circuit. It is also easy to incorporate a plurality of communication devices 156 in one integrated circuit.
  • a network is generated by connecting a plurality of integrated circuits having a plurality of communication devices 156 in parallel, a large table can be created.
  • a knowledge base system that can store large amounts of knowledge information and process it at high speed can be constructed.
  • it is necessary to periodically perform maintenance work for maintaining the performance of the database, but this network 151 does not have to do so.
  • control unit 160 7 and the network 151 of FIG. 55 are connected by the control unit 160, and instructions and data are passed from the calculation device 2 to the control unit 160 of FIG.
  • the arithmetic device 2 receives data from the control unit 160.
  • the control unit 160 receives the received communication from the communication device 156 at the address 163. Data including the device identifier 158 and the receivable identifier 159 is set.
  • the control unit 160 transmits the transmission instruction and the transmission source communication device identifier 158 to the transmission reception unit 161.
  • the transmission accepting unit 161 sends a transmission instruction and a transmission source communication device identifier 158 to the transmission unit 153 of the transmission device 152.
  • the transmission unit 153 transmits the source communication device identifier 158 to the communication path 155.
  • the communication device 156 compares the received communication device identifier 158 with the receivable identifier 159.
  • the communication device identifier 158 of the communication device 156 is passed to the control unit 160.
  • the communication device identifier 158 of the communication device 156 and the data directly associated with the receivable identifier 159 are obtained. To the control unit 160.
  • the control unit 160 passes the data including the passed communication device identifier 158 to the arithmetic device 2.
  • the communication device 156 passes the data including the communication device identifier 158 of the communication device 156 and the received communication device identifier 158 of the transmission source to the control unit 160.
  • the control unit 160 may pass a set of data including the communication device identifier 158 of the communication device 156 and the communication device identifier 158 of the transmission source to the arithmetic device 2.
  • the communication device identifier 158 is an identifier of an object, attribute, feature data, or identification data. That is, one communication device 156 is one thing, attribute, feature data, or identification data. However, the actual data of the feature data is stored in the data 10 other than the network 151 in FIG. 55 together with the identifier of the feature data, and is referred to by the identifier of the feature data. The actual data of the identification data is also stored in the data 10 other than the network 151 in FIG. 55 together with the identifier of the identification data, and is referred to by the identifier of the identification data.
  • the receivable identifier 159 is, for example, an identifier of another object, other attribute, other feature data, or other identification data connected to one object that is the communication device 156.
  • the communication device 156 represents an object, an attribute, feature data, or identification data.
  • the network 151 represents a connection between things, attributes, feature data, and identification data. Data set in the communication device 156 is held as a table of the relational database 14 or the like.
  • connection table For the connection table, select one of the associated columns, select one identifier of the selected column, and extract the identifier of the other column that is connected and associated with that identifier. A new table is created that associates only one identifier with some extracted identifiers. This process is repeated for the column identifier. If each row of the connection table is associated with additional information such as a weight indicating the degree of connection, a table is created by further associating the additional information with the other column identifier. Also good.
  • the attached information is not limited to the weight.
  • the latter column which is the other column
  • one identifier of the selected column is selected
  • the identifier of the former column which is one column linked and associated with the identifier
  • a new table is created that associates only one identifier with some extracted identifiers. This process is repeated for the column identifier. If each row of the connection table is further associated with attached information such as a weight indicating the degree of connection, a table is created by further associating the attached information with the associated identifier of the former column. Also good.
  • the attached information is not limited to the weight.
  • a newly created table corresponds to one object, attribute, feature data, and identification data.
  • This table associates, for example, one object identifier with an identifier of another object, attribute, feature data, or identification data connected to the one object. Therefore, a combination of the identifier of the one thing, attribute, feature data or identification data and a table having one column holding the identifier of the thing, attribute, feature data or identification data may be used.
  • the number of identifiers representing other connected objects, attributes, feature data, or identification data is 0 or more and is not limited to one.
  • FIG. 56 is a table associating one feature data with several attributes in FIG. 57 and a table associating one attribute with several feature data in FIG. Can be disassembled.
  • the table stores attribute identifiers instead of attributes, and feature data identifiers instead of feature data.
  • One feature data identifier (10001) is acquired from the feature data identifier column, which is one column of the table associating the feature data with the attributes in FIG.
  • the attribute identifier (14) associated with the feature data identifier (10001) is extracted and acquired from the attribute identifier column which is the other column.
  • a table is generated in which only one identifier (10001) of the acquired feature data is associated with the extracted attribute identifier (14). This is the table of FIG. If each row in the table of FIG. 56 has attached information such as a weight and is associated with each row, the associated information is further associated with the attribute identifier (14) associated with the feature data identifier (10001). Then, the table of FIG. 57 may be created. The above processing is repeated for all feature data identifiers in the feature data identifier column, which is one column of the table associating the feature data with the attributes in FIG.
  • One attribute identifier (14) is acquired from the attribute identifier column in the table associating the feature data and attributes shown in FIG.
  • the feature data identifier (10001) associated with the attribute identifier (14) is extracted and acquired from the feature data identifier column. Further, the identifier (45000) of the feature data associated with the attribute identifier (14) is extracted and acquired.
  • a table is generated in which only one acquired attribute identifier (14) is associated with the extracted and acquired feature data identifiers (10001, 45000). This is the table of FIG. If each row in the table of FIG. 56 has attached information such as a weight and is associated with each row, the attached information is further associated with the feature data identifier (10001) associated with the attribute identifier (14). 58 may be created. The above process is repeated for all the attribute identifiers in the latter attribute column of the table associating the feature data with the attributes in FIG.
  • one table associating the feature data with the attributes in FIG. 56 includes one feature data, a table representing several attributes directly associated with the one feature data, and one table. It is broken down into a table that represents an attribute and some feature data directly associated with that one attribute.
  • One of these decomposed tables is assigned to one communication device 156.
  • the identifier of one feature data is set as the communication device identifier 158
  • several attribute identifiers are set as the receivable identifier 159.
  • the attached information is directly associated with the attribute identifier
  • the attached information is directly associated with the attribute identifier, that is, the receivable identifier 159, and set in the communication device 156.
  • the table of the receivable identifier 159 is not a one-column table but a multi-column table, and the attached information is set in the same row as the associated attribute identifier.
  • the data 10 includes a list of unused identifiers that hold unused object identifiers, unused attribute identifiers, unused feature data identifiers, and unused identification data identifiers.
  • the object identifiers and attribute identifiers used in the table associating the objects with attributes in FIG. 19 are obtained from the unused identifier list.
  • Both the identifier of the feature data and the identifier of the identification data are obtained from the unused identifier list.
  • the communication device 156 and the address 163 of the communication device are associated with each other in a one-to-one correspondence in advance, and only one communication device 156 can be designated by the address 163 of one communication device.
  • the data 10 includes a list of unused communication devices that hold addresses 163 of unused communication devices. Further, the data 10 includes an address identifier correspondence table in which the communication device address 163 is associated with an object identifier, an attribute identifier, a feature data identifier, or an identification data identifier.
  • the address 163 of the communication device is acquired from the identifier of the object, attribute, feature data, or identification data using the address identifier correspondence table, and the acquired address Data including 163 and an instruction are passed to the control unit 160.
  • an identifier is acquired from the unused identifier list
  • an address 163 of the communication device is acquired from the unused communication device list
  • a pair of the acquired identifier and address 163 is obtained. Stored in the address identifier correspondence table.
  • one communication device 156 corresponds to one thing, one attribute, one feature data, or one identification data. Note that the actual data of the feature data or the identification data, which is the feature extracted from the voice or video, is held in the data 10 other than the network 151 in FIG.
  • the arithmetic device 2 passes the data including the address 163 and the communication device identifier 158 set to the communication device 156 specified by the address 163 and the receivable identifier 159 to the control unit 160 of the network 151, and is specified by the address 163.
  • the communication device 156 is instructed to set data including the communication device identifier 158 and the receivable identifier 159.
  • control unit 160 Upon receiving the instruction, the control unit 160 sets data including the communication apparatus identifier 158 and the receivable identifier 159 in the communication apparatus 156 specified by the address 163 according to the received data and instruction.
  • the communication device address 163 and the communication device identifier 158 are associated with each other and stored in the address identifier correspondence table.
  • the table associating the feature data with the attributes in FIG. 56 is a table associating one feature data with several attributes in FIG. 57 and a table associating one attribute with several feature data in FIG. Can be disassembled.
  • the table stores attribute identifiers instead of attributes, and feature data identifiers instead of feature data.
  • One unused address 163 is acquired from the unused communication device list.
  • a set of the acquired address 163 and the feature data identifier (10001) in the first table of FIG. 57 is stored in the address identifier correspondence table.
  • the address 163 is associated with the identifier of the feature data. If the address 163 is already associated with the feature data identifier (10001), the address 163 associated with the feature data identifier (10001) is acquired from the address identifier correspondence table.
  • the arithmetic device 2 sets the acquired address 163, the feature data identifier (10001) as the communication device identifier 158, the attribute identifier (14) as the receivable identifier 159, the weight (1) as the attached information, and the setting
  • the instruction is passed to the control unit 160.
  • the control unit 160 sets the identifier (10001) of the feature data received as the communication device identifier 158 for the communication device 156 specified by the passed address 163, and receives the attribute identifier (14) received as the receivable identifier 159.
  • a weight (1) is set as ancillary data of the attribute identifier (14).
  • the setting is repeated in the same manner for all the tables in FIG.
  • the table associating the feature data and the attributes in FIG. 56 is stored in the network in FIG.
  • One selected network is a table associating identifiers and representing connections as shown in FIG.
  • the control unit 160 passes the received transmission source identifier and transmission instruction to the transmission reception unit 161.
  • the transmission reception unit 161 passes the received transmission source identifier and transmission instruction to the transmission unit 153 of the transmission device 152.
  • the transmission unit 153 transmits the received transmission source identifier (14) to the communication path 155 in accordance with the received transmission instruction.
  • the transmission source identifier (14) is received from the communication path 155.
  • the search unit 162 checks whether the received transmission source identifier (14) matches any of the receivable identifiers 159. In this case, the received transmission source identifier (14) matches one of the set receivable identifiers 159.
  • the feature data identifier (10001) which is the communication device identifier 158 of the communication device 156 and the weight (1) which is the attached data are passed from the communication device 156 to the control unit 160.
  • the search unit 162 checks whether the received transmission source identifier (14) matches any of the receivable identifiers 159. In this case, the received transmission source identifier (14) matches one of the set receivable identifiers 159.
  • the communication device 156 passes the feature data identifier (45000), which is the communication device identifier of the communication device 156, and the weight (2), which is the attached data, to the control unit 160.
  • the computing device 2 includes a set of feature data identifier (10001) that is data passed from the communication device 156 to the control unit 160 and weight (1) that is attached data, a feature data identifier (45000), and attached data. A pair with a weight (2) is received. It can be seen that the feature data (10001) and the feature data (45000) are linked to the attribute identifier (14). Furthermore, the weight representing the strength of connection can also be acquired as attached information of the feature data.
  • the above processing is the same as the table in FIG. 56 being searched using the relational database 14 and using the attribute identifier (14) as a search key.
  • the communication device 156 may not send the attached data to the control unit 160, or special data indicating that there is no attached information, For example, NULL may be passed to the control unit 160.
  • a program represents a processing procedure with information called a program. It is possible to make this hardware. Accordingly, the program of the present application can be implemented by hardware. By implementing the program of the present technology as an electronic device, an integrated circuit, or a processor implemented by hardware, the present technology can be incorporated into various devices and can be processed at high speed. Of course, it can be implemented as an information system.
  • the present invention is advantageously used in a knowledge base system.

Abstract

 知識ベースシステム(1000)は、知識ベースを記憶している記憶部と、記憶部に記憶された知識ベースに対して論理演算を行う演算部(1070)とを備える。知識ベースは、物を識別する物識別子と、物がもつ少なくとも一つの属性であって、物の物識別子と対応づけられた属性とを含む。属性は、当該属性を識別する属性識別子と、当該属性を表す少なくとも一つのデータであって、当該属性を識別する属性識別子に対応づけられた特徴データ、及び当該属性を表す言葉に対応付けられたデータであって、当該属性識別子に対応付けられた識別データのうちの少なくとも一方とを含む。物識別子は、物を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される。属性識別子は、属性を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される。

Description

知識ベースシステム、論理演算方法、プログラム、及び記録媒体
 本発明は、知識ベースシステムに関するものである。
 単細胞物の生物でも外界からの刺激を受けると、ある刺激に対応して特定の反応を示すことがある。外界からの入力情報と内部の状態とに応じて、情報を出力し、一定の反応を示す。つまり、あらかじめ生命体に組み込まれ固定された情報処理の仕組みがあると考えることができる。このような情報処理を、本願では第1の情報処理と呼ぶ。
 外界からの入力情報に対応する出力情報を調整し、最適な出力情報を見出し、調整情報を記憶する仕組みがあることも明らかになっている。これを、本願では第2の情報処理と呼ぶ。これは、ニューラルネットワークの1つの働きとして、広く知られている。
 人間は、文字で書かれた言葉を用いて、更に精緻な情報処理を行っている。これを、本願では第3の情報処理と呼ぶ。
 現在の人工知能の研究の多くは、第3の情報処理について研究を行っている。しかし、この方法で、人間が日常的に行っている情報処理をまねるシステムを構築できていない。文字で書き表された言葉を使うため、精密に情報を記述し、精密に記述された情報を論理演算することができる。しかし、精密であるがゆえに、情報を知識として蓄積する方法や、知識として記録された情報をうまく使う方法が開発できていない。
 物は、言葉で表わすことができる。英語や日本語のような言語の中で、物は言葉、すなわち単語で表される。物には、定まった性質である属性がある。この属性も言葉で表わされる。言葉は、文字の集まりである文字列、すなわち単語で表わすことができる。したがって、物を表わす単語は属性を持ち、物もその属性も、文字で書き表された文字列、すなわち単語で表わすことができる。文字を使うと、情報を長時間保持し、記録できる。音声や身振りでなど文字以外の手段を言葉として、単語を表現することもできる。単語そのものが、その単語自身の意味を表わしていることが特徴である。
 物には、石や太陽などのように具体的な物以外に、暖かさ、概念、映像、音、WEBページのような抽象的な物も含まれる。未知の物は、属性を持たないこともある。属性は、「赤い色をしている」、「甘い味がする」など、物の性質を表わす。
 コンピュータなどの機械で、2つ文字列を比較し、2つの文字列が等しいかどうかを判定することができる。2つの文字列が同じかどうかを判定して、同じであれば真の値を、異なる場合は偽の値を生成することはできる。コンピュータは、文字で表わされた単語が同じかどうかを判定して、真偽値を生成することができる。
 2つの単語を比較して、同じであれば真の値を、異なる場合は偽の値を生成することはできる。この方法によって、物や属性が同じか、異なっているかを判断することができる。単語に対応づけられた記号を用いても同様のことができる。単語に対応づけられた記号は、対応付けられた単語の意味を表わす。この場合の記号は、意味を表わす。記号を識別子と言い換えると次のように言える。単語に対応づけられ単語を表わす識別子は、対応付けられた単語の意味を表わす。したがって、単語に対応づけられ単語の意味を表わす識別子も、単語である。犬という単語とABCという識別子が対応付けられているとすると、ABCは犬の意味を表わす単語である。
 文字の組み合わせだけでなく、音や図形などの組み合わせでも単語は生成できる。音や図形などの組み合わせで生成された単語を、文字で生成された単語に置きかえることができるので、記録の容易性を除いて、何で単語を生成するかは本質的なことではない。
 昔、リレー式計算機というものがあった。リレーを使ってAND、OR、NOTの3つの演算をする仕組みを実現していた。現在のコンピュータも部品がリレーから半導体に変わっているが、原理はリレー式計算機と同じである。
 現在のコンピュータは、論理演算する手順を機械部品の組み合わせで保持するのではなく、論理演算する手順をプログラムと呼ばれる情報として保持している。プログラムと呼ばれる情報を変更することで、同じ装置で異なる論理演算を行うことができる。
 コンピュータが直接実行できるプログラムは、「0」と「1」という2種類の値が組み合わされたものなので、人間がそのようなプログラムを作ることは大変であった。そこで、人間が理解できる英数字の組み合わせでできたプログラムを、コンピュータが直接扱える「0」と「1」とが組み合わされたプログラムに変換する方法が考案された。プログラムを使ってコンピュータにこの変換を行わせる。たとえば、COBOLは、人間が理解できるプログラムである。COBOLのようなものをプログラミング言語と呼ぶ。機械であるコンピュータが直接扱えるプログラムは、機械語と呼ぶ。コンパイラというプログラムは、プログラミング言語で作られたプログラムを機械語のプログラムへ変換してくれる。
 物は、一般に、幾つかの属性を持っている。物を表わす1つの単語は、0個以上の属性を持っている。
 PROLOGというプログラミング言語がある。この従来技術では、属性を表わすために、属性を表わす単語を用いている。このようなプログラミング言語を用いて人工知能を実現しようとする実験が行われたが、限界があった。
 PROLOGというプログラミング言語で、「ソクラテスは人である。」を記述すると、(man Socrates)になる。このように、“man”と“Socrates”という2つの単語を並べて、物の性質、すなわち物の属性を表現している。コンピュータの内部では、物と、性質である属性とを単語として保持している。“man”が“man”であることを判断する基準は、単語が同じかどうかである。単語そのものが意味を表わしている。単語は、並びの順によって物、属性、関係として解釈される。
 「家康は信康の父である」をPROLOGで記述すると、(Father Ieyasu Nobuyasu)となる。これは、2つの物の関係を表現している。3つの単語を並べて2つの物の関係を表現している。最初の単語が関係を表わし、2番目と3番目の単語が物を表わす。この例では、2番目の単語が父を表わし、3番目の単語が子を表わす。(Father Nobuyasu Ieyasu)のように、2番目の単語と3番目の単語の順番を変えると、「信康は家康の父である」という意味に変わる。関係によっては、2番目の物と3番目の物に意味の違いがあることがある。
 コンピュータの内部では、関係と2つの物とを3つの単語の並びとして保持している。単語の並びの順番が異なると意味が変わる。単語の並びの順番に意味が含まれている。単語の数や並び順で意味を表わしている。この方法では、1つの物と他の物との2階層の関係を表わすことはできるが、子→父→祖父のような3階層以上の関係を直接的に表わすことはできない。
 (Father A B)、及び(Father B C)の2つの単語の並びがあったとする。2つの単語の並びには、Bという共通の単語がある。そこで、AはCの父の父、つまり、AはCの祖父であることが導かれる。直接的には、AとCの関連は記述されていないが、共通する単語を仲立ちとして、間接的に表現された物同士の関係を知ることができる。
 この技術で物と属性と関係とをデータベースとして保持できるが、物や属性や関係を表わす単語の並びを保持しているにすぎない。単語の並びで物の性質である属性を表現し、単語の並びで関連を表現している。属性も関係も、単語の並びという同じ方法で表現されている。情報を体系化したものを知識とすると、情報を現す単語を幾つか並べたものを複数個保持し、保持された単語の並びを知識としている。この方法では、3階層以上の物同士の関連を直接表わす情報は保持されていない。ある単語と他の単語とを付き合わせ、一致している単語を探すことにより、単語の並び同士を関連付ける。一致している単語を探すことによって、その都度、単語の並びで表わされた情報の関連を調べる。
 特願2006-514606号明細書(特許文献1)では、次のような技術が開示されている。インターネット上のWEBサーバに保管され、パソコンなどの上で動作するブラウザと呼ばれるソフトウエアで見ることできるWEBページや、文書ファイルなどの情報をノードと呼び、ノードの集まりを空間と呼び、前記空間内のノードが持つ情報を評価する装置が開示されている。また、ノードに結びついた情報をプロパティと呼んでいる。プロパティ(属性)の実装については一切規定されておらず、プロパティの実装は、プログラムの実装者に全て任せられている。この技術は、物が属性を保持することは開示されていない。また、属性の評価方法について開示されていない。
 英語や日本語などの言語内の単語をつないで構築された知識ベースがある。この従来技術の知識ベースでは、言語内の単語同士が直接つながっている。そして、従来技術の知識ベースは言語の中に含まれる。
 グラフ構造を持つ確率モデルであるベイジアンネットワークを使って、推論を行う人工知能の分野がある。ある事象が発生したときに別の事象がある確率で発生すると考え、ある事象から他の事象が発生するという連鎖をグラフ構造で表現するものである。ある事象から他の事象が発生する確率が必ず保持される。ある事象を出発点として、あらかじめ保持されたグラフを辿ることにより、発生確率が一番高い事象を探すことができる。この処理によって推論ができるという考え方である。この方法では、物、属性、関係が区別されておらず、すべて事象として表現されている。事象は言語の中の単語で表わされ、事象同士が直接つながっている。そして、ベイジアンネットワークは言語の中に含まれる。
特願2006-514606号明細書
 従来技術では、文字を組み合わせて意味を持つ単語を生成する。単語は言語の中にあり、言語の中だけでその単語の意味を直接持つ。意味を直接持つ単語で物や、性質、特徴、意味、概念などの属性という情報を表わす。物を表わす単語と属性を表わす単語とから成る単語の並びを作り、単語の並びで物の性質や物と物との関係を表わす。複数の単語の並びを蓄積し、蓄積された単語の並びを知識としていた。この方法では、単語そのものの意味を持つ単語だけを使って知識を構築している。
 本発明は、上記の課題に鑑みてなされたものであり、物や属性の意味内容を言語に依存せずに表現することのできる知識ベースシステムを提供することが目的とする。
 本発明の一形態に係る知識ベースシステムは、知識ベースを記憶している記憶部と、前記記憶部に記憶された知識ベースに対して論理演算を行う演算部とを備え、前記知識ベースは、物を識別する物識別子と、前記物がもつ少なくとも一つの属性であって、当該物の物識別子と対応づけられた属性とを含む。前記属性は、当該属性を識別する属性識別子と、当該属性を表す少なくとも一つのデータであって、当該属性を識別する属性識別子に対応づけられた特徴データ、及び当該属性を表す言葉に対応付けられたデータであって、当該属性識別子に対応付けられた識別データのうちの少なくとも一方とを含む。前記物識別子は、物を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される。前記属性識別子は、属性を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される。
 上記構成によれば、物および物が持つ属性を、物や属性の意味を表わさない識別子で表わし、保持し、さらに演算の対象とすることができる。なお、「物が指定される」とは、当該物を識別する物識別子が指定されることを指す。
 また、前記特徴データは、当該特徴データに対応づけられた属性識別子が識別する属性の形、音、香、味、色、圧力、温度、長さ、座標値、及び面積の少なくとも一つを表すデータであってもよい。このように、各属性の概念(意味内容)は、属性識別子に関連付けられた特徴データによって定義される。
 さらに、前記知識ベースシステムは、前記属性に関する情報を取得する入力部と、前記入力部で取得された情報から、前記特徴データ及び前記識別データの少なくとも一つを抽出する特徴抽出部と、前記特徴抽出部で抽出された前記特徴データ及び前記識別データの少なくとも一つを、前記属性を識別する属性識別子と対応づけて前記知識ベースに格納するデータ格納部とを備えてもよい。これにより、外部から取得した情報に基づいて、特徴データ及び識別データと属性識別子との新たな関係を知識ベースに格納することができる。
 また、前記属性識別子は、主識別子と副識別子とを含んでもよい。そして、前記属性識別子は、前記主識別子と前記副識別子との組み合わせによって、前記属性を識別してもよい。例えば、主識別子で属性の基本的な性質を表わし、副識別子で程度や様子などのより詳しい性質を表わすことができる。
 また、前記演算部は、少なくとも、一つの物が演算の対象として指定されると指定された当該物がもつ属性を対象として前記論理演算を行ってもよい。
 一形態として、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応付けられている場合、同じ属性識別子を持ち、かつ、対応づけられた真偽値が共に真であるか又は共に偽である属性だけを集め、個々の属性に前記真偽値が対応付けられていない場合、同じ属性識別子を持つ属性だけを集めることで、新たな属性の集合を生成するAND演算を行ってもよい。
 他の形態として、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性を集めることで、新たな属性の集合を生成するOR演算を行ってもよい。
 他の形態として、個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が1つ指定された場合において、当該属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した新たな属性の集合を生成するNOT演算を行ってもよい。
 他の形態として、個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、同じ属性識別子を持ち、かつ、対応づけられた真偽値が共に真であるか又は共に偽である属性だけを集めることで、新たな属性の集合を生成し、生成した新たな属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した更に新たな属性の集合を生成するNAND演算を行ってもよい。
 他の形態として、個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性を集めることで、新たな属性の集合を生成し、生成した新たな属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した更に新たな属性の集合を生成するNOR演算を行ってもよい。
 他の形態として、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が同じである属性の数を共通度として計数し、個々の前記属性に前記真偽値が対応づけられていない場合、いずれの属性の集合にも含まれる属性の数を共通度として計数してもよい。
 他の形態として、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が異なる属性の数を非共通度として計数し、個々の属性に前記真偽値が対応づけられていない場合、いずれかの属性の集合にだけ含まれる属性の数を非共通度として計数してもよい。
 他の形態として、前記属性識別子は、主識別子と副識別子とを含んでもよい。前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、主識別子が同じで、かつ、対応づけられた真偽値が同じである属性の数を類似度として計数し、個々の前記属性に前記真偽値が対応づけられていない場合、主識別子が同じである属性の数を類似度として計数してもよい。
 他の形態として、前記属性識別子は、主識別子と副識別子とを含んでもよい。前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、主識別子が同じで、かつ、対応づけられた真偽値が異なる属性の数を非類似度として計数し、個々の前記属性に前記真偽値が対応づけられていない場合、いずれかの集合だけに含まれる属性の数を非類似度として計数してもよい。
 他の形態として、個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性から、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が異なる属性を除くことで、新たな属性の集合を生成するOR演算を行ってもよい。
 他の形態として、前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、いずれの属性の集合にも属する属性を除くことで、新たな属性の集合を生成するXOR演算を行ってもよい。
 上記のように、本発明の一形態に係る知識ベースシステムは、指定された属性の集合を演算対象として、様々な演算処理を実行することができる。なお、「属性の集合」とは、典型的には、物識別子に対応付けられた0以上の属性識別子の集合を指すが、これに限定されない。また、「属性を集める」とは、条件に合致する属性識別子を集めることを指す。
 また、前記演算部は、少なくとも一つの属性が指定されると、指定された属性に対応づけられた物識別子を集めることで、当該属性をもつ知識の集まりを生成してもよい。そして、物が指定されると、当該物の物識別子が前記知識の集まりに属するか否かを判断してもよい。
 さらに、前記演算部は、生成した前記知識の集まりを識別する物識別子と、前記指定された少なくとも一つの属性を識別する属性識別子、及び抽象的な物であることを示す属性の属性識別子とを対応付けることで、抽象的な物を新たに生成してもよい。
 このように、例えば、共通の属性を持つ物(共通の属性識別子が対応付けられている物識別子)を知識の集まりとして、予めグループ化しておけば、物(物識別子)が当該グループに属するか否かを簡単に判断することができる。
 さらに、前記知識ベースは、物に対応づけられたノードのつながりである知識ネットワークを含んでもよい。前記ノードは、当該ノードに対応する物識別子と、当該ノードが属する知識ネットワークに関する情報である知識ネットワーク情報とを含んでもよい。そして、前記知識ネットワーク情報は、前記知識ネットワークを識別する知識ネットワーク識別子と、前記知識ネットワークにおける当該ノードとつながる他のノードへのポインタとを含んでもよい。これにより、物と物との関係を定義することができるので、知識ベース内で知識を体系的に保持することができる。
 例えば、前記演算部は、指定された知識ネットワーク識別子で識別された知識ネットワークにおいて、当該知識ネットワークを構成するノードに含まれる物識別子と知識ネットワーク情報とを参照することで、指定された物とつながっている他の物を特定してもよい。さらに、前記演算部は、属性識別子が指定されると、当該属性識別子に対応づけられた知識ネットワークを検索し、検索された知識ネットワークの知識ネットワーク識別子を取得してもよい。これにより、1つの物を出発点として、当該物に関連のある可能性がある他の物に到達することができる。この処理は、「推論」に対応付けられる。
 前記演算部は、さらに、前記知識ネットワークを識別する物識別子と、前記知識ネットワークに対応付けられた少なくとも1つの属性識別子、及び抽象的な物であることを示す属性の属性識別子とを対応付けることで、抽象的な物を新たに生成してもよい。
 本発明の一形態に係る論理演算方法は、上記記載の知識ベースシステムが備える知識ベースに対して、少なくとも上記記載の演算部による処理を行うステップを含む。
 本発明の一形態に係るプログラムは、知識ベースシステムのためのプログラムであって、上記記載の論理演算方法に含まれるステップをコンピュータに実行させる。
 本発明の一形態に係る記録媒体は、知識ベースシステムのためのコンピュータ読み取り可能な記録媒体であって、上記記載の知識ベースと、上記記載のプログラムとが記録されている。
 なお、本発明は、知識ベースシステムとして実現できるだけでなく、知識ベースシステムの機能をコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD-ROM等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
 本願技術を用いることにより、物および物が持つ属性を、物や属性の意味を表わさない識別子で表わし、保持できる。
図1は、従来の知識ベースと本発明の一実施形態に係る知識ベースとを対比説明するための図である。 図2Aは、属性と特徴データとの関係を表す第1階層の図形を示す図である。 図2Bは、属性と識別データとの関係を表す第1階層の図形を示す図である。 図3は、物と属性との関係を表す第2階層の図形を示す図である。 図4は、物と物との関係を表す第3階層の図形を示す図である。 図5は、第1~3階層を統合した図形を示す図である。 図6は、一実施形態に係る知識ベースシステムの概念図である。 図7は、一実施形態に係るコンピュータシステムのブロック図である。 図8は、一実施形態に係る知識ベースシステムの機能ブロック図である。 図9は、一実施形態に係る属性識別子と特徴データとの対応表を示す図である。 図10は、一実施形態に係る物識別子と属性識別子との対応表を示す図である。 図11は、2次元の直交座標を示した図である。 図12は、直角より小さい角度で交わった3次元の座標を示した図である。 図13は、座標軸で属性を表わした例を示した図である。 図14は、ファジィ集合の例を示す図である。 図15は、物の関連を示す図である。 図16は、知識ネットワークと属性との関係を示す図である。 図17Aは、属性の元になるデータ一覧を示す図である。 図17Bは、物の名前と物識別子との対応表を示す図である。 図18は、属性と属性識別子との対応表を示す図である。 図19は、物と属性との一覧表を示す図である。 図20Aは、物と主属性と副属性との対応表を示す図である。 図20Bは、主属性と副属性との対応表を示す図である。 図21は、AND演算の流れ図を示す図である。 図22は、OR演算の流れ図を示す図である。 図23は、NOT演算の流れ図を示す図である。 図24は、NAND演算の流れ図を示す図である。 図25は、XOR演算の流れ図を示す図である。 図26は、共通度を算出する処理の流れ図を示す図である。 図27は、非共通度を算出する処理の流れ図を示す図である。 図28Aは、物の名前と物識別子との対応表を示す図である。 図28Bは、知識ネットワークと属性との対応表を示す図である。 図28Cは、知識ネットワークのデータ構造を示す図である。 図29は、ノードのデータ構造を示す図である。 図30は、属性の階層情報を示す図である。 図31は、知識の集まりを検索する処理の流れ図である。 図32は、知識ネットワークを辿る処理の流れ図である。 図33は、知識ベースにおけるデータ構造の例を示す図である。 図34は、知識ベースにおけるデータ構造の例を示す図である。 図35は、知識ベースにおけるデータ構造の例を示す図である。 図36は、知識ベースにおけるデータ構造の例を示す図である。 図37は、知識ベースにおける知識の集まりを説明する図である。 図38は、知識ベースにおける知識の集まりを説明する図である。 図39は、知識ベースにおける知識ネットワークを説明する図である。 図40は、知識ベースにおける知識ネットワークを説明する図である。 図41は、知識ベースにおける知識ネットワークを説明する図である。 図42は、知識ネットワークの例を示す図である。 図43は、物と属性と特徴データとの関係を示す図である。 図44は、知識ネットワークの例を示す図である。 図45は、知識ネットワークの例を示す図である。 図46は、三角形を示す図である。 図47は、3個の点で三角形を表した知識ネットワークを示す図である。 図48は、3個の点と3個の線で三角形を表わした知識ネットワークを示す図である。 図49は、3個の線で三角形を表わした知識ネットワークを示す図である。 図50は、三角錐を示す図である。 図51は、三角錐を表わした知識ネットワークを示す図である。 図52は、目、鼻、及び口を模式化した図である。 図53は、目、鼻、及び口の間の距離を表わした知識ネットワークを示す図である。 図54は、将棋盤を表わした知識ネットワークを示す図である。 図55は、ネットワークによる対応表の実装の例を示す図である。 図56は、特徴データと属性との対応表を示す図である。 図57は、1つの特徴データと属性との対応表を示す図である。 図58は、1つの属性と特徴データとの対応表を示す図である。
 以下に、本願技術の一実施形態の説明をする。以下の説明は、あくまでも一実施形態の説明であり、本願技術の範囲を制限するものではない。
 図1の左側の図が、従来技術の知識ベースである。この図では、英語、日本語、中国語などの言語の中に従来技術の知識ベースが含まれる。従来技術の知識ベースは、言語の単語を保持しているので、言語と重なる部分が必ずある。従来技術の知識ベースは、言語との共通部分をなくし、言語の外側に生成することはできない。
 また、現実の世界の中に犬や蛇などの対象物があり、現実の世界の中の対象物が言語の中の単語と直接つながっている。対象物は単語ではない。従来技術の知識ベースでは、言語内の単語で知識ベースが構成されている。従来技術の知識ベースは、言語の中に含まれる。図1では、単語「犬」は、データの源である現実の世界の対象物の犬に直接対応づけられている。
 さらに、言語の中において、単語「犬」は対象物である犬を識別するだけでなく、対象物である犬の性質、特徴、意味あるいは概念を単語自身が直接含んでいる。「犬」という単語だけで、哺乳類、4本足など対象物である犬が持つ特徴、性質、意味あるいは概念がわかる。単語は、言語の中でだけで存在し、単語自身がその性質、特徴、意味あるいは概念を直接含んでいる。したがって、言語の中にある単語は、その単語だけでその単語の性質、特徴、意味あるいは概念を直接表わしている。現実の世界と言語とは、共通部分がない。そして、現実の世界の外に言語がある。対象物は、現実の世界の中だけにある。言葉や単語は、言語の中だけにある。言葉や単語は、対象物や対象物が持つ属性を直接識別する。さらに、言葉や単語は、その言葉や単語自身の意味を直接含んでいる。
 図1の右側の図が、本願技術の一実施形態の知識ベースである。この知識ベースは、言語に含まれず、言語との共通部分もない。この知識ベースは言語の外にある。この知識ベースは、現実の世界の外にある。さらに、この知識ベースは、現実の世界と共通部分もない。この知識ベースでは、現実の世界の中の対象物その物から直接発せられた映像や音などの情報から生成された特徴データが、知識ベース内に格納され保持される。たとえば、単語ではない対象物の犬から直接発せられ、取得された犬の映像から生成された特徴データ(画像データ)が、知識ベースに格納され保持される。
 言語内の単語が知識ベースシステムに入力されると、特徴抽出部によってその単語から識別データが生成され、知識ベースに格納され保持される。識別データは、単語ではない対象物から直接発せられた情報からは生成されず、言語内の単語から生成され発せられた情報から生成される。また、特徴データは、言語内の単語からは生成されず、対象物から直接発せられた情報から生成される。
 現実の世界の中の対象物から直接発せられた映像や音などの情報から特徴データが生成され、知識ベースに格納される。対象物は単語ではない。また、知識ベース内に属性が生成され、格納された特徴データがその属性とつながる。さらに、知識ベース内に物が生成される。単語ではない対象物から直接発せられた情報を受け取り、受け取った情報から入力データが生成され、入力データから特徴データが生成され、生成された特徴データと属性がつながり、さらに、その属性と生成された物とがつながる。知識ベース内では、特徴データとつながる属性と、物とのつながりは、知識ベースシステムによって作られる。
 この知識ベース内では、特徴データ同士は直接つながらない。同じ属性につながる特徴データ同士でも、各特徴データは、それぞれが一旦属性につながり、その属性を介して他の特徴データとつながっている。識別データも同様で、識別データ同士は直接つながらない。同じ属性につながる識別データ同士でも、各識別データは、それぞれが一旦属性につながり、そのつながっている属性を介して他の識別データとつながっている。特徴データと識別データも直接つながらない。同じ属性につながる特徴データと識別データでも、特徴データは、一旦属性につながり、そのつながっている属性を介して識別データとつながっている。
 物、属性および特徴データについて、(1)物同士だけを直接つないだ図形、(2)物と属性とだけを直接つないだ図形、(3)属性と特徴データとだけを直接つないだ図形の3種類の図形を作る。この3つの図形を組み合わせて情報を体系化し、知識とする。物や属性そのものには意味はない。図2Aの第1階層の図形で、属性は、特徴データに直接つながることにより、意味を持つ。意味は概念でもある。図3の第2階層の図形で、物は、属性と直接つながることにより、物の性質、特徴、意味または概念が定まる。図4の第3階層の図形で、物と物がつながることにより、物と物との関係が表わされる。
 第1階層内において、属性と特徴データとは、物、他の属性、識別データ、および他の特徴データを介さずにつながっている。このような属性と特徴データとのつながり方を、属性と特徴データとが直接つながると記述する。第1階層内において、属性と識別データとは、物、他の属性、他の識別データ、および特徴データを介さずにつながっている。このような属性と識別データとのつながり方を、属性と識別データとが直接つながると記述する。同様に、第2階層内において、物と属性とは、他の物、他の属性、識別データ、および特徴データを介さずにつながる。このような物と属性とのつながり方を、物と属性とが直接つながると記述する。同様に、第3階層内において、物と物とは、他の物、属性、識別データ、および特徴データを介さずにつながっている。このような物と物とのつながり方を、物と物とが直接つながると記述する。さらに、物と識別データとが、他の物、属性、他の識別データ、および特徴データを介さずにつながることがある。このような物と識別データとのつながり方を、物と識別データとが直接つながると記述する。同様に、物と特徴データとが、他の物、属性、識別データ、および他の特徴データを介さずにつながることがある。このような物と特徴データとのつながり方を、物と特徴データとが直接つながると記述する。
 また、図2Bの第1階層の図形で、属性は、識別データと直接つながることにより、その識別データで識別される。識別データだけが直接つながる属性が物につながっていると、識別データによって、識別データが直接つながる属性が取得でき、取得された属性に直接つながる物が取得できる。識別データによって、識別データに直接つながる属性とその属性に直接つながる物とが取得できるだけである。本願技術の一実施形態の知識ベースの外にある言語と、本願技術の一実施形態の知識ベース内の物及び属性とを対応づけるためだけに識別データは用いられる。
 ここで、属性識別子と識別データとは、いずれも、属性の識別情報であり、かつ、コンピュータ(知識ベースシステム)による識別を支援する情報である点で共通する。しかしながら、属性識別子は属性に対応づけられる情報(データ)であり、識別データは言葉あるいは単語に対応づけられる情報(データ)である点で相違する。また、特徴データと識別データとは、属性の具体例(インスタンス)という点で共通する。しかしながら、特徴データは属性の実体であり、識別データはコンピュータ(知識ベースシステム)が属性を識別するためのデータである点で相違する。さらに、言葉および単語は、人間による識別を支援する情報(データ)である。言葉および単語の概念的な集まりが、「言語」あるいは「言語の世界」である。
 この3つの図形を組み合わせて情報を体系化し、知識とする。物と属性とだけを直接つなぎ対応づけた図形が、図3に示される第2階層の図形である。この階層では、1つの物に対して0個以上の属性が直接対応づけられる。1つの物に直接対応づけられる属性の数は、1つに限定されない。この階層では、物同士はつながらない。物だけを直接つないで対応付けた図形が、図4に示される第3階層の図形である。この階層では、物と属性とはつながらない。この物同士だけのつながりは、直線、環状、木構造、ネットワーク構造など、さまざまなつながり方ができる。
 属性と特徴データとだけを直接つなぎ対応付けた図形が、図2Aに示される第1階層の図形である。属性そのものは、意味を直接持っていない。属性と特徴データとが直接つながることにより、属性が意味を持つ、あるいは属性の意味が生成される。属性と特徴データとが直接つながることにより、概念が生成されると解釈することもできる。たとえば、裏返しになったシャツの映像から生成された特徴データが属性に直接つながり、「裏返し」という意味あるいは概念が生成される。
 1つの属性が、複数の特徴データと直接つながることがある。このようにすると複数の特徴データから1つの意味あるいは1つの概念を生成することができる。たとえば、ロマネスク様式を表わす属性は、ロマネスク様式の複数の建物の映像から生成された複数の特徴データが直接つながる。1つの属性に直接対応づけられる特徴データの数は、1つに限定されない。
 1つの特徴データが複数の属性と直接つながることがある。1つの特徴データに直接対応づけられる属性は、1つに限定されない。このようにすると、1つの特徴データのさまざまな側面に対応する概念である属性をそれぞれ生成できる。たとえば、焚き火の映像の特徴データがある属性に直接つながり、焚き火の色という概念が生成される。また、焚き火の映像の特徴データが別の属性に直接つながり、焚き火の暖かさという概念が生成される。このように考えると、実物大の焚き火の映像を見て暖かさを感じることがあることを、説明できる。
 物そのものは、意味を持っていない。物に直接つながり、対応づけられた属性によって物の性質、特徴、意味あるいは概念が定まる。
 第1階層の上に第2階層がつながり、第2階層の上に第3階層がつながる。3つの階層がつながった図が、図5である。例えば、図5に示されるように、この3階層構造を人間の脳に対応させて考えると、1つの属性が1つの神経細胞に対応し、1つの物が1つの神経細胞に対応する。目、舌、鼻などの感覚器官から形、味、香などの、現実の世界の中の対象物である物から直接発せられた、情報を受け取る。脳内の特徴抽出部は、受け取った情報から特徴を抽出し、抽出された特徴を脳内の記憶領域に特徴データとして格納し、保持する。形、香、味などさまざまな特徴が特徴データとして保持される。脳内の属性領域の属性である神経細胞が特徴データとつながり、意味あるいは概念が生成される。属性が、脳内の物領域の物である神経細胞とつながることにより、物の性質、特徴、意味あるいは概念が定まる。
 1つの特徴データが複数の概念を生成することがある。炎の映像の特徴データが知識ベース内にあるとする。この特徴データは、ある属性とつながり、炎の色という概念を生成する。また、同じ特徴データは、別の属性とつながり、暖かさという概念を生成する。暖炉で火が燃える絵を見ただけで暖かさを感じることがあるが、このように考えると説明できる。
 1つの属性が複数の特徴データとつながってできた概念もある。酸味という特徴データとつながった属性があるとする。レモンの映像の特徴データがこの酸味の属性とつながり、酸味という概念を生成する。青いりんごの映像の特徴データと上述の酸味という属性とがつながることもある。レモンを見るだけで酸味を感じて唾液が出ることがあるが、このように考えると説明できる。このように、異なる複数の特徴データが、1つの同じ属性につながり、1つの概念を生成することがある。
 前述の3階層構造は、単語から生成された識別データを使わずに知識を表現し、蓄積し、その知識を体系化することができる。言葉を持たない動物でも、この方法を使えば知識を体系的に保持し、推論などの知識処理ができる。
 言葉が使えるならば、文字で表わされた単語の映像、又は音声で表わされた単語の音などから生成された識別データを保持し、その識別データと属性とをつなぎ、対応づけることもできる。識別データと直接つながった属性に特徴データが直接つながっていれば、識別データの元になった言語内の単語と、その属性につながった特徴データとが、その識別データとその属性を介して間接的に対応づけられる。識別データと直接つながった属性に特徴データが直接つながっておらず、その属性に直接つながる物があれば、その識別データの元になった言語内の単語と、その属性に直接つながった物とが、その識別データとその属性を介して間接的に対応づけられる。もちろん、識別データが直接1つの物につながることも可能である。
 しかし、同じ単語の文字の映像から生成された識別データ、又は同じ単語の音声から生成された識別データを1つの同じ属性に直接つなぐことにより、1つの属性が複数の識別データを束ねて代表する方が便利である。音声から生成された識別データが直接つながる属性に、文字の映像から生成された識別データが直接つながっていれば、他の属性を取得することなく、文字の映像から生成された識別データをすぐに取得できる。音声から文字への変換がすばやく行える。たとえば、音声から生成された識別データが直接つながる属性を取得し、次に、その属性につながる文字の映像から生成された識別データを取得できる。
 このように、識別データは、識別データの元になった言語内の単語と、知識ベース内の物や属性とを対応づける。しかし、映像や音声などで表わされた単語の識別データと、属性や物を対応づけているだけである。識別データは、性質、特徴、意味あるいは概念を直接表わす、あるいは、生成するものではなく、知識ベース内で属性や物を識別するだけである。
 対象物そのものから直接発せられる情報を感覚器官を使って受け取り、受け取ったデータから抽出された特徴である特徴データが性質、特徴、意味あるいは概念の源である。単語から生成された識別データと物とを直接つなぐこともできる。
 特徴データまたは識別データが直接物につながる場合は、それらによって物が直接識別される。ある特徴的な特徴データまたは識別データによって物を素早く識別したい場合に、特徴データあるいは識別データと物とを直接つなげばよい。この場合、物に直接つながる特徴データまたは識別データは1つに限られず、複数の特徴データまたは識別データが物に直接つながってもよい。物に直接つながる特徴データまたは識別データが、同時に属性に直接つながり、その特徴データが、意味や概念を生成することもできる。
 部屋の中に人がいる映像から生成された特徴データがあるとする。この特徴データが属性とつながり、その属性がある物につながっているとする。また、その物が人という属性とつながっているとする。この属性は、たとえば人の映像から生成された特徴データとつながっている。
 前述の特徴データと属性と物とのつながりは、「人が部屋の中にいる」ということを表わす。「人が宇宙の中にいる」という表現は、いまひとつ意味がはっきりしない。これは、「宇宙の中にいる」を表わす具体的な特徴データが無く、属性が1つの特徴データともつながっていないからだと考えることができる。「宇宙の中にいる」という概念が生成されていないからだと説明することもできる。もちろん、「人が部屋の中にいる」という特徴データと星空の映像とから生成された特徴データをその属性とつなぐことによって、「宇宙の中にいる」という概念を仮に生成することもできる。類推という思考方法が、これに相当する。
 特徴データと属性とを指定し、指定された特徴データと属性とをつなぐように知識ベースシステム外から知識ベースシステムの学習部へ指示を出し、学習部に指定された特徴データと指定された属性とをつながせて学習を行わせることができる。
 人間の脳は、内出血などにより脳の一部が働かなくなっても、脳の他の部位が働かなくなった部位の代わりに働くことがある。これは、働かなくなった神経細胞の代わりに、他の神経細胞を物につなぎ変えることにより、他の神経細胞が同じ役割を担うと考えると説明できる。
 前述の3階層構造は、この脳の振る舞いを真似ることができる。物および属性が神経細胞に相当する。物および属性それ自体には意味がなく、物および属性は、物や属性の意味を持たない単なる識別子で識別されるだけである。別の物や属性につなぎかえても、つなぎかえる前と同じ対応付けをあらわすことができる。
 単一の形式の識別子で、すべての物を識別することができる。単一の形式の識別子で、すべての属性を識別することができる。単一の形式の識別子で、すべての特徴データと識別データとを識別することができる。単一の形式の識別子で、すべての物とすべての属性とすべての特徴データと識別データとを識別することもできる。2種類の形式の識別子でも、3種類の形式の識別子でもかまわない。4種類以上の形式の識別子を使うことも可能であるが、仕組が複雑になるだけである。
 2つ以上の神経細胞を1組にして、1つの属性や1つの物に対応させる方法もあり得る。1つの属性や1つの物に対応する複数の神経細胞のうち少なくとも1つにつながっていれば、全体として正常に動作する。
 識別データと特徴データの両方を、1つの属性につなぐことができる。識別データだけとつながる属性と、特徴データだけとつながる属性の2種類の属性だけを作ることもできる。
 識別データだけにつながる属性と特徴データにだけつながる属性とが、1つの物につながっているとする。たとえば、耳で聞いた単語の音声から生成された音声の識別データと一致する識別データが知識ベース内にあると、その一致する特徴データと直接つながる属性を取得し、その属性に直接つながる物を取得する。さらに、その物に直接つながる他の属性を取得し、取得された属性に直接つながっている特徴データを取得すれば、その単語が表わす物の性質、特徴、意味あるいは概念を知ることができる。これは、連想に相当する働きである。また、1つの単語から識別データが生成され、生成された識別データが1つの属性に直接つながり、その属性をいくつかの異なる物に直接つなぐと、1つの識別データで異なる物を表わせる。これは多義語に相当する。
 識別データと特徴データとが同じ属性に直接つながることも可能である。この場合、識別データに直接つながる属性を取得し、取得された属性に直接つながる特徴データを取得する。取得された特徴データは、その識別データの元になった単語が直接含む性質、特徴、意味または概念を表わす。
 ひとつの単語から生成された識別データが複数の異なる属性に直接つながると、ひとつの単語から生成された識別データが、複数の意味あるいは概念に対応づけられる。これも多義語に相当する。識別データが物に直接つながっていると、識別データによって物を直接選択し、識別できる。属性を取得することなく物を取得できるので、より早く物を取得できる。
 重要なことは、本願技術の一実施形態の知識ベースシステムを使うと、識別データなしで、知識を蓄積し、認識や推論などの知識処理ができるということである。
 言葉を用いない動物は、外界から受けた入力情報を、文字や音声などの単語から生成された識別データを用いないで蓄積し、蓄積された情報をもとにして出力情報を生成する仕組みを持っていると想像される。これを、本願では第4の情報処理と呼ぶ。第4の情報処理は、第2の情報処理と第3の情報処理との間に位置づけられる。本願技術の一実施形態の知識ベースシステムは、第4の情報処理を行うことができる。
 第2の情報処理と第3の情報処理との間に、大雑把ではあるが、第3の情報処理よりも少ない処理で、可能性のある結論を得ることのできる情報処理の仕組があると考えられる。本願では、これを第4の情報処理と呼ぶ。本願技術を使う一実施形態の知識ベースシステムでは、3階層構造で表現された知識を構築し、第4の情報処理が可能になる。
 物と属性と識別データとだけから成る知識ベースを使って、知識を蓄積し、知識処理をすることもできる。この場合の知識ベースシステムは、性質、特徴、意味あるいは概念を含まない。物や属性は、識別データだけで識別され、特徴データに対する処理を行わないので、より速く処理ができ、処理の負荷も小さくできるという特徴がある。知識ベースが特徴データを含んでいても、物と属性と識別データとだけを使って推論などの知識処理を行うことは可能である。
 例えば、東京の都心を餌場にするカラスは、深夜や早朝に出されたゴミ袋を破り、食べ物をあさっている。袋からゴミが散乱し、美観を損なっている。人間は、袋の色を変え中身を見えにくくしたり、袋にカラスの嫌がる成分を加えたりして対策を行っている。しかし、カラスは、人間が行った対策を乗り越えて袋の中のゴミをあさり続けている。カラスが学習をして人間と知恵比べをしているように見える。カラスの例で見られるような学習を、第3の情報処理で行っているとは考えにくい。第3の情報処理より簡便な方法で、学習を行っていると考えるのが自然である。本願では、これを第4の情報処理と呼ぶ。前述の3階層構造で表現された知識を構築すると、第4の情報処理が可能になる。
 ここまで、第4の情報処理に関する仮説を説明してきた。次に、コンピュータシステムを使って、この仮説の情報処理を行う方法を説明する。
 図面を参照しながら、コンピュータシステムを使った、本発明のより具体的な実施形態の一例を以下に説明する。
 図6は、本願技術の一実施形態である知識ベースシステム1000である。図6に示されるように、入力装置として、カメラ、マイク、赤外線センサ等がコンピュ-タに接続されている。そして、図7に示されるコンピュータが、図6の知識ベースシステム1000で使われている。
 図7は、コンピュータの概念図である。図7に示されるコンピュータは、入力装置1と、演算装置(Central Processing Unit:CPU)2と、通信装置3と、外部記憶装置5と、主記憶装置6と、補助記憶装置7とを備える。
 演算装置2は、例えば、補助記憶装置7に指示を出し、補助記憶装置7に保存されているプログラム9と、プログラム9が使うデータ10とを主記憶装置6に読み込む。また、演算装置2の指示で、主記憶装置6内のプログラムやデータを補助記憶装置7に保存する。演算装置2は、外部記憶装置5に指示を出し、外部記憶装置5内に保存されているデータ12やプログラム11を主記憶装置6に読み込む。また、演算装置2の指示で、主記憶装置6内のプログラムやデータを外部記憶装置5に保存する。
 入力装置1は、キーボード、マウス、画像を読み込むスキャナ、カメラ、マイク、温度センサ、圧力センサなどが含まれる。画像、音、温度などのアナログデータは、デジタルデータに変換される。出力装置8は、平面ディスプレイなどの表示装置、プリンタ、音を出力する装置(スピーカ)、リレー接点、機器を制御する装置などが含まれる。
 演算装置2は、通信装置3に指示を出し、ネットワーク4を介して、図外の他のコンピュータや図外の装置と通信をする。演算装置2は、補助記憶装置7のプログラム9又は外部記憶装置5のプログラム11を主記憶装置6に読み込むと、読み込んだプログラム9、11に記述された手順で処理を行う。プログラム9、11には、演算のほか、入力装置1からの入力、出力装置8への出力、通信装置3を使った通信、主記憶装置6とのデータの読み書き、補助記憶装置7や外部記憶装置5とのデータの読み書きの処理手順が含まれる。
 知識ベースプログラム13は、本願技術を使った論理演算や知識の集まりや知識ネットワークの処理を行うプログラムである。リレーショナルデータベース14は、補助記憶装置7又は外部記憶装置5に表形式のデータ10、12を作成し、作成された表に対してデータを追加・検索・参照・更新・削除の処理を行う。知識ベースプログラム13は、リレーショナルデータベース14を利用して、表に対してデータを追加、検索、参照、更新、削除する。
 図8は、本発明の一実施形態に係る知識ベースシステム1000の機能ブロック図である。図8に示される各機能ブロックは、例えば、図4に示される補助記憶装置7に知識ベースプログラム13として記憶されている。補助記憶装置7のプログラム9内に知識ベースプログラム13があり、その知識ベースプログラム13内に、例えば、データ入力部1010、特徴抽出部1020、データ比較部1030、データ格納部1040、学習部1050、検索部1060、演算部1070、及び出力部1080として機能するプログラムがある。プログラム9が、主記憶装置6に読込まれ、演算装置2によって実行される。データ入力部1010及び出力部1080も主記憶装置6に読込まれ、演算装置2によって実行される。
 データ入力部1010は、以下のようにして自動的にカメラで映像データを取得し、マイクで音データを取得する。例えば、赤外線センサによって人や動物がカメラの前にいると判断されると、それがトリガとなってカメラで映像データを取得し、マイクで音データを取得する。また、人間がマウスクリックなどの操作をすることを起因として、カメラで映像データを取得し、マイクで音データを取得してもよい。
 特徴抽出部1020は、データ入力部1010に入力された入力データから、特徴データまたは識別データを生成する。
 データ比較部1030は、特徴抽出部1020で抽出された特徴データ(又は、識別データ)と、既にデータ10(又は、データ12。以下同じ。)に記憶されている特徴データ(又は、識別データ)とを比較する。
 データ格納部1040は、特徴抽出部1020で新たな特徴データ又は識別データが生成された場合に、当該新たな特徴データ又は識別データをデータ10に格納する。また、データ格納部1040は、新たな属性の属性識別子を生成し、当該新たな特徴データ又は識別データと対応付けてデータ10に格納する。さらに、データ格納部1040は、新たな物の物識別子を生成し、当該新たな属性の属性識別子と対応付けてデータ10に格納する。
 なお、データ格納部1040は、実際には、新たな特徴データ又は識別データをデータ10に格納するように、リレーショナルデータベース14に依頼する。データ10にアクセスする他の構成要素(検索部1060、演算部1070等)についても、リレーショナルデータベース14に対して、データの追加、検索、参照、更新、削除等の処理を依頼し、処理結果をリレーショナルデータベース14から取得する。しかしながら、以降の説明では、簡単のためにリレーショナルデータベース14の処理に関する記述を省略する。
 以下に、外部から取得した入力データに基づいて、特徴データ又は識別データを新たにデータ10に登録する際のデータ入力部1010、特徴抽出部1020、データ比較部1030、及びデータ格納部1040の動作を説明する。
 データ入力部1010は、対象物から直接発せられた映像データや音データなどの入力データを取得する。データ入力部1010によって取得された映像データ又は音データなどの入力データは、特徴抽出部1020で特徴が抽出され、特徴データまたは識別データになる。特徴データまたは識別データは、いくつかの処理を経たあと、データ10にある知識ベースに格納される。
 具体的には、特徴抽出部1020は、データ入力部1010から取得した入力データから特徴データを抽出し、抽出した特徴データをデータ比較部1030に渡す。データ比較部1030は、すでにデータ10に格納されている特徴データと渡された特徴データとを比較し、同じ特徴データがあるかどうかを調べる。
 同じ特徴データがない場合、データ格納部1040は、その特徴データを知識ベースに格納し、知識ベース内に属性を生成し、格納された特徴データと生成された属性とを直接つなぐ。さらに、データ格納部1040は、物を生成し、生成された物を生成された属性と直接つなぐ。また、同じ識別データがない場合、データ格納部1040は、生成された識別データを知識ベースに格納し、知識ベース内に属性を生成し、格納された識別データと生成された属性とを直接つなぐ。さらに、データ格納部1040は、物を生成し、生成された物を生成された属性と直接つなぐ。
 いくつかの特徴データが直接つながったひとつの属性は、つながったすべての特徴データを束ねて集約することにより、つながったすべての特徴データを代表し、性質、特徴、意味あるいは概念を表わしている。特徴データがひとつだけつながったひとつの属性も、その特徴データの性質、特徴、意味あるいは概念を代表し表わしている。属性につながる特徴データは、ひとつに限定されない。
 いくつかの識別データだけが直接つながったひとつの属性は、つながったすべての識別データを束ねて集約することにより、つながったすべての識別データを代表している。属性につながる識別データは、ひとつに限定されない。
 上記の処理を、コンピュータに実行させる場合の具体例を、図9及び図10を参照して説明する。なお、図9は、属性識別子と特徴データとの対応表の例を示す図である。図10は、物識別子と属性識別子との対応表の例を示す図である。
 図9に示される属性識別子と特徴データとの対応表には、属性識別子と特徴データの識別子(この例では、特徴データが格納されているメモリアドレス)とが対応付けて保持されている。つまり、本明細書中の「属性」とは、図9に示されるように、属性識別子と、当該属性識別子に対応付けられた特徴データとを含む。
 なお、属性識別子は、属性そのものを表す言葉ではなく、かつ、それ自体で意味を持たない記号(この例では、数字列)で構成される。また、特徴データは、当該属性の意味内容を表すデータであって、例えば、当該属性識別子が識別する属性の形、音、香、味、色、圧力、温度、長さ、座標値、及び面積の少なくとも一つを表すデータである。
 さらに、図示は省略するが、図9には、属性識別子と、当該属性識別子に対応付けられた識別データ(又は、その識別子)とを保持してもよい。識別データは、当該属性を表す言葉から生成されたデータである。
 また、図9を参照すれば明らかなように、1つの属性識別子には複数の特徴データ(又は、識別データ)が対応付けられることがあり、1つの特徴データ(又は、識別データ)は異なる属性識別子に対応付けられることがある。
 図10に示される物識別子と属性識別子との対応表には、物識別子と属性識別子とが対応付けて保持されている。なお、物識別子は、物そのものを表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される。つまり、本明細書中の「物」とは、物識別子と、当該物識別子に対応付けられた0以上の属性識別子の集合とで表される。
 まず、データ格納部1040は、特徴抽出部1020で抽出された新たな特徴データ(又は、識別データ。以下同じ。)をデータ10に格納した後、新たな属性識別子を生成する。このとき、データ格納部1040は、図9に既に登録されている属性識別子と重複しないように、新たな属性識別子を生成する。そして、データ格納部1040は、新たに生成した属性識別子と、データ10に格納した特徴データの識別子とを対応付けて、図9に示される属性識別子と特徴データとの対応表に登録する。
 次に、データ格納部1040は、新たな物識別子を生成する。このとき、データ格納部1040は、図10に既に登録されている物識別子と重複しないように、新たな物識別子を生成する。そして、データ格納部1040は、当該物識別子と、上述の属性識別子とを対応付けて、図10に示される物識別子と属性識別子との対応表に登録する。
 一例として、データ10内に未使用の物識別子を保持しておき、当該未使用の物識別子の中から新たに使用する物識別子を取得するようにしてもよい。また、データ10内に未使用の属性識別子を保持しておき、当該未使用の属性識別子の中から新たに使用する属性識別子を取得するようにしてもよい。さらに、データ10内に未使用の特徴データの識別子や未使用の識別データの識別子を保持しておき、当該未使用の特徴データの識別子や未使用の識別データの識別子の中から新たに使用する特徴データの識別子や識別データの識別子を取得してもよい。属性識別子、物識別子、特徴データの識別子、及び識別データの識別子を、共通の同じ形式にすると仕組みが単純になる。
 学習部1050は、外部から取得した情報に基づいて、図9及び図10に示される物識別子、属性識別子、及び特徴データの識別子(識別データの識別子)の関係を整理する。検索部1060は、データ比較部1030又は学習部1050の指示に従って、図9及び図10に示される対応表を検索する。これらの具体的な処理内容は、後述する。
 演算部1070は、データ10に記憶された知識ベースに対して論理演算を行う。より具体的には、少なくとも一つの物識別子が演算の対象として指定されると、当該物識別子に対応付けられた属性を対象として論理演算を行う。論理演算の具体例としては、例えば、AND演算、OR演算、NOT演算、NAND演算、NOR演算、共通度の算出、非共通度の算出、類似度の算出、及び非類似度の算出が挙げられる。これらの具体的な処理内容は、後述する。
 出力部1080は、学習部1050の学習結果、及び演算部1070の演算結果等を、出力装置8に出力するデバイスドライバとして機能する。
 なお、以降の説明においては、「物」及び「属性」を処理対象として説明する。しかしながら、知識ベースシステム1000における実際の処理では、当該物を識別する物識別子、及び当該属性を識別する属性識別子が処理対象となる。
 例えば、「物と属性とがつながる」とは、物識別子と属性識別子とを対応付けて、図10に示される物識別子と属性識別子との対応表に登録することを指す。また、「属性につながっている物を取得する」とは、属性識別子に対応付けられた物識別子を取得することを示す。さらに、「物を生成する」とは、新たな物識別子を生成することを指す。上記の例は、一例であって、他の同様の記載についても同様に解釈するものとする。
 本実施形態では、ソフトウエアを使ったコンピュータシステムで実施する例を示した。プログラムという情報で記載された処理手順は、ハードウエアに置き換えることが可能である。したがって、本願技術を集積回路、プロセッサのような演算装置として実施するもとも可能である。
 第4の情報処理に関する前述の仮説を、コンピュータを使って実施する方法を説明する。以下の内容は本願技術の一実施形態である。
 第4の情報処理について、(1)知識の形式、(2)知識の演算、(3)知識の集まりと知識ネットワーク、(4)知識の集まりと知識ネットワークの利用方法の、4つの面から順に説明する。最初に知識の形式について説明する。
 従来技術である第3の情報処理では、話し言葉や文字で書き表された言葉、つまり単語の並びという形式で知識を表現する。現在の人間のような言葉を持っていない動物では、単語の並びという形式の知識を使えない。このような動物では第3の情報処理はできないと考えられる。
 第4の情報処理における(1)知識の形式について考える。知識ベースシステムは、知識を扱う情報システムなので、知識ベースシステムの情報の形式は、知識の形式でもある。第4の情報処理では、知識の基本単位を物とする。1つの物は1つの知識である。物は、石や山などの具体的な物だけではなく、寒さ、大きさ、WEBページ、音などのような抽象的な物も、物に含まれる。
 物は、あらかじめ定まった性質である属性を持つことができる。1つの物が持つ属性は、1つに限定されず、0個以上の属性を持つことができる。0個以上の属性の集まったものを属性の集合と呼ぶ。論理演算は、集合に対する演算という面がある。属性を論理演算する場合に、1つの物が持つ属性全体を1つの属性の集合と捉えると便利なことがある。1つの属性の集合は、0個以上の属性を持つ。物は、付属情報として属性を持つ。あるいは物は、付属情報として属性の集合を持つ。物が属性を持つとは、属性そのものを持つこと以外に、属性へのポインタを持つことも含まれる。同様に、属性の集合を持つとは、属性の集合そのものを持つこと以外に、属性の集合へのポインタを持つことを含む。
 物が持つ属性を、単語を使わずに表現する方法を以下に示す。最初に座標軸を使って説明する。座標軸を使えば直感的に理解でき理解しやすくなると思われるため、座標軸を使った説明をする。したがって、座標軸をつかった表現は、この一実施形態にとって、本質的なものではない。あくまで、理解しやすくするための例である。
 図11は、X軸とY軸とが直角に交わっていて、平面上の図形を表現できる。X軸、Y軸、Z軸の3つの座標をそれぞれ直角に交わらせると、三次元の立体を表わすことができる。X軸、Y軸、Z軸を直角より小さい角度で交わらせると図12のようになり、平面で3つの座標を表現できる。座標軸の交わる角度を更に小さくすると、より多くの座標軸を平面で表現できる。
 図13は、一実施形態において、属性を座標軸に対応させた例である。図13では、3次元の座標軸で属性を表現している。1つの座標軸で1つの属性を表している。座標軸1で「高い」という属性を表現し、座標軸2で「塩辛い」という属性を表現し、座標軸3で「甘い」という属性を表現する。
 なお、説明を分かりやすくするために、属性を座標軸に対応させているだけである。属性を座標軸に対応させることは、この実施形態にとって本質的ではない。また、本実施形態の説明を分かりやすくするために、図13では、座標軸1、2、3を直交させているに過ぎない。どのような角度で座標軸が交わっているかも本実施形態にとって本質的ではない。説明を容易にするための例示である。
 通常、物は1つ以上の属性を持っている。図13の例では、属性が座標軸に対応づけられる。そして、属性は、座標軸の識別子と真であるか偽であるかを表わす真偽値の組で表わされる。真偽値は、真であるか、偽であるか、偽のどちらでもないという3種類の値のどれかを持つことができる。例えば、真の値を「1」、偽の値を「-1」、真でも偽でもない場合の値を「0」とする。
 物の属性である各座標軸において、真偽値として「1」を持つ物は、座標軸で表わされる属性を持つ。同様に、「-1」を持つ物はその属性を持たず、「0」を持つ物はその属性によって特徴付けられないことを表す。真か偽かわからない場合、すなわち不定の場合に真偽値を「0」にすることもできる。属性を識別する1つの属性識別子と1つの真偽値との組が、1つの属性となるようにするのが自然である。「1」、「0」、「-1」という値の代わりに真偽値を、真偽値を表わす識別子とすることもできる。“真”、“偽”、“真でも偽”でもないという3種類の識別子のいずれかを真偽値の値とすることもできる。例えば、“真”を「20005」、“偽”を「20006」、“真でも偽でもない”を「20007」という識別子にすることもできる。
 属性が真偽値を持たないようにすることもできる。物がある属性を持つ場合、その属性の真偽値を真とすることもできる。一方、物がある属性を持たない場合は、その属性の真偽値を偽とする方法がある。また、物がある属性を持たない場合は、真偽値を偽または不定とする方法もある。不定とは、真であるか偽であるか定まっていないことである。この方式では属性の真偽値がないので、論理演算の処理が単純になる。数学の世界では、0(零)という数の発見は大きな出来事である。物がある属性を持たないという状態を、偽という真偽値を持つという形で明確に区別するのは高度な情報の持ち方かもしれない。したがって、第4の情報処理に限定した場合は、属性が真偽値を持たない方式の方が自然かもしれない。
 たとえば、「山」という物を取り上げる。「山」は、「高い」という属性を持つとする。「高い」という属性は、高い山の映像から抽出された特徴データとつながっている。通常、物は複数の属性を持つため、「山」という物は、「高い」などの属性が集まった属性の集合を持っている。このとき、「山は高い」は、正しい。「山は塩辛い」は、正しくない。「岩塩でできた山は塩辛い」は、正しい。「岩塩でできた山」は、「岩塩」が持つ属性と「山」が持つ属性を併せ持つからである。「岩塩」が、「塩辛い」という属性を持つため、「岩塩でできた山」は、「高い」と「塩辛い」という属性を持つ。
 座標軸と真偽値で表わすと、山、岩塩、岩塩でできた山という物はそれぞれ、以下のように記述できる。
(1)山の、座標軸1は1
(2)岩塩の、座標軸2は1、座標軸3は-1
(3)岩塩でできた山の、座標軸1は1、座標軸2は1、座標軸3は-1
 同じ内容を、記号を用いて次のように記述することもできる。
(1)山(1:1)
(2)岩塩(2:1、3:-1)
(3)岩塩でできた山(1:1、2:1、3:-1)
 左括弧の左は物で、括弧全体は、言葉が持つ属性の集合を表わし、括弧の中は物が持つ個々の属性を表す。括弧内の「:」の左側の数字は属性を表わす属性識別子で、「:」の右側はその属性の真偽値である。物が、ある属性によって特徴付けられない場合は、その座標軸の属性識別子と真偽値の記述とを省略する。属性を持たないとは、その属性が、物の意味に影響を与えないと考えられることである。あるいは、その物とその属性の関連についての情報が無いことを示す。
 また、物が属性を持つ場合のみ、つまり、物が持つ属性の真偽値が真の場合のみ属性を記述してもよい。この場合は、真偽値は持たない。第4の情報処理においては、この方が自然かもしれない。この方が前述の仮説により近い。物が持つ属性の真偽値が真の場合のみ、真偽値を含まない属性を記述すると次のようになる。
(1)山(1)
(2)岩塩(2)
(3)岩塩でできた山(1、2)
 属性を表わす属性識別子は、主識別子と副識別子とで構成することもできる。主識別子は、属性の基本的な性質を表わし、副識別子は程度や様子などの属性のより詳しい性質を表わす。副識別子は、副詞に相当する。前述の仮説の主属性の識別子が属性の主識別子に相当し、前述の仮説の副属性の識別子が属性の副識別子に相当する。属性が主属性だけでできている場合もある。主属性も副属性も属性で、同じデータ構造である。
 例えば、身長という属性は、背が高い、背がちょっと高い、背が低いなどのように、さらに詳しい属性を持つことができる。身長を例にすると、主属性の識別子である主識別子を基本的な属性である身長に対応付けることができる。一方、身長が高い、身長が低いという基本的属性を修飾する属性を副属性の識別子である副識別子に対応付けることができる。たとえば、人の身長を身長計で測っている映像から生成された特徴データを主属性に直接つないで対応づける。小柄な人の映像から生成された特徴データを副属性に直接つなぎ対応づける。
 主識別子を座標軸の識別子に対応付け、副識別子を座標軸上の位置や範囲に対応付けると理解しやすい。副識別子に対応する値、範囲、程度、または、状況に相当する特徴データが副属性に直接つながり対応づけられており、副属性の識別子である副識別子とその特徴データの識別子が対応づけられている。副属性に直接対応づけられる特徴データは、数値の特徴データだけではなく、音や映像など五感と呼ばれる感覚器官やセンサで得た情報から生成された特徴データもある。副属性の識別子である副識別子は、副詞のように主属性の識別子である主識別子を修飾するものである。主識別子をキーにして、その属性の主識別子に直接対応する特徴データを取得できる。副識別子をキーにして、その属性の副識別子に直接対応する特徴データを取得できる。
 全ての属性がより詳しい属性を持っているわけではないので、副属性の識別子である副識別子を必要としない場合もある。この場合は、副識別子の値の記述を省略する、あるいは、特別な値、例えば0にしておき、詳細な性質が無いことを示すことができる。例えば、詳細な性質がある場合は、主識別子の右側に「*」に続けて副識別子を記述し、詳細な性質がない場合は、「*」と副識別子の記述を省略する。
 例えば、「とても塩辛い」に対応する副識別子を9とし、「少し塩味を感じる」に対応する副識別子を1とする。さらに「少し塩味を感じる」と「とても塩辛い」の間に段階的に複数の副識別子を設けてもてもよい。式で表わすと以下のようになる。副識別子も識別子であるから、「とても塩辛い」という特徴を表わすデータ、たとえば、9という値の特徴データを指し示す識別子であればよい。この例では、直感的に判るように「とても塩辛い」という特徴を表わすデータとその副識別子を同じ文字で表わしている。
(1)山(1:1)
(2)岩塩(2*9:1、3:-1)
(3)岩塩でできた山(1:1、2*9:1、3:-1)
山をA、岩塩をB、岩塩でできた山をCで表わすと、以下のようになる。A、Bは、物の意味を表す単語ではなく、物の意味を表わさず単に物を識別する「物識別子」である。物は、1つの「物識別子」と1つの属性の集合から成ることを表している。Aの代わりに30003という識別子を使ってもよい。集合は、0個以上の属性を要素として持つことができるので、物を表わす「物識別子」が持つ属性を表わす属性識別子は、1個に限定されず、0個でも、1個でも、2個以上でもかまわない。
(1)A(1:1)
(2)B(2*9:1、3:-1)
(3)C(1:1、2*9:1、3:-1)
 Aの代わりに1000、Bの代わりに1001、Cの代わりに1002を使うと次のようになる。
(1)1000(1:1)
(2)1001(2*9:1、3:-1)
(3)1002(1:1、2*9:1、3:-1)
 さらに、真偽値が真の属性だけを記述すると次のようになる。
(1)1000(1)
(2)1001(2*9)
(3)1002(1、2*9)
 このようにすると、属性を座標軸とした空間のなかで、物を点、線、平面、立体などとして表現できる。属性を座標軸とした空間のなかで、2つの物の重なり具合や近さが、2つの物の関連性の大きさを表わす。
 このようなデータ構造を使うと、脳の神経細胞に対応づけられた物や属性をうまく表現できる。物や属性を識別する識別子で物や属性を表わすことによって、脳の神経細胞に対応づけられた物や属性のつながりを表現できる。物や属性を識別する識別子をキーにして物や属性を検索することにより、つながっている物や属性を取得する。つながっている物と属性について、物識別子と属性識別子とを対応付ける表を作る。この表を物識別子をキーにして検索すると、その物が持つ属性識別子が取得できる。属性識別子をキーにして表を検索すると、その属性とつながる物識別子が取得できる。つながっている属性と特徴データについて、属性識別子と特徴データとを対応づける表をあらかじめ作成しておく。この表を属性識別子をキーにして検索すると、その属性につながる特徴データを取得できる。この表を特徴データで検索すると、その特徴データとつながる属性識別子が取得できる。このようにして、物、属性、特徴データのつながりをまねることができる。
 本実施形態は、樹状突起等によって物や属性に対応する神経細胞同士をつなぐのではなく、物や属性をその意味を表さず単に識別するだけの識別子だけで表わし、識別子をキーにして物や属性を選択し取得することにより神経細胞のつながりをまねている。
 従来技術の情報システムにおいて、人を社員番号という識別子に対応づけることは行われていた。しかし、従来技術においては、人は、社員番号という識別子以外に年金番号のような異なる形式の複数の識別子を持つことができる。自動車は、ナンバープレートの番号や製造番号という識別子を持つ。社員番号、年金番号、自動車の番号は、それぞれ異なる形式の情報である。同じ人という物でも異なる形式の識別子を持つことができる。また、人と自動車のように異なる物は、異なる形式の識別子を持っている。
 本実施形態では、すべての物は同じ単一の形式の識別子だけを持ち、物と物識別子とは1対1に対応する。すべての属性は同じ単一の形式の識別子だけを持ち、属性と属性識別子とは1対1に対応する。さらに、真偽値を、真偽値を表す識別子とすることもできる。この場合、真偽値は、真を表わす属性と偽を表わす属性とのいずれかになる。真を表わす属性は、真を表わす特徴データとつながり、偽を表わす属性は、偽を表わす特徴データに対応づけられる。属性の主識別子である主属性の識別子、属性の副識別子である副属性の識別子、真偽値の識別子を含む全ての識別子も物識別子と同じ形式に限定できる。
 外部から情報を受け取ると、受け取った情報から特徴を抽出する。抽出された特徴を特徴データとして保持する。保持された特徴データと物識別子や属性識別子が対応づけられる。外部に情報を出力するときには、物や属性とつながっている識別データが取得され、取得された識別データから単語が生成され、生成された単語が出力される。日本語の「花」、英語の「flower」という単語から生成された識別データを1つの属性につなぐ。実際に咲いている花の映像から生成された特徴データが別の属性識別子に対応づけられる。そして、これら2つの属性が1つの物に対応づけられる。このようにすれば、一方の属性から物を取得し、同じ物につながっている他方の属性を取得できる。その結果、属性につながった単語の識別データや映像の特徴データを出力することができる。たとえば、花の映像の特徴データから、花という単語の識別データを取得し出力できる。
 第4の情報処理における(2)知識の演算について説明する。
 たとえば、岩塩は塩辛いかどうかを調べる方法を考える。つまり、物が、ある属性を含んでいるかどうかを調べる方法を考える。仮想のプログラミング言語であらわすと、例えば、以下のような記述で表わすことができる。
B.include((2*9:1))
 Bは、物を表わす単語または識別子で、属性の集合を持っている。引数の(2*9:1)は、属性を1つ含む属性の集合である。物の名前または物識別子が式に記述されている場合は、物が持つ属性の集合が演算対象になる。この場合は、たまたま、属性が1個の集合になっているが、属性が0個でも複数あってもよい。B.include((2*9:1))というプログラムは、Bが持つ属性の集合の中に、引数の属性と同じものがあれば、真の値を戻り値として返す。同じ属性識別子はあるが、真偽値が異なる場合は、偽の値を戻り値として返す。同じ属性識別子がない場合は、存在しないことを表わす値を戻り値として返す。存在しないことを表わす値としてNULLを使ってもよい。また、同じ属性識別子がない場合に、偽の値を戻り値として返してもよい。この演算によって、ある物が、ある属性を持っているかどうかを調べることができる。
 属性の集合(2*9:1)に名前をつけて、その名前を記述してもよい。例えば、(2*9:1)に「verySalty」という名前を付けて、B.include(verySalty)と記述することができる。
 実際のプログラムでは、includeというプログラムが次の処理をして、真または偽の値またはNULLの値を生成する。Bを比較される属性の集合を持つ物、verySaltyつまりプログラムの引数である属性の集合を、比較する属性の集合と呼ぶ。比較する属性の集合の全ての属性が、比較される属性の集合にあり、かつ、真偽値が一致している場合に、真の値を戻り値として返す。比較する属性の集合の全ての属性が、比較される属性の集合にあり、かつ、真偽値が一致していないものがある場合に、偽の値を戻り値として返す。比較する属性の集合の属性が、比較される属性の集合に1つでもない場合、比較できない属性があるという意味で、NULLを戻り値として返す。比較する属性の集合の属性が、比較される属性の集合に1つでもない場合、偽を返してもよい。NULLを返すか偽を返すかは、プログラムの設計方針に依存する。ここで挙げた戻り値およびその条件は、例示である。他の条件や戻り値の組み合わせでもよい。
 同じ属性が無い場合に、類似の属性があるかどうかを調べる方法があると便利である。すなわち、あらかじめ定められた数以上の比較する属性について、その主識別子が比較される属性の集合にあり、かつ、真偽値が一致している場合に、真の値を戻り値として返す。これは、例示であってこれ以外の条件を用いてもかまわない。
 偽とNULLとを戻り値とする条件の一例を以下に示す。あくまでも例示であって他の条件でもよい。比較する属性の集合の属性の主識別子が比較される属性の集合にあり、かつ、真偽値が一致しているものがあらかじめ定められた数より少ない場合に、偽の値を戻り値として返す。比較する属性の集合の属性の主識別子が比較される属性の集合に1つもない場合に、比較できないという意味でNULLの値を戻り値として返す。前述の条件は例示であって、適切なものであればそれら以外の条件でもかまわない。
 仮想のプログラム言語で記述すると、以下のようなプログラムになる。下記isLikeというプログラムは、類似性を判断するプログラムである。
B.isLike((2*9:1))
 同様に、B.isLike(verySalty)と記述することもできる。
 属性の副識別子が補足情報として値、値の範囲、程度、状況などを表わすようにする。属性の副識別子、つまり、副属性が特徴データである値、値の範囲、程度、状況とつながっている。主識別子を指定し、主識別子が同じで副識別子が同じかどうかを判断基準にすることもできる。副識別子に対応する特徴データである値や範囲をあらかじめ保持しておき、副識別子をキーにして値や範囲の情報を取得すれば、値を直接比較することもできる。
 身長という主属性は、たとえば190cmというように、具体的な値の特徴データとつながる副属性とつながることができる。しかし、身長が高いという属性のように明確でない属性もある。日本人男性を前提としてとして考えると、ほぼ全ての人が身長185cmを身長が高いと判断する。60%の人が身長180cmを身長が高いと判断するとかもしれない。この例のように、属性が明確な境界を持たないことはよくある。
 ファジィ集合という考え方を使うと、このような明確な境界を持たない属性をうまく表現できる。具体的な身長の範囲という特徴データの代わりに、ファジィ集合におけるメンバーシップ関数につながる副属性を用いる。メンバーシップ関数は、引数として実際の値が与えられると0から1までの範囲の値を計算する。この計算された値が程度を表わす。生成された程度があらかじめ定められた一定の値以上であれば、そのファジィ関数の副属性が真であると判断する。この場合、その主属性とそのファジィ関数と特徴データがつながった副属性とを、その物の属性とする。
 数値、音声データ、画像データ、動画データなども実際のデータに含まれる。実際のデータから生成された特徴データがファジィ関数と共に同じ属性とつながる。実際のデータは、前述のデータに限定されるものではない。例えば、顔の画像データから幅と長さとの比率を求め、その比率を引数にして、保持されたメンバーシップ関数を使って丸顔の程度を生成することができる。
 実際の値を引数にしてあらかじめ保持されたメンバーシップ関数を実行し、メンバーシップ関数で程度を生成する。生成された程度が、あらかじめ定められた一定の値以上であれば真偽値を真にし、あらかじめ定められた一定の値より小さければ真偽値を偽にしてもよい。
 図14は、一実施形態におけるファジィ集合の例である。メンバーシップ関数は、図14の横軸の値である具体的な値などのデータを与えると、図14の縦軸で示される程度を表わす0から1までの値を生成して、生成された程度を表わす値を戻り値として返す。
 明確でない属性を生成する方法として、さまざまな特徴データや識別データを1つの属性につなぐ方法がある。たとえば音声認識において、ある単語を多くの人に発音してもらい、その発音から識別データを生成する。生成された複数の識別データを1つの属性につなぐ。この属性は、その単語の音声表現を表わす。属性につながった識別データのどれかと同じ識別データが入力された音声から生成されると、入力された音声がその属性として認識される。この方法は特徴データにも使え、音声以外に画像などあらゆる情報に適用できる。
 2つの属性の集合に関して、属性がどの程度共通しているかを知りたいことがある。この共通している程度を共通度とする。例えば、2つの属性の集合に関して属性識別子と真偽値が同じである属性があるかどうかを調べ、一致する属性が1組あれば、共通度を1とし、2組あれば2とする。このように、一致する属性の組数を共通度として返すプログラムを作れば、共通度を求めることができる。属性が付属情報として重みを持っている場合、一致する属性の重みを足し合わせて共通度を求めてもよい。重みを足し合わせることも、計数することに含まれる。上記共通度の計算方法は、一例である。他の方法を用いてもよい。
 2つの属性の集合に関して、属性がどの程度一致していないかを知りたいことがある。この一致していない程度を非共通度とする。たとえば、2つの属性の集合に関して属性識別子が同じで、真偽値が異なる属性があるかどうか調べ、該当する属性が1組あれば非共通度を1とし、2組あれば非共通度を2にする。このように、該当する属性の組数を非共通度として返すプログラムを作れば、非共通度を求めることができる。属性が付属情報として重みを持っている場合、該当する属性の重みを足し合わせても非共通度を求めてもよい。上記非共通度の計算方法は、一例である。他の方法を用いてもよい。
 共通度と非共通度とは、2つの属性の集合がどの程度似ているか、どの程度違っているかを表わす尺度として利用できる。共通度を求めるプログラムにおいて、一致している属性の一覧を戻り値として返すことも可能である。同様に、非共通度を求めるプログラムにおいて、一致していない属性の一覧を戻り値として返すことも可能である。
 共通度が大きい場合は、共通する属性が多いことを意味する。非共通度が0より大きい場合は、対立する属性を含んでいる可能性を意味する。本を読んだり話を聴いたりしているときに、「おや、何か変だ」と感じることがある。この感覚は、非共通度が0より大きい場合に対応付けることができる。共通度は大きいけれど、非共通度が0でない場合は、何らかの矛盾がある可能性がある。
 AND演算は、2つの属性の集合に共通する属性を要素とする属性の集合を新たに生成する。AND演算を行うプログラムは、2つの属性の集合に関して、属性識別子が同じで、且つ真偽値が同じ属性を集め、前記集められた属性を要素とする新たな属性の集合を生成する。例えば、次のような記述になる。AND演算は積集合の演算でもある。AND演算は、例えば、(A AND B  = c = φ)のように表すことができる。ここで、cは属性を含まない属性の集合である。記号φは、属性を持たない属性の集合を表わす。
 OR演算は、2つの属性の集合の属性うち、少なくともいずれかの属性の集合に含まれる属性をすべて含む属性の集合を新たに生成する。OR演算を行うプログラムは、二つの属性の集合に含まれる属性を全て含む属性を要素とする新たな属性の集合を生成する。OR演算は、和集合の演算でもある。
 属性識別子が同じで、真偽値が異なる属性をOR演算で生成される新たな属性の集合含める方法と含めない方法とがあるが、含めない方が自然と考えられる。ある属性について一方の属性の集合ではその真偽値が真で、他方の属性の集合ではその真偽値が偽の場合、2つの属性の集合は相反する属性を持っていることになる。
 そのため、2つの属性の集合に対して非共通度を計算し、非共通度が0の場合だけOR演算を行うようにする方法もある。記号で表わすと次のようになる。aは(1:1)という属性の集合で、bは(2:1、3:-1)という属性の集合であるとする。ここで、a及びbのOR演算は、(a OR b= g)のように記述することができる。そして、gは、(1:1、2:1、3:-1)という属性の集合になる。
 NOT演算は、属性の集合に含まれる全ての属性の真偽値の値を逆にした属性の集合を新たに生成する。記号で表わすと次のようになる。aという属性の集合は、(1:1)という属性を含んでいるとする。aのNOT演算は、(NOT a = k)のように記述することができる。そして、kは、(1:-1)という属性を持っている。
 なお、上記の例では、小文字のアルファベットを属性の集合、大文字のアルファベットを物にしている。
 前述の演算方法を使えば、属性の集合に含まれる属性の数が多くても少なくても、論理演算式は変わらない。通常、物は非常に多くの属性を持っている。本技術を使えば、従来技術に比べて論理演算式が非常に単純に記述できる。
 これまでの説明で明らかなように、本実施形態では、物と物が持つ属性とを、単語で表現するのではなく、物や属性そのものの意味を持たない情報である識別子で表現している。そして、属性そのものの意味を表わさない情報である識別子で表わされた属性を要素とする属性の集合を論理演算の対象としている。
 属性の集合の要素である各属性を、それぞれ1つの座標軸に対応させる。それぞれの属性に対応する座標軸を識別する座標軸の識別子を属性識別子とし、属性識別子と真偽値との組で属性を表わす。その属性が真である場合は、属性識別子と肯定の値との組で属性を表わす。一方、その属性が真でない場合は、属性識別子と否定の値との組で属性を表わす。このように解釈すると、理解しやすいかもしれない。属性を座標軸に対応させるのは、本技術の理解を助けるのが目的である。属性を座標軸に対応させることは、必須ではない。
 属性をより詳しく表現するために、主識別子と副識別子とから成る属性識別子としてもよい。主属性の識別子が主識別子に対応し、副属性の識別子が副識別子に対応する。それぞれの属性に対応する座標軸を識別する座標軸の識別子を主識別子とし、当該属性のより詳しい特徴を示す値、範囲、程度などを表わすものを副識別子とし、主識別子と副識別子とからなる識別子と真偽値とからなる属性としてもよい。ただし、副識別を必要としない属性もある。その場合は、副識別子を持たないことを表わす特別な値、たとえばNULLのような特別な値を副識別子にしてもよい。また、単に副識別子を持たないようにしてもよい。
 これまでの説明では、副識別子を使って属性の程度を表わす方法を示した。しかし、例えば、人種によって背が高いという属性の判断基準が異なる。そのため、属性から、身長のような実際の情報を取得できるようにすることは有益である。実際の身長の数値の情報を特徴データとして保持し、身長という属性を生成し、その副属性に身長の特徴データを対応づけておけばよい。また、全身の映像から生成された特徴データを身長という属性につないでおいてもよい。身長という属性につながった特徴データをもとに、背が高いかどうかを判定し、その属性の意味を変更することができる。このようにすると、属性識別子から実際の情報が取得できる。属性識別子を検索キーにして、実際の情報、つまり特徴データが取得できる。
 上記のプログラムの例では、関数型のプログラムを想定しているのでプログラムの実行結果を戻り値として返す。しかし、関数型でないプログラムでも実施可能である。
 画像、動画、音、触覚、温度、圧力などあらゆる情報から属性を生成できる。例えば、顔の画像から面長や丸顔という属性を生成できる。画像データから顔の部分を抽出し、抽出された顔の画像データから顔の横幅と長さとの比率を計算する縦横比率計算機能を持っているとする。顔の画像データが与えられると、縦横比率計算機能を使って与えられた顔の画像データから顔の縦横比率を計算する。計算された顔の縦横比率に一番近い属性を選び、選ばれた属性の真偽値を真にする。
 本実施形態では、単語から識別データを生成して保持し、その単語から生成された識別データを属性に対応づけることはできる。しかし、知識ベースシステム内において、単語から生成された識別データは、単に物や属性を選択するために使われるだけで、物や属性の意味や概念を表すものとしては利用されない。画像、音、触覚、温度、圧力などの言葉以外の情報から生成された特徴データがつながった属性を生成し、生成された属性を含む属性の集合を論理演算することにより、例えば、画像診断システム、設備の監視システムになど利用できる。
 ある物が、他の物の属性の集合を引き継いでいることがある。また、ある物が、他の物の属性の集合を含んでいることもある。OR演算は、他の物の属性を引き継いだり、含んだりすることに対応付けられる。
 次に、第4の情報処理における(3)知識の集まりと知識のネットワークとについて説明する。
 共通する属性を持つ物を集めたものを知識の集まりという。1つまたは1つ以上の属性を指定し、指定された属性識別子を持つ物を選択する。選択された物の集まりが知識の集まりである。通常、指定された全ての属性の属性識別子を持つ物を選択するが、指定された属性のうちの一部を持つ物を選択してもよい。
 選択された回数を物ごとに記憶しておき、選択された回数が予め定められた回数以上の物を集めて知識の集まりをつくることもできる。たとえば10個の属性で検索を行った場合は、検索に使った属性の数に0.8を掛けけた値の8回以上選択された物を集めて知識の集まりをつくる。また、物と属性のつながりが付属情報としてつながりの強さの程度を表わす重みを持つ場合は、回数を記憶する代わりに選択されるたびに重みを足しあわて物ごとに重みの累計値を保持し、その累計値が予め定められた一定値を超える物を集めて知識の集まりをつくってもよい。重みを使う方法も検索された回数を使う方法も、属性を使った検索である。
 特別な場合として1個の物だけからなる知識の集まりになることがある。この場合は、検索に使った属性によって1つの物が特定され認識されたと解釈することもできる。
 ある物の集まりを生成するために使ったすべての属性だけを1つの物につなぐと、その物は物の集まりを意味する抽象的な物になる。この抽象的な物にある単語から生成された識別データがつながった属性をつなぐと、その識別データによってこの抽象的な物が識別できる。
 知識の集まりにおいて、ある物と他の物とが関係を持っていることがある。これら関係のある物同士をつなぐ。このつながり合った物の集まりが知識ネットワークである。物と物とをつなぐことで、物と物との関係を表現する。関係には、双方向につながる場合と、一方向につながる場合とがある。双方向につながる場合は、つながる2つの物を区別できないので、対等な関係になる。一方向につながる場合は、つながる2つの物を区別できる。たとえば、親子関係を一方向のつながりで表し、親である物から子である物の方向だけの一方向につなぐ。このようにすると、親である物と子である物とを区別できる。
 一方向のつながりで表わされる関係を、包含関係のように、ある物が他の物に含まれていることに対応づけることもできる。
 知識ネットワークにおいて、物と物とのつながりを追加すること、つながり方を変えること、つながりを削除することは、知識を学習することに対応づけられる。知識ネットワークに、新しく物を追加することや既にある物を削除することも、知識の学習に対応づけられる。新たな知識ネットワークを生成することも学習に対応づけられる。知識ネットワーク内の物の存在やつながりも知識である。物も知識である。
 図15は、物の包含関係を表わしている。図15に示される丸印は、ノード60である。ノード60は、物識別子を保持し、物を表わす。ノード60は、物識別子で表わされた物だけである。属性61および属性61の集合、特徴データ、識別データはノード60ではない。属性61および属性61の集合は、ノード60である物の付属情報である。物とは石とか犬のような具体的な存在だけなく、光る物やWEBページや概念のような抽象的な物も含まれる。属性61を持たないノード60も可能である。何か分からない物がある場合、その物は属性61を持たない。ノード60は、0個以上の属性61を持っている。1つの物が持つ属性全体を属性61の集合と捉えることもできる。属性61の集合は、図19に示される物と属性との一覧表に相当する。矢印62は、ノード60の関連を表わす。つまり、矢印62は、物の関連を表わす。矢印63は、ノード60と属性61とのつながりを表す。
 知識の集まりを生成する属性の持ち方には、2種類ある。1つ目の方法は、たとえば図15において、すべての物が生物という属性を持つ。また、動物、哺乳類、爬虫類、魚類を表す物が動物という属性をもつ。さらに哺乳類、人、犬を表す物が、哺乳類という属性を持つ。このように、上位概念である物を表わす属性を、下位概念である物が持つようにする。特に、下位概念の物がすべて、上位概念を表わす属性をもつようにすると、下位概念の物は、必ず上位概念を表わす属性を持つようになる。このようにすると、1つの概念を表わす属性を指定して知識の集まりを生成すると、その下位概念である物をすべて含む知識の集まりを生成できる。たとえば、動物という属性を指定して知識の集まりを生成すると、その知識の集まりには、動物とその下位概念である哺乳類、爬虫類、魚類が含まれる。
 2つ目の方法は、次のようにする。下位概念の物は、上位概念を表わす属性を持たない。属性を階層化して、属性の階層化情報を保持する。属性の階層化情報において、上位概念を表わす属性から下位概念を表わす属性へ順に並べてつなぐことにより、複数の概念を表わす属性を同じ順番にできるようにする。属性の階層情報から、ある属性以降の属性を選び、選ばれた属性を少なくとも1つ持つ物を集めて知識の集まりを生成する。属性の階層情報から、ある属性以降のすべての属性を選んで知識の集まりを生成すれば、下位概念すべてを含む知識の集まりを生成できる。ある範囲の属性を選べば、その範囲の属性を持つ知識の集まりが生成できる。しかし、知識の集まりで物と物との関係を表わすことは難しい。物と物とをつないだ知識ネットワークを作ると、物と物との関係を簡単に表わせる。
 図15のように、知識の集まりにおいて物と物とをつなぐことができる。つながり合った物を知識ネットワークと呼ぶ。例外的に、共通の属性を持たない物、つまり知識の集まりに含まれない物が知識ネットワークにつながることも可能である。端点となる1つのノードに1つ以上のノードがつながる形の木構造の他、さまざまなつながり方の知識ネットワークがある。つながりには方向のあるつながりと方向のないつながりがある。方向がある場合は、つながる2つの物に違いがあることを表わせる。方向のないつながりは、一方向ではなく双方につながっていると見ることもできる。方向のあるつながりは、矢印で表わす。方向のないつながりは線で表わす。矢印は出発点と到着点を持ち、矢印のある方が到着点で、矢印のない到着点でないない方が出発点である。出発点を矢印の始点、到着点を矢印の終点と呼んでもよい。
 木構造のように出発点である根となるノードが無い網構造の知識ネットワークも可能である。物と物とがつながっていれば知識ネットワークである。どのようなつながり方でもよい。物が1つだけ、または、0個の知識ネットワークもあり得る。神経細胞のネットワークにおいては、神経細胞同士をつないでいる樹状突起等によるつながりが矢印に相当する。
 物は、複数の知識の集まりに属すことができる。そして、物は、複数の知識ネットワークに属することができる。例えば、人間は、血縁関係という属性を持っている。出身学校のような属性も持っている。これらの複数の属性を1つの知識ネットワークで表現すると、非常に複雑な知識ネットワークになる。血縁関係を表す知識ネットワークと出身大学を表す知識ネットワークとをそれぞれ生成し、人間のノードを、血縁関係を表す知識ネットワークと出身学校を表す知識ネットワークなど複数の知識ネットワークに属すようにする。血縁関係を表す知識ネットワークでは、物であるノードを血縁関係でつなぐ。出身大学を表す知識ネットワークでは、たとえば学年であるノードをつなぐ。いくつもの知識ネットワークに分けて物と物とのつながりを表わすと、個々の知識ネットワークの構造が非常に単純になる。
 通常、物は、複数の知識ネットワークに属している。知識ネットワークでは、物同士がなんらかの関係で直接つながりあっている。共通の属性を持つ物があらかじめ定められた1つの関係だけでつながりあうことにより、知識ネットワークは、明確に体系化された知識を表わすことができる。物が知識ネットワークに属すことにより、物に関する体系化された知識を表現し、保持できる。知識ネットワークは、物だけがつながりあっている。
 第4の情報処理における、(4)知識の集まりと知識ネットワークの使い方について説明する。
 まず、知識の集まりの使い方の例を示す。指定された属性をすべて持つ物を集めた知識の集まりを生成し、その生成された知識の集まりのなかに、与えられた物があるかどうかをしらべれば、与えられた物がその知識の集まりを生成した属性を全て持っているかどうか判断することができる。
 また、知識の集まりは、物(物識別子)を要素とする集合である。したがって、知識の集まりを表わす抽象的な物を演算対象として、AND演算、OR演算、NOT演算などの論理演算が可能である。
 次に、知識ネットワークの使い方の例を示す。たとえば図15のように、ある知識ネットワーク内のノードとノードとをつなぐ矢印が包含関係を表わしているとする。出発点のノードが到着点のノードを含むとする。ノードBから矢印の逆向きに0回以上移動し、ノードAに到達できる場合、BならばAであると言う。移動回数が0の場合は、ノードAとノードBとは、同じノードである。繰り返しになるが、ノードは物を表わしている。
 図16の知識ネットワークN1において、ノードBから矢印の逆方向の経路に0回以上移動してノードAへ移動できたとする。また、ノードBが属する知識ネットワークN1とは異なる知識ネットワークN2において、ノードAから矢印の逆方向に0回以上移動して、ノードDに移動できたとする。このとき、ノードBならばノードDである可能性がある。あるいは、ノードBとノードDとに何らかの関連がある可能性がある。どの程度の可能性であるかは、経由した知識ネットワークがどの程度適切に生成されているかにも依存する。移動回数の合計が0である場合、ノードB、ノードA、及び、ノードDは、同じノードである。前述の経路が発見され、その経路のつながりが適切であると判断されると、ノードDからノードBへ1つの矢印でつなぐことができる。ノードDとノードBとを含む新しい知識ネットワークを作って、ノードDとノードBとを直接つないでもよい。
 1方向のつながりの知識ネットワークを例にしたが、双方向のつながりの知識ネットワークでも同様にできる。だだし、双方向のつながりの場合は、つながる物同士の違いが明らかでない。
 このように、ある物から出発し、別の知識ネットワークにある別の物に到着できるとき、出発点のノードである物と到着点のノードである物との間に、何らかの関係がある可能があると判断できる。このようにすると、知識ネットワークを使って、素早く大まかな判断ができる。大まかな判断の後、出発点のノードである物が持つ属性と到着点のノードである物が持つ属性とを比べて、そのつながりが適切であるかどうかについて最終的な判断を行う。
 言葉である文字列、つまり単語をノードとし、単語であるノードを直接つないでネットワーク構造で表現する方法は従来からあった。しかし、この方法では、物を表わす単語だけでなく属性を表す単語も1つのノードになる。そのため、本願技術を使ったネットワーク構造よりもノードの数もつながりの数も多くなり、非常に複雑なネットワーク構造になる。また、本実施形態のように、知識の集まりを生成し、知識を分類することが簡単にはできない。
 リレーショナルデータベース14を用いた場合の(1)知識の形式について説明する。
 リレーショナルデータベース14は、表形式のデータからある条件を満たすデータを抽出するなどの集合演算を効率良く行えるようになっている。そのため、本実施形態では、リレーショナルデータベース14を使った例を説明する。リレーショナルデータベース14を使わずに実施してもよい。本願技術では、物及び属性をつなぎ、つながった物や属性に信号を送ることによって、つながった物や属性を知る代わりに、物、属性、特徴データ、及び識別データを識別子で表わし、識別子をキーにして検索する。これにより、つながっている物、属性、特徴データ、及び識別データを取得する。
 本技術のシステムの中では、物識別子自体が物であり、属性識別子自体が属性である。属性の主識別子自体が主属性であり、属性の副識別子自体が副属性である。特徴データは識別子であるポインタで表わされる。特徴データ自体はデータ10にある。識別データは識別子であるポインタで表わされる。識別データ自体はデータ10にある。
 図17A、図17B、図18、図19の表は、リレーショナルデータベース14によって作成されたデータ10内の表を模式的に表したものである。
 図17Aは、属性の元になるデータの一覧である。図17Bは、物の名前と物識別子との対応表である。属性の元になるデータ一覧には、文字で表わされた物の名前である単語と物が持つ属性を表わす単語と属性の真偽値とがある。実データは、真偽値の元になるデータである。この実データがある場合は、実データから真偽値を生成してもよい。真偽値を生成する場合、真偽値は不要である。属性が、表に記載されている場合のみ真偽値が真であるという規則を適用することにより、真偽値を省略することもできる。
 実データを特徴データとして保持し、その特徴データと新たに生成された属性とを対応づけ、その新たな属性をその物の属性とすることもできる。物の名前と物識別子との対応表は、物の名前である単語と物識別子とを対応づける。物が図外の特徴データとつながっている場合は、さらに特徴データへのポインタが対応づけられる。
 図18は、単語に対応づけられた属性と属性識別子との対応表である。この表は、図2A及び図2Bの第1階層に相当する。この表にある属性識別子は、あらかじめ保持されている図外の特徴データと対応づけられている。主属性である主識別子は、主属性の特徴データの識別子であるポインタが対応づけられる。副属性である副識別子は、副属性の特徴デ-タの識別子であるポインタが対応づけられている。この表では、属性に対応づけられた単語と属性識別子とが対応づけられている。属性識別子と図外の特徴データとが対応づけられている場合は、特徴データへのポインタである特徴データの識別子も対応づけられる。
 属性識別子と図外の特徴データとがつながり、意味あるいは概念が生成されている。対応づけられる特徴データのポインタの数を1行に最大1個に限定し、対応付ける特徴データの数だけ表の行を作成してもよいし、1行に全ての特徴データのポインタを含めてもよい。属性と属性識別子との対応表は、図17Aの属性の元になるデータの一覧の属性の単語を属性識別子に対応づけるための表である。図17Aの属性の元になるデータの一覧の属性に対応づけられた単語をキーにして、属性と属性識別子との対応表から対応する属性識別子を取得する。
 取得される属性識別子は、主識別子と副識別子とから成る場合もある。主識別子だけからなることもある。主識別子と副識別子との可能な組み合わせがあらかじめ定められていると、それを使って不自然な組み合わせの検出ができる。可能な主識別子と副識別子との組み合わせがあらかじめ作成されていても、学習により主識別子と副識別子との可能な組み合わせは、追加又は削除できる。
 図17Aの属性の元になるデータの一覧の属性が、主属性と副属性とからなる属性である場合もある。図18の属性と属性識別子との対応表が、属性の真偽値が真になる条件を持つことも可能である。属性と属性識別子との対応表が、属性の真偽値が真になる条件を持ち、且つ属性の元になる実際のデータを持っている場合は、実際のデータが属性の真偽値が真になる条件を満たしているかどうかを判断して真偽値を決めることができる。条件は、ファジィ集合のメンバーシップ関数などの判定機能であってもよい。この場合、属性の元になるデータは、真偽値を持たなくてもよい。実際のデータから特徴データが生成される。
 図17Aの属性の元になるデータの一覧と、図17Bの物の名前と物識別子との対応表と、図18の属性と属性識別子との対応表から生成された物の名前に対応する物識別子と、属性に対応する属性識別子と、真偽値とから、図19に示されるように、物識別子と物が持つ属性識別子と真偽値とを対応づけた物と属性との一覧表を生成する。物識別子と当該物が持つ属性の属性識別子とがある場合は真偽値が真で、無い場合は真偽値が偽であるという規則を適用することにより、真偽値を省略することもできる。また、属性の実データから生成された特徴データを持ってもよいし、持たなくてもよい。なお、特徴データの識別子を持つことも、特徴データを持つと記述する。属性が1つの主属性と1つの副属性とからなる場合は、表の列位置で主属性と副属性とを区別する。
 図19に示される物と属性との一覧表から、ある物識別子をキーにして選択された行全体がその物が持つ属性の集合を表わし、選択された各行がその物が持つ属性を表わす。この図は、図3の第2階層に相当する。
 なお、図外の特徴データは、物識別子及び属性識別子と対応付けられている。そして、その特徴データの識別子をキーにして検索することにより、特徴データに対応付けられた物識別子及び属性識別子を取得できる。特徴データとつながっている物及び属性は、その特徴データへのポインタである特徴データの識別子を持っている。
 図20Aは、物と主属性と副属性とを対応づけた表である。この表は、物と主属性と副属性とを頂点とする三角形を形作るようにつながった1つの物と、1つの主属性と、1つの副属性との組を表わした例である。物と主属性とを指定してこの表を検索すると、三角形を形作る残りの要素である副属性を取得できる。
 また、図20Bの主属性と副属性との対応表は、主属性と副属性とが対応付けられ、適切な主属性と副属性との組み合わせが保持されている。1つの主属性に対応づけられる副属性は、1つに限らない。ある主属性に対する副属性の対応付けは、1つに限られず、複数あってもよい。この組み合わせから適切な主属性と副属性との組を選び、物と主属性と副属性とを対応づけ、対応づけられた物と主属性と副属性との組を物と属性との一覧表に追加することができる。
 属性が主属性と副属性とから成る場合、1つの属性を構成する主属性と副属性とに同じ特徴データが直接つながり、対応づけられてもよい。1つの属性を構成する主属性と副属性とに対応付けられる特徴データは、それぞれ1つに限られず複数あってもよい。主属性も副属性も属性であり、両者とも1つまたは1つ以上で、1つに限定されない特徴データがつながる。
 物と主属性と副属性とが三角形の形につながるので、三角形を構成する物と主属性と副属性との3つの要素のうち、ふたつを指定すると残りのひとつの要素が決まる。ある物につながる属性が主属性と副属性とから成る場合、その物とその主属性との両方につながる属性を検索し、取得できる。この属性が副属性である。主属性には、大雑把な意味あるいは概念を表わす特徴データがつながっている。副属性には、より詳細な意味あるいは概念を表わす特徴データがつながっている。大雑把な意味あるいは概念を知りたい場合は、その主属性につながる特徴データを取得すればよい。より詳細な意味あるいは概念を知りたい場合は、その副属性につながる特徴データを取得すればよい。
 次に、リレーショナルデータベース14を用いた場合の(2)知識の演算について説明する。
 2つの属性の集合から共通した属性を選び、選ばれた属性を要素とする属性の集合を新たに生成するこの操作を、AND演算と呼ぶ。2つの属性の集合の少なくともどちらかに含まれる属性を選択し、選択された属性を要素とする集合を新たに生成する操作を、OR演算と呼ぶ。1つの属性の集合の要素である属性について、真偽値が真の場合は真偽値を偽にし、真偽値が偽の場合は真偽値を真にした属性を生成し、生成された属性を要素とした属性の集合を新たに生成する操作を、NOT演算と呼ぶ。2つの属性の集合のどちらか一方にのみ含まれる属性を選択し、選択された属性を要素とする属性の集合を新たに生成する操作を、XOR演算と呼ぶ。
 以下に、一実施形態における、属性の集合に対するAND演算、OR演算、NOT演算、XOR演算、類似度及び非類似度の計算の処理手順を示す。一実施形態における処理手順であり、異なる手順で実施することも可能である。また、AND演算、OR演算、NOT演算、XOR演算の定義や、類似度及び非類似度の定義を変えることも可能である。定義を変えれば、処理手順も変わる。
 図21は、一実施形態におけるAND演算の流れ図である。図21を使ってAND演算の処理手順を説明する。
 まず、AND演算の対象となる属性の集合Aと属性の集合Bとを指定する(S21)。典型的には、物識別子を指定すると、当該物識別子に対応付けられた0以上の属性識別子の集合が指定されたことになる。次に、属性の集合Aに属する属性と、属性の集合Bに属する属性とのうち、同じ属性識別子を持つ属性を選択する(S22)。
 次に、選択された属性のうち、同じ属性識別子で、且つ対応付けられた真偽値が同じである属性を選択し、選択された属性を要素とする属性の集合を新たに生成する(S23)。そして、新たに生成された属性の集合をAND演算の結果とする。
 一方、属性が真偽値を持たない場合は、共に同じ属性識別子を持っている属性を選択し、選択された属性を要素とする属性の集合を新たに生成する。2つの選択処理を併せて、一致する属性を選択する、と記述する。すると、AND演算は、属性の集合Aの属性と属性の集合Bの属性とについて、一致する属性を選択し、選択された属性を要素とする属性の集合(共通部分)を新たに生成する処理である。
 図22は、一実施形態におけるOR演算の流れ図である。図22を使ってOR演算の処理手順を説明する。
 まず、OR演算の対象となる属性の集合Aと属性の集合Bとを指定する(S31)。次に、属性の集合Aの属性と属性の集合Bの属性とのうち、同じ属性識別子を持ち、かつ、真偽値が共に肯定の値または共に否定の値の属性を選択する(S32)。また、属性が真偽値を持たない場合は、同じ属性識別子を持つ属性を選択する。2つの選択処理を併せて、一致する属性を選択する、と記述する。なお、この処理は、上述のAND演算の結果と一致する。
 次に、属性の集合Aの属性のうち、属性の集合Bに含まれていない属性を選択する。つまり、属性の集合Aにのみ含まれる属性識別子を選択する。また、属性の集合Bの属性のうち、属性の集合Aに含まれていない属性を選択する。つまり、属性の集合Bにのみ含まれる属性識別子を選択する(S33)。そして、S32及びS33で選択されたすべての属性を要素とする属性の集合を、OR演算の結果として新たに生成する(S34)。
 つまり、真偽値を考慮しない場合、上記の処理で得られる属性の集合は、属性の集合A及び属性の集合Bの少なくとも一方に含まれる属性識別子を集めた新たな属性の集合(和集合)となる。一方、真偽値を考慮する場合、上記の処理で得られる属性の集合は、例えば、属性の集合A及び属性の集合Bの和集合から、属性の集合A及び属性の集合Bのいずれにも含まれ、且つ対応づけられた真偽値が異なる属性を除くことによっても得ることができる。
 図23は、一実施形態におけるNOT演算の流れ図である。図23を使ってNOT演算の処理手順を説明する。
 まず、演算の対象となる属性の集合を指定する(S41)。次に、指定された属性の集合に含まれる全ての属性について、対応付けられた真偽値の値を反転させる。すなわち、真偽値が真の値の場合は偽の値に変え、真偽値が偽の値の場合は真に変えた新たな属性を生成する。そして、生成された属性を集めて新たな属性の集合を生成する(S42)。
 図24は、一実施形態におけるNAND演算の流れ図である。図24を使ってNAND演算の処理手順を説明する。
 まず、NAND演算の対象となる属性の集合Aと属性の集合Bとを指定する(S51)。次に、属性の集合A及び属性の集合Bの属性のうち、属性識別子が同じで、且つ対応付けられた真偽値が同じである属性を選択して、新たな属性の集合を生成する(S52)。これは、上述のAND演算の結果に相当する。
 次に、新たに生成された属性の集合に含まれる各属性について、対応付けられた真偽値を反転させる。すなわち、真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成する(S53)。これは、上述のNOT演算の結果に相当する。これによって得られた属性の集合を、NAND演算の結果として出力する。
 図25は、一実施形態におけるXOR演算の流れ図である。図25を使ってXOR演算の処理手順を説明する。
 まず、XOR演算の対象となる属性の集合Aと属性の集合Bとを指定する(S61)。次に、属性の集合Aの属性のうち、属性の集合Bに含まれていない属性を選択する。つまり、属性の集合Aにのみ含まれる属性識別子を選択する。また、属性の集合Bの属性のうち、属性の集合Aに含まれていない属性を選択する。つまり、属性の集合Bにのみ含まれる属性識別子を選択する(S62)。この処理は、図22に示されるS33の処理に対応する。そして、S62で選択されたすべての属性を要素とする属性の集合を、XOR演算の結果として新たに生成する(S63)。
 つまり、属性の集合A及び属性の集合Bの一方にのみ含まれる属性識別子を集めた新たな属性の集合が生成される。なお、上記の処理で得られる属性の集合は、例えば、属性の集合A及び属性の集合Bの和集合(OR演算の結果)から、属性の集合A及び属性の集合Bの共通部分(AND演算の結果)を除くことによっても得ることができる。
 図26は、一実施形態における共通度を計算する処理の流れ図である。図26を使って、共通度の計算の処理手順を説明する。
 まず、演算対象となる属性の集合Aと属性の集合Bとを指定する(S71)。次に、属性の集合Aと属性の集合Bとに含まれる属性のうち、属性識別子が同じで、且つ対応付けられた真偽値が同じ属性を選択する(S72)。属性が真偽値を持っていない場合は、同じ属性識別子を持つ属性を選択する。2つの選択処理を併せて、一致する属性を選択する、と記述する。副識別子が異なっていても主識別子が同じであれば、属性が同じであるとしてもよい。
 そして、選択された属性の数を計数した結果を共通度として出力する(S73)。一致する属性を選択する条件は、一例であり、他の条件でもよい。物と属性とのつながりがつながりの程度を表わす重みを持つ場合、組数を数える代わりにその重みの値を合計してもよい。
 なお、共通度の計算処理において、副識別子に関係なく主識別子が同じかどうかだけを判断基準にすると、類似度の計算処理になる。
 図27は、一実施形態における非共通度を計算する処理の流れ図である。図27を使って、非共通度の計算の処理手順を説明する。
 まず、演算対象となる属性の集合Aと属性の集合Bとを指定する(S81)。次に、属性の集合Aと属性の集合Bの属性とのうち、同じ属性識別子を持ち、かつ、対応付けられた真偽値が異なる属性を選択する(S82)。属性が真偽値を持っていない場合は、一方の属性の集合にしか存在しない属性を選択する。2つの選択処理を、不一致の属性を選択する、と記述する。
 そして、選択された属性の数を計数した結果を非共通度として出力する(83)。不一致の属性を選択する方法は、一例であり、他の選択条件でもよい。物と属性とのつながりがつながりの程度を表わす重みを持つ場合、組数を数える代わりにその重みの値を合計してもよい。
 なお、共通度の計算処理において、副識別子に関係なく主識別子が同じかどうかだけを判断基準にすると、非類似度の計算処理になる。
 前述の演算処理では、あらかじめ保持された演算部1070によって、属性の集合の各属性に対する処理が自動的に行われる。この論理演算システムの利用者は、各属性に対する処理を個別に指示しない。この論理演算システムの利用者は、物または属性の集合を演算の対象として指定すると、物が持っている属性または属性集合の属性に対して、自動的に演算が行われる。
 リレーショナルデータベース14を用いた場合の(3)知識の集まりと知識のネットワークについて説明する。
 物は、例えば、図19に示される物と属性との一覧表というデータ構造で、データベースに保持されている。1つ以上の属性を指定して、指定されたすべての属性を持つ物を属性の一覧表から選択する。すると、指定されたすべての属性を持つ物からなる物の集まりが生成される。これを知識の集まりと呼ぶ。ある知識の集まりを生成するために使ったすべての属性だけを1つの物につなぐと、その物は知識の集まりを意味する抽象的な物になる。
 知識の集まりであることを表わす属性を、知識の集まりを表わす抽象的な物に直接つないで対応づけたほうがよい。たとえば、知識の集まり表わす抽象的な物を識別する識別データが直接つながる属性または知識の集まりを表わす抽象的な物を特徴づける特徴データが直接つながる属性を、その知識の集まりを表わす抽象的な物につなぐ。すると、その知識の集まりを表わす抽象的な物とその知識の集まりに含まれる物を区別しやすくなる。
 この知識の集まり中には、他の物とつながっていない物があることもある。知識の集まりにおいて、物同士のつながりが全くないこともある。また、ある物が他の物とつながっていることもある。ある知識の集まりの中の物すべてがつながりあっていることもある。つながり合った物が、知識ネットワークになる。1つの知識の集まりの中に、つながり方の異なる知識ネットワークがいくつか存在する場合もある。知識の集まりの外の物とつながってもよいし、知識の集まりと関係なく物をつないでもよい。
 知識の集まりの中の物は、知識ネットワークに属して他の物とつながることにより他の物との関係が明確になる。言い換えると、知識ネットワークは、体系化された知識を表現している。家族という知識の集まりの中に、年齢順という関係でつながった知識ネットワークを作ることもできるし、親子関係という関係で知識ネットワークを作ることもできる。1つの知識の集まりの中に、複数の知識ネットワークを作ることもできる。
 ある知識の集まりの中にある知識ネットワーク内の物が、他の知識の集まりの中にある別の知識ネットワークに属す場合もある。たとえば、ひとりの人は、家族という知識ネットワークに属すと同時に、学校という知識ネットワークに属する場合がある。
 図28A~図28Cは、図15の知識ネットワークを実現するデータ構造の一実施形態である。
 図28Aは、物の名前87と物識別子88との対応表86であり、図17Bの物の名前と物識別子との対応表に相当する。この対応表86は、物の名称を言葉で記述した文字列である単語と、物識別子88とを対応づけている。図28Bは、知識ネットワークと属性との対応表101であり、知識ネットワークを特徴づける属性識別子103と、知識ネットワーク識別子102とを対応づけている。
 知識ネットワークと属性との対応表101において、ある知識ネットワークを特徴づけるすべての属性の属性識別子だけを1つの物識別子につなぐ。すると、その物識別子で識別される物は、その知識ネットワークを表わす抽象的な物になる。同じ属性によって生成される知識の集まりを表わす抽象的な物と区別するために、知識ネットワークを表わす属性と知識ネットワークを表わす抽象的な物とをつなぐ方がよい。また、この対応表101の各行、つまり、各知識ネットワーク識別子102と属性識別子103との組に、付属情報として重みを直接対応づけてもよい。この重みは、その知識ネットワークと属性との関連性の強さを表わす。
 図28Cを使って、さらに詳しく説明する。
 知識ネットワーク内での物であるノード80は、物識別子81を1つだけ持っている。さらに、物であるノード80は、知識ネットワーク情報84を持つことができる。物であるノードが属している知識ネットワーク1つにつき、1つの知識ネットワーク情報が、その物であるノードに保持される。1つの物であるノード80が持つ知識ネットワーク情報84の数は、0個でも1個でもよく、1個に限らず複数個でもよい。知識ネットワーク情報84は、0個以上の順方向ポインタ82と、0個以上の逆方向ポインタ83と、1つの知識ネットワーク識別子85とからなる。順方向ポインタ82と逆方向ポインタ83とが共に0個の場合は、物であるノード80が1個の知識ネットワークになる。
 例えば、物であるノードAが物であるノードBとつながっているとする。ノードAからノードBへ一方向につながっている場合には、ノードAは、順方向ポインタ82にノードBの物識別子を保持し、ノードBは、逆方向ポインタ83にノードAの物識別子を保持する。このようにすると、つながりの方向を表わすことができ、かつ、つながりの方向である順方向にも、つながりの逆方向である逆方向にも簡単に移動できる。一方、ノードAとノードBとが双方向につながっている場合には、ノードAは、順方向ポインタ82にノードBの物識別子を保持し、ノードBは、順方向ポインタ82にノードAの物識別子を保持する。
 方向のあるポインタの始点を上位、終点を下位と呼び区別してもよいし、方向のあるポインタの始点を下位、終点を上位と呼び区別してもよい。また、双方向ポインタでつながっている場合、上位下位の区別がないので並列と呼んでもよい。
 また、物であるノードAが、物であるノードCに直接つながっているかどうかを簡単に調べることができる。ノードCの物識別子を持った順方向ポインタ82または逆方向ポインタ83を、ノードAが持っているかどうかを調べればよい。つながっている2つの物であるノードA、Cが、それぞれ他方につながる順方向ポインタ82を持っている場合は、双方向につながっている。つながっている2つのノードA、Cの一方が順方向ポインタ82に他方の物識別子を保持し、他方が逆方向ポインタ83に一方の物識別子を保持している場合は、一方向につながっている。
 また、ノード80の知識ネットワーク情報84は、さらに重み100を持ち、その重み100がその知識ネットワークとその物との関連性の強さを表わしてもよい。重み100を保持しなくてもよい。物であるノード80が、知識ネットワーク識別子85と重み100とを併せて保持することにより、物と知識ネットワークとの関連の強さを表現できる。物が属している知識ネットワークを選択するとき、この重み100を判断基準にすることができる。重み100の値がより大きい知識ネットワークを選択する、重み100の値がより小さい知識ネットワークを選択する、あるいは、重み100の値が指定された範囲の知識ネットワークを選択するなど、ある知識ネットワークから別の知識ネットワークに移る場合に、重み100を選択基準にすることができる。
 さらに、図28Cには描かれていないが、1つの知識ネットワーク情報84の順方向ポインタ82又は逆方向ポインタ83がそれぞれ重みを持ち、そのポインタで示されるノードとのつながりの強さの程度を表わしてもよい。これにより、いくつかのポインタの中から1つのポインタを選択する場合の基準として重みを利用できる。
 知識ネットワーク識別子85は、知識ネットワークを識別する識別子である。複数の属性を指定して生成された知識の集まりの中の知識ネットワークは、複数の属性によって特徴づけられる。もちろん1つの属性によって特徴づけられた知識ネットワークもありうる。知識ネットワーク識別子85は、知識ネットワークを特徴づける属性すべてとつながると、知識ネットワークを特徴づける属性を持ち、その知識ネットワークを表わす抽象的な物になる。選択に用いられた属性以外の属性がその知識ネットワーク識別子とつながってもよい。
 知識の集まりと関係なく作られた知識ネットワークは、その知識ネットワークの特徴を表わす属性で知識ネットワークを識別してもよい。1つの知識の集まりの中に複数の知識ネットワークがある場合は、各知識ネットワークを特徴付ける属性を追加して、それらを区別する。このようにすると、1つの知識の集まりの中の複数の知識ネットワークから1つの知識ネットワークを選ぶことが容易になる。
 図29は、ノードのデータ構造の一実施形態である。図29の上段に示される物と知識ネットワークとの対応表は、知識ネットワーク識別子と物識別子とを対応づける。物識別子を検索キーに指定して検索すると、当該物識別子で識別される物が属している知識ネットワーク識別子がわかる。知識ネットワーク識別子と物識別子と重みとを対応づけてもよい。もちろん、この重みは無くてもよい。この重みは、知識ネットワークと物との関連性の程度を表わす。
 図29の下段に示されるポインタ一覧は、物識別子と知識ネットワーク識別子との組み合わせに、順方向ポインタと逆方向ポインタとをさらに対応付ける。この図では、順方向ポインタと逆方向ポインタとの2つのポインタに分けているが、1つのポインタと順方向か逆方法かを表わす情報との対にしてもよい。これらのポインタは、知識ネットワーク内での物のつながりを表わしている。ポインタは、つながっている他の物の物識別子を持っている。使っていないポインタの値をNULLのような特別な値にしてもよい。ポインタに重みも持たせてもよい。この重みは、つながっている他の物との関連の程度を表わす。この重みは無くてもよい。ノードは、物と知識ネットワークとの対応表とポインタ一覧とから成る。
 知識ネットワーク識別子と物識別子とを指定してポインタ一覧を検索する。検索結果の中から、その知識ネットワーク内でその物とつながっている他の物の物識別子を持つポインタが取得できる。
 ポインタから取得された別の物の物識別子とネットワーク識別子とを検索キーにしてポインタ一覧を検索すると、別の物が持つポインタを取得できる。この処理は、ポインタで指し示された物識別子であるノードを取得したことになる。このように、ポインタが持っている物識別子を取得することは、知識ネットワーク内で、ポインタを辿って、ポインタで指定された物に移動したことを意味する。つまり、知識ネットワーク内で、互いにつながっているある物から別の物に移動することを意味する。ポインタ一覧から、知識ネットワーク識別子と物識別子と、ポインタとを削除することが、物と物とのつながりを削除することである。ポインタ一覧に、知識ネットワーク識別子と物識別子とポインタとを追加することが、物と物とをつなぐことである。
 知識ネットワークを特徴づける属性の属性識別子と知識ネットワーク識別子とを、次のようにして対応づける。
 1つの知識ネットワーク識別子と複数の属性識別子とを対応づける場合は、次のようにする。複数の属性それぞれを識別する属性識別子と当該知識ネットワーク識別子との組を属性の数だけつくり、これらの組を図28Bに示される知識ネットワークと属性との対応表101に追加する。知識ネットワーク識別子をキーにして、知識ネットワークと属性との対応表101を検索すると、この知識ネットワークを特徴づける属性の属性識別子を知ることができる。逆に、1つの属性識別子をキーにして、知識ネットワークと属性との対応表101を検索する。検索結果に対して、さらに別の属性識別子をキーにして検索をする。これを繰り返すと、検索に使ったすべての属性によって特徴づけられた知識ネットワークの知識ネットワーク識別子が取得できる。
 このようにすると、複数の属性で特徴づけられた知識ネットワーク、すなわち、特定の分野の知識ネットワークを取得することができる。知識ネットワークと対応づけられる属性は、その知識ネットワーク内のすべての物が持つ属性から選んでもよいし、一部の物が持っている属性でもよい。また、その知識ネットワーク内の物が持っていない属性でもよい。その知識ネットワーク特有の属性を生成して、知識ネットワークと対応づけてもよい。図29の物と知識ネットワークとの対応表を、知識ネットワーク識別子を検索キーにして検索すれば、その知識ネットワークに属する物の物識別子を取得することもできる。
 物であるノードは、物識別子と知識ネットワーク識別子とを持っているので、知識ネットワーク識別子をキーにしてノードを検索すれば、その知識ネットワーク識別子を持っている物識別子が取得できる。つまり、その知識ネットワークに含まれる物がわかる。
 順方向ポインタと逆方向ポインタとの組は、ノード間の矢印に相当する。順方向ポインタは、矢印の方向につながったノードに移動する場合に用いる。逆方向ポインタは、矢印と逆方向につながったノードに移動する場合に用いる。ポインタに重みを保持させ、ポインタで直接関連付けられた物とそのポインタを持つ物の関連の強さを表現できる。
 図30の表は、属性の階層情報の例である。属性を階層化する場合の属性の階層情報の一実施形態である。この例は、いわゆるリスト構造というデータ構造である。1つの属性の属性識別子は、上位階層へのポインタと下位階層へのポインタとを保持する。上位階層の属性へのポインタは、上位階層の属性の属性識別子を保持する。下位階層へのポインタは、下位階層の属性の属性識別子を保持する。属性が、上位階層へのポインタまたは下位階層へのポインタを持たない場合は、その上位階層または下位階層へのポインタは、ポインタが無いことを表わすNULLなどの特別な値とする。
 属性識別子を検索キーに指定して、上位階層へのポインタの列を検索すれば、指定された属性の下位の属性が選択される。属性識別子を検索キーにして、下位階層へのポインタの列を検索すれば、指定された属性の上位の属性が選択される。属性識別子を検索キーにして、属性識別子の列を検索すれば、指定された属性の上位階層へのポインタおよび下位階層へのポインタが選択される。
 属性の階層情報で階層化された属性をいくつか選ぶ。選ばれた属性の1つをキーにして図19に示される物と属性の一覧表を検索すると、その属性を持つ物が選択される。選ばれた属性すべてで前述の検索を繰り返す。これらの検索で選択された物だけを集めて知識の集まりをつくる。このようにすると、ある範囲の階層化された属性のどれかを持つ知識の集まりができる。たとえば、この知識の集まりにおいて上位の属性を持つ物から直下の階層の属性を持つ物をつなぐと、階層化された知識ネットワークができる。
 次に、リレーショナルデータベース14を用いた場合の(4)知識の集まりと知識ネットワークの利用方法について説明する。
 まず、図31を参照して、知識の集まりの使用例を説明する。まず、いくつかの属性の属性識別子をキーに指定して、図19に示される物と属性との一覧表を検索すれば、検索に使ったすべての属性を持つ物だけが集まった、知識の集まりが生成できる(S131)。次に、与えられた物の物識別子をキーに指定して、生成された知識の集まり検索する(S132)。生成された知識の集まりの中に検索キーの物識別子が存在すれば、その物は、その知識の集まりを生成する際に指定された属性を全て持っていると判断できる(S133)。
 具体例として、ある学校の卒業生という知識の集まりが生成されているとする。鈴木さんの識別子でこの卒業生の知識の集まりを検索する。鈴木さんの識別子が選択できれば、鈴木さんはこの学校の卒業生であると判断できる。あらかじめ与えられた1つまたは1つ以上の属性識別子を指定して生成された知識の集まりに、あらかじめ与えられた物が含まれている場合、与えられた物は、与えられた属性である条件を満たしていると判断される。
 仮説において、ネットワーク化された知識の利用方法を説明した。仮説で説明した利用方法を実施する手順を、図28A~図28Cを使って説明する。
 知識ネットワークを生成又は削除する、物を知識ネットワークに追加又は削除する、物同士のつながりを追加、削除、又は変更するなどが学習である。追加と削除とを組み合わせることにより、つながりを変えることができる。つまり、不要となったつながりを削除し、新しいつながりを追加すると、つながりが変更される。物の付属情報である属性を追加すること、及び削除することも学習である。属性に特徴データ又は識別データを追加又は削除することも学習である。
 次のようにして知識ネットワークを生成することができる。
 まず、新規に生成する知識ネットワークの知識ネットワーク識別子を決める。次に、新規に生成する知識ネットワークを特徴づける属性を決める。そして、決められたネットワーク識別子と決められた属性の属性識別子との組を、図28Bに示される知識ネットワークと属性との対応表101に追加する。知識ネットワークを特徴づける属性が複数ある場合は、属性の数だけ、決められたネットワーク識別子と決められた属性識別子との組をつくり、知識ネットワークと属性との対応表101に追加する。これで、知識ネットワークと属性とが対応づけられる。このようにして知識ネットワーク情報84を生成できる。ただし、このままでは、知識のない知識ネットワークである。
 次に、知識である物を知識ネットワークに追加する。物であるノード80に知識ネットワーク情報84を追加すれば、その物が知識ネットワークに追加される。具体的には、図29の物と知識ネットワークとの対応表に、知識ネットワーク識別子と物識別子とを対応付けて追加する。これでノードに知識ネットワーク情報が追加された。
 次に、知識ネットワーク内の物同士をつなぐ。知識ネットワーク情報84に順方向ポインタ82及び逆方向ポインタ83を追加すると、物と物とをつなぐことができる。つなぐ2つの物は、すでに当該知識ネットワーク情報84を持っているとする。具体的には、図29のポインタ一覧に、順方向ポインタ及び逆方向ポインタを追加すれば、物と物とがつながる。一方の物識別子と知識ネットワーク識別子とに、他方の物識別子が設定された順方向ポインタ又は逆方向ポインタを対応づけて、ポインタ一覧に追加する。同様に、他方の物識別子と知識ネットワーク識別子とに、一方の物識別子が設定された順方向ポインタ又は逆方向ポインタを対応づけて、ポインタ一覧に追加する。これで、2つの物がつながる。
 前者の物と後者の物とがお互いの物識別子を順方向ポインタに設定した場合は、2つの物は、双方向につながる。前者の物と後者の物との一方が順方向ポインタに他方の物識別子を設定し、他方が逆方向ポインタに一方の物識別子を設定すれば、2つの物は一方向につながる。
 次のようにして物のつながりをなくすことができる。
 つながっている2つの物は、お互いに相手の物識別子が設定されたポインタを持っている。2つのポインタをポインタ一覧から削除すると、2つの物のつながりを削除できる。ある知識ネットワーク内で、ある物についてポインタ一覧にある物識別子が設定されたポインタが1つも存在しなくなった場合、その物をその知識ネットワークから削除してもよい。物と知識ネットワークとの対応表から、その知識ネットワーク識別子とその物識別子とを対応付ける行を削除すれば、その物はその知識ネットワークから削除される。
 次のようにして、物の付属情報である属性を追加又は削除する。
 物識別子と属性識別子とをキーにして図19に示される物と属性との一覧表を検索する。選択された行を削除すると、その属性と物とのつながりを削除できる。属性そのものを削除しているわけではない。物識別子と属性識別子との対応関係を物と属性との一覧表に追加すると、属性を物に追加できる。
 次のようにして2つ物の間に新しく物を追加できる。まず、前述の手順で、新しい物を2つの物につなぐ。次に、前述の手順で、2つの物同士のつながりを削除する。
 次のようにして、与えられた属性を使って物の認識を行う。
 与えられたいくつかの属性の中から1つの属性を取り出し、その属性の属性識別子をキーにして、物と属性との一覧表を検索する。次に、残りの与えられた属性の中から1つの属性を取り出し、取り出された属性の属性識別子をキーにして検索結果をさらに検索する。与えられた属性すべてについて、これを繰り返し、選択行の物識別子が1種類になれば、その物識別子が、与えられた属性をすべて持つ物を表わす。与えられた属性によって物を識別したことになる。
 与えられた属性すべてについて検索を繰り返しても、物識別子が複数種類ある場合は、複数の物識別子が、識別される物の候補であることが分かる。この場合は、属性を追加して、物識別子が1種類になるまで繰り返せばよい。
 属性は、次のようにして選択される。知識ベースシステムに入力された情報から生成された特徴データまたは識別データと同じと判断された知識ベース内の特徴データまたは識別データが選択され取得される。選択され取得された特徴データまたは識別データに直接つながり、直接対応づけられた属性が選択され取得される。この選択され取得された属性を使って前述のように物の認識が行われる。
 次のようにして、推論を行う。
 2つの物を指定し、ポインタを辿りながら一方の物から他方の物へ移動する経路を探す。移動する経路が見つかれば、2つの物の間になんらかの関係がある可能性がある。この処理が推論に対応づけられる。つながりに方向がある場合は、順方向ポインタと逆方向ポインタの両方を使う方法と、順方向ポインタと逆方向ポインタのどちらか一方だけを用いる方法がある。この処理が推論に対応づけられる。
 図32に示されるように、まず、出発点となる物の物識別子、つまり出発点のノードを指定する(S141)。この物識別子をキーにして、図29に示される物とネットワークとの対応表を検索すれば、当該物識別子で識別される物が属する知識ネットワークの知識ネットワーク識別子を得ることができる。
 次に、物識別子と知識ネットワーク識別子とをキーとして、ポインタ一覧を検索すれば、知識ネットワーク識別子で指定された知識ネットワーク内において、物識別子で指定された物の順方向ポインタ又は逆方向ポインタを取得することができる(S142)。
 次に、取得された順方向ポインタ又は逆方向ポインタに設定された物識別子を参照すれば、最初に指定した物識別子で識別される物に関連付けられた物(ノード)が取得できる(S143)。上記の処理を繰り返せば、同じ知識ネットワーク内にも他の知識ネットワーへも移動できる。移動した物識別子を順に記録すれば、その記録が移動した経路になる。
 1つの物を出発点として、ポインタを辿りながらつながっている他の物へ移動する。出発点の物とたどり着いた物とには、何らかの関係がある可能性がある。この処理も推論である。ある物が複数の物につながっているとき、各ポインタの重みを比較して、一番関連の程度が大きいポインタを選択して移動することができる。ある物から別の知識ネットワークに移動する場合、各知識ネットワーク情報が持つ重みを比較して、一番関連の程度が小さい知識ネットワークに移動することもできる。
 このように、1つの知識ネットワーク内を移動して、または、複数の知識ネットワークを移動することにより、物と物とが関連する可能性を見つけることができる。2つの物が関連する可能性があると分かれば、共通度、非共通度、類似度などを求めて、2つの物が関連するかどうかの判断材料を生成できる。ここで記号論理を使えば、2つの物が関連するかどうかの精緻な判断ができる。
 図33では、音声によって言語の中の「Dog」という単語が、知識ベースシステムに入力され、識別データが生成され、一実施形態の知識ベースに格納されている。音声で「Dog」という単語が入力されると、特徴抽出部1020によって音声データの識別データが生成される。また、単語としての「Dog」という文字の映像が入力されると、特徴抽出部1020によって画像の識別データが生成される。さらに、単語の文字コードとしての「Dog」が入力されると、特徴抽出部1020によって文字コードの識別データが生成される。
 図33では、「Dog」を発音記号で表記しているが、識別データの表現形式はこれに限定されず、上述の音声データ、映像データ、又は文字コードなどであってもよい。例えば、マイクから入力された音の場合、100ヘルツの音の強さは55、200ヘルツの音の強さは156・・・、等というように、周波数成分ごとの信号強度を表すバイナリデータあるいは数値が並んだパターンデータが、識別データになる。図33等の音符のマークで表されている特徴データおよび識別データは、上記の音データあるいは音のパターンデータである。
 なお、知識ベース内において、識別データは、意味や概念を直接表すものとして利用されない。この知識ベース内では、特徴データだけが意味や概念を直接保持し表わしているので、特徴データを取得しなければ意味や概念は判らない。
 また、一実施形態の知識ベースは物や属性を含んでいる。たとえば、図33に示される物(3003)は、犬を表わす。また、属性(1003)は、犬の外観という特徴を代表し表わす。なお、以降の説明において、「物(xxxx)」はxxxxという物識別子を指し、「属性(yyyy)」はyyyyという属性識別子を指すものとする。
 図33を使って、一実施形態の知識ベースにデータが格納され、知識が蓄積される過程の一例を説明する。これは、あくまでも一例でありこれ以外の過程もある。
 まず、犬の映像がカメラで撮影され、その映像データが本願技術の一実施形態である知識ベースシステム1000に入力される。入力装置であるカメラが犬の映像を撮影し、撮影された映像データがデータ入力部1010によって知識ベースシステム1000に入力される。データ入力部1010が受け取った入力データである映像データは、特徴抽出部1020に渡される。特徴抽出部1020は、入力データから特徴を抽出し、特徴データを生成する。
 生成された特徴データは、データ比較部1030に渡される。データ比較部1030は、すでに格納されている特徴データと渡された特徴データとを比較し、同じ特徴データがあるかどうかを調べる。同じ特徴データがない場合、データ格納部1040は、渡された特徴データを知識ベースに格納し、知識ベース内に新たに属性を生成し、格納された特徴データと新たに生成された属性とをつなぐ。さらにデータ格納部1040は、知識ベース内に新たに物を生成し、新たに生成された物と生成された属性とをつなぐ。その結果、映像を直接発した対象物である犬と間接的に対応づけられた物が、知識ベース内に生成される。知識ベース内の物は、対象物と直接対応づけられてはいない。
 図33のステップ1の物の追加による学習処理を説明する。
 対象物である犬の映像がカメラで撮影されているときに、マイクから犬の鳴き声「bowwow」が知識ベースシステム1000に入力されたとする。
 対象物である子犬の映像がカメラで撮影され、知識ベースシステム1000のデータ入力部1010に入力される。データ入力部1010に入力された映像データは、特徴抽出部1020に渡される。特徴抽出部1020は、入力された映像データから特徴データを生成する。データ比較部1030は、同じ特徴データが既に知識ベース内にあるか調べる。同じ特徴データがないので、データ格納部1040は、その特徴データを知識ベースに格納し、図33の属性(1021)を生成し、格納された特徴データを属性(1021)につなぐ。
 さらに、データ格納部1040は、図33の物(3003)を生成し、属性(1021)と物(3003)とをつなぐ。このようにして、知識ベースシステム1000は、知識ベースシステム1000外から情報を受け取り、受け取った情報から特徴データを生成し、生成された特徴データを知識ベースに格納する。属性が生成され、格納された特徴データはその属性につながる。さらに物が生成され、生成された属性は生成された物につながる。特徴データが、属性を介して、新たに生成された物につながることは、物の追加による学習である。
 マイクから入力された犬の鳴き声に対しても同じように入力処理が行われる。マイクを通してデータ入力部1010に入力された犬の鳴き声「bowwow」という音声データは、特徴抽出部1020に渡される。特徴抽出部1020は、取得した音声データから特徴データを生成する。データ比較部1030は、同じ特徴データが知識ベース内にないと判断する。すると、生成された特徴データはデータ格納部1040によって、知識ベースに格納される。データ格納部1040は、図33の属性(1011)を生成し、格納された特徴データを属性(1011)につなぐ。図には描かれていないが、物が生成され、生成された物に属性(1011)がつながるようにしてもよい。もちろん、この物を生成しなくてもよい。
 操作者からキーボード入力やマウス操作があると、学習部1050は次のような学習処理を行う。物が生成され、続けて特徴データが生成されると、自動的に次のような学習処理を開始してもよい。ステップ1の入力開始時にキーボード入力やマウス操作などを行うことにより、あらかじめ学習処理を指示してもよい。
 まず学習部1050は、最初に生成され格納された知識ベース内の特徴データ、または、最初に生成された特徴データと同じと判断された知識ベース内の特徴データを取得する。検索部1060は、取得された特徴データにつながる属性(1021)を取得する。さらに検索部1060は、取得された属性(1021)につながる物(3003)を取得する。学習部1050は、取得された物(3003)を取得し、物(3003)を認識する。
 次に学習部1050は、犬の鳴き声「bowwow」から生成され、後から格納された特徴データ、または、後から生成された特徴データと同じと判断された知識ベース内の特徴データを取得する。検索部1060は、その特徴データにつながる属性(1011)を取得する。この時点では、2つの属性(1021、1011)は、同じ1つの物に直接つながっていないので、学習部1050は次の処理を行う。
 学習部1050は、認識された物(3003)と、後から生成され、認識された物(3003)と直接つながらない属性(1011)をつなぐ。物(3003)は、属性(1011)を経由して犬の鳴き声の特徴データを持つ物になる。図33のステップ1は、この状態である。
 なお、連続して入力されたかどうかの基準、つまり時間間隔の基準は、あらかじめ知識ベースシステム1000に保持されている。もちろん、知識ベースシステム1000外から新たな基準を受け取り、その基準を保持し、基準を追加変更することもできる。同じであるかどうかの判断基準もあらかじめ知識ベースシステム1000内に保持されている。もちろん、知識ベースシステム1000外から新たな基準を受け取り、その基準を保持し、基準を追加変更することもできる。
 前述のように知識ベースに特徴データが格納され、知識ベースが構築されると、次のような認識処理ができる。たとえば、犬の鳴き声がマイクを通して知識ベースシステム1000のデータ入力部1010に入力されたとする。データ入力部1010から特徴抽出部1020に犬の鳴き声の音声データが渡され、渡された音声データから特徴抽出部1020で特徴データが生成される。データ比較部1030が生成された特徴データを受け取り、知識ベース内に同じ特徴データがあるか調べる。同じ特徴データが見つかると、検索部1060は見つかった特徴データにつながった属性(1011)を取得する。さらに検索部1060は、属性(1011)につながっている物(3003)を取得し、認識する。
 知識ベースシステム1000に入力された犬の鳴き声によって、その鳴き声を直接発する対象物が物(3003)であることを認識したことになる。さらに検索部1060は、物(3003)につながった他の属性(1021)を取得し、その属性(1021)につながった犬の映像から生成された他の特徴データを取得できる。取得された特徴データは、認識された対象物から直接発せられた映像という情報から生成された特徴データである。このように、物(3003)の認識に使われた鳴き声以外の他の特徴データが取得できる。出力部1080は、取得された映像から生成された特徴データを受け取ると、その特徴データをもとにして出力装置である表示装置に犬の映像を表示する。
 このように鳴き声によって対象物を認識し、認識された対象物である犬の映像を出力できる。
 図33のステップ2の特徴データの追加による学習処理を説明する。
 マイクから犬の鳴き声「bowwow」が知識ベースシステム1000に入力されたとする。マイクを通してデータ入力部1010に入力された音声データは、特徴抽出部1020に渡され特徴データが生成される。データ比較部1030は、生成された特徴データを受け取り知識ベース内に同じ特徴データがあるか調べる。同じ特徴データが見つかると、検索部1060は、見つかった同じ特徴データにつながった属性(1011)を取得する。さらに、検索部1060は、属性(1011)につながった物(3003)を取得する。以上の処理により、マイクで入力された犬の鳴き声「bowwow」によって物(3003)が認識された。
 同じであるかどうかを判断する判断基準は、知識ベースシステム1000にあらかじめ備えられている。また、知識ベースシステム1000外から新たな判断基準を取得し、保持することもできる。同じであるかどうかを判断する判断基準を同一基準と呼ぶ。
 続いて、別の大きな犬の映像がカメラで撮影され、知識ベースシステム1000のデータ入力部1010に入力される。データ入力部1010に入力された映像データは、特徴抽出部1020に渡される。特徴抽出部1020は、入力された映像データから特徴データを生成する。生成された特徴データを受け取ったデータ比較部1030は、同じ特徴データが知識ベース内にあるか調べる。この場合、同じ特徴データはないと判断される。データ格納部1040は、生成された特徴データを知識ベース内に格納し、図33の属性(1022)を生成し、格納された特徴データを生成された属性(1022)につなぐ。図には描かれていないが、データ格納部1040によって物が生成され、生成された物と属性(1022)がつながってもよい。この物を生成しなくてもよい。
 操作者からキーボード入力やマウス操作があると、学習部1050は次のような学習処理を行う。連続して2つの特徴データが生成されると、自動的に次のような学習処理を開始してもよい。入力の前にキーボード入力やマウス操作を行うことによって、あらかじめ学習処理を指示してもよい。
 まず学習部1050は、犬の鳴き声「bowwow」から生成され、最初に渡された特徴データと同じと判断された、知識ベース内の特徴データを取得する。検索部1060は、取得された特徴データにつながる属性(1011)を取得する。さらに検索部1060は、取得された属性(1011)につながる物(3003)を取得する。学習部1050は、取得された物(3003)を取得し、物(3003)を認識する。次に学習部1050は、大きな犬の映像から生成され、後から渡され格納された特徴データを取得する。検索部1060は、その特徴データにつながる属性(1022)を取得する。取得された2つの属性(1011、1022)が同じ物につながっていないので、学習部1050は次の処理を行う。
 学習部1050は、認識された物(3003)と、後から取得され、認識された物(3003)と直接つながらない属性(1022)とをつなぐ。物(3003)は、属性(1022)だけを経由して、大きな犬の映像から生成された特徴データを持つ物になる。
 図33のステップ3の特徴データの統合による学習処理を説明する。この学習処理は、ステップ2の特徴データの追加による学習処理の後に行われる、知識ベースに格納された特徴データの統合処理である。2つの異なる属性につながる特徴データを、共通の1つの属性につなぐ処理である。ステップ2の入力処理後、マウス操作やキーボード入力による統合処理の指示があると、学習部1050が次のような統合処理を行う。ステップ2の開始時に統合処理を行うことをマウス操作やキーボード入力で指示してもよい。
 カメラから小さな犬の映像が入力され、特徴抽出部1020によってその特徴データが生成される。データ比較部1030は、生成された特徴データと同じ特徴データが知識ベース内にあるか調べる。同じ特徴データが知識ベース内にあるので、その特徴データとつながる属性(1021)が検索部1060によって取得される。さらに、取得された属性(1021)につながる物(3003)が検索部1060によって取得される。
 次に、カメラから大きな犬の映像が入力され、特徴抽出部1020によってその特徴データが生成される。データ比較部1030は、生成された特徴データと同じ特徴データが知識ベース内にあるか調べる。同じ特徴データが知識ベース内にあるので、その特徴データとつながる属性(1022)が検索部1060によって取得される。さらに、取得された属性(1022)につながる物(3003)が検索部1060によって取得される。
 属性(1021)と属性(1022)とが同じ物につながっているので、学習部1050は次の処理を行う。
 学習部1050は、2つの属性(1021、1022)を取得する。異なる2つの属性につながる特徴データの数が共に1つの場合、学習部1050は、次の処理を行う。新規の属性(1003)を生成し、2つの特徴データを生成された属性(1003)につなぎ、2つの属性(1021、1022)との物(3003)のつながりを削除する。新たに属性(1003)を生成しないで、2つの属性(1021、1022)のどちらか一方の属性に、他方の属性につながっている特徴データを直接つなぎ、他方の属性と物(3003)のつながりを削除してもよい。
 一方の属性につながる特徴データの数だけが1で、他方の属性につながる特徴データの数だけが1より大きい場合、学習部1050は、次の処理を行う。特徴データが1つだけつながる属性の特徴データを、他方の属性につなぎ、特徴データが1つだけつながる属性との物のつながりを削除する。
 特徴データが新たに知識ベースに格納されると、属性が生成され、その生成された属性と格納された特徴データがつながる。特徴データが知識ベースに格納されると、その特徴データとつながる属性には、特徴データが1つだけつながることになる。そのため、上記のようにして特徴データを集約できる。
 複数の特徴データがつながった属性は、その属性につながったいくつかの特徴データを束ねて集約し、集約された特徴データの性質、特徴、意味あるいは概念を代表して表わす。
 ステップ3のような状態でも認識処理が行える。犬の鳴き声が知識ベースシステム1000に入力されると、入力された犬の鳴き声から特徴データが生成される。生成された特徴データが知識ベース内の特徴データと比較される。同じ特徴データが見つかると、見つかった特徴データにつながった属性(1011)が取得される。取得された属性(1011)につながった物(3003)が取得された後、物(3003)につながる他の属性(1003)ひとつだけを取得すれば、複数(この例では2つ)の特徴データが取得できる。一方、ステップ2の場合は、属性(1021)と属性(1022)のふたつの属性を取得しないと、ふたつの特徴データを取得できない。
 たとえば、マイクを通して知識ベースシステム1000に「bowwow」という犬の鳴き声が入力されたとする。特徴抽出部1020で入力された犬の鳴き声から特徴データが生成され、生成された特徴データがデータ比較部1030に渡される。すでに知識ベース内に犬の鳴き声から生成された特徴データが格納されているため、データ比較部1030は同じ特徴データがあると判断する。すると、検索部1060は、同じと判断された特徴データにつながった属性(1011)を取得する。さらに、検索部1060は、属性(1011)につながった物(3003)を取得する。そして、物(3003)につながった他の属性(1003)を取得すると、その属性(1003)につながった特徴データを取得することができる。取得された特徴データを元にして、出力部1080が表示装置に犬の映像を表示する。この一連の処理によって、犬の鳴き声から犬であることを認識し、認識された犬の映像を表示したことになる。
 ステップ2の状態であれば、属性(1021)と属性(1022)とのふたつの属性を取得することになるが、ステップ3の状態であれば属性(1003)ひとつを取得すればふたつの特徴データを取得できる。物につながる属性を取得する回数が少なくなるので、ステップ2より速く特徴データを取得できる。
 図33のステップ4の識別データの追加による学習処理を説明する。
 子犬の映像がカメラから知識ベースシステム1000のデータ入力部1010に入力される。特徴抽出部1020によって入力された映像から特徴データが生成され、データ比較部1030によって生成された特徴データと同じ特徴データが知識ベースにあるか調べられる。同じ特徴データが見つかり、その同じ特徴データがつながる属性(1003)が検索部1060によって取得される。さらに検索部1060によって、取得された属性(1003)につながる物(3003)が取得される。このように、カメラから入力された子犬の映像によって、映像を直接発した対象物が物(3003)であると認識された。
 次に、単語の「Dog」という音声がマイクから知識ベースシステム1000のデータ入力部1010に入力される。特徴抽出部1020によって入力された音声から識別データが生成され、データ比較部1030によって生成された識別データと同じ識別データが知識ベース内にあるか調べられる。同じ識別データが見つからないので、生成された識別データがデータ格納部1040によって知識ベース内に格納される。データ格納部1040はさらに、属性(1013)を生成し、生成された属性(1013)と格納された識別データとをつなぐ。図には描かれていないが、データ格納部1040によって物が生成され、生成された物に格納された属性(1013)がつながってもよい。この物を生成しなくてもよい。
 操作者からキーボード入力やマウス操作があると、学習部1050は次のような学習処理を行う。連続して1つの特徴データと1つの識別データが生成されると、自動的に次のような学習処理を開始してもよい。ステップ4の開始時に統合処理を行うことをマウス操作やキーボード入力で指示してもよい。
 まず学習部1050は、子犬の映像から生成され、最初に渡された特徴データと同じと判断された、知識ベース内の特徴データを取得する。検索部1060は、取得された特徴データにつながる属性(1003)を取得する。さらに検索部1060は、取得された属性(1003)につながる物(3003)を取得する。学習部1050は、取得された物(3003)を取得し、物(3003)を認識する。
 次に学習部1050は、単語「Dog」の音声から生成され、後から渡され格納された識別データを取得する。検索部1060は、その識別データにつながる属性(1013)を取得する。取得された2つの属性(1003、1013)が同じ物につながっていないので、学習部1050は次の処理を行う。
 学習部1050は、認識された物(3003)と、後から取得され、認識された物(3003)と直接つながっていない属性(1013)とをつなぐ。物(3003)は、属性(1013)を経由して単語「Dog」から生成された識別データを持つ物になる。
 同じようにして、単語「Doggy」の音声から生成された識別データが知識ベースに格納される。属性(1014)が生成され、格納された識別データにつながる。生成された属性(1014)は、物(3003)につながる。子犬の映像と単語「Doggy」とを対応づけて行ってもよいし、単語「Dog」と単語「Doggy」とを対応づけて行ってもよい。
 図を見やすくするためステップ4の図では、属性(1021)、及び属性(1022)を省略している。
 図33のステップ5の識別データの統合による学習処理を説明する。
 この学習処理は、ステップ4の識別データの追加による学習処理の後に行われる、知識ベースに格納された識別データの統合処理である。2つの異なる属性につながる識別データを、共通の1つの属性につなぐ処理である。ステップ4の識別データの追加による学習処理後、マウス操作やキーボード入力による統合処理の指示があると、学習部1050が次のような統合処理を行う。ステップ4の開始時に統合処理を行うことをマウス操作やキーボード入力で指示してもよい。
 マイクから単語「Dog」の音声が入力され、特徴抽出部1020によってその識別データが生成される。データ比較部1030は、生成された識別データと同じ識別データが知識ベース内にあるか調べる。同じ識別データが知識ベース内にあるので、その識別データとつながる属性(1013)が検索部1060によって取得される。さらに、属性(1013)につながる物(3003)が検索部1060によって取得される。
 次に、マイクから単語「Doggy」の音声が入力され、特徴抽出部1020によってその識別データが生成される。データ比較部1030は、生成された識別データと同じ識別データが知識ベース内にあるか調べる。同じ識別データが知識ベース内にあるので、その識別データとつながる属性(1014)が検索部1060によって取得される。さらに、検索部1060によって属性(1014)につながる物(3003)が取得される。
 2つの属性(1013、1014)が同じ物(3003)につながっているので、学習部1050は次の処理を行う。
 学習部1050が2つの属性(1013、1014)を取得する。異なる2つの属性につながる識別データの数が共に1つの場合、学習部1050は、次の処理を行う。新規の属性を生成し、2つの識別データを生成された属性につなぎ、生成された属性を物(3003)につなぎ、2つの属性(1013、1014)との物(3003)とのつながりを削除する。又は、新たに属性を生成しないで、2つの属性(1013、1014)のどちらか一方の属性、たとえば属性(1013)に、他方の属性(1014)につながっている識別データをつなぎ、他方の属性(1014)と物(3003)とのつながりを削除してもよい。図を見やすくするためステップ5の図では、属性(1014)、属性(1021)、及び属性(1022)を省略している。
 一方の属性につながる識別データの数だけが1で、他方の属性につながる識別データの数だけが1より大きい場合、学習部1050は、次の処理を行う。識別データが1つだけつながる属性の識別データを、他方の属性につなぎ、識別データが1つだけつながる属性と物とのつながりを削除する。
 識別データが新たに知識ベースに格納されると、属性が生成され、その生成された属性と格納された識別データとがつながる。識別データが知識ベースに格納されると、その識別データとつながる属性には、識別データが1つだけつながることになる。そのため、上記のようにして識別データを集約できる。複数の識別データがつながった属性は、その属性につながったいくつかの識別データを束ねて集約し、集約された識別データを代表して表わす。
 このように学習が行われると、「Dog」または「Doggy」という音声がマイクから入力されると、物(3003)であることが認識され、1つの属性(1013)だけを介して物(3003)につながる、特徴データから生成された犬の映像を、出力装置である表示装置に表示することができる。たとえば「Dog」という音声がマイクから入力されると、特徴抽出部1020が特徴を抽出し、識別データを生成する。データ比較部1030は、生成された識別データと同じ識別データが知識ベース内にあるか調べる。同じ識別データが知識ベース内にあるので、検索部1060は、その識別データにつながる属性(1013)を取得する。さらに検索部1060は、取得された属性(1013)とつながる物(3003)を取得する。検索部1060は、物(3003)につながる他の属性(1003)を取得し、その属性(1003)につながる特徴データを取得する。出力部1080は、取得された特徴データを元にして表示装置に犬の映像を表示する。さらに、検索部1060は、物(3003)につながる他の属性(1011)を取得し、その属性(1011)につながる特徴データを取得する。出力部1080は、取得された特徴データを元にして出力装置である音声再生装置から犬の鳴き声「bowwow」出力する。「Dog」という単語から犬という物を認識し、犬の映像や犬の鳴き声を出力したことになる。
 言語の中の単語と、知識ベース内の属性や物とを対応づける必要のない場合、識別データは不要である。言語を持たない動物は、識別データを含まない知識ベースを構築し、識別データを含まない知識ベースを使って認識や推論などの知識処理を行うと考えられる。言語を学習した人間は、識別データと特徴データとの両方を含む知識ベースを構築していると考えられる。(1)識別データを含まず、特徴データ、属性、物からできた知識ベース、(2)特徴データを含まず、識別データ、属性、物からできた知識ベース、(3)識別データ、特徴データ、属性、物からできた知識ベースが構築できる。記号論理だけを行う場合は、(2)の知識ベースでもよい。
 学習によって、知識ベース内の特徴データ、識別データ、属性、物が追加されるだけでなく、削除されることもある。学習によって、特徴データ、識別データ、属性、物のつながりが追加又は削除され、変更される。
 特徴データと識別データとについて再度説明する。
 図1のように、言語の中の単語だけから、一実施形態の知識ベース内の識別データが生成され、現実の世界の中の対象物から直接発せられた映像や音声などのデータだけから、一実施形態の知識ベース内の特徴データが生成される。対象物は単語ではない。しかしながら、知識ベース内において、識別データは、意味や概念を直接表すものとして利用されない。もとの単語の意味や概念を取得するためには、その識別データにつながる属性を取得し、さらにその属性につながる物を取得し、取得された物につながる他の属性を取得し、その属性につながる特徴データを取得しなければならない。
 この一実施形態の知識ベース内では、物(3003)は、犬という対象物に間接的に対応付けられている。しかし、他の実施形態の知識ベース内では、物(3003)は犬という対象物でなく、猫という対象物に間接的に対応付けられているかもしれない。そこで、言語の中の単語から識別データを生成し、知識ベース内で識別データと物や属性とをつなぎ、対応付けることによって、異なる知識ベース間で単語を経由して情報交換ができるようになっている。
 識別データは、言語と言語の外にある知識ベースとを対応づけるために利用される。知識ベースごとに、同じ物や同じ属性に割り当てられる識別子の値は異なるので、言語内の単語から生成された識別子を使わずに情報を交換できない。言語内の単語を仲立ちとすることによって、複数の知識ベース間で情報を交換できるようになる。
 また、識別データは、知識ベース内の知識を言語の中に取り出すことにも利用できる。知識ベース内の知識を、識別データを仲立ちにして単語に変換して、知識ベースから言語の中に取り出すことができる。たとえば、知識ベースの中の識別子で表される物を、識別データを仲立ちにして単語に変換すると、識別子だけで物を区別するより物を区別しやすくなる。また、知識ベースの中の物識別子や属性識別子が単語に変換されると、文字で書き表すことができる。そして、書き表された物や属性を単語として、視覚を使って認識することにより、理解しやすくなる。
 格納された1つの特徴データから、新たな特徴データが生成されることもある。図34では、4本足という特徴データが生成され、知識ベースに格納されている。これは、すでに格納された犬、猫、とかげなどの映像から生成された特徴データから、さらに特徴抽出部1020によって生成される。
 図34の知識ベースには、人間を表わす物(3001)、イルカを表わす物(3002)、犬を表わす物(3003)、猫を表わす物(3004)、トカゲを表わす物(3005)、蛇を表わす物(3006)が格納されている。図35には、図34の知識ベースを元にして学習部1050が行った学習処理によって、新たに生成された物と属性とが示されている。
 たとえば、マイクで「哺乳類」という単語の音声が知識ベースシステム1000のデータ入力部1010に入力される。特徴抽出部1020によって特徴が抽出され、識別データが生成される。データ比較部1030によって、この識別データが知識ベースにないことが調べられ、データ格納部1040によってこの識別データが知識ベース内に格納される。データ格納部1040によって属性(1015)が生成され、生成された属性(1015)に生成された識別データつながる。さらにデータ格納部1040によって、物(3007)が生成され、生成された属性(1015)がつながる。
 マウス操作やキーボード入力により属性の統合処理が指示される。
 再度、マイクで「哺乳類」という単語の音声が知識ベースシステム1000のデータ入力部1010に入力される。特徴抽出部1020によって特徴が抽出され、識別データが生成される。データ比較部1030によって、この識別データが知識ベースにあることが調べられる。検索部1060は、同じ識別データとつながる属性(1015)を取得し、取得された属性(1015)につながる物(3007)を取得する。学習部1050は、取得された物(3007)を取得し、認識する。
 マウス操作やキーボード入力により、属性を新しく生成する指示が知識ベースシステム1000に入力されると、学習部1050によって属性(1008)が生成され、生成された属性(1008)が認識された物(3007)につながり、生成された属性(1008)が取得される。表示装置に、認識された物(3007)に既につながっている属性の一覧が表示され、その一覧の中から属性を1つ指定し、指定された属性を取得することもできる。
 つづいて、カメラから「大きな犬」の映像が知識ベースシステム1000のデータ入力部1010に入力され、特徴抽出部1020で特徴が抽出され、特徴データが生成される。データ比較部1030は、生成された特徴データと同じ特徴データが知識ベースにあるか調べる。同じ特徴データはあるので、検索部1060によって、知識ベース内にある同じ特徴データが取得される。
 マウス操作やキーボード入力により、特徴データ追加指示が知識ベースシステム1000に入力されると、学習部1050によって、取得された特徴データが取得された属性(1008)につながる。
 この処理を繰り返すと、図35のように属性(1008)に、哺乳類の映像から生成された複数の特徴データがつながり、属性(1008)が哺乳類という意味あるいは概念を表わす。この属性(1008)が、哺乳類を表わす物(3007)につながる。動物を表わす物(3008)も爬虫類を表わす物(3009)も同じようにして作られる。
 図36は、図34に図35の3つの属性(1008,1009,1010)を追記し、物(3001,3002,3003,3004)に属性(1008)をつないだ知識ベースを示している。これで、物(3001,3002,3003,3004)に、哺乳類を表わす属性(1008)が追加され、その属性(1008)を持つようになる。属性(1009,1010)についても同様の処理が行われている。
 以下のようにして、学習部1050による属性追加処理は行われる。
 たとえば、マイクから「哺乳類」という単語の音声が知識ベースシステム1000のデータ入力部1010に入力される。特徴抽出部1020によって特徴が抽出され、識別データが生成される。データ比較部1030によって、この識別データと同じ識別データが知識ベースにあることが確認される。そして、同じ識別データとつながる属性(1015)が検索部1060によって取得される。次に、検索部(1060)によって、属性(1015)につながる物(3007)が取得され、認識される。
 次にたとえば、カメラから「人」の映像が入力され、特徴データが生成され、生成された特徴データと同じ特徴データがつながる属性(1001)が取得される。さらに属性(1001)につながる物(3001)が検索部1060によって取得され認識される。最初に認識された物(3007)と、次に認識された物(3001)とが、異なると、学習部1050は、最初に認識された物(3007)に直接つながる属性(1008)と、後から認識された物(3001)とをつなぐ。
 このような処理を繰り返すと、人間を表わす物(3001)、イルカを表わす物(3002)、犬を表わす物(3003)、猫を表わす物(3004)が、哺乳類を表わす属性(1008)とつながり、属性(1008)を持つようになる。
 図36において、たとえば属性(1008)につながる物を選択し、属性(1008)を持つ物を集めることができる。物(3001、3002、3003、3004)が選択され集められた物である。この集められた物を知識の集まりと呼ぶ。哺乳類という属性(1008)を持つ物が集められ、哺乳類という知識の集まりが生成される。
 図37では、物が四角い破線で囲まれている。四角い破線で囲まれた部分、動物という知識の集まり165、哺乳類という知識の集まり166、爬虫類という知識の集まり167、四足の動物という知識の集まり168が、それぞれ知識の集まりになる。動物、哺乳類、爬虫類、四足の動物という4つの知識の集まりが図37に示されている。
 知識の集まりを使って推論ができる。
 たとえば「蛇は哺乳類であるかどうか」を推論する。哺乳類を表わす属性(1008)とつながった物を集め、知識の集まり166をつくる。この知識の集まり166には、人を表わす物(3001)、イルカを表わす物(3002)、犬を表わす物(3003)、猫を表わす物(3004)が含まれる。この知識の集まりの中に、蛇を表わす物(3006)があるかどうかを調べる。この例では、蛇を表わす物(3006)は、哺乳類を表わす知識の集まりに含まれないので、「蛇は哺乳類ではない」と推論し、判断できる。
 知識の集まりは、抽象的な物である。したがって具体的な物と同様に、抽象的な物である知識の集まりを要素とする知識の集まりも生成できる。いくつかの抽象的な物に同じ属性をつないでその属性を追加する。追加された属性を持つ物を集めれば、新たな知識の集まりが生成される。
 図38には、図35で新たに生成された知識の集まりを表わす抽象的な物(3007、3008、3009)が追記され、対応する属性と直接つながれている。ひとつの知識の集まりが、抽象的な1つの物として知識ベースに格納されている。たとえば、爬虫類を表わす抽象的な物(3009)は、属性(1010)につながる。この属性(1010)は、蛇の映像から生成された特徴データとトカゲの映像から生成された特徴データとがつながり、爬虫類を表わしている。哺乳類を表わす抽象的な物(3007)、動物を表わす抽象的な物(3008)も同様である。
 図38で示されるように、爬虫類という抽象的な物(3009)も、爬虫類を構成する具体的な蛇やトカゲなどの物(3005、3006)も知識ベース内では同じ構造で表わされる。どちらも特徴データと属性とがつながり、その属性が物につながっている。したがって、知識の集まりという抽象的な物を要素とする知識の集まりを生成できる。
 このように、英語、日本語、中国語などの言語および言語内の単語を使わずに、言語内の単語ではない対象物自体から直接発せられるデータだけを元にして、知識ベースが構築できる。
 知識ネットワークについて説明する。
 図39では、物同士が矢印でつながれている。たとえば、動物を表わす物(3008)から哺乳類を表わす物(3007)へ延びる矢印、動物を表わす物(3008)から爬虫類を表わす物(3009)へ延びる矢印、哺乳類を表わす物(3007)から人を表わす物(3001)へ延びる矢印、哺乳類を表わす物(3007)からイルカを表わす物(3002)へ延びる矢印、哺乳類を表わす物(3007)から犬を表わす物(3003)へ延びる矢印、哺乳類を表わす物(3007)から猫を表わす物(3004)へ延びる矢印、爬虫類を表わす物(3009)からトカゲを表わす物(3005)へ延びる矢印、爬虫類を表わす物(3009)から蛇を表わす物(3006)へ延びる矢印によって、物同士がつながる。
 図40は、物と物とのつながりだけを抜き出した図である。このようなつながり合ったいくつかの物、つまり、1つのつながりあった物全体が1つの知識ネットワークである。この例では、この知識ネットワークは、動物の種の分類を表わす。矢印の始点は上位の分類、矢印の終点は下位の分類を表わす。この知識ネットワークのつながりは、包含関係を表わし、上位に位置する物が下位に位置する物を含むということを表わす。
 この知識ネットワーク内で、動物を表わす物(3008)から哺乳類を表わす物(3007)へ矢印を順方向に辿って移動できる。さらに、哺乳類を表わす物(3007)からイルカを表わす物(3002)へ矢印を順方向に辿って移動できる。
 イルカを表わす物(3002)から哺乳類を表わす物(3007)へ矢印を逆方向に辿って移動する。次に、哺乳類を表わす物(3007)から動物を表わす物(3008)へ矢印を逆方向に辿って移動する。このように移動すると、イルカを表わす物(3002)から動物を表わす物(3008)へ移動できる。ある物から別の物へ知識ネットワークのつながりを辿って移動できる場合、その2つの物の間に何らかの関係がある可能性が推測される。この例では、イルカは動物という分類に含まれるということが、知識ネットワークのつながりから判る。このように知識ネットワークを使って推論ができる。
 図40の1つの知識ネットワークを、複数の知識ネットワークを組み合わせて作ることもできる。
 図41に示される物(3011)は、知識ネットワークを表わす属性(1030)と動物を表わす属性(1009)とにつながっており、動物に関する知識ネットワークである抽象的な物である。物(3012)は、知識ネットワークを表わす属性(1030)と哺乳類を表わす属性(1008)とにつながっており、哺乳類に関する知識ネットワークである抽象的な物である。物(3013)は、知識ネットワークを表わす属性(1030)と爬虫類を表わす属性(1010)とにつながっており、爬虫類に関する知識ネットワークである抽象的な物である。
 図42は、図41の物と物とのつながりを抜き出した図である。図41では省略されていた知識ネットワークである物と具体的な物とのつながり、たとえば動物に関する知識ネットワークである物(3011)と動物を表わす物(3008)とのつながりも描かれている。図41では図が複雑になり見難くなるので省略されている。
 動物である物(3008)と哺乳類である物(3007)とがつながり、動物である物(3008)と爬虫類である物(3009)とがつながり、知識ネットワークが生成されている。この知識ネットワークが動物に関する知識ネットワークである抽象的な物(3011)であり、図42の楕円169で囲まれている部分である。
 また、哺乳類である物(3007)と人である物(3001)とがつながり、哺乳類である物(3007)とイルカである物(3002)とがつながり、哺乳類である物(3007)と犬である物(3003)とがつながり、哺乳類である物(3007)と猫である物(3004)がつながり、知識ネットワークが生成されている。この知識ネットワークが哺乳類に関する知識ネットワークである抽象的な物(3012)で、図42の楕円170で囲まれている部分である。
 また、爬虫類である物(3009)とトカゲである物(3005)とがつながり、爬虫類である物(3009)と蛇である物(3006)とがつながり、知識ネットワークが生成されている。この知識ネットワークが、爬虫類に関する知識ネットワークである抽象的な物(3013)で、図42の楕円171で囲まれている部分である。
 図41に描かれているように、さらに、動物に関する知識ネットワークである抽象的な物(3011)と哺乳類に関する知識ネットワークである抽象的な物(3012)とがつながり、動物に関する知識ネットワークである抽象的な物(3011)と爬虫類に関する知識ネットワークである抽象的な物(3013)とがつながり、知識ネットワークが生成される。なお、見にくくなるので図42には、この知識ネットワークは描かれていない。このように、知識ネットワークである抽象的な物同士をつないで、新たな知識ネットワークを生成することができる。
 知識ネットワークである抽象的な物は、その知識ネットワークに含まれる全ての物それぞれと直接つながる。たとえば図42のように、知識ネットワークである抽象的な物(3011)は、その知識ネットワークに含まれる物(3007、3008、3009)とそれぞれ直接つながる。このようにすると、知識ネットワークである抽象的な物を指定すると、その知識ネットワーク内にどのような物が含まれているかが判る。
 知識の集まりは物であり、知識ネットワークも物である。図38及び図41で示されるように、犬や猫のような具体的な物も、知識の集まりや知識ネットワークのような抽象的な物もデータ構造は同じである。したがって、抽象的な物である知識の集まりまたは抽象的な物である知識ネットワークを含む知識ネットワークを生成することができる。同様に、抽象的な物である知識の集まりまたは抽象的な物である知識ネットワークを含む知識の集まりを生成することができる。この仕組みによって抽象的な知識も蓄積され、蓄積された抽象的な知識が体系化される。さらに、蓄積され体系化されたな抽象的な知識を使って推論が行われる。
 図42の知識ネットワークを例にして、知識ネットワークを使った推論の説明をする。
 たとえば、哺乳類に関する知識ネットワーク(3012)内で、人である物(3001)から哺乳類である物(3007)に移動することができる。また、哺乳類である物(3007)は、哺乳類に関する知識ネットワーク(3012)だけでなく、動物に関連する知識ネットワーク(3011)にも属している。そこで、哺乳類である物(3007)を介して、哺乳類に関する知識ネットワーク(3012)と異なる知識ネットワークである動物に関する知識ネットワーク(3011)に移動する。動物に関する知識ネットワーク(3011)内で、哺乳類である物(3007)から動物である物(3008)に移動する。このとき、出発点の人である物(3001)と到着点の動物である物(3008)の間に関係がある可能性がある。人間は動物である、あるいは、人は動物に含まれるということが推論できる。
 ある知識ネットワーク内の物から、その物が属する他の知識ネットワークに移り、移った知識ネットワーク内の物に移動できる。1つあるいは2つ以上の異なる知識ネットワークを経由して移動してもよい。このとき、出発点の物と到着点の物との間に何らかの関係がある可能性がある。なぜなら、それぞれの知識ネットワーク内の物は、その知識ネットワーク内において関連のある物同士がつながっているからである。ある物から別の知識ネットワークに移り、移った知識ネットワーク内のつながった物に移動できれば、その物との間にも関連性がある可能性があるからである。
 なお、1つの知識ネットワーク内でのつながりの意味は同じにしておく。つながりの意味が変わる場合は、その部分を別の知識ネットワークにする。1つの知識ネットワーク内では、つながりの意味を同じにする。すると、その知識ネットワークの意味が明確になる。さらに、知識ネットワークを特徴づける属性がつながりの意味を表わすようにすると、つながりの意味が異なる知識ネットワークは、必ず異なる属性の組み合わせで特徴づけられる。
 知識ネットワークのつながりをたどり、つながった物を取得すると、関連する物が取得できる。このように、知識ネットワークは、関連する物を検索する、検索システムとしても利用できる。
 言語の中の単語をつないで知識を表現する従来技術の知識ベースがある。単語をつなぎあわせて一塊のつながりをつくり、知識を表現している。しかし、単語の一塊のつながりですべての知識を表わすことはできなかった。そこで、単語の一塊のつながりに入りきれない知識を暗黙知と呼んでいた。
 たとえば、人は会社という組織に属していれば会社組織の中のつながりがある。家庭では家族関係というつながりがある。人に限らず、あらゆる物は切り口によってさまざまなつながりを持っている。これを一塊のつながりで表現することは無理である。無理やり一塊のつながりで表現すると、一塊のつながりに入りきれない知識あるいは情報を暗黙知と呼ばざるを得ない。
 本願技術の一実施形態の知識ベースでは、切り口ごとに一塊のつながりをつくる。この一塊のつながりが1つの知識ネットワークである。このようにすれば、共通する物で知識ネットワークをつなぎあわせて知識を体系化でき、暗黙知を使わずに広範囲な知識を体系化できる。ある知識ネットワークに属するある物から、その知識ネットワークとつなぎあわされた他の知識ネットワークに移り、他の知識ネットワーク内の物に移動し、他の知識ネットワーク内の物とのつながりを調べることができる。
 これまでの説明をもう少し詳しく説明する。本願技術の一実施形態として以下のような仮説を考案した。この仮説はあくまでも一実施形態としての仮説であり、本願技術の範囲を制限するものではない。前述の説明と重なる部分もあるが、その仮説について以下に説明する。
 脳は、たくさんの神経細胞でできている。さらに、神経細胞は、樹状突起と呼ばれる組織などによって相互に接続され、信号を伝達しあっている。実際の脳においては、1つの神経細胞が、物に対応する。図43では、外部にある対象物から直接生成された情報が、感覚器官110で受け取られる。感覚器官110が受け取った情報から、特徴抽出部114によって特徴が抽出され、特徴データが生成される。生成された特徴データは、記憶領域112内に保持される。もちろん、特徴データは、樹状突起等により、属性領域115内にある1つの神経細胞71とつながり、特徴データが属性領域115の神経細胞71に対応づけられる。複数の特徴データが属性領域115内の同じ神経細胞71につながり、対応づけられることもある。属性領域115の神経細胞71は、特徴データに対応づけられることによって属性を表わす。属性を表わす神経細胞71と物の領域111内の神経細胞70とが樹状突起等によりつながり、属性が物に対応づけられる。このようにして、物が属性を持つ。
 たとえば、感覚器官110から甘みの情報を受け取ると、特徴抽出部114が甘味の情報から特徴を抽出し、抽出された特徴が記憶領域112で保持され特徴データになる。特徴データが属性領域115の神経細胞71とつながることによって、その神経細胞が甘いという属性を表わす。甘いという特徴データに直接つながることによって、甘いという属性を表わす神経細胞71が、物に直接対応づけられ、物を表わす神経細胞70と直接つながる。これにより、「その物が甘い」あるいは、「その物が甘い属性を持つ」ということを学習する。
 属性が特徴データと物の間にあると、1つの特徴データが複数の異なる属性につながることができる。また、複数の特徴データが1つの属性につながり1つの意味または概念を生成することができる。これにより、複数の特徴データから1つの意味や概念を生成する、または、1つの特徴データから複数の意味や概念を生成することができる。
 特徴データは、属性領域115の神経細胞71を経由せずに物の領域111内の神経細胞70とつながり、対応づけられる場合もある。この場合、属性領域115の神経細胞71を経由するより速く物の領域111の神経細胞70に信号が届く。感覚器官110から情報を受け取り、特徴抽出部114が受け取った情報から抽出した特徴データが、記憶領域112に既に保持された特徴データと一致あるいは類似していていると判断されるとする。物の領域111内の神経細胞70とその特徴データが直接つながっていたとすると、あらかじめその特徴データとつながった物の領域111の神経細胞70に信号が届く。このとき、物は認識される。真っ赤に燃える炎の映像を見ると、直ちに火であると認識する仕組は、前述の仕組に対応づけられる。
 氷を触り冷たいという特徴データが保持され、属性領域115の神経細胞71とつながることによって、冷たいという概念、すなわち属性が生成されているとする。この冷たいという属性だけがつながった物の領域111の神経細胞70、すなわち物があるとする。この物は、冷たさ、または、漠然とした冷たい物を表わす抽象的な物である。
 たとえば、赤い丸い物を食べたところ、甘くて食べられたとする。このとき、物の領域111内の1つの神経細胞70が赤く丸い物になり、赤い丸い物の映像の特徴データにつながった属性である神経細胞と赤い丸い物の甘さの特徴データにつながった属性領域115の神経細胞71が前記赤く丸い物の神経細胞につながる。同様に、食べられるという特徴データは、属性領域115の神経細胞71とつながり、その属性領域115の神経細胞71は、物の領域111内の赤い丸い物に対応する神経細胞70とつながる。
 食べられるという特徴データにつながった属性領域115の神経細胞71が、物の領域111の神経細胞70に信号を送る。つまり、食べられるとい属性領域115の神経細胞71から物の領域111の神経細胞70に信号を送る。すると、食べられるという属性領域115の神経細胞71につながっている物の領域111の神経細胞70だけが信号を受けて活性化する。活性化された物の領域111の神経細胞70全体が、食べられるという属性を持った物の集まりになる。この集まりが知識の集まりになる。1つ以上の属性領域115の神経細胞71から信号を送って、知識の集まりを生成することもできる。物の領域111内の神経細胞70は、物を表わしている。知識の集まり内の神経細胞は、共通する属性を持つ物を表わしている。1つの知識の集まり内の神経細胞同士をつなぐことによって、物同士の関係を保持できる。このつながれた物の集まりが、知識ネットワークである。もちろん、知識の集まりにない物をつなぐこともできる。さらに、知識の集まりに関係なく物をつないで知識ネットワークを作ってもよい。
 このような働きを学習と呼ぶ。物、属性または特徴データを追加又は削除することは学習である。つながりを追加又は削除することも学習である。物同士のつながりを追加するだけでなく、物同士のつながりを削除すること、神経細胞を新たに物に対応づけて知識ネットワークに追加すること、物と属性、属性と特徴データ、特徴データと物とのつながりを追加したり削除したりすることも学習である。
 砂糖をなめたとする。すると、感覚器官110から甘味という情報と甘味の程度の2種類の情報を受け取る。特徴抽出部114で前述の2種類の情報を特徴として抽出する。抽出された2つの特徴は、1組の特徴データとして記憶領域112に保持される。記憶領域112に既に同じ特徴データがある場合は、新たに特徴データを保持しないようにすることもできる。同じ特徴データが無い場合は、属性領域115の未使用の神経細胞の1つがその特徴データとつながり、その特徴データに対応する神経細胞となる。同じ特徴データがあり、その特徴データが属性領域115の神経細胞とつながっていない場合も、属性領域115の神経細胞の1つがその特徴データとつながり、その特徴データに対応する神経細胞になる。
 甘味という特徴データと属性領域115にある神経細胞とがつながり、甘みの程度という特徴データと属性領域115の別の神経細胞とがつながる。甘味の程度を表わす属性は、程度を表わす属性として他の属性とつながることが可能である。味の濃さや大小などある属性の程度を表わす補助属性がある。補助属性は、他の属性につながり、その属性の意味や概念を修飾する。補助属性は、形容詞や副詞に相当すると考えれば理解しやすい。前述の2つの特徴データから信号を送ると、信号を受けた属性領域115の2つの神経細胞は信号を受けて、属性領域115の2つの神経細胞は相互につながる。情報の発生源である物に対応づけられた神経細胞も信号を受ける。信号を受けた属性領域115の2つの神経細胞は、それぞれ、情報の発生源である物に対応する神経細胞とつながる。物と属性と補助属性とのすべてがつながり、三角形の形につながる。3つの要素のうち2つを指定すれば残りの1つの要素が必ず決まる。たとえば、物と属性とを指定すれば両者につながる補助属性が1つだけ確定する。このようにすると、必要なときに属性に関連する補助属性を取得できる。もちろん、属性につながっている特徴データを取得すれば補助属性の元になった情報が取得できるので、さらに詳しい情報が取得できる。補助属性も属性であり、特徴データと属性領域115の神経細胞とにつながっているにすぎない。1つの補助属性はさまざまな属性とつながり、つながった属性の意味や概念を修飾することができる。
 甘味に相当する特徴データを主特徴、甘味の程度に相当する特徴データを副特徴とする。主特徴に対応する属性を主属性、副特徴に対応する属性を副属性とする。先ほど補助属性と呼んだ属性が副属性である。
 特徴抽出部114が感覚器官110から情報を受けると、主特徴と必要に応じて副特徴が抽出される。抽出された主特徴と副特徴は、記憶領域112に特徴データとして保持される。
 甘味という主特徴である特徴データが甘味という主属性を表わす神経細胞につながり、甘味の程度という副特徴である特徴データが甘味の程度という副特徴に対応する副属性を表わす神経細胞につながる。甘味という主属性を表わす神経細胞は、甘味の程度という副属性を表わす神経細胞とつながる。この副属性は、甘味以外の主属性とつながってその主属性を修飾してもよい。他の属性から修飾される属性が主属性であり、他の属性を修飾する属性が副属性である。
 属性は、1つの主属性だけの場合と、1つの主属性と1つまたは1つ以上の副属性からなる場合がある。これは、形容詞と副詞とで修飾する場合に相当する。甘味という特徴データは、信号を甘味という属性を表わす神経細胞に送る。甘味の程度の特徴データは、甘味の程度に対応づけられた属性を表わす神経細胞に信号を送る。甘さの程度とは、砂糖の水溶液を味わったときを想像すればわかる。砂糖の濃度が高ければ甘さの程度は大きくなる。砂糖の濃度が低ければ、甘さの程度は小さくなる。信号を受けた甘味に対応づけられた属性を表わす神経細胞と、信号を受けた甘味の程度に対応づけられた属性を表わす神経細胞とは、樹状突起等によりつながる。このようにすると、物は、属性とその属性の程度、つまり、主属性と副属性とを持つことができる。
 たとえば、味覚神経から味覚情報を受け取り、甘味の次は苦味、苦味の次は酸味などのように、一定の順番で味の種類ごとの味の強さを表わす情報を並べた特徴データを作る。味の特徴データの並びの順番に、特徴データが属性領域115の特定の神経細胞とつながるようにする。このようにすると、属性領域115の特定の神経細胞が、特定の味を表わす。ある物が持つ甘味、酸味などの個別の味の特徴データもできる。個別の味を表わす属性は、すべての物が共通して使うことができる。また、一定の順番に並んだ味の特徴データの並び全体のパターンを1つの特徴データにして1つの属性につなげば、その物の全体の味の属性をつくることができる。
 このようにして、物は新しい属性を持ち、新しい属性をもつことによって、新しい知識を学習する。本願では、属性に対応づけられた神経細胞を属性の神経細胞、物に対応づけられた神経細胞を物の神経細胞と呼ぶ。主属性に対応づけられた神経細胞を主属性の神経細胞、副属性に対応づけられた神経細胞を副属性の神経細胞と呼ぶ。
 物を認識する手順を説明する。
 情報を入力する情報入力部である感覚器官110から情報を受け取り、受け取った情報から特徴抽出部114で特徴を抽出し、抽出された特徴を既に記憶領域112に保持されている特徴データと比較する。抽出される特徴は、1つの場合もあるが、通常は複数である。たとえば、音という情報が感覚器官110から入力され、音の高さ、音の大きさ、周波数分布、音の波形など複数の特徴が特徴抽出部114で抽出される。抽出された特徴と同じまたは類似の特徴データがあると、その特徴データからその特徴データにつながった属性に信号が送られる。新たに生成された特徴について、この処理を繰り返す。
 信号を送る特徴データは1つの場合もあるが、1つに限られることはなく、複数の特徴データが信号を送ることが多い。信号を受けた1つ以上の属性は、当該属性につながっている物に信号を送る。信号を受けた物のなかの1つの物が、感覚器官110に情報を与えた物として認識される。通常、一番多くの信号を受けた物が、感覚器官110に情報を与えた物として認識される。
 ただし、物は、各属性から同じ強さの信号を受けるとは限らない。ある属性からの信号が、他の属性からの信号より強くなるようなつながりになっている場合がある。そのため、単に多くの属性から信号を受けた物が、感覚器官110に情報を与えた物として認識される場合だけではなく、受けた信号の総量が多い物が認識されこともある。この手順が、認識を行う手順である。
 同じ属性を持つ物の集まりが知識の集まりである。知識の集まりにおいて、物と物とをつなぐことによって、物と物との関連を表わす。知識の集まりの中のつながりあった物が、知識ネットワークである。知識ネットワークによって関連の意味は異なる。たとえば物と物との関係は、親子関係、時間の前後関係、包含関係などさまざまな関係を表現できる。知識の集まりの中の知識ネットワークに、その知識の集まり以外の物をつないで知識ネットワークを作ってもよい。ある知識の集まりの中の物に限定せずにすべての物の中から物を選び、選ばれた物をつないで知識ネットワークを作ってもよい。
 知識ネットワークは、抽象的な物でもある。したがって、抽象的な物としての知識ネットワークを含んだ知識の集まりや知識ネットワークを生成できる。
 知識の集まりおよび知識ネットワークの生成方法の一例について説明する。
 物の領域111にある物に対応づけられた神経細胞70も物と呼ぶ。属性領域115の神経細胞71を属性と呼ぶ。物の領域111には、すべての物がある。このままでは、物の領域111から特定の物を探し出すのは難しい。次のようにすると、いくつかの物を選びだすことができる。ある属性から、その属性につながっている物に信号を送る。属性から信号を受けると、物は活性化する。活性化した物は、その属性を持った物である。このようにすると、ある属性を持つ物の集まりを生成することができる。これを知識の集まりと呼ぶ。信号を送る属性は、1つに限定されず、1つでも1つ以上でもよい。
 たとえば、鈴木家という属性を持つ知識の集まりを生成することができる。鈴木家という属性から信号を送ると、鈴木家の属性を持った父、母、子供に対応する物が信号を受け、活性化する。活性化した物を集めれば、鈴木家という属性を持った知識の集まりが生成できる。
 鈴木家の父に対応する物から鈴木家の子供に対応する物につながるようにしておく。また、鈴木家の母に対応する物から鈴木家の子供に対応する物につながるようにしておく。すると、このつながりは、親子関係になる。このつながりを辿ることにより、親子関係が明確になる。図44は、この例を表わしている。
 属性(4)は、鈴木家という属性である。物(F)は鈴木家の父、物(G)は鈴木家の母、物(H)は鈴木家の子供を表す。鈴木家の父である物(F)から鈴木家の子供である物(H)につながり、鈴木家の母である物(F)から鈴木家の子供である物(H)につながっている。これらのつながりによって、物の間の関係をより明確にすることができる。図44では、つながりは矢印であらわされている。
 このつながりは、双方向でもよい。しかし、多くの関係は方向を持っていると考えられる。したがって、単一方向、つまり、方向があるつながりが一般的である。単一方向のつながりで2つの物がつながっているとする。この単一方向のつながりを包含関係に対応づけると、たとえば、つながりの出発点の物が含む物(上位概念)になり、つながりの到着点の物が含まれる物(下位概念)になる。もちろん逆に対応づけることもできる。
 つながりで表わされる関係の意味は、情報ネットワークを生成した属性に依存することが多い。知識ネットワークごとにその知識ネットワークに応じたつながりを保持できる。含まれる物は同じであるが、つながりが異なる知識ネットワークをつくることは可能である。同じ家族を物とする知識ネットワークでも、身長順という関係でつながった知識ネットワーク、年齢順という関係でつながった知識ネットワーク、親子関係でつながった知識ネットワークなどさまざまな知識ネットワークを作ることができる。たとえば、身長順という関係でつながった知識ネットワークは、○○家という属性以外に身長という属性で特徴づけられる。
 知識ネットワークは、「水は水素と酸素とからできている」、というような構成物という関係を表わすこともある。知識ネットワークは、「人間は哺乳類に含まれる」、といような包含関係を表わすこともある。物Aと物Bとが、物Aから物Bにだけつながり、包含関係を表わしているとする。たとえば、物Aを哺乳類、物Bを人間とする。哺乳類共通の属性と哺乳類を表わす属性とを物Aが持ち、人間だけが持つ共通の属性と上位概念の哺乳類を表わす属性と物Bそのものの概念である人間を表わす属性とを、下位概念である物Bが持つようにする。このようにすると、下位概念を表わす物は、上位概念が持つ属性を持たなくても良い。上位概念を表わす物が持つ属性と下位概念を表わす物Bとが持つ属性を併せた属性が、下位概念を表わす物が持つ属性になる。このようにすると、物と属性のつながりを削減できる。必要に応じて、上位概念を表わす物が持つ属性を取得すればよい。
 2つの物を一方向のつながりでつなぐと、つながった2つの物を区別でききる。たとえば、2つの物の一方を上位概念を表わす抽象的な物に対応付け、他方を下位概念を表わす抽象的な物に対応付けることができる。一方向のつながりを、血縁関係に対応づけることもできる。これらは、一例であり、さまざまな関係を一方向の物のつながりで表現できる。
 知識の集まりと知識ネットワークとの利用方法の例を説明する。
 一旦、知識の集まり又は知識ネットワークが生成されると、外部から入力された情報が知識の集まりまたは知識ネットワークの知識と整合性があるかどうかを調べることができる。たとえば、1つの物といくつかの属性とが外部から入力されたとする。入力された属性をすべて持つ知識の集まりを生成する。その知識の集まりの中に、与えられた物が含まれていれば、その物は入力された属性を持つことが判る。また次のようにすると、与えられた2つの物の関係の有無を判断することも可能になる。一方の物から知識ネットワークのつながりを辿って、もう1つの物に辿りつくことができれば、両者に関係があることがわかる。このようにして与えられた2つの物の関係を取得できる。
 鈴木家の父という物と、花子さんという物と、鈴木家の家族という属性とが与えられたとする。図44の知識の集まりが鈴木家を表わすとする。鈴木家の家族という知識の集まりを使って、花子さんという物が鈴木家の家族かどうかを判断できる。鈴木家の家族という知識の集まりに、花子さんという物が含まれていないと、花子さんは鈴木家の家族ではないと判断できる。
 具体的な手順は次のようになる。鈴木家の家族という属性から物に信号を送る。信号を受けた物は、すべて鈴木家という属性を持っている。信号を受けた物全体が、鈴木家という属性を持った知識の集まりになる。この生成された知識の集まりに花子さんという物があれば、花子さんは、鈴木家の家族に含まれると判断できる。この生成された知識の集まりに花子さんという物がなければ、花子さんは、鈴木家の家族に含まれないと判断できる。
 花子さんは、鈴木雄三家の子供である次郎さんの娘だとする。図45の左側の枠が鈴木雄三家を表わす知識ネットワークである。図45の右側の枠が鈴木次郎家を表わす知識ネットワークである。次郎さんという物は、これらの2つの知識ネットワークに属している。
 また、図には描かれていないが、鈴木雄三家の雄三、恵、一郎、次郎という物は、鈴木雄三家を表わす属性とつながっている。図には描かれていないが、鈴木次郎家の次郎、美香、太郎、花子という物は、鈴木次郎家を表わす属性とつながっている。2つの知識ネットワークは、次郎という共通の物を持っている。
 鈴木雄三家を表わす属性は、たとえば、雄三、恵、一郎、次郎の4人が一緒いる映像から生成された特徴データとつながっている。また、雄三を表わす物は、たとえば、雄三の映像から生成された特徴データとつながった属性とつながっている。図45では、たとえば「雄三」という名前を表わす単語が記述されているが、これは説明のためだけに記述されている。
 鈴木次郎家という知識ネットワーク内の花子という物から同じ知識ネットワーク内の次郎という物に移動する。次郎という物は、鈴木雄三家という知識ネットワークにも属している。そこで、次郎という物を介して、鈴木次郎家という知識ネットワークから鈴木雄三家という知識ネットワークに移動する。そして、鈴木雄三家という知識ネットワーク内で、次郎から雄三に移動する。このようにして、花子という物から他の知識ネットワークの雄三という物に移動できるので、花子という物と雄三という物との間には、何らかの関係がある可能性がある。実際、雄三は花子のおじいさんである。このように、1つ知識ネットワークだけでなく、つながりあった知識ネットワーク使って推論ができる。
 指定された2つの物について、1つの知識ネットワーク内、あるいは、つながった他の知識ネットワークに移り、その知識ネットワーク内の物とのつながりを辿って、一方の物から他方の物へ移動する経路を見つけることができれば、指定された2つの物の間に何らかの関係がある可能性があると判断できる。このとき、辿られた経路は、2つの物の関係を表わす。一旦、2つの物の間に経路が見つかれば、つながった物が含まれる知識の集まりを新たに生成することもできる。2つの物を直接つなぐこともできる。
 知識の集まりの利用は、物同士の関係を見つけ出すために有効である。共通する物を持つ知識の集まり同士は、関連する可能性がある。また、知識ネットワークの利用も、物同士の関係が有るかどうかの可能性を見つけ出すために有効な方法である。2つの物の間に経路が見つかると、次に、2つの物が持つ属性を比較し、同じあるいは類似の属性を2つの物が持っているかどうかを調べる。同じ属性があれば、その属性について2つの物は、関連があると判断できる。類似の属性があれば、2つの物の関連がある可能性が高いと判断できる。このように本実施形態では、単語から生成された識別データなしで推論が行える。
 指定された物を出発点として、出発点から移動して辿りつける物を見つける。次に、見つけられた物と出発点である指定された物との属性を比較し、2つの物にどのような共通または類似する属性があるかどうかを調べる。共通する属性が見つかれば、2つの物が共通する属性によって関連していることが分かる。類似する属性が見つかれば、2つの物が類似する属性によって関連している可能性があることが分かる。だだし、共通または類似する属性が多いからといって重要な意味のある関連があるとは限らない。たった1つの共通属性あるいはたった1つの類似属性が重要な意味を持ち、新たに見つけられた物と物とのつながりが重要な意味のある関係になることもある。
 前述のように、単一の知識の集まりや単一の知識ネットワークを使って判断をすることもできる。また、複数の知識の集まりを使って判断をすることもできる。複数の知識ネットワークを使って判断をすることもできる。ある知識ネットワークに含まれる物から、その物が含まれる他の知識ネットワークを選択し、選択された他のネットワークに移動することができる。これを繰り返すと、1つ以上の知識ネットワークを経由して、他の知識ネットワークに移動できる。移動した先の知識ネットワーク内の物と出発点の知識ネットワーク内の物との間には、何らかの関連がある可能性がある。どの程度の可能性があるかは、知識ネットワークがどの程度適切に生成されているかということに依存する。
 1つの物が1つの知識である。共通する属性を持つ物の集まりが知識の集まりである。ある属性の神経細胞から物の領域の物の神経細胞に信号を送る。送られた信号を受けとる物の神経細胞すべてが、その属性に関する知識の集まりを構成する物になる。属性が対応づけられた物は、知識である。本願では簡略化のために、属性の神経細胞を属性と呼び、物の神経細胞を物と呼ぶことがある。
 属性を指定してその属性に関する知識の集まりを生成する。生成された知識の集まりに対して、さらに別の属性を指定して、その属性を持つ物を集めた新たな知識の集まりを生成する。これを繰り返せば、複数の属性を指定して知識の集まりを生成できる。
 知識の集まり内の物同士がつながっている場合がある。このつながった物の集まりが知識ネットワークである。このつながりに意味を持たせることができる。たとえば、「人間は哺乳類である」というような包含関係、「雄三さんは次郎さんの父である」というような血縁関係、位置関係、時間の前後関係など、物同士のつながりで、物の間の関係を表現することができる。
 図16は、ある属性に関連した知識の集まりを生成する例を示している。物(A)は、属性(1)で生成された知識の集まりにも、属性(2)で生成された知識の集まりにも属している。このようにすると、物が持つさまざまな属性ごとに知識の集まりを作り、知識を整理し、利用できる。物や属性を作ること、物同士、属性同士、物と属性とをつなぐことは、学習である。特徴データを作ること、特徴データと物、特徴データと属性とをつなぐことも学習である。識別データを作ること、識別データと物、識別データと属性とをつなぐことも学習である。また、物、属性、特徴データ、及び識別データのつながりを削除することも学習である。
 一旦学習が行われた後、同じ情報が感覚器官から入力されると、入力された情報から特徴抽出部1020によって特徴が抽出される。記憶領域に同じ特徴の特徴データがあり、その特徴データが、属性領域の属性を経由して物とつながっていると、その特徴データから物へ信号が送られる。抽出された特徴と類似の特徴データがあった場合にも、同じように信号が送られ、物が信号を受け取る。信号を受け取った物は活性化する。これが、物を認識する方法である。複数の特徴データから属性を経由して、いくつかの物に信号が届く。一番強い信号を受けた物が、その物の第一候補となる。
 たとえば、図5の特徴抽出部は、感覚器官である耳で受け取った音から特徴を抽出する。図5に描かれていないが、データ比較部1030に相当する脳内のデータ比較部は、抽出された特徴と記憶領域に保持されている特徴データとを比較する。そして、脳内のデータ比較部は、一致または類似する特徴データに対応する属性に信号を送り、信号を受けた属性が物に信号を送ることにより、耳で聞いた音によって物が認識される。
 従来技術では、個々の属性に対して論理演算をしなければならない。従来技術であるPROLOGのようなプログラム言語では、物、属性、関係は、言葉としての文字列、つまり物、属性、または、関係の意味を表わす単語で表現されている。1組の単語の並びを知識の基本単位として、単語の並びを複数組保持することにより、知識を構築している。このような従来技術では、単語の並びの間の関連を直接表わしていない。また、広範囲で複雑に関連する暗黙知とよばれる知識を表現することが困難であった。そのため、人間が日常的に行っている簡単な判断を従来技術で行うことは難しかった。
 本実施形態の知識の集まりを用いると、与えられた物がある条件を満たしているかどうかを簡単に判断できる。あらかじめ与えられた1つまたは1つ以上の属性の属性識別子を指定して、知識の集まりを生成する。指定された属性は、ある物がこの知識の集まりに含まれるための条件である。次に、与えられた物がこの知識の集まりに含まれているかどうかを、知識の集まりを検索して調べる。もし含まれていれば、与えられた物は条件を満たすと判断できる。
 本実施形態の知識ネットワークを用いると、推論ができる。
 たとえば、さまざまな病気を物とする知識の集まりをあらかじめ保持しておく。この知識の集まり中の物は、病気という属性を持っている。病気という属性は、病気で寝込んでいる人の映像から生成された特徴データや、病気になったときのさまざまな症状の特徴データとつながっている。病気という抽象的な物には、病気という属性がつながっている。
 たとえば、顔色の悪い人の顔の映像が知識ベースシステムに入力されると、その特徴データが生成され、同じ特徴データが知識ベース内にあるかが調べられる。同じ特徴データがあると、顔色の悪い顔の特徴データにつながっている病気という属性が取得される。次に、病気という属性につながっている病気という抽象的な物が取得され、病気であると認識される。
 特徴データとして知識ベース内に保持されている症状と一致すると判断される症状の情報が入力されると、病気という抽象的な物が取得できる。このようにして病気であるという大雑把な判断ができる。
 どの病気であるかという更に詳しい判断は次のようにして行う。
 この知識の集まりには、風邪や肺炎など個々の病気も物として含まれている。風邪や結核などの各病気という物は、病名や症状を属性として持っている。風邪の病名という属性は、風邪という文字の映像から生成された識別データや、風邪という単語の音声から生成された識別データとつながっている。しかし、知識ベース内において、前述の病名を表わす識別データ自身は、病気に関する意味や概念を表すものとして利用されない。風邪という物は、たとえば、扁桃腺の腫れという属性を持つ。扁桃腺の腫れという属性には腫れた扁桃腺の映像の特徴データがつながる。このように、属性に特徴データがつながることにより、概念や意味が生成される。扁桃腺の腫れなどの1つの属性に、多くの種類の扁桃腺の映像から生成された特徴データがつながることができる。1つの属性に多くの種類の特徴データがつながっているほど、適切な判断ができる。
 たとえば、まず、腫れた扁桃腺の映像を外部から知識ベースシステムに入力し、その映像から特徴を抽出し、特徴データを生成する。次に、生成された特徴データと同じと判断された特徴データが知識ベース内にあるか探す。そして、同じと判断された特徴データが見つかると、その特徴データにつながる属性を取得する。
 さまざまな症状の情報を外部から知識ベースシステムに入力し、同様の処理を繰り返し、同じと判断された特徴データとつながった属性を取得する。取得された属性がより多くつながっている物、または、取得された属性がすべてつながっている物が、その症状の病気である可能性が高い。取得された属性がつながる病気である物のうち、いくつかを表示装置に表示することにより、診断の教育システムや診断支援システムが作れる。
 この知識の集まりの中に知識ネットワークを生成できる。病気という物を出発点にしてさまざまな病気が体系的につながっている知識ネットワークを生成できる。関連する病気をつないだ知識ネットワークも生成できる。たとえば、ある知識ネットワーク内で、風邪という物と肺炎という物をつなぐ。風邪をこじらせると肺炎になるというふたつの病気の関連性を一方向のつながりで表現する。このような知識ネットワークを利用すると、関連する病名を表示し診断を支援することもできる。たとえば、風邪の症状のある患者に関して、医師に肺炎の兆候の有無を確認するよう助言できる。
 直感を真似る仕組を作ることもできる。
 指定された2つの物について、1つまたは複数の情報ネットワークを経由して、一方の物から他方の物へ移動する経路を見つけることができれば、指定された2つの物の間に何らかの関係がある可能性があると判断できる。この処理は、人間が何気なく行っている直感的な判断に対応づけることができる。その後、共通度、非共通度、類似度など、属性を詳しく調べ、関連性について詳しい判断をすればよい。属性につながっている特徴データの比較を行い、さらに詳細に評価することもできる。記号論理を土台とした従来技術は、狭い範囲で詳細な論理的評価が行えるので、記号論理に基づいた方法は、この段階で効果的に利用できる。
 本願技術は何らかの判断をする業務において、判断業務の支援システムや判断業務の教育支援システムの構築に利用できる。
 音声認識という技術がある。音声認識でも本技術を利用できる。音声から特徴を抽出し、抽出された特徴を識別データとして保持しておき、その識別データをあらかじめ物や属性に対応づけておく。物と属性と識別データとは、前述の3階層構造でつないでおく。このようにしておくと、入力された音声を元に、音声が表わす単語の識別データを取得するだけでなく、音声に対応した概念や意味や物を取得できる。入力された音声から特徴を抽出し、識別データを生成する。生成された識別データと類似または一致した識別データとつながった属性や物を取得し、認識することができる。認識された物につながる他の属性を取得し、その属性につながる特徴データや識別データが取得できる。このような音声認識システムだけでなく、映像から特徴を抽出すれば映像認識システムとしても実施できる。温度センサ、圧力センサなどのセンサから特徴を抽出すれば、設備の監視システムとしても利用できる。もちろん文字で記述された情報にも利用できる。
 知識ネットワークを使って図形を表現することもできる。点、線、面、立体などの図形要素を物にして、図形要素である物をつなげば知識ネットワークで図形を扱える。
 図46は、図形の一例として三角形121を示している。三角形以外の図形でもよい。また、平面図形に限らず立体図形でもよい。三角形121は、3個の線(直線)123と、3個の線123が互いに交わる3個の点(頂点)122と、3個の線123で囲われた面124とからなる。線123の代わりに曲線でも図形はできる。面124は平坦面ではなく曲面であってもよい。線123、点122、面124を物であると考え、線123、点122または面124からなる知識ネットワークを作る。
 図47は、3個の点122で三角形121という図形を表わす知識ネットワークである。各点122は、物であるから属性を持つことができる。点122は、例えば、属性として座標値などを持つことができる。
 図48は、点122と線123とで三角形121という平面の図形を表わす知識ネットワークである。点122と線123とが交互につながった知識ネットワークで図形を表わしている。この例では、点122は、属性として座標位置や内角を持つ。線123は、属性として線の長さを持つ。ただし、属性は、座標位置や長さに限られるものではない。
 図49は、三角形121という平面の図形と、その図形の構成要素である線123をつないだ知識ネットワークである。図形のすべての構成要素と、平面をつないでもよいし、1個あるいは2個以上の構成要素を平面とつないでもよい。もちろん点という物を含んでいてもよい。
 平面の属性として、面積、二辺の長さが等しいという特徴、二等辺三角形という名称などを持ってもよい。図形要素という物は、映像から生成された特徴データとつながることで、その意味や概念が生成される。二辺の長さが等しいという特徴である属性は、二等辺三角形の映像から生成された特徴データにつながる。二等辺三角形という名称を表わす属性は、二等辺三角形という単語の文字の映像から生成された識別データや、二等辺三角形という音声から生成された識別データとつながっている。二等辺三角形という単語から生成された識別データだけを表わす属性は、二等辺三角形の意味や概念を表わす特徴データとつながらない。この例では、意味を持たず識別するためだけの属性と物の概念や意味を表わす属性とを明確に分離している。
 1つの属性につながる特徴データの数は、1つに限定されない。図50は、三角錐という立体の図形で、4個の三角形(面)121で構成されている。図51は、三角錐を例に、立体を知識ネットワークで表わした例である。立体の構成要素である三角形(面)121を、面を構成する図形要素とつなぐ。さらに、各面が共有する線(辺)123について、その辺を表す線同士をつなぐ。このように表わすと、立体を構成する面がどのように接しているかを表わすことができる。点や線などの共通する構成要素をつなぐ代わりに、共有する点や線などの構成要素について、複数の面で同じ点や線を用いることもできる。立体の展開図のように、いくつかの表現方法が可能である。
 人間は、人の顔を認識するときに、目、鼻、口の位置関係を使うことがある。図52は、目126、鼻127、口128を表わしている。図53は、目と目を結ぶ直線、目と鼻を結ぶ直線、鼻と口を結ぶ直線を物とし、各物をつなぐ知識ネットワークの例である。つまり、顔の図形的な特徴を表わした知識ネットワークである。各直線の属性として線の長さを持つことにする。この知識ネットワークから、目の間の長さと目から鼻までの長さなどの比率を求めることができる。これらの比率が顔の特徴になる。
 例えば、外部から与えられた顔の映像から特徴を抽出し、図53のような知識ネットワークを生成し、目、鼻、口の距離の比率を求める。あらかじめ保持された顔の知識ネットワークについても同様の比率を求め、両者を比べる。このようにすると、外部から与えられた顔の映像と記憶している顔が似ているかどうかの判断ができる。
 図54は、将棋の盤面を表わした知識ネットワークである。将棋の駒を置く場所129が物である。駒を置く場所129が升目のようにつながった知識ネットワークである。駒を置く場所129は、盤面のなかでの位置を表わす情報を属性として持つ。たとえば(1、1)のように盤面の1つの角から縦横何番目に位置するかで表わす。また、碁盤に駒を置くと、駒を置く場所129の属性に、置かれた駒の種類が追加される。王、歩などが駒の種類である。駒がない状態は、空いていることを示す属性を持つか、あるいは、駒の属性を持たないようにして表現する。駒が移動すると、移動先にその駒の属性を移す。元の場所は、駒がない状態にする。駒を置く場所129の属性として、その場所の安全性や重要性の程度を表わす値など、さまざまな情報を持つことができる。
 また、図外にある駒を表わすものも物であり、その属性として駒の種類、移動可能範囲などの属性を持つ。各駒が移動可能な位置の駒を置く場所129が、「歩を移動可能」などの属性を持ってもよい。物である駒を置く場所129が、物である駒とつながり、駒自身が駒の移動稼動範囲などの属性を持ってもよい。目的に応じてより適した方法を採用することができる。
 具体的な物や抽象的な物を図形要素のように空間的な位置関係でつないで知識ネットワークを作ることもできる。このようにすると、(IF THEN ELSE)のような記号論理とは異なる判断あるいは推論ができる。空間的な位置関係によって、判断あるいは推論ができる。
 たとえば、物Aと物Bの隔たりと物Aと物Cの隔たりを比較し、物Aとの隔たりがより小さい物を選択するという判断あるいは推論ができる。物の隔たりを判断基準にして判断あるいは推論ができる。3次元の空間のように物同士をつないだ知識ネットワークにおいて、より上にある物を選択するという判断あるいは推論もできる。物がつながって生成された空間の中の位置を判断基準にして判断あるいは推論ができる。これは大局観に相当する。
 本実施形態では、属性が表わす意味や概念を表わす抽象的な物も扱える。この場合は、抽象的な物の意味を表わす特徴データとつながった属性が、物につながる。「熱さ」という抽象的な物の場合、ある属性が熱い物に触れたときの熱さの感覚の特徴データとつながり、さらにその属性が物につながる。この物が「熱さ」という抽象的な物である。「熱さ」という抽象的な物は、熱さという単語から生成された識別データとつながった属性ともつながることができるが、熱さという単語から生成された識別データとつながった属性はなくてもよい。本実施形態を使うと、単語あるいは言葉から生成された識別データなしで、知識の集まりや知識ネットワークを生成し、知識を蓄積し、推論などの知的処理ができる。
 ただし、単語あるいは言葉から生成された識別データが物や属性につながっていると、単語から生成された識別データによる識別や選択が可能になる。識別データと直接つながる物は、識別データによって識別できる。識別データとつながった属性は、識別データによって識別できる。さらに、識別データとつながった属性が物につながると、その物は識別データによって間接的に選択し、識別できる。
 一実施形態の知識ベースシステムは、識別データなしで特徴データと属性と物から知識ベース構築し、知識を蓄積し、推論などの知識処理ができる。識別データと特徴データと属性と物から知識ベース構築し、知識を蓄積し推論などの知識処理もできる。また、特徴データなしで識別データと属性と物からなる知識ベースを構築し、知識を蓄積し推論などの知識処理もできる。しかしこの場合、知識ベースは意味や概念を持たない。本願技術の一実施形態の知識ベースは、識別データまたは特徴データと、属性と物とから構成される。
 リレーショナルデータベース14を使ってつながりを表で表現する実施形態を説明した。リレーショナルデータベース14は、表を効率よく取り扱える。しかし、つながりを扱える他のソフトウエアでもかまわない。リスト構造というデータ構造を扱えるソフトウエアでも可能であるが、リスト構造を実現するためには、表の形式のデータを使うことになる。リスト構造とは、物であるノードを実現するデータ構造で使われているように、要素同士のつながりポインタで表わす。表でつながりを表わす場合は、つながり合う要素同士を1つの行に並べた表をつくる。ポインタでつながりを表現するか、1つの行に要素を並べて、つながりを表現するかの違いである。
 また、連想メモリのような装置や集積回路などの電子部品でもよい。連想メモリは、内部に表を持ち、ハードウエアによって次のような処理を行う。連想メモリ外からデータを受け取り、受け取ったデータの一部または全部が一致するデータが表の中にあるかどうかを調べる。一致するデータが表の中にあった場合、その一致するデータに関連づけられたデータを連想メモリ内の表から取得し、取得されたデータを出力する。連想メモリ内の表として、物と物を対応付けた表、物と属性を対応づけた表、属性と特徴データを対応づけた表などつながりを表わす表を作成しておく。
 この連想メモリに、物、属性、特徴データ、識別データの識別子を入力すると、その識別子が連想メモリ内にあるかどうかを調べる。その識別子が連想メモリ内にあると、その識別子に対応づけられた物、属性、特徴データ、識別データなどの識別子が表から取得され出力される。つまり、つながっている物、属性、特徴データ、識別データなどの識別子が取得できる。連想メモリ内の表で対応づけられているデータが出力される。このようにすると、リレーショナルデータベース14を使って表を検索するのと同じ処理が行える。連想メモリ内の表のデータを追加削除することもできる。連想メモリは、リレーショナルデータベース14の検索、追加、削除機能と表形式データを持つ装置あるいは集積回路などの電子部品である。
 ただし、1つの連想メモリに格納できるデータ量には限度がある。また、大量のデータを1つの連想メモリに格納すると検索時間が長くなるという問題がある。
 図55のようなネットワークを使って実施することも可能である。図55のネットワークは、一実施形態であり、図55のネットワークに限定されない。このようなネットワークを、検索ネットワークと呼ぶ。
 表を使って識別子を対応づけるかわりに、図55のようなネットワークを使って識別子を対応づけることができる。このネットワークを使って、対応づけられた識別子を検索、追加、削除できる。図55のネットワークは、表だけを保持する図7の補助記憶装置7のひとつで、図55のネットワーク内の通信装置内にリレーショナルデータベース14の表と同等のデータを分解して保持し、リレーショナルデータベース14と同等の検索処理を行う。リレーショナルデータベース14よりも速く検索が行える。
 通常のネットワークは、あて先である通信装置識別子を含む情報を送信し、そのあて先がその通信装置識別子に一致する通信装置が受信する。本ネットワークでは、あて先を含まず送信元の通信装置識別子を含む情報を送信する。これにより、受信相手を指定しないであらかじめ指定された相手にデータを送信できる。
 図55は、ネットワーク151を表わしている。図55のネットワーク151は、通信路155を介して互いに接続される送信装置152、通信装置156、制御部160、及び送信受付部161で構成される。送信装置152は、送信部153を有する。また、通信装置156は、受信部157、通信装置識別子158、受信可能識別子159、検索部162、アドレス163を有する。
 このネットワーク151では、共有する送信装置152を使って、通信装置156に情報を送信する。送信装置152および送信部153は、各通信装置156に含まれるように実装してもよい。しかし、同時に送信できるのは1つの送信装置152の送信部153に限るので、1つの送信装置152および送信部153を複数の通信装置156で共用するほうが望ましい。送信装置152を1つに限るのは、通信路155で送信データの衝突が起こらなくなり、伝送効率が大幅に向上するからである。送信装置152から複数の通信装置156に対して同時に送信しているため更に効率がよい。
 送信受付部161は、制御部160から送信指示と送信データを受け付ける。送信データは、あて先を含まず、送信元の通信装置156の識別子である通信装置識別子158を1つだけ含む。1つの通信装置156が1つの物や属性や特徴データや識別データに対応づけられる。送信部153は、送信受付部161が受け取った送信元の通信装置識別子158を1つだけ含み、あて先を含まない情報を通信路155へ送信する。通信路155は、送信装置152と通信装置156とをつなぐ。通信路155は、電線や光ケーブル以外に、空間そのものが通信路155になってもよい。通信路155は何でもよい。
 通信装置156は、受信部157と、通信装置156自身の識別子である通信装置識別子158と、受信可能な通信装置156の識別子である受信可能識別子159と、検索部162とを持つ。通信装置識別子158は、1つのネットワークにおいてその通信装置156を識別する識別子であり、あらかじめ制御部160によって通信装置156に設定されている。受信可能識別子159は、1つの神経細胞に相当するその通信装置156につながっている他の神経細胞に相当する他の通信装置156の通信装置識別子158である。受信可能識別子159は、制御部160によって通信装置156にあらかじめ設定されている。
 制御部160は、通信装置156の受信可能識別子159を追加削除できる。これにより、神経細胞に相当する通信装置156同士をつなぐ、あるいは、つながりを削除できる。受信部157は、送信装置152から送信されたデータの中の送信元の通信装置識別子158を通信路155から受け取る。
 検索部162は、受け取った通信装置識別子158が受信可能識別子159のどれかと一致するかを調べる。受け取った送信元の通信装置識別子158が受信可能識別子159のどれかと一致すれば、検索部162は、その通信装置156自身の通信装置識別子158を含むデータを制御部160に出力する。これは、神経細胞に相当する通信装置156が、つながっている他の神経細胞である他の通信装置156から信号を受け取ったことに相当する。
 一方、受け取った送信元の通信装置識別子158が受信可能識別子159のいずれとも一致しないときは、通信装置156はその通信装置識別子158を出力しない。この場合、受け取った送信元の通信装置識別子158で識別される神経細胞に相当する通信装置156が、その神経細胞に相当する通信装置156とつながっていないことを表わす。このネットワークを使うと、ある通信装置識別子と別の通信装置識別子とを対応づけた表を、ある通信装置識別子で検索し、その通信装置識別子に対応づけられた他の通信装置識別子を取得するのと同じ処理ができる。つまり、このネットワークを使って表を検索することができる。
 制御部160は、検索部162によって出力された通信装置識別子158を受け取ると、受け取った通信装置識別子158を含むデータは、図外の装置に渡される。制御部160は、図外の装置より神経細胞に相当する通信装置の識別子である送信元の通信装置識別子158を含む送信指示を受け、受け取った送信指示を送信受付部161に送る。
 各通信装置156のアドレス163は、通信装置156を一意に識別する。制御部160は、このアドレス163で通信装置156を指定し、通信装置識別子158や受信可能識別子159を含むデータを設定する。図外のコンピュータあるいは知識ベースシステムは、通信装置識別子158、受信可能識別子159、通信装置156のアドレス163を含むデータを制御部160に送り、アドレス163で指定された通信装置156に、通信装置識別子158、受信可能識別子159を含むデータを設定する。通信装置識別子158は、ネットワーク151内で通信装置156を識別し、通信装置156のアドレス163はネットワーク151外から通信装置156を識別するために用いられる。
 図外の装置から表の検索を行う場合、図外の装置から制御部160装置に送信元の通信装置識別子158を含む送信指示を送る。ネットワーク151は前述の処理を行う。送信指示に含まれる送信元の通信装置識別子158で識別される通信装置156とつながる他の通信装置156の通信装置識別子158受け取ると、制御部160は、つながっている他の通信装置156の通信装置識別子158を含むデータを図外の装置に送る。
 このようなネットワーク151を使って実施すると、各通信装置156での検索処理が並列に行え、かつ、個々の通信装置156の検索処理がハードウエアで行われるので、非常に高速に表の検索が行える。そのため、処理速度が飛躍的に速くなる。素早い応答が要求される分野でも利用できる。
 本ネットワークの通信装置156は、仕組が単純であり、集積回路として容易に実施できる。1つの集積回路に複数の通信装置156を組み込むことも容易である。複数の通信装置156を持つ集積回路を並列に複数個つないでネットワークを生成すると、大きな表を作成できる。大容量の知識情報を蓄積し、高速に処理できる知識ベースシステムが構築できる。データベースを使うと、データベースの性能を維持するための保守作業を定期的に行う必要があるが、このネットワーク151ではその必要がない。
 図7に示される演算装置2と、図55のネットワーク151は、制御部160でつながり、演算装置2から図55の制御部160に対して指示やデータが渡される。また、演算装置2は制御部160からデータを受け取る。
 例えば、演算装置2から制御部160にアドレス163と通信装置識別子158や受信可能識別子159を含むデータと共に設定指示が渡されると、制御部160は、そのアドレス163の通信装置156に、受け取った通信装置識別子158や受信可能識別子159を含むデータを設定する。
 また、演算装置2から制御部160に送信指示と送信元の通信装置識別子158とを渡すと、制御部160は、送信指示と送信元の通信装置識別子158とを送信受付部161に送る。送信受付部161は、送信装置152の送信部153に送信指示と送信元の通信装置識別子158とを送る。送信部153は、通信路155に送信元の通信装置識別子158を送信する。通信装置156は、通信路155から送信元の通信装置識別子158を受け取ると、受信した送信元の通信装置識別子158と受信可能識別子159とを比較する。一致すれば、その通信装置156の通信装置識別子158を制御部160に渡す。受信可能識別子159と直接対応づけられたデータがその通信装置156内に設定されている場合は、その通信装置156の通信装置識別子158と、その受信可能識別子159と直接対応づけられたデータとが、制御部160に渡される。
 制御部160は、渡された通信装置識別子158を含むデータを演算装置2に渡す。
 あるいは、通信装置156は、その通信装置156の通信装置識別子158を含むデータと受信した送信元の通信装置識別子158とを制御部160に渡す。制御部160は、通信装置156の通信装置識別子158を含むデータと送信元の通信装置識別子158との組を演算装置2に渡してもよい。
 通信装置識別子158は、物、属性、特徴データまたは識別データの識別子である。つまり、1つの通信装置156は、1つの物、属性、特徴データまたは識別データである。だだし、特徴データの実際のデータは、特徴データの識別子と共に、図55のネットワーク151以外のデータ10に格納され、特徴データの識別子によって参照される。識別データの実際のデータも識別データの識別子と共に図55のネットワーク151以外のデータ10に格納され、識別データの識別子によって参照される。
 受信可能識別子159は、たとえばその通信装置156である1つの物につながっている他の物、他の属性、他の特徴データまたは他の識別データの識別子である。通信装置156は、物、属性、特徴データまたは識別データを表わしている。つまり、このネットワーク151は、物、属性、特徴データ、識別データのつながりを表わしている。通信装置156に設定されるデータは、リレーショナルデータベース14の表などとして保持されている。
 物、属性、特徴データ、識別データを対応づけてつながりを表わす表を、分解した表の説明をする。
 つながりを表わす表について、対応づけられた一方の列を選択し、選択された列の1つの識別子を選び、その識別子とつながり対応づけられる他方の列の識別子を抜き出す。1つの識別子と抜き出されたいくつかの識別子だけを対応づける表を新たに作成する。その列の識別子についてこの処理を繰り返す。つながりを表わす表の各行に、さらに、つながりの程度を表わす重みなどの付属情報が対応づけられている場合、対応づけられた他方の列の識別子に付属情報をさらに対応づけて表を作成してもよい。付属情報は重みに限定されない。
 次に、他方の列である後者の列を選択し、選択された列の1つの識別子を選び、その識別子とつながり対応づけられる一方の列である前者の列の識別子を抜き出す。1つの識別子と抜き出されたいくつかの識別子だけを対応づける表を新たに作成する。その列の識別子についてこの処理を繰り返す。つながりを表わす表の各行に、さらに、つながりの程度を表わす重みなどの付属情報が対応づけられている場合、対応づけられた前者の列の識別子に付属情報をさらに対応づけて表を作成してもよい。付属情報は重みに限定されない。
 新たに作成された1つの表が1つの物、属性、特徴データ、識別データに相当する。この表は、たとえば、1つの物識別子と、その1つの物につながる他の物、属性、特徴データまたは識別データの識別子を対応づける。したがって、その1つの物、属性、特徴データまたは識別データの識別子と、物、属性、特徴データまたは識別データの識別子を保持する列数が1の表の組み合わせとしてもよい。つながっている他の物、属性、特徴データまたは識別データを表わす識別子の数は、0個以上で、1個に限定されない。
 図56の特徴データと属性とを対応づける表は、図57の1つの特徴データといくつかの属性とを対応づける表と、図58の1つの属性といくつかの特徴データとを対応づける表とに分解できる。表には、属性の代わりに属性識別子、特徴データの代わりに特徴データの識別子が格納されている。
 図56の特徴データと属性とを対応づける表の一方の列である特徴データの識別子の列から1つの特徴データの識別子(10001)を取得する。他方の列である属性識別子の列から、特徴データの識別子(10001)と対応づけられた属性識別子(14)を抜き出し取得する。取得された1つの特徴データの識別子(10001)と、抜き出され取得された属性識別子(14)だけを対応づけた表を生成する。これが、図57の表である。図56の表の各行に重みなどの付属情報があり各行に対応づけられている場合は、特徴データの識別子(10001)と対応づけられた属性識別子(14)とに、さらにその付属情報を対応づけて図57の表を作成してもよい。図56の特徴データと属性を対応づける表の一方の列である特徴データの識別子の列のすべての特徴データの識別子について上記処理を繰り返す。
 図56の特徴データと属性とを対応づける表の属性識別子の列から1つの属性識別子(14)を取得する。特徴データの識別子の列から、属性識別子(14)と対応づけられた特徴データの識別子(10001)を抜き出し取得する。さらに、属性識別子(14)と対応づけられた特徴データの識別子(45000)を抜き出し取得する。取得された1つの属性識別子(14)と、抜き出され取得された特徴データの識別子(10001、45000)だけを対応づけた表を生成する。これが、図58の表である。図56の表の各行に重みなどの付属情報があり各行に対応づけられている場合は、属性識別子(14)と対応づけられた特徴データの識別子(10001)に、さらにその付属情報を対応づけて図58の表を作成してもよい。図56の特徴データと属性を対応づける表の後者の属性の列のすべての属性識別子について上記処理を繰り返す。
 このようにすると、図56の特徴データと属性とを対応づける1つの表は、1つの特徴データと、その1つの特徴データと直接対応づけられたいくつかの属性とを表わす表と、1つの属性と、その1つの属性と直接対応づけられたいくつかの特徴データとを表わす表とに分解される。これらの分解された1つの表を1つの通信装置156に割り当てる。前者の表の場合は、1つの特徴データの識別子が通信装置識別子158に設定され、いくつかの属性識別子が受信可能識別子159として設定される。図55には描かれていないが、属性識別子に付属情報が直接対応づけられている場合は、付属情報は属性識別子、つまり受信可能識別子159に直接対応づけられて通信装置156内に設定される。受信可能識別子159の表が1列の表ではなく複数列の表になって、対応づけられた属性識別子と同じ行に付属情報が設定される。
 データ10には、未使用の物識別子、未使用の属性識別子、未使用の特徴データの識別子、未使用の識別データの識別子を保持する未使用識別子一覧がある。たとえば図19の物と属性とを対応づける表で使われている物識別子や属性識別子は、未使用識別子一覧から取得されたものである。特徴データの識別子も識別データの識別子も未使用識別子一覧から取得されたものである。
 1つのネットワーク151内では、通信装置156と通信装置のアドレス163は、あらかじめ1対1に対応付けられ、1つの通信装置のアドレス163で通信装置156を1つだけ指定できる。データ10には、未使用の通信装置のアドレス163を保持する未使用通信装置一覧がある。また、データ10には、通信装置のアドレス163と、物識別子、属性識別子、特徴データの識別子または識別データの識別子とを対応づけたアドレス識別子対応表がある。
 演算装置2が制御部160に設定指示や送信指示を渡す場合、アドレス識別子対応表を使って、物、属性、特徴データまたは識別データの識別子から通信装置のアドレス163を取得し、取得されたアドレス163を含むデータと指示を制御部160に渡す。物、属性、特徴データまたは識別データが生成されるとき、未使用識別子一覧から識別子が取得され、未使用通信装置一覧から通信装置のアドレス163が取得され、取得された識別子とアドレス163の対がアドレス識別子対応表に格納される。
 ネットワーク151内では、1つの通信装置156が1つの物、1つの属性、1つの特徴データまたは1つの識別データに相当する。なお、音声や映像などから抽出された特徴である特徴データまたは識別データの実際のデータは、図55のネットワーク151以外のデータ10に保持されている。演算装置2は、ネットワーク151の制御部160にアドレス163とそのアドレス163で特定される通信装置156に設定する通信装置識別子158と受信可能識別子159とを含むデータを渡し、そのアドレス163で特定される通信装置156に通信装置識別子158と受信可能識別子159とを含むデータを設定するように指示を出す。指示を受けた制御部160は、受け取ったデータと指示にしたがって、そのアドレス163で特定される通信装置156に通信装置識別子158と受信可能識別子159とを含むデータを設定する。そして、その通信装置のアドレス163と通信装置識別子158に使われた識別子が対応付けられ、アドレス識別子対応表に格納される。
 図56の特徴データと属性とを対応づける表は、図57の1つの特徴データといくつかの属性とを対応づける表と、図58の1つの属性といくつかの特徴データを対応づける表に分解できる。表には、属性の代わりに属性識別子、特徴データの代わりに特徴データの識別子が格納されている。
 図57を例に説明する。図57の最初の表について説明する。未使用通信装置一覧から未使用のアドレス163を1つ取得する。取得されたアドレス163と図57の最初の表の特徴データの識別子(10001)との組をアドレス識別子対応表に格納する。これで、アドレス163と特徴データの識別子とが対応づけられた。すでに、アドレス163と特徴データの識別子(10001)とが対応づけられている場合は、アドレス識別子対応表から特徴データの識別子(10001)に対応づけられたアドレス163を取得する。
 演算装置2は、取得されたアドレス163と通信装置識別子158としての特徴データの識別子(10001)と、受信可能識別子159としての属性識別子(14)と、付属情報である重み(1)と、設定指示とを制御部160に渡す。制御部160は、渡されたアドレス163で特定される通信装置156に対して、通信装置識別子158として受け取った特徴データの識別子(10001)を設定し、受信可能識別子159として受け取った属性識別子(14)を設定し、属性識別子(14)の付属データとして重み(1)を設定する。図57のすべての表について同じように設定を繰り返す。図58の表も同じようにする。
 図56の表のデータと図57の表のデータをすべて設定すると、図56の特徴データと属性とを対応付ける表が、図55のネットワークに格納されたことになる。1つの選択ネットワークが、図56のような、識別子を対応づけつながりを表わしている、1つの表になる。
 たとえば、演算装置2が、制御部160に送信元の識別子として属性識別子(14)と送信指示とを渡すと、制御部160は、受け取った送信元識別子と送信指示とを送信受付部161に渡す。送信受付部161は、受け取った送信元識別子と送信指示とを送信装置152の送信部153に渡す。送信部153は、受け取った送信指示にしたがって、受け取った送信元識別子(14)を通信路155に送信する。
 図57の一番上の表の特徴データの識別子(10001)が通信装置識別子158に設定され、同じ表の属性識別子(14)が受信可能識別子159に設定された通信装置156の受信部157が、送信元識別子(14)を通信路155から受け取る。すると、検索部162は、受け取った送信元識別子(14)が、受信可能識別子159のどれかと一致するかを調べる。この場合、受け取った送信元識別子(14)が、設定された受信可能識別子159の1つと一致する。その通信装置156の通信装置識別子158である特徴データの識別子(10001)と付属データである重み(1)とが通信装置156から制御部160に渡される。
 図57の上から2番目の表の特徴データの識別子(45000)が通信装置識別子に設定され、同じ表の属性識別子(14)が受信可能識別子に設定された別の通信装置156の受信部157が、通信路155から送信元識別子(14)を受け取る。すると、検索部162は、受け取った送信元識別子(14)が、受信可能識別子159のどれかと一致するかを調べる。この場合、受け取った送信元識別子(14)が、設定された受信可能識別子159の1つと一致する。この通信装置156は、その通信装置156の通信装置識別子である特徴データの識別子(45000)と付属データである重み(2)とを制御部160に渡す。
 演算装置2は、通信装置156から制御部160に渡されたデータである特徴データの識別子(10001)と付属データである重み(1)との組と、特徴データの識別子(45000)と付属データである重み(2)との組を受け取る。特徴データ(10001)と特徴データ(45000)とが、属性識別子(14)につながり対応づけられていることが判る。さらに、つながりの強さをあらわす重みも特徴データの付属情報として取得できる。
 上記の処理は、図56の表を、リレーショナルデータベース14を使い、属性識別子(14)を検索キーにして検索したことと同じである。
 通信装置156に受信可能識別子159の付属データが設定されていない場合、通信装置156は、付属データを制御部160に渡さないようにしてもよいし、付属情報がないことを表わす特別なデータ、たとえばNULLを制御部160に渡してもよい。
 プログラムは、処理手順をプログラムという情報で表わしたものである。これを、ハードウエア化することは可能である。従って、本願技術のプログラムをハードウエアで実施することも可能である。本技術のプログラムをハードウエアで実施した電子装置、集積回路またはプロセッサとして実施することにより、本技術をさまざまな機器に組み込むことができ、かつ、高速に処理できるようになる。もちろん情報システムとして実施できる。
 以上、図面を参照してこの発明の実施形態を説明したが、この発明は、図示した実施形態のものに限定されない。図示した実施形態に対して、この発明と同一の範囲内において、あるいは均等の範囲内において、種々の修正や変形を加えることが可能である。
 本発明は、知識ベースシステムに有利に利用される。
 1 入力装置
 2 演算装置
 3,156 通信装置
 4,151 ネットワーク
 5 外部記憶装置
 6 主記憶装置
 7 補助記憶装置
 8 出力装置
 9,11 プログラム
 10,12 データ
 13 知識ベースプログラム
 14 リレーショナルデータベース
 60,80 ノード
 61,118 属性
 62,72 物と物をつなぐ矢印
 63 物と属性をつなぐ矢印
 70 物である神経細胞
 71 属性である神経細胞
 81,88 物識別子 
 82 順方向ポインタ
 83 逆方向ポインタ
 84 知識ネットワーク情報
 85,102 知識ネットワーク識別子
 86 物の名前と物識別子との対応表
 87 物の名前 
 100 重み
 101 知識ネットワークと属性との対応表
 103 属性識別子
 110 感覚器官
 111 物の領域
 112 記憶領域
 114,1020 特徴抽出部
 115 属性領域
 119 特徴データ
 120 物
 121 三角形
 122 点
 123 線
 124 面
 126 目
 127 鼻
 128 口
 129 駒を置く場所
 152 送信装置
 153 送信部
 155 通信路
 157 受信部
 158 通信装置識別子
 159 受信可能識別子
 160 制御部
 161 送信受付部
 162 検索部
 163 アドレス
 164 識別データ
 165,166,167,168 知識の集まり
 169,170,171 知識ネットワーク
 1000 知識ベースシステム
 1010 データ入力部
 1020 特徴抽出部
 1030 データ比較部
 1040 データ格納部
 1050 学習部
 1060 検索部
 1070 演算部
 1080 出力部

Claims (25)

  1.  知識ベースシステムであって、
     知識ベースを記憶している記憶部と、
     前記記憶部に記憶された知識ベースに対して論理演算を行う演算部とを備え、
     前記知識ベースは、物を識別する物識別子と、前記物がもつ少なくとも一つの属性であって、当該物の物識別子と対応づけられた属性とを含み、
     前記属性は、当該属性を識別する属性識別子と、当該属性を表す少なくとも一つのデータであって、当該属性を識別する属性識別子に対応づけられた特徴データ、及び当該属性を表す言葉に対応付けられたデータであって、当該属性識別子に対応付けられた識別データのうちの少なくとも一方とを含み、
     前記物識別子は、物を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成され、
     前記属性識別子は、属性を表す言葉ではなく、かつ、それ自体で意味を持たない記号で構成される
     知識ベースシステム。
  2.  前記特徴データは、当該特徴データに対応づけられた属性識別子が識別する属性の形、音、香、味、色、圧力、温度、長さ、座標値、及び面積の少なくとも一つを表すデータである
     請求項1記載の知識ベースシステム。
  3.  前記知識ベースシステムはさらに、
     前記属性に関する情報を取得する入力部と、
     前記入力部で取得された情報から、前記特徴データ及び前記識別データの少なくとも一つを抽出する特徴抽出部と、
     前記特徴抽出部で抽出された前記特徴データ及び前記識別データの少なくとも一つを、前記属性を識別する属性識別子と対応づけて前記知識ベースに格納するデータ格納部とを備える
     請求項1記載の知識ベースシステム。
  4.  前記属性識別子は、主識別子と副識別子とを含み、
     前記属性識別子は、前記主識別子と前記副識別子との組み合わせによって、前記属性を識別する
     請求項1記載の知識ベースシステム。
  5.  前記演算部は、少なくとも、一つの物が演算の対象として指定されると指定された当該物がもつ属性を対象として前記論理演算を行う
     請求項1記載の知識ベースシステム。
  6.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、
     個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応付けられている場合、同じ属性識別子を持ち、かつ、対応づけられた真偽値が共に真であるか又は共に偽である属性だけを集め、
     個々の属性に前記真偽値が対応付けられていない場合、同じ属性識別子を持つ属性だけを集めることで、新たな属性の集合を生成するAND演算を行う
     請求項5記載の知識ベースシステム。
  7.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性を集めることで、新たな属性の集合を生成するOR演算を行う
     請求項5記載の知識ベースシステム。
  8.  個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、
     前記演算部はさらに、少なくとも一つの属性からなる属性の集合が1つ指定された場合において、当該属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した新たな属性の集合を生成するNOT演算を行う
     請求項5記載の知識ベースシステム。
  9.  個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、
     前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、同じ属性識別子を持ち、かつ、対応づけられた真偽値が共に真であるか又は共に偽である属性だけを集めることで、新たな属性の集合を生成し、生成した新たな属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した更に新たな属性の集合を生成するNAND演算を行う
     請求項5記載の知識ベースシステム。
  10.  個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、
     前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性を集めることで、新たな属性の集合を生成し、生成した新たな属性の集合に含まれる各属性について、対応づけられた真偽値が真の場合は偽に変えた属性を生成し、真偽値が偽の場合は真に変えた属性を生成することで、真偽値を変更した更に新たな属性の集合を生成するNOR演算を行う
     請求項5記載の知識ベースシステム。
  11.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、
     個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が同じである属性の数を共通度として計数し、
     個々の前記属性に前記真偽値が対応づけられていない場合、いずれの属性の集合にも含まれる属性の数を共通度として計数する
     請求項5記載の知識ベースシステム。
  12.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、
     個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が異なる属性の数を非共通度として計数し、
     個々の属性に前記真偽値が対応づけられていない場合、いずれかの属性の集合にだけ含まれる属性の数を非共通度として計数する
     請求項5記載の知識ベースシステム。
  13.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、
     個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、主識別子が同じで、かつ、対応づけられた真偽値が同じである属性の数を類似度として計数し、
     個々の前記属性に前記真偽値が対応づけられていない場合、主識別子が同じである属性の数を類似度として計数する
     請求項5記載の知識ベースシステム。
  14.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、
     個々の前記属性に、当該属性が真であるか偽であるかを示す真偽値が対応づけられている場合、主識別子が同じで、かつ、対応づけられた真偽値が異なる属性の数を非類似度として計数し、
     個々の前記属性に前記真偽値が対応づけられていない場合、いずれかの属性の集合だけに含まれる属性の数を非類似度として計数する
     請求項5記載の知識ベースシステム。
  15.  個々の前記属性には、当該属性が真であるか偽であるかを示す真偽値が対応付けられており、
     前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、少なくともいずれかの属性の集合に属する属性から、いずれの属性の集合にも含まれ、かつ、対応づけられた真偽値が異なる属性を除くことで、新たな属性の集合を生成するOR演算を行う
     請求項5記載の知識ベースシステム。
  16.  前記演算部はさらに、少なくとも一つの属性からなる属性の集合が2つ指定された場合において、いずれの属性の集合にも属する属性を除くことで、新たな属性の集合を生成するXOR演算を行う
     請求項5記載の知識ベースシステム。
  17.  前記演算部は、
     少なくとも一つの属性が指定されると、指定された属性に対応づけられた物識別子を集めることで、当該属性をもつ知識の集まりを生成し、
     物が指定されると、当該物の物識別子が前記知識の集まりに属するか否かを判断する
     請求項1記載の知識ベースシステム。
  18.  前記演算部はさらに、
     生成した前記知識の集まりを識別する物識別子と、
     前記指定された少なくとも一つの属性を識別する属性識別子、及び抽象的な物であることを示す属性の属性識別子とを対応付けることで、抽象的な物を新たに生成する
     請求項17に記載の知識ベースシステム。
  19.  前記知識ベースはさらに、物に対応づけられたノードのつながりである知識ネットワークを含み、
     前記ノードは、当該ノードに対応する物識別子と、当該ノードが属する知識ネットワークに関する情報である知識ネットワーク情報とを含み、
     前記知識ネットワーク情報は、前記知識ネットワークを識別する知識ネットワーク識別子と、前記知識ネットワークにおける当該ノードとつながる他のノードへのポインタとを含む
     請求項1記載の知識ベースシステム。
  20.  前記演算部は、指定された知識ネットワーク識別子で識別された知識ネットワークにおいて、当該知識ネットワークを構成するノードに含まれる物識別子と知識ネットワーク情報とを参照することで、指定された物とつながっている他の物を特定する
     請求項19記載の知識ベースシステム。
  21.  前記演算部は、属性識別子が指定されると、当該属性識別子に対応づけられた知識ネットワークを検索し、検索された知識ネットワークの知識ネットワーク識別子を取得する
     請求項19記載の知識ベースシステム。
  22.  前記演算部はさらに、
     前記知識ネットワークを識別する物識別子と、
     前記知識ネットワークに対応付けられた少なくとも1つの属性識別子、及び抽象的な物であることを示す属性の属性識別子とを対応付けることで、抽象的な物を新たに生成する
     請求項21に記載の知識ベースシステム。
  23.  知識ベースシステムにおける論理演算方法であって、
     請求項1記載の知識ベースシステムが備える知識ベースに対して、少なくとも請求項1~22のいずれか1項に記載の演算部による処理を行うステップを含む
     論理演算方法。
  24.  知識ベースシステムのためのプログラムであって、
     請求項23記載の論理演算方法に含まれるステップをコンピュータに実行させる
     プログラム。
  25.  知識ベースシステムのためのコンピュータ読み取り可能な記録媒体であって、
     請求項1記載の知識ベースと、
     請求項24記載のプログラムと
     が記録された記録媒体。
PCT/JP2010/003327 2009-05-18 2010-05-18 知識ベースシステム、論理演算方法、プログラム、及び記録媒体 WO2010134319A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010541357A JP4829381B2 (ja) 2009-05-18 2010-05-18 知識ベースシステム、論理演算方法、プログラム、及び記録媒体
US13/320,801 US8818930B2 (en) 2009-05-18 2010-05-18 Knowledge base system, logic operation method, program, and recording medium
EP20100777557 EP2472447A4 (en) 2009-05-18 2010-05-18 BASIC KNOWLEDGE SYSTEM, LOGICAL OPERATION METHOD, PROGRAM, AND STORAGE MEDIUM

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2009-119693 2009-05-18
JP2009119693 2009-05-18
JP2009211424 2009-09-14
JP2009-211424 2009-09-14
JP2009-273583 2009-12-01
JP2009273583 2009-12-01
JP2010-009960 2010-01-20
JP2010009960 2010-01-20

Publications (1)

Publication Number Publication Date
WO2010134319A1 true WO2010134319A1 (ja) 2010-11-25

Family

ID=43126012

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/003327 WO2010134319A1 (ja) 2009-05-18 2010-05-18 知識ベースシステム、論理演算方法、プログラム、及び記録媒体

Country Status (4)

Country Link
US (1) US8818930B2 (ja)
EP (1) EP2472447A4 (ja)
JP (4) JP4829381B2 (ja)
WO (1) WO2010134319A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4829381B2 (ja) * 2009-05-18 2011-12-07 隆敏 柳瀬 知識ベースシステム、論理演算方法、プログラム、及び記録媒体
WO2012002215A1 (ja) * 2010-07-02 2012-01-05 Yanase Takatoshi 論理演算システム
US9690457B2 (en) * 2012-08-24 2017-06-27 Empire Technology Development Llc Virtual reality applications
US9607436B2 (en) 2012-08-27 2017-03-28 Empire Technology Development Llc Generating augmented reality exemplars
US10223410B2 (en) * 2014-01-06 2019-03-05 Cisco Technology, Inc. Method and system for acquisition, normalization, matching, and enrichment of data
US10867527B2 (en) * 2014-09-01 2020-12-15 5Lion Horus Tech Llc. Process and wearable device equipped with stereoscopic vision for helping the user
US11468340B2 (en) * 2015-02-09 2022-10-11 Xerox Corporation Method and system for using data storage technology as a repository of functional logic knowledge for use in a knowledge abstraction layer subsystem
EP3545372B1 (en) 2016-11-23 2021-12-29 Carrier Corporation Building management system having knowledge base
US10972306B2 (en) 2016-11-23 2021-04-06 Carrier Corporation Building management system having event reporting
KR101890207B1 (ko) * 2017-01-03 2018-08-22 네이버 주식회사 개체명 연결 방법, 장치 및 컴퓨터 프로그램
CN107391682B (zh) * 2017-07-24 2020-06-09 京东方科技集团股份有限公司 知识验证方法、知识验证设备以及存储介质
JP6814482B2 (ja) * 2017-11-29 2021-01-20 株式会社医療情報技術研究所 知識管理システム
CN108052612A (zh) * 2017-12-14 2018-05-18 马文波 大数据的list显示方法和装置
DE102018100895A1 (de) * 2018-01-16 2019-07-18 Zoe Life Technologies Holding AG Währungseinheiten für Wissen
JP6913308B2 (ja) * 2018-07-04 2021-08-04 株式会社医療情報技術研究所 医療文書管理システム
US20200057959A1 (en) 2018-08-15 2020-02-20 Salesforce.Com, Inc. Reducing instances of inclusion of data associated with hindsight bias in a training set of data for a machine learning system
US11263400B2 (en) * 2019-07-05 2022-03-01 Google Llc Identifying entity attribute relations
CN110674224B (zh) * 2019-08-02 2022-05-27 北京百度网讯科技有限公司 实体数据的处理方法、装置、设备及计算机可读存储介质
CN113360496A (zh) * 2021-05-26 2021-09-07 国网能源研究院有限公司 一种构建元数据标签库的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0276033A (ja) * 1988-09-13 1990-03-15 Fujitsu Ltd 知識整理支援装置
JPH10275085A (ja) * 1997-03-31 1998-10-13 Toshiba Corp 概念階層作成装置及び概念階層作成方法
JPH1166085A (ja) * 1997-08-19 1999-03-09 Matsushita Electric Ind Co Ltd 情報送信装置および受信装置
JP2002197114A (ja) * 2000-12-27 2002-07-12 Beacon Information Technology:Kk データベース管理システム、顧客管理システム、記録媒体
JP2005196382A (ja) * 2004-01-06 2005-07-21 Nippon Telegr & Teleph Corp <Ntt> 情報管理システムによるデータ登録方法、データ参照方法、ならびに、情報管理システムにおけるマスタデータベースサーバ
JP2006514606A (ja) 2002-07-12 2006-05-11 シーエスエル、リミテッド 疎水性タンパク質の発現

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2065473C (en) * 1991-04-25 1999-08-10 Kouichi Shibao Knowledge base management system for an information reasoning apparatus
JPH0594478A (ja) 1991-10-02 1993-04-16 Matsushita Electric Ind Co Ltd 画像データベースシステム
GB2278467B (en) * 1993-05-20 1998-04-01 Canon Res Ct Europe Ltd Apparatus and method for data processing and/or for control
US5546526A (en) * 1993-12-10 1996-08-13 International Business Machines Corporation Reconfiguration of database by interactive manipulation of icons
JPH07334368A (ja) * 1994-06-08 1995-12-22 Hitachi Ltd 知識ベースシステムおよび認識システム
US5701400A (en) * 1995-03-08 1997-12-23 Amado; Carlos Armando Method and apparatus for applying if-then-else rules to data sets in a relational data base and generating from the results of application of said rules a database of diagnostics linked to said data sets to aid executive analysis of financial data
JPH08305708A (ja) 1995-04-28 1996-11-22 Nippon Telegr & Teleph Corp <Ntt> 説明文生成方法及び装置
US6314570B1 (en) * 1996-02-08 2001-11-06 Matsushita Electric Industrial Co., Ltd. Data processing apparatus for facilitating data selection and data processing in at television environment with reusable menu structures
US6353813B1 (en) * 1998-01-22 2002-03-05 Microsoft Corporation Method and apparatus, using attribute set harmonization and default attribute values, for matching entities and predicting an attribute of an entity
US6499024B1 (en) * 1999-08-24 2002-12-24 Stream International, Inc. Method and system for development of a knowledge base system
US6493697B1 (en) * 1999-08-24 2002-12-10 Stream International, Inc. Method of selecting desired domains and for developing a seeding methodology for a knowledge base system
US6560589B1 (en) * 1999-08-24 2003-05-06 Stream International, Inc. Method and system for use and maintenance of a knowledge base system
US6591258B1 (en) * 1999-08-24 2003-07-08 Stream International, Inc. Method of incorporating knowledge into a knowledge base system
JP2001229382A (ja) 2000-02-17 2001-08-24 Nippon Telegr & Teleph Corp <Ntt> 情報蓄積装置,情報検索装置および情報蓄積方法,情報検索方法並びにこれらの方法を記録した記録媒体
AU2001264611A1 (en) * 2000-05-17 2001-11-26 Microsoft Corporation System and method for matching a textual input to a lexical knowledge base and for utilizing results of that match
JP2002041540A (ja) * 2000-07-28 2002-02-08 Shinichiro Okude 連想・推論機能を備えた検索システムおよび、それに用いられる、記録媒体献金
US20020169779A1 (en) * 2001-05-10 2002-11-14 Shian-Shyong Tseng Object oriented knowledge base management system
US20030105880A1 (en) * 2001-12-04 2003-06-05 Koninklijke Philips Electronics N.V. Distributed processing, storage, and transmision of multimedia information
US20040122705A1 (en) * 2002-12-18 2004-06-24 Sabol John M. Multilevel integrated medical knowledge base system and method
US20050154535A1 (en) * 2004-01-09 2005-07-14 Genstruct, Inc. Method, system and apparatus for assembling and using biological knowledge
JP2005050315A (ja) 2004-06-28 2005-02-24 Nec Saitama Ltd 携帯端末
WO2007000893A1 (ja) 2005-06-14 2007-01-04 Mitsuhiro Tanada 情報空間処理装置、プログラム、および、方法
US8666928B2 (en) * 2005-08-01 2014-03-04 Evi Technologies Limited Knowledge repository
JP2007188469A (ja) 2005-12-13 2007-07-26 Mitsuhiro Tanada 情報空間処理装置、プログラム、および、方法
JP2009075714A (ja) 2007-09-19 2009-04-09 Sekisui House Ltd 情報検索システム
JP5094478B2 (ja) 2008-03-06 2012-12-12 株式会社日立製作所 受信装置
JP4829381B2 (ja) * 2009-05-18 2011-12-07 隆敏 柳瀬 知識ベースシステム、論理演算方法、プログラム、及び記録媒体
WO2012002215A1 (ja) * 2010-07-02 2012-01-05 Yanase Takatoshi 論理演算システム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0276033A (ja) * 1988-09-13 1990-03-15 Fujitsu Ltd 知識整理支援装置
JPH10275085A (ja) * 1997-03-31 1998-10-13 Toshiba Corp 概念階層作成装置及び概念階層作成方法
JPH1166085A (ja) * 1997-08-19 1999-03-09 Matsushita Electric Ind Co Ltd 情報送信装置および受信装置
JP2002197114A (ja) * 2000-12-27 2002-07-12 Beacon Information Technology:Kk データベース管理システム、顧客管理システム、記録媒体
JP2006514606A (ja) 2002-07-12 2006-05-11 シーエスエル、リミテッド 疎水性タンパク質の発現
JP2005196382A (ja) * 2004-01-06 2005-07-21 Nippon Telegr & Teleph Corp <Ntt> 情報管理システムによるデータ登録方法、データ参照方法、ならびに、情報管理システムにおけるマスタデータベースサーバ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2472447A4

Also Published As

Publication number Publication date
JP2011222037A (ja) 2011-11-04
EP2472447A1 (en) 2012-07-04
JP4891460B2 (ja) 2012-03-07
JP4829381B2 (ja) 2011-12-07
JP4865925B2 (ja) 2012-02-01
US20120072387A1 (en) 2012-03-22
EP2472447A4 (en) 2014-08-20
US8818930B2 (en) 2014-08-26
JP2012033181A (ja) 2012-02-16
JPWO2010134319A1 (ja) 2012-11-08
JP2012079331A (ja) 2012-04-19

Similar Documents

Publication Publication Date Title
JP4891460B2 (ja) 知識ベースシステム、論理演算方法、プログラム、及び記録媒体
US11868883B1 (en) Intelligent control with hierarchical stacked neural networks
González García et al. A review of artificial intelligence in the internet of things
Molnar Interpretable machine learning
US11514305B1 (en) Intelligent control with hierarchical stacked neural networks
Hinkel et al. Enhancing the Ostrom social-ecological system framework through formalization
Kaklauskas Biometric and intelligent decision making support
Domingos Prospects and challenges for multi-relational data mining
Fan et al. Attribute-oriented cognitive concept learning strategy: a multi-level method
Sosnovshchenko et al. Machine Learning with Swift: Artificial Intelligence for IOS
CN113516164A (zh) 一种融合知识图谱与深度学习的果树病虫害诊断方法
Amoore What does it mean to govern with algorithms
Yao Design and simulation of integrated education information teaching system based on fuzzy logic
Klir Systems science: a guided tour
Kelley et al. A cognitive robotics system: the symbolic and sub-symbolic robotic intelligence control system (SS-RICS)
Woof et al. A framework for end-to-end learning on semantic tree-structured data
Tresp et al. The tensor brain: A unified theory of perception, memory, and semantic decoding
Li Application of data mining methods in the study of crime based on international data sources
Srinivasan et al. Quantifying Confounding Bias in Generative Art: A Case Study
Barceló Computational intelligence in archaeology. State of the art
Catarau-Cotutiu et al. AIGenC: An AI generalisation model via creativity
Gunasinghe et al. A biologically inspired neural clustering model for capturing patterns from incomplete data
Hasan et al. Toward enhancement of deep learning techniques using fuzzy logic: a survey
Mukherjee Integrating common sense knowledge in visual question answering systems
Singh et al. Answering Questions in Natural Language About Images Using Deep Learning

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2010541357

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 10777557

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13320801

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2010777557

Country of ref document: EP