WO2018138680A1 - Artificial neural network - Google Patents
Artificial neural network Download PDFInfo
- Publication number
- WO2018138680A1 WO2018138680A1 PCT/IB2018/050485 IB2018050485W WO2018138680A1 WO 2018138680 A1 WO2018138680 A1 WO 2018138680A1 IB 2018050485 W IB2018050485 W IB 2018050485W WO 2018138680 A1 WO2018138680 A1 WO 2018138680A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- nodes
- neural network
- value
- input data
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 103
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000014509 gene expression Effects 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims abstract description 5
- 238000012545 processing Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000004913 activation Effects 0.000 abstract description 13
- 239000002096 quantum dot Substances 0.000 description 24
- 230000008569 process Effects 0.000 description 18
- 238000012549 training Methods 0.000 description 14
- 238000001994 activation Methods 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000013529 biological neural network Methods 0.000 description 5
- 230000001755 vocal effect Effects 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 230000000644 propagated effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 241000270349 Iguana Species 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000005054 agglomeration Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 210000004205 output neuron Anatomy 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000005610 quantum mechanics Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 210000000225 synapse Anatomy 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Definitions
- the present invention relates to a method for the interpretation of a natural language by means of an artificial neural network.
- an artificial neural network is meant as a mathematic model constituted by a plurality of interconnected artificial neurons, capable of improving progressively the data analysis performances thereof thanks to automatic or supervised learning mode.
- the neural networks implement processing and training processes according to a calculation connection approach inspired by the biological neural networks (see Figure 1A: biological neural network and 1 B: artificial neural network of known type).
- An artificial neural network typically is layered-developed, each layer configured for implementing a determined category of operations on input data, to succeed in generating output data at the end of processing.
- a neural network comprises an input layer, a processing layer and an output layer, each layer comprising a plurality of nodes, which in reality correspond to the neurons of the biological neural networks.
- Each input node is to be considered a concept, a feature related to the problem to be solved, and it is connected to the subsequent ones, that is to the nodes constituting the underlying level, according to a proportionality or weight relation.
- proportionality or weight relation there are determined proportionality relations between the input data and the data outgoing from each node.
- the proportionality coefficient often is designated as weight since it corresponds to the importance of determined data in the agglomeration of the final result of the processing process.
- the weight relation is a crucial aspect of the operation of the neural networks, therefore it is subjected to training.
- the weight assigned to the data transmitted by one node to the other one is associated to the passage of an electric signal having a determined intensity, for example ranging in absolute sense from 0 and 1 (no intensity/maximum value of intensity) between one node and the other one, so as it happens in the transmission of the signals through synapses in brain.
- the propagation of the signal from one node to the other one is adjusted indeed by the above-mentioned weights, which are subjected to continuous refinement and re-calculation (the values are modified/optimized by means of the training procedure).
- a neural network is a particular weighed graph the weights thereof are constantly updated in the training step. As said before, the higher is the weight, the greater is the quantity of the passing signal. This process contributes in activating, ultimately, the output neuron/node which represents the result of the calculation process.
- a disadvantage of the neural networks of known type consists in that there is no way to know in advance if the network will be effectively capable of finding an acceptable solution to the considered problem. Moreover, the traditional neural networks, for example the backward propagation ones, have additional extremely limiting criticalities.
- a first criticality consists in modelling the neural network, that is the topology determination.
- the optimum modelling of the neural network itself cannot be determined in advance, but one has to proceed on trial, by making the training step not predictable in terms of quality and time duration.
- this is absolutely rigid, that is no modifications are allowed to the nodes unless the training process is performed again, by still running into the above-mentioned problems.
- the technical problem placed and solved by the present invention is then to provide a method for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language by means of an artificial neural network allowing to obviate the drawback mentioned above with reference to the known art.
- the invention provides a method for the interpretation of expressions in natural language based upon a neural network comprising a plurality of nodes or neurons implementing a graph.
- the graph comprises, for each term belonging to the natural language, at least a node associated thereto and thereto determined input data correspond.
- the graph comprises predetermined interconnections between the nodes.
- the interconnections are implemented by means of connecting means for transmitting data or signals, which are programmed for applying proportionality or weight numerical relationships to the transmitted data.
- the number of interconnections and the graph nodes which are mutually interconnected is to be considered the result of a design choice depending upon the specific natural language and/or the typology, number and/or nature of the links between the terms and/or concepts of the language which one wants to implement in the neural network, for example by means of training procedures.
- the neural network of the invention is based upon a quantum derivation graphlike structure, wherein the data exchanged between the nodes are quantum information, that is quantum bit (qubit).
- the proposed neural network does not provide the rigid concept of the input, output nodes and intermediate nodes, as well as it does not provide to divide the network into input, intermediate and output levels.
- the connection between neurons is not provided in fixed or structured way, on the contrary in dynamic way and it can be varied each time depending upon the proposed specific query, which corresponds to the expression in natural language to be interpreted.
- the interpretation of such expression is to be meant how to provide a response to the proposed query.
- Even the same nodes, depending upon the proposed query are programmed to implement the functions of one input, intermediate or output node.
- the neural network according to the present invention is programmed so that, for each query, the smallest graph including all nodes constituting the query is extracted and they lead to an interference in common.
- the smallest sub-graph including all concepts and lemma existing in the query is extracted, wherein the interference, if existing, is sought and extracted, thereto all nodes lead. Consequently, the one representing an input node for a query, could be an intermediate or output node for another query.
- the node "umbrella” represents an output node with respect to the just proposed query, whereas for the following query: container for umbrella -> umbrella stand the node “umbrella” is an input node and, depending upon the way in which knowledge is modelled (this is not rigid, too, and it depends upon the final user), it is at the same time a component of the output result.
- each network node is implemented by means of a perceptron programmed to assume several values at the same time.
- each node is programmed for assuming two values, respectively related to the real portion and to the imaginary portion of the complex number.
- perceptrons with complex numbers is inspired by electric signal, characterized by a width and a frequency, underlying the activations of the neurons in the human brain.
- the action for activating a neuron can have different intensity and frequency patterns; such concept is modelled in the proposed neural network by using data including complex numbers.
- the use of perceptrons having several values allows to implement an increase in the speed for learning and processing the results, as well as to increase the accuracy of the same thereof.
- the use of the nodes which can assume several values allows to perform the same procedures of a traditional neural network against a decrease in the network structural sizes, as it will be evident in the light of the following detailed description.
- the implemented solution simulates the qubit capability of assuming several values at the same time, by using a data structure consisting in particular in an array of complex numbers.
- the use of the complex numbers for representing the signals exchanged by the perceptrons (nodes) allows to manage more complex and softer concepts than those processed by the standard neural networks for the interpretation of the natural language, such as the declension of verbs or the gender and number of names.
- the nodes are configured for representing semantic concepts or elements, whereas the connections between the nodes correspond to semantic links therebetween.
- the algorithm implemented by the neural network allows to manage a graph having high sizes (in the order of millions of nodes and relations), loaded with all linguistic relations between lemma, verbs and concepts (according to the Italian language or any foreign language).
- FIGS. 1A and 1 B show a biological neural network and an artificial neural network of prior art, respectively;
- FIG. 2 shows schematically a preferred embodiment of an artificial neural network according to the present invention
- FIG. 3 to 5 show examples of data processing procedures of preferred embodiments of an artificial neural network according to the present invention.
- FIG. 6 shows an exemplifying flow diagram of a preferred embodiment of an application module implemented by means of a neural network according to the present invention.
- the present invention relates to a method for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language using an artificial neural network implemented by means of a computer program for the interpretation of expressions in natural language comprising one or more terms, for example names, verbs, etc..
- FIG. 2 a preferred embodiment of a system or apparatus of artificial neural network according to the present invention is designated as a whole with 10.
- Figure 2 shows only a portion of neural network which, with reference to a particular query, corresponds to the smallest subgraph including all concepts and lemma existing in the query itself.
- the connections between the nodes are highlighted which represent the flow of data corresponding to the deductive pathway leading to an interference, that is to a node which represents a concept or lemma answering to the loaded query.
- the neural network 10 comprises a plurality of systems of nodes 1 , 2, 3 implemented by means of a computer program.
- Each one of the nodes 1 , 2, 3 of the network is programmed to assume a function analogous to that of a node constituting an input level 1 1 , an intermediate level 12 for processing data or an input level 13 of a neural network of traditional type.
- the nodes 1 , 2, 3 can assume a different functionality, that is they are not linked rigidly therebetween to constitute predefined input, intermediate or output levels.
- the nodes 1 , 2, 3 of the neural network according to the present invention are programmed for treating a plurality of data.
- Each piece of data of such plurality is constituted by a plurality of values, and it may come from additional different nodes or it is a piece of data input to the neural network (data constituting the query).
- the neural network 10 the present invention relates to, has a quantum derivation, in other words the data exchanged between the nodes 1 , 2, 3 of the graph are quantum information, that is quantum bit (or more shortly qubit).
- the nodes 1 , 2, 3 of the neural network according to the present invention first of all can include means for generating input data depending upon an initial piece of data corresponding to a term of the natural language.
- the nodes 1 , 2, 3 comprise means for acquiring one or more input data, each one corresponding to one of the terms of the expression in natural language processed by the network.
- This plurality of values comprises a main value and at least a secondary value, each one can correspond to an integer or decimal numeral.
- Each node further comprises means for processing input data according to a predetermined function, that is a particular mathematical relation, which for example provides for the association of predetermined numeral values to each piece of input data and the application of weight or proportionality relation to each value, even depending upon the implemented query.
- the acquisition means and the processing means are programmed for treating input data thereto exclusively two values are associated, the main value and the secondary value, respectively.
- the two values are represented by a complex number.
- the input node 1 is programmed for generating input data depending upon initial data corresponding to a term of the natural language.
- a plurality of values, a main value and at least a secondary value thereof, each one representative of a semantic feature of the term associated to the data themselves, is associated to each piece of input data.
- the input data comprise a main value and a secondary value only, for example represented by a complex number.
- the input nodes 1 are further programmed for sending so-generated input data to the other nodes 2, 3 of the network.
- the nodes implementing the functionality of output nodes, or more simply the output nodes 3, are configured for receiving data from other nodes and programmed for activating if at least a secondary value of such received data verifies a corresponding second predetermined condition, for example if it is higher than a predetermined threshold value.
- the term "to activate" referred to a node is to be meant designating that the node, after having processed an input signal and verified that it meets a pre-established condition (for example it has a higher value than a predetermined threshold), proceeds with issuing a corresponding output signal to the additional nodes of the network if it is operating as intermediate node or processor, or it interrupts the deductive process and it activates as interference node if it is operating as output node.
- a pre-established condition for example it has a higher value than a predetermined threshold
- Each node of the artificial neural network 10 acting as processor node is programmed so that, for each piece of input data, if the main value processed by the processing means verifies a first predetermined condition, sends corresponding input data to the additional nodes of the artificial neural network 10 thereto it is connected.
- the node processes it and downstream of such processing it considers exclusively the results linked to the main value of the input data. If they verify a first predetermined mathematical condition, then the node 2 in turn provides to send the processed signal, which comprises the processed main values and the secondary values, to the additional nodes of the implemented graph of the network 10.
- Such mathematical condition for example can consist in that the main value processed by the processing means has to be higher or lower than a predetermined threshold value.
- the nodes 1 , 2, 3 of the network 10 are implemented by means of perceptrons, in the specific case perceptrons using complex numbers.
- each perceptron is configured to assume several values at the same time, for example two values which can be represented indeed by means of a complex number.
- the invention provides a graph-like structured neural network and comprising nodes implemented by means of perceptrons configured for processing a data structure consisting in an array of complex numbers.
- a node could be also be designated with the term “perceptron”, and vice versa.
- the perceptron then represents the smallest processing unit of the neural network according to the present invention, and actually it implements a homologous element of the neuron of the biological neural network.
- each perceptron is that of allowing or avoiding the propagation of the input data or signals, depending upon the value of a characteristic parameter of such signal with respect to a value set as threshold value, for example through the use of a threshold function. For example, the signal reaching a node is made to pass to the subsequent node only if the above-mentioned value of a characteristic feature exceeds a pre-established threshold.
- the perceptrons are configured for processing the data (or signals) according to very simple, linearly separable procedures, as those defined by the boolean operators AND and OR.
- the neural network of the invention is a graph-like neural network the nodes thereof are quantum bit (qubit).
- the qubit is a mathematic object which corresponds to the information quantum within the quantum computing, that is the smallest portion in which any piece of coded information can be broken up. Therefore, it can be used as unit for measuring the coded information.
- the qubit has specific properties of known type, deriving from the postulates of quantum mechanics. According to such postulates, a qubit can assume several values at the same time.
- the solution implemented by means of the present invention simulates the qubit capability of assuming several values at the same time, by means of a data structure of the neural network which substantially comprises an array of complex numbers.
- the neural network to which the present invention relates to provides a structural modification consisting in replacing the real numbers in favour of a data structure based upon the qubit, wherein a complex number corresponds to each value which the qubit can assume.
- the data transmitted between the nodes can simulate an electric signal having characteristic parameters such as magnitude and frequency, by leaving unaltered the perceptron operation logic.
- the perceptron of known type receives from other perceptrons signals comprising only values in real numbers, and it proceeds with an operation for multiplying each value by the respective coefficient or weight.
- the values of the so-weighed signals are summed, in order to obtain one single real signal.
- An activation function establishes if the obtained signal quantity can, or cannot, pass depending upon a predetermined threshold value, determining the result.
- the proposed neural network instead, provides means for the connection between the perceptrons comprising a channel (or tube) configured to allow the simultaneous passage of several complex electric signals, that is each one of the signals transmitted by a perceptron can include several sensible or significant values, capable of being considered and appreciated by the perceptron.
- the activation logics of the qubits are described hereinafter.
- the real portion of the first level of qubit and of the underneath levels is the only one that determines the logic propagation for the signal activation, according to already described modes.
- the comparison of the value of the signal real portion with a threshold value is provided and the signal propagation takes place for example if the value of the real portion is higher than the threshold value.
- the imaginary portion of the first level and of the underneath levels is the one contributing instead to the logic for directing and propagating the signal towards the other perceptrons.
- the piece of input data transmitted by the perceptron is represented by a complex number having a real portion associated to the verb tense, and an imaginary portion associated to the person.
- the signal power or intensity instead, determines the activation of the qubits.
- the propagation direction toward the subsequent qubit is influenced by the values of the previous qubits.
- a neural network of traditional type would obtain this same conclusion for both considered verbal forms, however for a neural network expressively designed to answer to questions of this type the considerations made on the performances of the networks, as their sizes increase, would be always valid.
- a neural network implemented according to the present invention obtains this same conclusion by using the first level network, and then it proceeds with processing the data linked to the person and to the verbal tense. Therefore, the signal is further addressed to a different response qubit based upon the information included in each layer of contemporary values obtained from the history of the signal propagation.
- the qubit associated to the verb "to be” has activated due to the fact that the power of both signals is higher than the activation threshold, at first leading to the same conclusion of the traditional neural network.
- this activation is caused by different qubits, which generate different signals in the real and imaginary portion, by causing at last the activation of three different response qubits.
- each qubit can assume several values at the same time, wherein each value is represented by a several-value electric signal, more precise than the classical real representation, it is possible to obtain more accurate results than the traditional network, which keep the different nuances of the processed expression in the natural language.
- the neural network according to the present invention can allow to obtain much higher accuracy results than those obtained with traditional networks, even if an extremely compact graph-like structure is kept, that is comprising an extremely limited number of neurons/qubits.
- the neural networks of known type become less performing upon increasing their sizes.
- the above shown solution allows to implement a neural network not varying in the structural sizes and in the number of connections with respect to those of known type, but which allows to proceed with more accurate processing, which take into consideration even a plurality of accessory information.
- Each graph node includes all relations between the several words and concepts in the form of a perceptron having complex numbers with n levels, that is a qubit.
- the combination and the concatenation of the qubits allows the solution of problems and very complex interferences.
- the network can have different node types, enlisted hereinafter:
- - Lemma it is the simplest node, it includes purely one single piece of information (dog, cat, person, vehicle, etc.); - Concept it represents a concept, generally it is the result of the combination of several lemma and it corresponds to a more complex perceptron. It is used for representing articulated concepts, such as for example "protected animal", constituted by the lemma “animal” and by the lemma “protected”.
- - Inference it is the most important node typology, generally point of arrival of a deductive process implemented by means of the neural network, constituted by the combination of the nodes of lemma or concept type. Such node allows to make interference, that is deductions.
- the node concept is also defined as "centroid-like structure", the modelling thereof represents the discriminant between a correct, or not, propagation of the signal and then the operation of the logics leading to the interference. Actions to be taken or resources (images, documents) to be recovered can be associated to the nodes of inference type.
- the deductive process implemented by means of the neural network of the invention follows the following logics.
- the sub-graph with minimum path including all nodes existing in the sentence leading to an interference, is searched for.
- the concepts generally are represented by several nodes of lemma type and in the extraction of the minimum path only a node of the n constituting the concept node is taken into consideration, for each concept node existing in the graph the missing nodes thereof are added.
- the input nodes typically are activated with a signal of maximum power, that is magnitude 1 ,0 on a scale from 0 to 1 ,0.
- the signals are propagated to the subsequent nodes (perceptrons) of the path, which will be activated only if the accumulated signal power exceeds a predetermined threshold.
- the interference node corresponding to a "judgement n. 1 " is activated only if the nodes/perceptrons "protected_animal” and “trade” are activated.
- the node “protected_animal” is activated only if the node “animal” and “protected” are activated (by means of a signal propagation by the previous nodes).
- this process makes that only “iguana”, which is connected to “protected”, can activate the node “protected_animal”, thus leading to the activation of the interference "judgement N. 1 ".
- the node “cat” can activate only 50% of the signal necessary to activate "protected_animal”, and thus it cannot determine the activation of the interference node "judgement N. 1 ", actually causing termination of the deductive process.
- the algorithm implemented by means of the neural network of the invention provides to consider an additional second portion of the qubit, that is the second complex number (in fact, we remind that there are two complex numbers). These pieces of information are considered as follows.
- the node assumes several values at the same time (hence the concept of quantum derivation).
- the main data, or better the carrier signal, that is the one which activates all previously described logics, is represented by the value delta and it is propagated through all nodes.
- This signal at the same time carries other information with itself, that is the secondary data phi. If the main data delta succeeds in reaching the interference node "mayor_solarino", by activating it, it is possible to exploit the secondary data phi, that is the value it assumes contemporarily to delta, for implementing the logics and the interference nuances of the following type:
- the neural network of the invention is dynamic in its structure: nodes, concepts and interferences can be added and/or removed in real time without compromising the base mathematical model.
- the present invention relates to, preferably structures of hash table and B-Tree type are used.
- the hash table data structures allow to implement an association between a determined key and a determined value.
- the hash table can be used for implementing associative abstract data structures, for example of Map or Set type.
- a search based upon hashing provides to access the elements in the hash table directly, by means of arithmetic operations which transform determined keys into determined table addresses.
- a feature of the hash tables is the extreme speed in recovering information, in the specific case one single access operation is sufficient for recovering determined data.
- the hash tables are preferably implemented to be wholly used in RAM.
- the data/method structures of the B-Tree type allow a quick localization of data files (Records or keys), in particular in the database, and they allow to minimize the number of accesses to the memory by the user to acquire the stored data.
- the main advantage deriving from the adoption of B-Tree data structures is to be able to perform procedures of inserting, cancelling and searching for data in logarithmically short time.
- the nodes thereof include 1000 keys is capable of managing 1 ,000,000,000 keys by performing only three accesses (that is three levels).
- the graph preferably is implemented by using hash tables to allow a quick access to information.
- a portion of data is stored on hash table in RAM memory, sized based upon the available hardware.
- the remaining data are stored on a B-Tree structure, wherein the search is performed by exception, in case results in the hash table are not found.
- the neural network of the invention can further provide an interface element, of higher level than the two just described B-Tree and hash table data structures, allowing to access both structures.
- the interface element is configured to allow a user to interact virtually with a unique data structure, with the purpose of facilitating the use of the neural network and simplify the access to data.
- the neural network according to the present invention can find application in contests linked to the public administration to implement platforms for offering particularly effective services supporting the citizen.
- the modules used by the neural network of the invention applied in this specific context can provide:
- - communication modules o Web; o chat / SMS; o phone; o Rss, Open Data, Maps, Weather forecast, various services; o social networks; o loT; and o data base / DAM.
- the proposed solution can provide the development of a neural network programmed for the interpretation of the natural language with the purpose of detecting needs for the users, processed based upon the interpretation of concepts extracted from the NLP (Natural Language Processing) network.
- NLP Natural Language Processing
- the interaction between user and neural network can take place through different channels, thanks to dedicated modules.
- the neural network according to the present invention can further be programmed to analyse images and audio by extracting information therefrom, to be used for example for the facial and voice recognition and for the management of document images.
- the neural network is fundamentally trained on a specific domain (natural language). It is not always possible to provide for all specific cases of the single domain, but the neural network of the invention can be configured so that, if it is not capable of meeting all user needs by means of the received training, it spreads the search on Web with the purpose of providing an answer.
- the same Web module can be activated not only in case the neural network is not capable of classify the answer, but also to allow it to answer to questions therefor it has not explicitly trained, by extracting the metadata of the new proposed concept for inserting them in its own knowledge base.
- the solution is capable of acquiring knowledge from Web, or by analysing Web pages including natural language or structured data.
- the Chat / SMS module allows the interaction with the user through typical chat conversation, by exposing suitable APIs which can be recalled even in REST, thus on http protocol.
- the neural network of the invention can be arranged for interacting with all players which make available one of their channels for Bot. Considering the heterogeneity and the differences in protocols between the different players, the network can implement a module acting as connector between the different sources with the purpose of standardizing the communication flow. The same infrastructure is useful for the communication through SMS.
- the neural network according to the present invention provides the possibility of the user to interact through voice command, for example by phone.
- the chat/sms infrastructure can be used, however by providing the use of speech to text and text to speech technologies and translation modules, as shown in the flow diagram of Figure 6.
- the neural network of the present invention can allow the acquisition of information, and thus an integration of the knowledge base thereof, by interfacing with data sources of standard format such as RSS and not as Open Data, according to the same modes described in the paragraph Web Module.
- the concepts in the content under the triple form are extracted and stored in the knowledge base to be promptly used.
- the neural network can be programmed for interacting with maps, platform for managing information about traffic, weather forecast and other services.
- the neural network according to the present invention is programmed to interface with the main social networks. Prior user authorization, it is possible to recover personal information existing on the social networks and to profile the user in real time with the purpose of directing at best the interaction with him/her.
- a second use of this module can be indirect. Thanks to a proprietary system, the core can remain "listening" on the social network relating to themes or key words to be monitored. This content is analysed in real time by the NLP modules and content analysis. In particular, this module can be used to intercept users with ongoing problems and to offer them assistance automatically, by aiming at improving efficiency in assisting the citizen.
- the neural network according to the present invention is programmed to interface even with Lot devices, typically sensors of various type, for example to measure light temperature, flowmeters, apart from cameras for the facial recognition and presence detectors.
- a typical example is that of a user requesting a certificate to the institution, in which the system provides all required information, thereamong the possibility of going physically to the responsible institution.
- the system By accessing the Lot data, the system is capable of suggesting the best moment to go to the office based upon the current inflow (presence detecting system) and to the historical information, as well as information on streets and public transport, by considering the traffic too.
- the system can interface with heterogeneous data bases, prior customization of a channel capable of transforming the information of the outer bases in the proprietary format. Thanks to the same principle it is possible to integrate DAM and e-commerce software. In the latter case, the proposed neural network, since it can act even as recommendation engine, should it be not already present, is capable of suggesting accurately the final customer.
- the node processes the input signal according to a determined mathematical function to allow, or not, the propagation thereof, the value of the input signal is multiplied by a corresponding weight which connects the nodes, if the value exceeds the activation threshold the signal passes, otherwise it is not propagated.
- the proposed neural network can manage several signals at the same time by the nodes and the connections therebetween, in particular there are “sub- signals” (even defined secondary values), which actually are used to refine the interference, by making it extremely more accurate than the possibility of the standard neural networks.
- the first level for convenience called delta, is the only one to be delegated as “main signal” or “carrying signal” (main value) and actually, even if the mathematics (multiplication, additions and division, etc.) of the complex numbers is used, it acts according to the already described propagation logics.
- the other sub-signals are used to refine the interference process. In other words, when one has reached an interference through the carrying signal, the algorithm checks if there are sub-signals and based upon the value thereof continues (then refines) the interference process.
- a standard neural network if questioned with these three different queries, would reach in each case an interference node which represents the concept of "who_to be_mayor_Rome", which is a not precise interference, by answering always in the same way.
- the method implemented according to the present invention after having reached such not precise interference based upon the only main signal, continues the processing, by analysing the sub-signals.
- the nodes "is”, “will be”, “have_been” have equal main value (ascribable to the verb to be) - for example (0, 12; 0,98) - but different sub- signals, for convenience called phi, aimed at giving better details about time (present, past, future), apart from the verbal person, for example
- an additional sub-channel can be added which for convenience can be called sigma, which for example can be used to manage the sentiment.
- the algorithm thanks to the specialization of the third sub-signal, can answer in a more accurate way, by sorting the signal to the immediately connected interference node, the connection thereof has the corresponding values of phi and sigma, wherein the following answer could be associated to the corresponding interference:
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Machine Translation (AREA)
- Gyroscopes (AREA)
- Amplifiers (AREA)
Abstract
The present invention relates to a method, implemented by means of a computer program, for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language by means of an artificial neural network (10), programmed for the interpretation of expressions in natural language comprising one or more terms. The neural network (10) is constituted by millions of nodes and relations. For each query input in the system, the smallest sub-graph is extracted including all concepts and lemma existing in the query, in which the interference - if it does exist - thereto all nodes lead through propagation of the signals and related activation is looked for and extracted.
Description
TRANSLATION (RULE 12.3)
21 February 2018
ARTIFICIAL NEURAL NETWORK
DESCRIPTION
Technical field of the invention
The present invention relates to a method for the interpretation of a natural language by means of an artificial neural network.
Background
In the field of the Machine Learning, an artificial neural network is meant as a mathematic model constituted by a plurality of interconnected artificial neurons, capable of improving progressively the data analysis performances thereof thanks to automatic or supervised learning mode. In particular, the neural networks implement processing and training processes according to a calculation connection approach inspired by the biological neural networks (see Figure 1A: biological neural network and 1 B: artificial neural network of known type). An artificial neural network typically is layered-developed, each layer configured for implementing a determined category of operations on input data, to succeed in generating output data at the end of processing. Generally, a neural network comprises an input layer, a processing layer and an output layer, each layer comprising a plurality of nodes, which in reality correspond to the neurons of the biological neural networks.
Each input node is to be considered a concept, a feature related to the problem to be solved, and it is connected to the subsequent ones, that is to the nodes constituting the underlying level, according to a proportionality or weight
relation. In other words, there are determined proportionality relations between the input data and the data outgoing from each node. The proportionality coefficient often is designated as weight since it corresponds to the importance of determined data in the agglomeration of the final result of the processing process.
The weight relation is a crucial aspect of the operation of the neural networks, therefore it is subjected to training. Generally, the weight assigned to the data transmitted by one node to the other one is associated to the passage of an electric signal having a determined intensity, for example ranging in absolute sense from 0 and 1 (no intensity/maximum value of intensity) between one node and the other one, so as it happens in the transmission of the signals through synapses in brain.
The propagation of the signal from one node to the other one is adjusted indeed by the above-mentioned weights, which are subjected to continuous refinement and re-calculation (the values are modified/optimized by means of the training procedure).
Actually, a neural network is a particular weighed graph the weights thereof are constantly updated in the training step. As said before, the higher is the weight, the greater is the quantity of the passing signal. This process contributes in activating, ultimately, the output neuron/node which represents the result of the calculation process.
A disadvantage of the neural networks of known type consists in that there is no way to know in advance if the network will be effectively capable of finding an acceptable solution to the considered problem. Moreover, the traditional neural networks, for example the backward propagation ones, have additional extremely limiting criticalities.
A first criticality consists in modelling the neural network, that is the topology determination. In fact, the optimum modelling of the neural network itself cannot be determined in advance, but one has to proceed on trial, by making the training step not predictable in terms of quality and time duration.
Moreover, once found the best topology of the neural network, this is absolutely rigid, that is no modifications are allowed to the nodes unless the training process is performed again, by still running into the above-mentioned problems.
At last, an important problem of the networks of known type are the sizes. As the problem complexity increases, and then the number of the input nodes necessary to model it, the calculation power necessary for the implementation increases exponentially, even more drastically in the training step.
The performances are not the one and only problem appearing as the network size increases. In fact, even the possibility of obtaining a correctly operating model collapses. Considering that the network behaves like a probabilistic model, as the possible results increase, the error possibility increases too, above all in contexts in which there are similar concepts. Actually, a neural network with millions of input nodes would result to be extremely complex and expensive to be implemented and to be managed, due to the performances in terms of hardware and software.
Summary of the invention
The technical problem placed and solved by the present invention is then to provide a method for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language by means of an artificial neural network allowing to obviate the drawback mentioned above with reference to the known art.
The above-mentioned problem is solved by the method according to claim 1 and by a computer programme according to claim 9. Preferred features of the present invention are set forth in the depending claims.
The invention provides a method for the interpretation of expressions in natural language based upon a neural network comprising a plurality of nodes or neurons implementing a graph. The graph comprises, for each term belonging
to the natural language, at least a node associated thereto and thereto determined input data correspond. The graph comprises predetermined interconnections between the nodes. The interconnections are implemented by means of connecting means for transmitting data or signals, which are programmed for applying proportionality or weight numerical relationships to the transmitted data.
The number of interconnections and the graph nodes which are mutually interconnected is to be considered the result of a design choice depending upon the specific natural language and/or the typology, number and/or nature of the links between the terms and/or concepts of the language which one wants to implement in the neural network, for example by means of training procedures.
The neural network of the invention is based upon a quantum derivation graphlike structure, wherein the data exchanged between the nodes are quantum information, that is quantum bit (qubit).
With respect to the neural networks of known type, the proposed neural network does not provide the rigid concept of the input, output nodes and intermediate nodes, as well as it does not provide to divide the network into input, intermediate and output levels. In other words, the connection between neurons is not provided in fixed or structured way, on the contrary in dynamic way and it can be varied each time depending upon the proposed specific query, which corresponds to the expression in natural language to be interpreted. Within the present description, the interpretation of such expression is to be meant how to provide a response to the proposed query. Even the same nodes, depending upon the proposed query, are programmed to implement the functions of one input, intermediate or output node.
The neural network according to the present invention is programmed so that, for each query, the smallest graph including all nodes constituting the query is extracted and they lead to an interference in common. In particular, in the specific implementation of neural network programmed for the interpretation of the natural language, for each query which is performed
the smallest sub-graph including all concepts and lemma existing in the query is extracted, wherein the interference, if existing, is sought and extracted, thereto all nodes lead. Consequently, the one representing an input node for a query, could be an intermediate or output node for another query. Let's consider by way of clarification the following example: instrument for protecting from rain -> umbrella
The node "umbrella" represents an output node with respect to the just proposed query, whereas for the following query: container for umbrella -> umbrella stand the node "umbrella" is an input node and, depending upon the way in which knowledge is modelled (this is not rigid, too, and it depends upon the final user), it is at the same time a component of the output result.
According to the present invention, it is possible to work on a graph having very small sizes. In fact, however long an input may be, it will always be negligible with respect to the size of a traditional graph formed by millions of relations and in which the nodes have to be repeated for each input, intermediate or output level.
According to an additional aspect of the present invention, each network node is implemented by means of a perceptron programmed to assume several values at the same time. In the preferred embodiment in which complex numbers are used, each node is programmed for assuming two values, respectively related to the real portion and to the imaginary portion of the complex number.
The use of perceptrons with complex numbers is inspired by electric signal, characterized by a width and a frequency, underlying the activations of the neurons in the human brain. Depending upon the transmitted electric signal, the action for activating a neuron can have different intensity and frequency patterns; such concept is modelled in the proposed neural network by using data including complex numbers.
Advantageously, with respect to the neural networks of traditional type, the use of perceptrons having several values allows to implement an increase in the speed for learning and processing the results, as well as to increase the accuracy of the same thereof. Moreover, the use of the nodes which can assume several values allows to perform the same procedures of a traditional neural network against a decrease in the network structural sizes, as it will be evident in the light of the following detailed description.
The implemented solution simulates the qubit capability of assuming several values at the same time, by using a data structure consisting in particular in an array of complex numbers.
Advantageously, the use of the complex numbers for representing the signals exchanged by the perceptrons (nodes) allows to manage more complex and softer concepts than those processed by the standard neural networks for the interpretation of the natural language, such as the declension of verbs or the gender and number of names.
According to a preferred embodiment of the invention, the nodes are configured for representing semantic concepts or elements, whereas the connections between the nodes correspond to semantic links therebetween. The algorithm implemented by the neural network allows to manage a graph having high sizes (in the order of millions of nodes and relations), loaded with all linguistic relations between lemma, verbs and concepts (according to the Italian language or any foreign language).
Thanks to the plurality of values which can be assumed by the perceptron, for each node not only one term or verbal form can be simulated, but even other "secondary" features, such as gender, number or tense (in case of a verb). Therefore, the operations being equal, the obtained result is more accurate than neural networks of traditional type.
Brief description of the figures
Throughout the present description the Figures of the enclosed drawings will be referred to, wherein:
- Figures 1A and 1 B show a biological neural network and an artificial neural network of prior art, respectively;
- Figure 2 shows schematically a preferred embodiment of an artificial neural network according to the present invention;
- Figures 3 to 5 show examples of data processing procedures of preferred embodiments of an artificial neural network according to the present invention; and
- Figure 6 shows an exemplifying flow diagram of a preferred embodiment of an application module implemented by means of a neural network according to the present invention.
The above-mentioned figures are to be meant exclusively by way of example and not with limitative purposes.
Detailed description of preferred embodiments
The present invention relates to a method for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language using an artificial neural network implemented by means of a computer program for the interpretation of expressions in natural language comprising one or more terms, for example names, verbs, etc..
By referring to figure 2, a preferred embodiment of a system or apparatus of artificial neural network according to the present invention is designated as a whole with 10. In particular, Figure 2 shows only a portion of neural network which, with reference to a particular query, corresponds to the smallest subgraph including all concepts and lemma existing in the query itself. In particular, the connections between the nodes are highlighted which represent the flow of data corresponding to the deductive pathway leading to an interference, that is
to a node which represents a concept or lemma answering to the loaded query.
The neural network 10 comprises a plurality of systems of nodes 1 , 2, 3 implemented by means of a computer program.
Each one of the nodes 1 , 2, 3 of the network is programmed to assume a function analogous to that of a node constituting an input level 1 1 , an intermediate level 12 for processing data or an input level 13 of a neural network of traditional type. In other words, depending upon the specific implemented query, the nodes 1 , 2, 3 can assume a different functionality, that is they are not linked rigidly therebetween to constitute predefined input, intermediate or output levels.
The nodes 1 , 2, 3 of the neural network according to the present invention are programmed for treating a plurality of data. Each piece of data of such plurality is constituted by a plurality of values, and it may come from additional different nodes or it is a piece of data input to the neural network (data constituting the query). In the specific case, the neural network 10, the present invention relates to, has a quantum derivation, in other words the data exchanged between the nodes 1 , 2, 3 of the graph are quantum information, that is quantum bit (or more shortly qubit).
The nodes 1 , 2, 3 of the neural network according to the present invention first of all can include means for generating input data depending upon an initial piece of data corresponding to a term of the natural language.
Moreover, the nodes 1 , 2, 3 comprise means for acquiring one or more input data, each one corresponding to one of the terms of the expression in natural language processed by the network. This plurality of values comprises a main value and at least a secondary value, each one can correspond to an integer or decimal numeral. Each node further comprises means for processing input data according to a predetermined function, that is a particular mathematical relation, which for example provides for the association of predetermined numeral values to each piece of input data and the application of weight or proportionality relation to each value, even depending upon the implemented query.
In particular, the acquisition means and the processing means are programmed for treating input data thereto exclusively two values are associated, the main value and the secondary value, respectively. Preferably, the two values are represented by a complex number. By referring to figure 2, the operating mode of the nodes 1 , 2, 3 will be illustrated hereinafter, depending upon the functionality assumed in response to the specific query.
Let's consider a node assuming the function of input node, designated with 1 in Figure 2 and hereinafter designated input node 1 for sake of simplicity. According to such operating mode, the input node 1 is programmed for generating input data depending upon initial data corresponding to a term of the natural language. A plurality of values, a main value and at least a secondary value thereof, each one representative of a semantic feature of the term associated to the data themselves, is associated to each piece of input data. Preferably, the input data comprise a main value and a secondary value only, for example represented by a complex number. The input nodes 1 are further programmed for sending so-generated input data to the other nodes 2, 3 of the network.
The nodes implementing the functionality of output nodes, or more simply the output nodes 3, are configured for receiving data from other nodes and programmed for activating if at least a secondary value of such received data verifies a corresponding second predetermined condition, for example if it is higher than a predetermined threshold value.
In the present discussion, the term "to activate" referred to a node is to be meant designating that the node, after having processed an input signal and verified that it meets a pre-established condition (for example it has a higher value than a predetermined threshold), proceeds with issuing a corresponding output signal to the additional nodes of the network if it is operating as intermediate node or processor, or it interrupts the deductive process and it activates as interference node if it is operating as output node.
Each node of the artificial neural network 10 acting as processor node (more
briefly processor node 2), is programmed so that, for each piece of input data, if the main value processed by the processing means verifies a first predetermined condition, sends corresponding input data to the additional nodes of the artificial neural network 10 thereto it is connected. In other words, when input data reach a processor node 2, the node processes it and downstream of such processing it considers exclusively the results linked to the main value of the input data. If they verify a first predetermined mathematical condition, then the node 2 in turn provides to send the processed signal, which comprises the processed main values and the secondary values, to the additional nodes of the implemented graph of the network 10. Such mathematical condition for example can consist in that the main value processed by the processing means has to be higher or lower than a predetermined threshold value.
According to a preferred embodiment of the invention, the nodes 1 , 2, 3 of the network 10 are implemented by means of perceptrons, in the specific case perceptrons using complex numbers. In particular, each perceptron is configured to assume several values at the same time, for example two values which can be represented indeed by means of a complex number.
In other words, the invention provides a graph-like structured neural network and comprising nodes implemented by means of perceptrons configured for processing a data structure consisting in an array of complex numbers. Hereinafter in the discussion, a node could be also be designated with the term "perceptron", and vice versa.
The perceptron then represents the smallest processing unit of the neural network according to the present invention, and actually it implements a homologous element of the neuron of the biological neural network.
The functionality implemented by each perceptron is that of allowing or avoiding the propagation of the input data or signals, depending upon the value of a characteristic parameter of such signal with respect to a value set as threshold value, for example through the use of a threshold function.
For example, the signal reaching a node is made to pass to the subsequent node only if the above-mentioned value of a characteristic feature exceeds a pre-established threshold.
Preferably, the perceptrons are configured for processing the data (or signals) according to very simple, linearly separable procedures, as those defined by the boolean operators AND and OR.
In particular, the neural network of the invention is a graph-like neural network the nodes thereof are quantum bit (qubit). The qubit is a mathematic object which corresponds to the information quantum within the quantum computing, that is the smallest portion in which any piece of coded information can be broken up. Therefore, it can be used as unit for measuring the coded information.
The qubit has specific properties of known type, deriving from the postulates of quantum mechanics. According to such postulates, a qubit can assume several values at the same time.
The solution implemented by means of the present invention simulates the qubit capability of assuming several values at the same time, by means of a data structure of the neural network which substantially comprises an array of complex numbers. With respect to the neural networks of known type, the neural network to which the present invention relates to provides a structural modification consisting in replacing the real numbers in favour of a data structure based upon the qubit, wherein a complex number corresponds to each value which the qubit can assume. In this way, the data transmitted between the nodes can simulate an electric signal having characteristic parameters such as magnitude and frequency, by leaving unaltered the perceptron operation logic.
It is to be highlighted that the perceptron of known type receives from other perceptrons signals comprising only values in real numbers, and it proceeds with an operation for multiplying each value by the respective coefficient or weight. The values of the so-weighed signals are summed, in order to obtain
one single real signal. An activation function establishes if the obtained signal quantity can, or cannot, pass depending upon a predetermined threshold value, determining the result.
The proposed neural network, instead, provides means for the connection between the perceptrons comprising a channel (or tube) configured to allow the simultaneous passage of several complex electric signals, that is each one of the signals transmitted by a perceptron can include several sensible or significant values, capable of being considered and appreciated by the perceptron. The activation logics of the qubits are described hereinafter.
First of all, it is specified that an arbitrary number of levels of the nodes or qubits can exist, and each level of qubit is autonomous, that is it is not influenced by the other ones. According to a preferred embodiment of the invention, the real portion of the first level of qubit and of the underneath levels is the only one that determines the logic propagation for the signal activation, according to already described modes. In particular, the comparison of the value of the signal real portion with a threshold value is provided and the signal propagation takes place for example if the value of the real portion is higher than the threshold value. The imaginary portion of the first level and of the underneath levels is the one contributing instead to the logic for directing and propagating the signal towards the other perceptrons. The use of the complex numbers for representing the signals transmitted by the perceptrons then allows to manage complex concepts by performing a smaller number of single signal transmission with respect to the standard neural networks, against a smaller network structural complexity.
For example, it is possible to manage with slim networks expressions including articulated concepts, such as verbs declined according to specific person or tenses. An example of data processing implemented by means of a neural network
according to the present invention is shown in Figure 4, and it is described hereinafter.
Let's consider a perceptron representing the verb "to be". The piece of input data transmitted by the perceptron is represented by a complex number having a real portion associated to the verb tense, and an imaginary portion associated to the person. The signal power or intensity, instead, determines the activation of the qubits.
If the subsequent perceptron is activated as the signal power is higher than a threshold value, then the propagation direction toward the subsequent qubit is influenced by the values of the previous qubits.
For example, the following three scenarios are analysed, shown overlapped in Figure 4:
"Who is the mayor in Rome?"
"Who will be the mayor in Rome?" "Will I be the mayor in Rome?"
In all cases, the verbal forms "is" and "will be" are associated to the verb "to be", in both cases obtaining a qubit which represents the concept of: "request knowledge to be mayor Rome".
A neural network of traditional type would obtain this same conclusion for both considered verbal forms, however for a neural network expressively designed to answer to questions of this type the considerations made on the performances of the networks, as their sizes increase, would be always valid.
On the contrary, a neural network implemented according to the present invention obtains this same conclusion by using the first level network, and then it proceeds with processing the data linked to the person and to the verbal tense. Therefore, the signal is further addressed to a different response qubit based upon the information included in each layer of contemporary values obtained from the history of the signal propagation.
In particular, in both cases the qubit associated to the verb "to be" has activated
due to the fact that the power of both signals is higher than the activation threshold, at first leading to the same conclusion of the traditional neural network. However, this activation is caused by different qubits, which generate different signals in the real and imaginary portion, by causing at last the activation of three different response qubits.
Thanks to the fact that each qubit can assume several values at the same time, wherein each value is represented by a several-value electric signal, more precise than the classical real representation, it is possible to obtain more accurate results than the traditional network, which keep the different nuances of the processed expression in the natural language.
In particular, the neural network according to the present invention can allow to obtain much higher accuracy results than those obtained with traditional networks, even if an extremely compact graph-like structure is kept, that is comprising an extremely limited number of neurons/qubits. On the contrary, the neural networks of known type become less performing upon increasing their sizes.
In substance, in order to allow the transmission of a signal carrying even secondary or accessory information, apart from main information, the imaginary portion of the complex number is highlighted to allow the creation of different data, in the specific case of signals different in magnitude and frequency, depending upon the secondary information to be transmitted. In case there are no particular accessory information to be propagated (for example the person and verb tense in the previous case), exclusively the real portion of the complex number is considered. Having said this, it is clear that the present invention results to be particularly advantageous in case of application in contexts like the ones for processing and comprehending the natural language.
In fact, the above shown solution allows to implement a neural network not varying in the structural sizes and in the number of connections with respect to those of known type, but which allows to proceed with more accurate
processing, which take into consideration even a plurality of accessory information.
With reference to the scheme of Figure 3, an additional preferred embodiment of a graph-like structured neural network according to the present invention is described hereinafter, programmed for applications for comprehending expressions in natural language.
Each graph node includes all relations between the several words and concepts in the form of a perceptron having complex numbers with n levels, that is a qubit. The combination and the concatenation of the qubits allows the solution of problems and very complex interferences. In the specific example, the network can have different node types, enlisted hereinafter:
- Lemma: it is the simplest node, it includes purely one single piece of information (dog, cat, person, vehicle, etc.); - Concept it represents a concept, generally it is the result of the combination of several lemma and it corresponds to a more complex perceptron. It is used for representing articulated concepts, such as for example "protected animal", constituted by the lemma "animal" and by the lemma "protected". - Inference: it is the most important node typology, generally point of arrival of a deductive process implemented by means of the neural network, constituted by the combination of the nodes of lemma or concept type. Such node allows to make interference, that is deductions.
The node concept is also defined as "centroid-like structure", the modelling thereof represents the discriminant between a correct, or not, propagation of the signal and then the operation of the logics leading to the interference. Actions to be taken or resources (images, documents) to be recovered can be associated to the nodes of inference type.
In the proposed example, a legal context is considered, wherein legal
judgements are to be recovered based upon the interpretation of researches in natural language, with respect to the expression (in this case a sentence with interrogative form): "Can one buy an iguana?"
The deductive process implemented by means of the neural network of the invention follows the following logics.
The sentence to be interpreted is broken up in token, that is the single terms constituting the considered expression are detected (in the now discussed example: [one, can, buy, an, iguana]).
The too recurring terms, not useful for processing purposes, are removed as they are not significant in the implementation of the deductive reasoning (in the example the following terms are not considered: [one, an]).
The sub-graph with minimum path, including all nodes existing in the sentence leading to an interference, is searched for.
Since the concepts generally are represented by several nodes of lemma type and in the extraction of the minimum path only a node of the n constituting the concept node is taken into consideration, for each concept node existing in the graph the missing nodes thereof are added.
The input nodes (those corresponding to the significant terms existing in the sentence) typically are activated with a signal of maximum power, that is magnitude 1 ,0 on a scale from 0 to 1 ,0.
The signals are propagated to the subsequent nodes (perceptrons) of the path, which will be activated only if the accumulated signal power exceeds a predetermined threshold.
Among all existing interferences one looks for the one which has been activated, if it does exist, which becomes the result of the deductive process.
In this case, the interference node corresponding to a "judgement n. 1 " is activated only if the nodes/perceptrons "protected_animal" and "trade" are activated. The node "protected_animal" is activated only if the node "animal" and "protected" are activated (by means of a signal propagation by the previous
nodes).
In the specific example, this process makes that only "iguana", which is connected to "protected", can activate the node "protected_animal", thus leading to the activation of the interference "judgement N. 1 ". On the contrary, it can be noted that the node "cat" can activate only 50% of the signal necessary to activate "protected_animal", and thus it cannot determine the activation of the interference node "judgement N. 1 ", actually causing termination of the deductive process.
By way of example, an additional application example of a deductive process by means of the system of neural network according to the present invention, the corresponding scheme thereof is shown in Figure 5, is illustrated hereinafter.
Let's consider the expressions in natural language: "Who is the mayor in Solarino?" and "Who will be the mayor in Solarino?". The node "is" (present indicative, third person singular) is connected to the general verb "to be", which actuates the scheme who_to be->mayor_solarino.
The node "will be" (future, third person singular), too, is connected to the general verb "to be", which actuates the scheme who_to be->mayor_solarino.
Both cases would produce the same result should they be implemented by means of a traditional neural network.
The algorithm implemented by means of the neural network of the invention provides to consider an additional second portion of the qubit, that is the second complex number (in fact, we remind that there are two complex numbers). These pieces of information are considered as follows.
The magnitude (signal power), represented by the real portion of the complex number, associates all possible tenses of the Italian verbs (which are 15) to values comprised in the range [0, 1 ], for example:
Simple Present = 0,07
Simple subjunctive = 1 , 14
Indicative simple future = 0,98 The imaginary portion, instead, is associated to the verb person: First person singular = 0, 16
First person plural = 0,33
Third person plural = 1
By going back to the previous examples, in the first phase the qubit "is" assumes the following value: is = ((delta (1 ,0+i*0))/(pft/ (0,07+i*0,83)) whereas the qubit "will be" assumes the following value: will be = ((delta (1 ,0+i*0))/(p/7/ (0,98+i*0,83))
Therefore, the node assumes several values at the same time (hence the concept of quantum derivation).
The main data, or better the carrier signal, that is the one which activates all previously described logics, is represented by the value delta and it is propagated through all nodes. This signal at the same time carries other information with itself, that is the secondary data phi. If the main data delta succeeds in reaching the interference node "mayor_solarino", by activating it, it is possible to exploit the secondary data phi, that is the value it assumes contemporarily to delta, for implementing the logics and the interference nuances of the following type:
IF rea\(phi) > 0,8 □ goes to the node "impossible_to_know" IF rea\(phi) < 0,5 □ goes to the node "Sebastiano_Scorpo"
In other words, should the request be referred to the future, the network answers "I cannot know it", if it is referred to the present the network answers
with the name of the current mayor "Sebastiano Scorpo".
In substance, the combination of data structures and the algorithms implemented by the artificial neural network according to the present invention, which uses complex numbers instead of scaled values, allow to obtain two important advantages with respect to the artificial neural networks of known type:
- extreme training rapidity, since the neural network system works by concepts; the training requires reduced quantities of test cases, as the connection between the various concepts propagates through all concepts and interferences of the network, leading to a simplification of the training process; and
- better precision and accuracy of the results.
Moreover, the neural network of the invention is dynamic in its structure: nodes, concepts and interferences can be added and/or removed in real time without compromising the base mathematical model.
On the contrary, in the traditional neural networks each single modification to the structure implies a new training of the same.
As to the data structures used in the neural network the present invention relates to, preferably structures of hash table and B-Tree type are used.
The hash table data structures allow to implement an association between a determined key and a determined value. The hash table can be used for implementing associative abstract data structures, for example of Map or Set type. A search based upon hashing provides to access the elements in the hash table directly, by means of arithmetic operations which transform determined keys into determined table addresses.
A feature of the hash tables is the extreme speed in recovering information, in the specific case one single access operation is sufficient for recovering
determined data. In order to maximize such feature, the hash tables are preferably implemented to be wholly used in RAM.
The data/method structures of the B-Tree type allow a quick localization of data files (Records or keys), in particular in the database, and they allow to minimize the number of accesses to the memory by the user to acquire the stored data.
The main advantage deriving from the adoption of B-Tree data structures is to be able to perform procedures of inserting, cancelling and searching for data in logarithmically short time. By way of example a B-Tree the nodes thereof include 1000 keys is capable of managing 1 ,000,000,000 keys by performing only three accesses (that is three levels).
In the neural network of the invention, the graph preferably is implemented by using hash tables to allow a quick access to information.
Should it be necessary to store a very high number of information, in the order of millions, with the purpose of optimizing the used resources - above all hardware - B-Tree data structures can be used, to support hash table.
Preferably, a portion of data is stored on hash table in RAM memory, sized based upon the available hardware. The remaining data are stored on a B-Tree structure, wherein the search is performed by exception, in case results in the hash table are not found. The neural network of the invention can further provide an interface element, of higher level than the two just described B-Tree and hash table data structures, allowing to access both structures. The interface element is configured to allow a user to interact virtually with a unique data structure, with the purpose of facilitating the use of the neural network and simplify the access to data.
Application field of the present invention and specific implementation modules
• Public administration
The neural network according to the present invention can find application in contests linked to the public administration to implement platforms for offering
particularly effective services supporting the citizen.
The modules used by the neural network of the invention applied in this specific context can provide:
- neural network proprietary for managing the interpretation of the natural language and the comprehension of the concepts expressed by the users;
- system for training the neural network based upon genetic algorithm;
- knowledge base modelled in graph implemented with hash table I B-Tree proprietary solution;
- communication modules: o Web; o chat / SMS; o phone; o Rss, Open Data, Maps, Weather forecast, various services; o social networks; o loT; and o data base / DAM.
The proposed solution can provide the development of a neural network programmed for the interpretation of the natural language with the purpose of detecting needs for the users, processed based upon the interpretation of concepts extracted from the NLP (Natural Language Processing) network.
The interaction between user and neural network can take place through different channels, thanks to dedicated modules. The neural network according to the present invention can further be programmed to analyse images and audio by extracting information therefrom, to be used for example for the facial and voice recognition and for the management of document images.
• Web Module
The neural network is fundamentally trained on a specific domain (natural
language). It is not always possible to provide for all specific cases of the single domain, but the neural network of the invention can be configured so that, if it is not capable of meeting all user needs by means of the received training, it spreads the search on Web with the purpose of providing an answer. The same Web module can be activated not only in case the neural network is not capable of classify the answer, but also to allow it to answer to questions therefor it has not explicitly trained, by extracting the metadata of the new proposed concept for inserting them in its own knowledge base.
Actually, the solution is capable of acquiring knowledge from Web, or by analysing Web pages including natural language or structured data.
• Chat / SMS Module
The Chat / SMS module allows the interaction with the user through typical chat conversation, by exposing suitable APIs which can be recalled even in REST, thus on http protocol. The neural network of the invention can be arranged for interacting with all players which make available one of their channels for Bot. Considering the heterogeneity and the differences in protocols between the different players, the network can implement a module acting as connector between the different sources with the purpose of standardizing the communication flow. The same infrastructure is useful for the communication through SMS.
• Phone
The neural network according to the present invention provides the possibility of the user to interact through voice command, for example by phone. To this purpose, the chat/sms infrastructure can be used, however by providing the use of speech to text and text to speech technologies and translation modules, as shown in the flow diagram of Figure 6.
• Rss / Open data / Maps
The neural network of the present invention can allow the acquisition of information, and thus an integration of the knowledge base thereof, by
interfacing with data sources of standard format such as RSS and not as Open Data, according to the same modes described in the paragraph Web Module.
By using the NLP module, whenever possible, the concepts in the content under the triple form (subject, relation, object/property) are extracted and stored in the knowledge base to be promptly used.
Moreover, the neural network can be programmed for interacting with maps, platform for managing information about traffic, weather forecast and other services.
• Social Networks According to preferred embodiments, the neural network according to the present invention is programmed to interface with the main social networks. Prior user authorization, it is possible to recover personal information existing on the social networks and to profile the user in real time with the purpose of directing at best the interaction with him/her. A second use of this module can be indirect. Thanks to a proprietary system, the core can remain "listening" on the social network relating to themes or key words to be monitored. This content is analysed in real time by the NLP modules and content analysis. In particular, this module can be used to intercept users with ongoing problems and to offer them assistance automatically, by aiming at improving efficiency in assisting the citizen.
• Lot
According to preferred embodiments, the neural network according to the present invention is programmed to interface even with Lot devices, typically sensors of various type, for example to measure light temperature, flowmeters, apart from cameras for the facial recognition and presence detectors.
This integration allows to be effective in several situations, by making the solution more proactive.
A typical example is that of a user requesting a certificate to the institution, in which the system provides all required information, thereamong the possibility
of going physically to the responsible institution.
By accessing the Lot data, the system is capable of suggesting the best moment to go to the office based upon the current inflow (presence detecting system) and to the historical information, as well as information on streets and public transport, by considering the traffic too.
• Data base / DAM
Apart from the knowledge base with proprietary format (indeed of the neural networks), the system can interface with heterogeneous data bases, prior customization of a channel capable of transforming the information of the outer bases in the proprietary format. Thanks to the same principle it is possible to integrate DAM and e-commerce software. In the latter case, the proposed neural network, since it can act even as recommendation engine, should it be not already present, is capable of suggesting accurately the final customer.
Hereinafter the previous example is described in more details, with particular reference to the role of the secondary value, included in the data transmitted by a node to the other one, in the interference determination, or better the activation of a node as interference node.
When the node processes the input signal according to a determined mathematical function to allow, or not, the propagation thereof, the value of the input signal is multiplied by a corresponding weight which connects the nodes, if the value exceeds the activation threshold the signal passes, otherwise it is not propagated.
The proposed neural network can manage several signals at the same time by the nodes and the connections therebetween, in particular there are "sub- signals" (even defined secondary values), which actually are used to refine the interference, by making it extremely more accurate than the possibility of the standard neural networks. In the specific case the first level, for convenience called delta, is the only one to be delegated as "main signal" or "carrying signal" (main value) and actually, even if the mathematics (multiplication, additions and
division, etc.) of the complex numbers is used, it acts according to the already described propagation logics. The other sub-signals are used to refine the interference process. In other words, when one has reached an interference through the carrying signal, the algorithm checks if there are sub-signals and based upon the value thereof continues (then refines) the interference process.
Let's consider the following example, which uses again one of the already proposed examples:
Who is the mayor in Rome
Who will be the mayor in Rome Who was the mayor in Rome
A standard neural network, if questioned with these three different queries, would reach in each case an interference node which represents the concept of "who_to be_mayor_Rome", which is a not precise interference, by answering always in the same way. The method implemented according to the present invention, after having reached such not precise interference based upon the only main signal, continues the processing, by analysing the sub-signals. In this specific example, the nodes "is", "will be", "have_been" have equal main value (ascribable to the verb to be) - for example (0, 12; 0,98) - but different sub- signals, for convenience called phi, aimed at giving better details about time (present, past, future), apart from the verbal person, for example
- is: (0,07; 0, 1 ) (present indicative, third person);
- will be: (0,6; 0, 1 ) (future, third person);
- was: (0,34; 0, 1 ) (past, third person). In presence of these sub-signals, the algorithm continues the search for other interferences connected to the one which has been selected by the propagation of the main signal, the relations thereof have the value corresponding to the existing sub-signal. This process, which is called propagation, leads to the interference (node) including the detail answer:
The node "Virginia Raggi" if there is a sub-signal with value (0,07; 0, 1 ). The node "I cannot know it" if there is a sub-signal with value (0,6; 0, 1 ). The node "tell me_which_period" if there is a sub-signal with value (0,34; 0, 1 ).
On the same basis, by pure way of example, an additional sub-channel can be added which for convenience can be called sigma, which for example can be used to manage the sentiment.
By using exemplifying values, we can establish that:
(0,0; 1 ,0) man, negative (0,0; 0,5) man, neuter
(0,0; 0,0) man, positive
(1 ,0; 1 ,0) woman, negative
(1 ,0; 0,5) woman, neuter
(1 ,0; 0,0) woman, positive In this case, against a profiled user (man, woman) who proposes queries of the type:
"Who will be the next incompetent mayor in Rome"
"I would like to know who is the mayor in Rome, please" the algorithm, thanks to the specialization of the third sub-signal, can answer in a more accurate way, by sorting the signal to the immediately connected interference node, the connection thereof has the corresponding values of phi and sigma, wherein the following answer could be associated to the corresponding interference:
"I cannot answer to this question, however I kindly ask you to watch your tone".
The present invention has been sofar described with reference to preferred
embodiments. It is to be meant that other embodiments belonging to the same inventive core may exist, as defined by the protective scope of the herebelow reported claims.
Claims
1. A method, implemented by means of a computer program, for the interpretation, by means of deductive logic, of an expression including one or more terms belonging to a natural language, said method comprising the steps of:
• providing an artificial neural network (10) apt to implement a graph including, for each term belonging to said natural language, at least a node (1 , 2, 3) associated thereto and to which a determined input data corresponds, wherein said graph comprises predetermined interconnections between said nodes (1 , 2, 3) of said graph implemented by means of connecting means for the data transmission, wherein each node (1 , 2, 3) comprises:
- means for acquiring one or more input data, wherein a plurality of values is associated to each input data, each value being representative of a semantic feature of one of such terms, said plurality of values comprising a main value and at least a secondary value; and
- means for processing said one or more input data according to a predetermined function, programmed for processing automatically said one or more input data; said node (1 , 2, 3) being programmed in such a way that, for each input data: if the main processed value verifies a first predetermined condition, said node (1 , 2, 3) sends the processed input data to all additional nodes of the artificial neural network (10) to which it is connected; if the main processed value does not verify said first predetermined condition, and said at least secondary processed value which verifies a second predetermined condition, said node (1 , 2, 3) sends the processed input data to the nodes of the artificial neural network (10) thereto it is connected;
if the main processed value does not verify said first predetermined condition, and said at least a processed secondary value does not verify said second predetermined condition, said node (1 , 2, 3) activates as interference node; · extracting from said graph all sub-graphs including all nodes (1 , 2, 3) corresponding to the terms of the above-mentioned expression and connected to at least a node (1 , 2, 3) activated as interference node;
• detecting, among said sub-graphs, the minimum sub-graph comprising the smallest number of nodes (1 , 2, 3); and · associating the terms associated to the nodes (1 , 2, 3) of said minimum sub-graph activated as interference nodes to the expression interpretation.
2. The method according to claim 1 , wherein said processing means is programmed for applying predetermined proportionality and/or weight numeral relations to the transmitted data.
3. The method according to claim 2, wherein said numeral relations are representative of respective semantic connections between said terms.
4. The method according to any one of the preceding claims, wherein each one of said terms is a concept or a semantic element of said natural language.
5. The method according to any one of the preceding claims, wherein said two main and secondary values are represented by the real portion and the imaginary portion of a complex number, respectively.
6. The method according to any one of the preceding claims, wherein said node (1 , 2, 3) is implemented by means of a perceptron.
7. The method according to any one of the preceding claims, wherein said node (1 , 2, 3) comprises acquisition means and processing means programmed for treating input data thereto exclusively two values, a main value and a secondary value, respectively, are associated.
8. The method according to any one of the preceding claims, wherein said node (1 , 2, 3) comprises acquisition means and processing means
programmed for treating input data wherein said two main and secondary values are represented by the real portion and by the imaginary portion of a complex number, respectively.
9. A computer program apt to implement, when run on a computer, a method for the interpretation by means of deductive logic of an expression comprising one or more terms belonging to a natural language according to any one of the preceding claims.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT102017000009280A IT201700009280A1 (en) | 2017-01-27 | 2017-01-27 | ARTIFICIAL NEURAL NETWORK |
IT102017000009280 | 2017-01-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018138680A1 true WO2018138680A1 (en) | 2018-08-02 |
Family
ID=59067735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2018/050485 WO2018138680A1 (en) | 2017-01-27 | 2018-01-26 | Artificial neural network |
Country Status (2)
Country | Link |
---|---|
IT (1) | IT201700009280A1 (en) |
WO (1) | WO2018138680A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT202000021253A1 (en) * | 2020-09-14 | 2022-03-14 | Sistem Evo S R L | IT platform based on artificial intelligence systems to support IT security |
CN114530143A (en) * | 2022-02-21 | 2022-05-24 | 中山大学 | Encrypted domain voice recognition method and system based on complex neural network |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7979370B1 (en) * | 2005-09-26 | 2011-07-12 | Dranias Development Llc | Neural network for electronic search applications |
US20160140236A1 (en) * | 2002-05-22 | 2016-05-19 | Digital Reasoning Systems, Inc. | Knowledge discovery agent system |
-
2017
- 2017-01-27 IT IT102017000009280A patent/IT201700009280A1/en unknown
-
2018
- 2018-01-26 WO PCT/IB2018/050485 patent/WO2018138680A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160140236A1 (en) * | 2002-05-22 | 2016-05-19 | Digital Reasoning Systems, Inc. | Knowledge discovery agent system |
US7979370B1 (en) * | 2005-09-26 | 2011-07-12 | Dranias Development Llc | Neural network for electronic search applications |
Non-Patent Citations (3)
Title |
---|
LV QIAN ET AL: "Quantum Cognitive Map model based on Quantum Neural Network", ENERGY PROCEDIA, vol. 13, 10 December 2011 (2011-12-10), pages 3124 - 3131, XP028469643, ISSN: 1876-6102, [retrieved on 20120315], DOI: 10.1016/J.EGYPRO.2011.11.453 * |
MASSIMO PANELLA ET AL: "Neural networks with quantum architecture and quantum learning", INTERNATIONAL JOURNAL OF CIRCUIT THEORY AND APPLICATIONS, vol. 39, no. 1, 23 July 2009 (2009-07-23), pages 61 - 77, XP055415797, ISSN: 0098-9886, DOI: 10.1002/cta.619 * |
MLADEN STANOJEVIC ET AL: "Applying Neural Networks to Knowledge Representation and Determination of Its Meaning", 10 October 2007, ADVANCES IN BRAIN, VISION, AND ARTIFICIAL INTELLIGENCE; [LECTURE NOTES IN COMPUTER SCIENCE], SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 523 - 532, ISBN: 978-3-540-75554-8, XP019073134 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT202000021253A1 (en) * | 2020-09-14 | 2022-03-14 | Sistem Evo S R L | IT platform based on artificial intelligence systems to support IT security |
CN114530143A (en) * | 2022-02-21 | 2022-05-24 | 中山大学 | Encrypted domain voice recognition method and system based on complex neural network |
Also Published As
Publication number | Publication date |
---|---|
IT201700009280A1 (en) | 2018-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sundararajan et al. | Multi‐Rule Based Ensemble Feature Selection Model for Sarcasm Type Detection in Twitter | |
CN111081220B (en) | Vehicle-mounted voice interaction method, full-duplex dialogue system, server and storage medium | |
CN108536681A (en) | Intelligent answer method, apparatus, equipment and storage medium based on sentiment analysis | |
CN114330510B (en) | Model training method, device, electronic equipment and storage medium | |
CN111694940A (en) | User report generation method and terminal equipment | |
CN117521814A (en) | A question and answer method and device based on multi-modal input and knowledge graph | |
CN112287085A (en) | Semantic matching method, system, device and storage medium | |
KR20180071021A (en) | Consistent topic text generation method and text generation apparatus performing the same | |
Kencana et al. | Hoax detection system on Twitter using feed-Forward and back-propagation neural networks classification method | |
Bhatt et al. | Detecting bot-generated text by characterizing linguistic accommodation in human-bot interactions | |
Needle et al. | Gendered associations of English morphology | |
CN113821587A (en) | Text relevance determination method, model training method, device and storage medium | |
WO2018138680A1 (en) | Artificial neural network | |
Suneetha et al. | Speech based emotion recognition by using a faster region-based convolutional neural network | |
Chandra et al. | An Enhanced Deep Learning Model for Duplicate Question Detection on Quora Question pairs using Siamese LSTM | |
Bulla et al. | Comparing user perspectives in a virtual reality cultural heritage environment | |
KR102757044B1 (en) | Method for generating chatbot training data based on Artificial Intelligence | |
Lee et al. | Speech2Mindmap: testing the accuracy of unsupervised automatic mindmapping technology with speech recognition | |
CN112052320B (en) | Information processing method, device and computer readable storage medium | |
Chintapalli et al. | Investigation of intelligent methodologies in prediction of depression | |
Samarawickrama et al. | Legal Party Extraction from Legal Opinion Texts Using Recurrent Deep Neural Networks. | |
Lakshmi V | A study on machine learning based conversational agents and designing techniques | |
CN114691815A (en) | Model training method and device, electronic equipment and storage medium | |
Patnaik et al. | Recent Developments in Intelligent Computing, Communication and Devices: Proceedings of ICCD 2017 | |
Li et al. | Unsupervised speech representation learning for behavior modeling using triplet enhanced contextualized networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18708200 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18708200 Country of ref document: EP Kind code of ref document: A1 |