BioMed Central BMC Medical Informatics and Decision Making ss Open AcceResearch article Context-sensitive autoassociative memories as expert systems in medical diagnosis Andrés Pomi*1 and Fernando Olivera2 Address: 1Sección Biofísica, Facultad de Ciencias, Universidad de la República, Iguá 4225, 11400 Montevideo, Uruguay and 2Departamento de Biofísica, Facultad de Medicina, Universidad de la República, General Flores 2125,11800 Montevideo, Uruguay Email: Andrés Pomi* - pomi@fcien.edu.uy; Fernando Olivera - folivera@fmed.edu.uy * Corresponding author Abstract Background: The complexity of our contemporary medical practice has impelled the development of different decision-support aids based on artificial intelligence and neural networks. Distributed associative memories are neural network models that fit perfectly well to the vision of cognition emerging from current neurosciences. Methods: We present the context-dependent autoassociative memory model. The sets of diseases and symptoms are mapped onto a pair of basis of orthogonal vectors. A matrix memory stores the associations between the signs and symptoms, and their corresponding diseases. A minimal numerical example is presented to show how to instruct the memory and how the system works. In order to provide a quick appreciation of the validity of the model and its potential clinical relevance we implemented an application with real data. A memory was trained with published data of neonates with suspected late-onset sepsis in a neonatal intensive care unit (NICU). A set of personal clinical observations was used as a test set to evaluate the capacity of the model to discriminate between septic and non-septic neonates on the basis of clinical and laboratory findings. Results: We show here that matrix memory models with associations modulated by context can perform automatic medical diagnosis. The sequential availability of new information over time makes the system progress in a narrowing process that reduces the range of diagnostic possibilities. At each step the system provides a probabilistic map of the different possible diagnoses to that moment. The system can incorporate the clinical experience, building in that way a representative database of historical data that captures geo-demographical differences between patient populations. The trained model succeeds in diagnosing late-onset sepsis within the test set of infants in the NICU: sensitivity 100%; specificity 80%; percentage of true positives 91%; percentage of true negatives 100%; accuracy (true positives plus true negatives over the totality of patients) 93,3%; and Cohen's kappa index 0,84. Conclusion: Context-dependent associative memories can operate as medical expert systems. The model is presented in a simple and tutorial way to encourage straightforward implementations by medical groups. An application with real data, presented as a primary evaluation of the validity and potentiality of the model in medical diagnosis, shows that the model is a highly promising alternative in the development of accuracy diagnostic tools. Published: 22 November 2006 BMC Medical Informatics and Decision Making 2006, 6:39 doi:10.1186/1472-6947-6-39 Received: 15 May 2006 Accepted: 22 November 2006 This article is available from: http://www.biomedcentral.com/1472-6947/6/39 © 2006 Pomi and Olivera; licensee BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Page 1 of 11 (page number not for citation purposes) http://www.biomedcentral.com/1472-6947/6/39 http://creativecommons.org/licenses/by/2.0 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=17121675 http://www.biomedcentral.com/ http://www.biomedcentral.com/info/about/charter/ BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 Background The extreme complexity of contemporary medical knowl- edge together with the intrinsic fallibility of human rea- soning, have led to sustained efforts to develop clinical decision support systems, with the hope that bedside expert systems could overcome the limitations inherent to human cognition [1]. Despite the foundational hopes have not been fulfilled [2], the unaltered and increasing necessity for reliable automated diagnostic tools and the important benefit to society brought by any success in this area make every advance valuable. To further the research on computer-aided diagnosis begun in the 1960s, models of neural networks [3] have been added to the pioneering work on artificial-intelli- gence systems. The advent of artificial neural networks with ability to identify multidimensional relationships in clinical data might improve the diagnostic power of the classical approaches. A great proportion of the neural net- work architectures applied to clinical diagnosis rests on multilayer feed-forward networks instructed with back- propagation, followed by self-organizing maps and ART models [4,5]. Although they perform with significant accuracy, this performance nevertheless remained insuffi- cient to dispel the common fear that they are "black- boxes" whose functioning cannot be well understood and, consequently, whose recommendations cannot be trusted [6]. The associative memory models, an early class of neural models [7] that fit perfectly well with the vision of cogni- tion emergent from today brain neuroimaging techniques [8,9], are inspired on the capacity of human cognition to build semantic nets [10]. Their known ability to support symbolic calculus [11] makes them a possible link between connectionist models and classical artificial- intelligence developments. This work has three main objectives: a) to point out that associative memory models have the possibility to act as expert systems in medical diagnosis; b) to show in a sim- ple and straightforward way how to instruct a minimal expert system with associative memories; and c) to encourage the implementation of this methodology at large scale by medical groups. Therefore, in this paper we address – in a tutorial approach – the building of associative memory-based expert systems for the medical diagnosis domain. We favour a comprehensive way and the possibility of a straightforward implementation by medical groups over the mathematical details of the model. Methods Context-dependent autoassociative memories with overlapping contexts Associative memories are neural network models devel- oped to capture some of the known characteristics of human memories [12,13]. These memories associate arbi- trary pairs of patterns of neuronal activity mapped onto real vectors. The set of associated pairs is stored superim- posed and distributed throughout the coefficients of a matrix. These matrix memory models are content-address- able and fault-tolerant, and are well known to share with humans the ability of generalization and universalization [14]. In the attempt to overcome a serious problem of these classical models – their impossibility to evoke different associations depending on the context accompanying a same key stimulus- Mizraji [15] developed an extension of the model that performs adaptive associations. Context- dependent associations are based on a kind of second order sigma-pi neurons [16], and showed an interesting versatility when they were incorporated in modules employed to implement chains of goal-directed associa- tions [17], disambiguation of complex stimuli [18], logi- cal reasoning [19,20], and multiple criteria classification [21]. A context-dependent associative memory M acting as a basic expert system is a matrix where di are column vectors mapping k different diseases (the set {d} is chosen orthonormal), and sj(i) are column vectors mapping signs or symptoms accompanying the i disease (also an orthonormal set). The sets of symptoms corresponding to each disease can overlap. The Kronecker product (�) between two matrices A and B is another matrix defined by A � B = a(i, j)·B (2) denoting that each scalar coefficient of matrix A, a(i, j), is multiplied by the entire matrix B. Hence, if A is nxm dimensional and B is kxl dimensional, the resultant matrix will have the dimension nkxml. Note that if d are n-dimensional and s are k-dimensional vectors, the memory is a rectangular nxnm matrix. Also, the memory M can be viewed as resulting from the Kro- necker product (�) enlargement of each element of a nxn square autoassociative matrix di diT by a row column rep- resenting the sum of corresponding signs and symptoms: M d d si i j T j ii k = ⊗ ( )∑∑ = ( ) ( )1 1 Page 2 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 By feeding the context-sensitive autoassociative module M with signs or symptoms, the system retrieves the set of possible diseases associated with such set of symptoms, or a single diagnosis if the criteria suffice. At resting conditions the system is grounded in an indif- ferent state g. If each disease was instructed only one time, in the mathematics of the model this implies the priming of the memory with a linear combination in which every disease has an equal weight where and I is the nxn identity matrix. From (4) it is evident that, after the priming, the context-dependent memory becomes a classical memory associating symp- toms with diseases. If a set of sufficient concurrent signs and symptoms is presented to the waiting memory (σ = ∑s), after iteration, a final diagnosis results. It is important to point out that if the sets {sj(i)} corre- sponding to each disease were disjoint sets, then any sin- gle symptom s j(i) would be patognomonical and sufficient to univocally diagnose di. Otherwise, the output will be a linear combination of possible diseases, each one weighed according to the scalar product between the set of actual symptoms (σ) and the set of symptoms corre- sponding to each different disease: , σ > di. See Figure 1 and its legend. Forcing the sum of scalar products to unity, this output provides a probabilistic mapping of the possible diseases associated with the clinical presenta- tion. NUMERICAL EXAMPLE How to instruct the memory Let us illustrate how to instruct the memory with a mini- mal numerical example. Consider the set of three diseases and its characteristic symptoms shown in Figure 2. The first task is to codify the sets of signs and diseases with orthogonal vectors, for which we will use the following orthogonal matrices. According to the table and equation (1), we instruct the memory by adding a matrix for each disease. For the first disease we have d1d1T � (s1 + s3 + s4)T In the same way we will have two other matrices for the other diseases. The sum of the three matrices constitutes the memory M. How the system works See also Figure 1 and its legend. Time step 1 Initial state of the system: Indifferent vector gT = (d1 + d2 + d3) = [1 1 1] A first clinical data (s3) arrives: s3 T = [0.5 0.5 -0.5 -0.5] Preprocessing of input vectors is performed: h = g � s3 hT = [0.5 0.5 -0.5 -0.5 0.5 0.5 -0.5 -0.5 0.5 0.5 -0.5 -0.5] Resulting associated output: Mh (a linear combination of possible diagnoses) M d d si i T i k j T j i = ⊗ ( ) = ∑ ∑ 1 3 ( ) M g I d g d s d sn n i i i j j i T i i j j i T( ) , ( ) ( ) ( ) ( ) ⊗ = < > = ( )× ∑ ∑ ∑ ∑ 4 g di i = ∑ < ∑∑ sj j ii ( ) Diseases Signs & symptoms 1 0 0 0 1 0 0 0 1 0 ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ .55 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 * − − − − − − ⎡ ⎣ ⎢ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ ⎥ d d d s s s s1 2 3 1 2 3 4 1 0 0 0 0 0 0 0 0 1 5 0 5 0 5 0 5 1 5 0 5 0 5 0 5 0 0 0 0 0 0 0 0 ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ ⊗ − = = − [ . . . . ] . . . . 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ M = − − − ⎡1 5 0 5 0 5 0 5 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 5 0 5 0 5 0 5 . . . . . . . .⎣⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ output( )1 1 1 0 = ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ Page 3 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 Resulting probabilistic map (each coefficient of the out- put vector is divided by the sum of them all): Time step 2 A new symptom (s2) arrives: s2 T = [0.5 -0.5 0.5 -0.5] Preprocessing of input vectors is performed: h = output(1) � s2 hT = [0.5 -0.5 0.5 -0.5 0.5 -0.5 0.5 -0.5 0 0 0 0] Resulting associated output (Mh): Resulting probabilistic map: Final result The system has arrived to an only final diagnosis that cor- responds to disease 2. REAL DATA APPLICATION – diagnosing late-onset neonatal sepsis Late-onset sepsis (invasive infection occurring in neonates after 3 days of age) is an important and severe problem in infants hospitalized in neonatal intensive care units (NICUs) [22]. The clinical signs of infection in the new- born are variable, and the earliest manifestations are often subtle and nonspecific. In the presence of a clinical suspi- cion of sepsis an early and accurate diagnosis algorithm would be of outstanding value but is not yet available [23]. In a recent retrospective study that included 47 neonates with clinical diagnosis of suspected sepsis, Mar- tell and collaborators [24] assessed a group of clinical and laboratory variables – surgical history, metabolic acidosis, hepatomegalia, abnormal white blood cell (WBC) count, hyperglycemia and thrombocytopenia-determining their sensitivity, specificity, likelihood ratio and post-test prob- prob( ) . .1 0 5 0 5 0 = ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ output( )2 0 1 0 = ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ prob( )1 0 1 0 = ⎡ ⎣ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ A module with diagnostic abilitiesFigure 1 A module with diagnostic abilities. The neural module receives the input of two vectors: one representing the set of pos- sible diseases up to the moment and the other vector corresponding to a new sign, symptom or laboratory result. The action of the neurons that constitute the neural module can be divided into two sequential steps: the Kronecker product of these two entries and the association of this stimulus with an output activity pattern. This output vector is a linear combination of a nar- rower set of disease vectors that can be reinjected if a new clinical data arrives or can be processed to obtain the probability attributable to each diagnostic decision. signs & symptoms diseases neural module M output probabilistic map Page 4 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 ability. Sepsis was defined as a positive result on one or more blood cultures in a neonate with clinical diagnosis of suspected sepsis. A prevalence of 34% was found for their NICU. We instructed a context-dependent autoassociative mem- ory according to equation (3) with data published in [24] in order to evaluate its capacity to recognize patients with or without sepsis. As a test-set, we used 15 cases of sus- pected neonatal sepsis coming from the same NICU (per- sonal observations of one of us-AP). From equation (3) it is clear that the different clinical presentation of the indi- vidual cases are added up and resumed in the vector ( ) representing the characteristic signs of each ill- ness condition. We trained the memory instructing two terms di corresponding to the two final diagnoses of con- firmed sepsis and absence of sepsis. M = [septic] [septic]T � [attributes _ septic]T + [healthy] [healthy]T � [attributes _ healthy]T The column vectors used for the septic and healthy condi- tions were [1 0]T and [0 1]T respectively. The column vectors with the attributes corresponding to the septic and non-septic patients were generated from the available data as follows. For each one of the variables studied in [24] (see Figure 3) we reconstructed the values of the true positive (TP), false positive (FP), true negative (TN) and false negative (FN) number of patients: TP = sensitivity × E FP = (sensitivity/LR) × NE TN = specificity × NE FN = N - (TP+FP+TN). These values became the coefficients of the two thirteen- dimensional column vectors [attributes_septic] and [attributes_healthy]. This procedure is shown in Figure 4. Finally, after normalization, the vectors used for the instruction of the memory M are [attributes_septic]T = [0.0604 0.4225 0.0604 0.4225 0.1509 0.3320 0.0604 0.0604 0.3621 0.0604 0.4225 0.0604 0.4225] [attributes_healthy]T = [0.0142 0.4248 0.0142 0.4248 0.0566 0.3823 0.0354 0.0177 0.3859 0.0283 0.4106 0.0283 0.4106]. The memory M resumes the cumulated experience in sus- pected late-onset sepsis of this particular NICU through the clinical presentations of one year hospitalized neonates. To test our system we presented to the memory a set of 15 personal clinical observations of neonates with the clini- cal diagnosis of suspected sepsis hospitalized in the same NICU. We coded the thirteen attributes with the canonical basis vectors (the columns of a 13-dimensional identity matrix). For example, the presence of metabolic acidosis was represented with [0 01 0 0 0 0 0 0 0 0 0 0]T and the absence of acidosis with the vector [0 0 01 0 0 0 0 0 0 0 0 0]T. For each patient of the test set we added the vectors corresponding to the confirmed presence or absence of any sign. These 15 vectors representing the clinical presen- tation of the neonates with the diagnosis of suspected sep- sis are shown in Figure 5. The classification of each patient was obtained as follows: sj T j i( ) ∑ Three diseases with their corresponding signsFigure 2 Three diseases with their corresponding signs. The set of signs and symptoms associated with three different diseases instructed in the memory of the numerical example according to equation (1). Signs & symptoms s1 s2 s3 s4 d1 d2 D is ea se s d3 Page 5 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 i) The vector with the clinical presentation is presented to the memory M. The output, [result_vector], is a linear combination of the vectors septic [1 0]T and healthy [0 1]T: [result_vector] = M * ([indifferent_vector] � [clinical pres- entation]) The [indifferent_vector] is the sum of septic and healthy vectors: [1 1]T. ii) A diagnosis results from the evaluation of the coeffi- cients of the two-dimensional [result_vector]. If the first coefficient is greater than the second the case is classified as sepsis. If the second coefficient is the largest the patient is classified as non-septic. Results A context-dependent memory model acting as a minimal expert system In this work we show a minimal, context-dependent, memory nucleus able to support diagnostic abilities. Our expert system consists of an autoassociative memory with overlapping contexts and feedback loop that makes the output able to be reinjected into the memory at the next time step (Figure 1). A memory M acting as a basic expert system is a matrix (equation 3) where the di are column vectors mapping k different dis- eases (the set {d} is chosen to be orthonormal), sj(i) are column vectors mapping signs and symptoms accompa- nying the i disease (also an orthonormal set), and � is the Kronecker product [25]-see Methods-. Note that if d are n- dimensional vectors (n ≥ k), and s are m-dimensional, then didiT are square symmetric matrices, and the memory M is a rectangular matrix of dimensions nxnm. The instruction of the expert The cognitive functioning shown by this kind of neural network model is based on the establishment of context- dependent associations. The instruction of the expert therefore consists in the instruction of the memory that stores these associations. Each disease is instructed to the memory together with its characteristic signs and symptoms (these can include the results of laboratory exams, imaging studies, etc). For this to be done, the first step is to code each disease to be instructed with a different orthonormal vector. The same must be done with the set of signs, symptoms and para- clinical results that could accompany that set of diseases, also coding them with different column vectors of any orthonormal basis of adequate dimension. Once the signs and symptoms corresponding to each dis- ease have been identified and expressed as orthogonal vectors, the construction of the memory can commence. According to equation (1) this instruction consists in the superposition (the addition) of different rectangular matrices, each one corresponding to a different disease. The instruction of the memory can be developed along two different paths. a. Learning from the textbook. In this case, the expert is instructed according to the updated aca- demic knowledge of each disease. One first disease is taken, which is coded by the column vector di, and the outer product of this vector is made by itself (a square matrix is constructed that contains this autoassociation). At the same time, all the signs and symptoms characteris- tic of this disease are identified and the vectors coding them are added up ( ). Finally the Kronecker product between the square matrix and the transpose of the vector- sum is performed. An analogous procedure is accom- plished for any pathology. Each new resulting rectangular matrix of dimension nxnm is added to the previous ones already stored in memory M (a minimal numerical exam- M d d si i T i k j T j i = ⊗ = ∑ ∑ 1 ( ) , sj j i( ) ∑ Data from the study of Martell and collaborators [24]Figure 3 Data from the study of Martell and collaborators [24]. The total number of neonates with suspected late- onset sepsis was N = 47 (septic: E = 16; non-septic: NE = 31). Metabolic acidosis was defined for patients with ade- quate ventilation; WBC count was considered normal within 5.000–25.000; thrombocytopenia was defined for platelet counts <40.000. sensibility specificity LR Surgery 0,13 0,96 3,25 Acidosis 0,13 0,96 3,25 Hepatomegalia 0,31 0,88 2,58 Leucocytosis 0,13 0,92 1,60 Leucopenia 0,13 0,96 3,25 Hyperglycemia 0,13 0,92 1,62 Thrombocytopenia 0,13 0,92 1,62 Page 6 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 ple is presented in section Methods-How to instruct the memory-). b. Learning by experience. This is a case-based way of instructing the memory. It allows the expert to pro- gressively capture the prevalence of the different diseases in a community. Once finalized the previous instruction, the memory is fed with the actual clinical findings of each particular patient assisted by the physician, attributing this particular constellation of signs and symptoms to the corresponding final diagnosis. The matrices resulting from new patients are progressively added to the memory. This type of representation implies two essential distinc- tions from the previous learning-from-the-textbook mem- ory. Pathologies are not equally weighed in the memory but their representations depend on the frequency of pres- entation of cases in the population. In addition, for each disease the different symptoms also are not equally weighed: those corresponding to the more frequent clini- cal presentations will be strengthened. Medical queries Once the training phase is finalized, the system is ready to be used. The presentation of a first sign or symptom initi- ates a medical query. The availability of a new clinical or laboratory finding causes the expert to advance one more step in its diagnostic decision. Although we have many new signs and symptoms, in order to obtain a progressive narrowing of the set of possible diagnoses they must be presented to the expert one per time. At each step, the new data are entered into the memory along with the set of possible diagnoses until that moment. Finally, if the whole set of signs and symptoms available until the moment is sufficient, the system will arrive to a unique diagnosis. We then follow the system operation. The starting point is when the first clinical data appears. The vector corre- sponding to this symptom is multiplied by means of the Kronecker product times the vector that represents the set of possible diagnoses (in the starting point it is an indif- ferent vector). If the memory was instructed with equally- weighed pathologies the indifferent vector is the sum of Attributes' vectors for the septic and non-septic groupsFigure 4 Attributes' vectors for the septic and non-septic groups. For each variable, true positive (TP), false positive (FP), true negative (TN) and false negative (FN) were calculated: TP = sensitivity × E; FP = (sensitivity/LR) × NE; TN = specificity × NE; FN = N - (TP+FP+TN). Presence or absence of the sign [attributes_septic] [attributes_healthy] (+) TP FPSurgery (–) FN TN (+) TP FPMetabolic acidosis (–) FN TN (+) TP FPHepatomegalia (–) FN TN TP (a1) FP (b1) TP (a2) FP (b2) Leucocytosis Leucopenia Normal WBC count E – (a1+a2) NE – (b1+b2) (+) TP FPHyperglycemia (–) FN TN (+) TP FPThrombocytopenia (–) FN TN Page 7 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 all the vectors of diseases stored in the memory. If, on the contrary, the memory was instructed on the basis of indi- vidual cases, the indifferent vector will be the same linear combination of the vector diseases stored (the weight of each disease corresponds to the one of its frequency of presentation). The resulting column vector is now multi- plied by the memory matrix. The exit vector contains either a univocal diagnosis (if the clinical data are suffi- cient) or a certain linear combination of vectors corre- sponding to several diseases. If a unique diagnosis was not arrived at, when one has a new sign or symptom, its cor- responding vector will enter the memory after making its Kronecker product by the exit vector of the previous step. The process is repeated and stops when a final diagnosis is reached or when new clinical data is not available (see the continuation of the numerical example in section Meth- ods-How the system works-). Even if at a certain state a final diagnosis has not been reached, the outcome of the system nevertheless repre- sents a probabilistic mapping of the possible diagnoses, each one with its respective probability in agreement with the data available until the moment. In order to obtain such a map in a direct way it is convenient to choose as disease vectors the columns of an identity matrix of suita- ble dimension. In that case, in each exit vector the posi- tions of the coefficients different from zero mark the different possible diagnoses. Applying a normalization to this exit vector in such a way that the sum of their compo- nents is one, the value of each coefficient different from zero represents the probability of each one of those diag- noses. Otherwise, these probabilities can be obtained by multiplying the exit vector by the orthonormal matrix that codifies the diseases. A reduced model for the diagnosis of late-onset neonatal sepsis The system described in section Methods classified the patients of the test-set (N = 15) as follows (S = sepsis; NS = non-septic): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 S NS NS S S S S S NS NS S S S S S Test setFigure 5 Test set. For each one of the 15 neonates of the test set, the thirteen-dimensional column vector has ones in the coefficients corresponding to the position of the confirmed presence or absence of the signs already shown in Figure 4. The final diagnosis is shown at the bottom of the column (S: sepsis; NS: no sepsis). Case number 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 1 1 0 1 0 0 0 1 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 0 0 1 1 0 0 0 1 0 Illness condition S NS NS S S S S S NS NS S S S NS S Presence of a sign Absence of a sign Page 8 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 Comparing this classification with the actual illness con- dition of the patients-shown in Figure 5 – it results that only patient 14 was misdiagnosed. The 2 × 2 table shown in Figure 6 resumes the behaviour of our diagnostic sys- tem. The sensitivity was 100% and the specificity 80%. The likelihood ratio (LR = TP/FP) was 5. Using this set of variables as input data, the performance of the system in the classification task can be evaluated as very good. It reached a high accuracy ((TP+TN)/N) of 93.3%, and a Cohen's kappa index of 0.84. (Kappa = (Accuracy - A_chance)/(1-A_chance), where A_chance is the accuracy expected by chance. A_chance = (+)/N) where = (TP+FP)(TP+FN)/N and = (FN+TN)(FP+TN)/N). Discussion and conclusions We have shown here that context-dependent associative memories could act as medical decision support systems. The system implies the previous coding of a set of diseases and its corresponding semiologic findings in individual basis of orthogonal vectors. The model presented in this communication is only a minimal module able to evalu- ate the probabilities of different diagnoses when a set of signs and symptoms is presented to it. This expert system based on an associative memory shares with programs using artificial intelligence a great capacity to quickly narrow the number of diagnostic possibilities [1]. Also, it is able to cope with variations in the way that a disease can present itself. A clear advantage of this system is that the probability assignment to the different diagnostic possibilities in any particular clinical situation does not have to be arbitrarily assigned by the specialist, but is automatically provided by the system, in agreement with the acquired experience. In this sense, this neural network model is akin to statisti- cal pattern recognition [1]. However, neither programs based on simple matching strategies nor most used neural network models are able to explain to the physician how they have reached their conclusions. On the contrary, the operation of this system, that unveils the underlying asso- ciative structure of human cognition, is transparent. Obvi- ously, it must be understood that this is not the unique mechanism involved in human decision making. The rel- evant properties of this associative memory model are summarized in Figure 7 in comparison to other neural network models and rule-based artificial intelligence sys- tems. Beginning with a textbook-instructed memory, the system evolves accommodating (superimposing in the memory) new manifestations of disease gathered over time. This process of continued network education based on empir- ical evidence leads to databases representative of the dif- ferent patient populations with its own geo- demographical characteristics. This model can be easily improved in various directions. The functioning of the system described up to now can be considered a passive phase (in the sense that it consists on an automatic evaluation of the available information). By adding another module to the system, consisting of a sim- ple memory that associates diseases with the set of its find- ings, the expert can enhance its diagnostic performance. Remaining two or three different diagnostic hypothesis Associative memory classificationFigure 6 Associative memory classification. The 15 cases tested (actual sepsis: 10; non-septic: 5) were classified as positive (S) or negative (NS) by the neural network. TP = true positive; FP = false positive; TN = true negative and FN = false negative. A total of 11 neonates were tested positive, and 4 negative. The sensitivity was 100% and the specificity 80%. Actual illness condition Septic Non-septic S TP = 10 FP = 1 11 NS FN = 0 TN = 4 4 System classification 10 5 Page 9 of 11 (page number not for citation purposes) BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 within the previous passive phase of diagnosis refine- ment, this new module can be fed with the vectors map- ping each one of these diseases to elicit its associated set of clinical findings. The set of absent features supporting one or the other disease determines what information must be sought next. Another important expansion of the expert allows giving up the strong assumption that all the findings correspond to a unique disease. Our context-dependent memory stops and gives a null vector when contradictory data are proportioned. To prevent such behaviour, a module akin to a novelty filter could be interposed within the recursion with the following properties: if a vector with only zero coefficients arrives, this module associates the whole set of diseases, avoiding lying aside relevant diagnoses and concurrent pathologies. However, this theme needs fur- ther investigation: as for almost every expert system [26], the clustering of findings and their attribution either to only one disease or to several disorders is a major chal- lenge. The primary implementation of a reduced version of the model with the aim of classifying septic or non-septic neonates showed the highly satisfactory capacity of the model to be applied to real data. We conclude that con- text-sensitive associative memory model is a promising alternative in the development of accuracy diagnostic tools. We expect that its easy implementation stimulate groups of medical informatics to develop this expert sys- tem at real scale. Competing interests The authors declare that they have no competing interests. Authors' contributions AP conceived the application of the model to medical diagnosis, drafted the manuscript and carried out the implementation with real data of neonates with suspected late-onset sepsis. FO participated in the elaboration of the numerical examples, computational programs and the discussion of the model. Both authors read and approved the final manuscript. Acknowledgements We thank Dr. Eduardo Mizraji for useful comments and Dr. Julio A. Hernández for revision and improvement of the manuscript. References 1. Szolovits P, Patil RS, Schwartz WB: Artificial Intelligence in med- ical diagnosis. Annals of Internal Medicine 1988, 108:80-87. 2. Schwartz WB, Patil RS, Szolovits P: Artificial Intelligence in med- icine: Where do we stand? New England Journal of Medicine 1987, 316:685-688. 3. Arbib MA, Ed: The Handbook of Brain Theory and Neural Networks Cam- bridge, MA: MIT Press; 1995. 4. Cross SS, Harrison RF, Lee Kennedy R: Introduction to neural networks. The Lancet 1995, 346:1075-1079. 5. Lisboa PJG: A review of evidence of health benefit from artifi- cial neural network in health intervention. Neural Networks 2002, 15:11-39. 6. Baxt WG: Application of artificial neural networks to clinical medicine. The Lancet 1995, 346:1135-1138. 7. Kohonen T: Associative Memory: A System-Theoretical Approach New York: Springer-Verlag; 1977. 8. Friston KJ: Imaging neuroscience: Principles or maps? Proc Natl Acad Sci USA 1998, 95:796-802. 9. McIntosh AR: Towards a network theory of cognition. Neural Networks 2000, 13:861-870. 10. Pomi A, Mizraji E: Semantic graphs and associative memories. Physical Review E 2004, 70:066136. 11. Mizraji E: Vector logics: the matrix-vector representation of logical calculus. Fuzzy Sets and Systems 1992, 50:179-185. 12. Anderson JA, Cooper L, Nass MM, Freiberger W, Grenander U: Some properties of a neural model for memory. AAAS Sympo- sium on Theoretical Biology and Biomathematics 1972 [http://www.phys ics.brown.edu/physics/researchpages/Ibns/ Cooper%20Pub040_SomePropertiesNeural_72.pdf]. Milton, WA. Leon N Cooper Publications Outstanding characteristics of different modelsFigure 7 Outstanding characteristics of different models. AM: associative memory; ANN: artificial neural network; AI: artificial intelligence. AM model Other ANN models Rule-based AI systems Dealing with non linear information + + - Narrowing diagnostic possibilities + + + Automatic assignment of probabilities + - - Explaining capacity + - + Page 10 of 11 (page number not for citation purposes) http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=3276267 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=3276267 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=3821801 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=3821801 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=11958484 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=11958484 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=9448243 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=11156197 http://www.physics.brown.edu/physics/researchpages/Ibns/Cooper%20Pubs/040_SomePropertiesNeural_72.pdf http://www.physics.brown.edu/physics/researchpages/Ibns/Cooper%20Pubs/040_SomePropertiesNeural_72.pdf http://www.physics.brown.edu/physics/researchpages/Ibns/Cooper%20Pubs/040_SomePropertiesNeural_72.pdf BMC Medical Informatics and Decision Making 2006, 6:39 http://www.biomedcentral.com/1472-6947/6/39 Publish with BioMed Central and every scientist can read your work free of charge "BioMed Central will be the most significant development for disseminating the results of biomedical researc h in our lifetime." Sir Paul Nurse, Cancer Research UK Your research papers will be: available free of charge to the entire biomedical community peer reviewed and published immediately upon acceptance cited in PubMed and archived on PubMed Central yours — you keep the copyright Submit your manuscript here: http://www.biomedcentral.com/info/publishing_adv.asp BioMedcentral 13. Cooper LN: Memories and memory: a physicist's approach to the brain. International J Modern Physics A 2000, 15:4069-4082 [http:/ /journals.wspc.com.sg/ijmpa/15/1526/S0217751X0000272X.html]. 14. Cooper LN: A Possible Organization of Animal Memory and Learning. In Proceedings of the Nobel Symposium on Collective Proper- ties of Physical Systems Edited by: Lundquist B & S. New York: Aca- demic Press; 1973. 15. Mizraji E: Context-dependent associations in linear distrib- uted memories. Bulletin Math Biol 1989, 51:195-205. 16. Valle-Lisboa JC, Reali F, Anastasía H, Mizraji E: Elman topology with sigma-pi units: An application to the modelling of verbal hallucinations in schozophrenia. Neural Networks 2005, 18:863-877. 17. Mizraji E, Pomi A, Alvarez F: Multiplicative contexts in associa- tive memories. BioSystems 1994, 32:145-161. 18. Pomi-Brea A, Mizraji E: Memories in context. BioSystems 1999, 50:173-188. 19. Mizraji E, Lin J: A dynamical approach to logical decisions. Com- plexity 1997, 2:56-63. 20. Mizraji E, Lin J: Fuzzy decisions in modular neural networks. Int J Bifurcation and Chaos 2001, 11:155-167. 21. Pomi A, Mizraji E: A cognitive architecture that solves a prob- lem stated by Minsky. IEEE on Systems, Man and Cybernetics B (Cybernetics) 2001, 31:729-734. 22. Stoll BJ, Hansen N, Fanaroff AA, Wright LL, Carlo WA, Ehrenkranz RA, Lemons JA, Donovan EF, Stark AR, Tyson JE, Oh W, Bauer CR, Korones SB, Shankaran S, Laptook AR, Stevenson DK, Papile L-A, Poole WK: Late-Onset Sepsis in Very Low Birth Weight Neonates: The Experience of the NICHD Neonatal Research Network. Pediatrics 2002, 110:285-291. 23. Rubin LG, Sánchez PJ, Siegel J, Levine G, Saiman L, Jarvis WR: Evalu- ation and Treatment of Neonates with Suspected Late- Onset Sepsis: A Survey of Neonatologists' Practices. Pediat- rics 2002, 110(4):e42. 24. Perotti E, Cazales C, Martell M: Estrategias para el diagnóstico de sepsis neonatal tardía. Rev Med Uruguay 2005, 21:314-320 [http://www.rmu.org.uy/revista/2005v4/art11.pdf]. 25. Van Loan CF: The ubiquitous Kronecker product. Journal of Computational and Applied Mathematics 2000, 123:85-100. 26. Szolovits P, Pauker SG: Categorical and probabilistic reasoning in medicine revisited. Artificial Intelligence 1993, 59:167-180. Pre-publication history The pre-publication history for this paper can be accessed here: http://www.biomedcentral.com/1472-6947/6/39/prepub Page 11 of 11 (page number not for citation purposes) http://journals.wspc.com.sg/ijmpa/15/1526/S0217751X0000272X.html http://journals.wspc.com.sg/ijmpa/15/1526/S0217751X0000272X.html http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=15935616 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=15935616 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=15935616 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=7919113 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=7919113 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=10400268 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12165580 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12165580 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12165580 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12359815 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12359815 http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&dopt=Abstract&list_uids=12359815 http://www.rmu.org.uy/revista/2005v4/art11.pdf http://www.biomedcentral.com/1472-6947/6/39/prepub http://www.biomedcentral.com/ http://www.biomedcentral.com/info/publishing_adv.asp http://www.biomedcentral.com/ Abstract Background Methods Results Conclusion Background Methods Context-dependent autoassociative memories with overlapping contexts NUMERICAL EXAMPLE How to instruct the memory How the system works Final result REAL DATA APPLICATION - diagnosing late-onset neonatal sepsis Results A context-dependent memory model acting as a minimal expert system The instruction of the expert Medical queries A reduced model for the diagnosis of late-onset neonatal sepsis Discussion and conclusions Competing interests Authors' contributions Acknowledgements References Pre-publication history