In our products we use feed-forward neural nets with several hidden layers. The number of input channels corresponds to the number of questions. In the output layer the number of signals is identical to the number of diagnoses to be determined.
Each of the colored circular areas consists of a single artificial neuron, as shown in left.
In our products we combine neural networks of artificial intelligence and data mining methods for the evaluation of medical questionnaires. The data mining methods “Support Vector” and “Random Forest” have proven to be particularly powerful.
The “Support Vector” method is a mathematically formulated, graphical method. Each point in a vector space corresponds to a response pattern. The response patterns with the same confirmed diagnosis thus form a point cloud. The algorithm distinguishes the partially overlapping point clouds by a dividing plane and determines whether a new response pattern of a patient with an unknown diagnosis lies to the left or right of the dividing plane.
The “Random Forest” is a purely logical procedure that uses the probabilities of the responses for the individual diagnoses as the basis for a large number of decision trees.
Stratified k-fold cross-validation
In training, for example, we put aside 20% of the questionnaires for a 5-fold cross-validation, then start machine learning for the remaining 80% of the questionnaires with confirmed diagnosis and check the result by interpreting the 20% of the questionnaires put aside as patients with unknown diagnosis. This learning process is then repeated for all questionnaires, so that in the end each individual questionnaire served as a test questionnaire. This procedure is called stratified 5-fold cross-validation and stratified means that the selection of the respective 20% of the questionnaires is done according to strict statistical rules.
Deep Learning Procedure
In machine learning of neural networks, a special requirement is that a closed solution procedure, which would determine the weights of the network in one step, does not exist in principle. We therefore use deep learning methods, which iteratively solve the high-dimensional systems of equations. Afterwards, the application of the neural networks for diagnostic support in real time is possible with little computational effort.
The control of the learning process is done in a descriptive way by viewing the hit and error learning curve. The hit curve, which starts at 0%, reaches 100% at the end of the learning process. The error curve shows the reverse course, i.e. it starts at 100% and ends at 0%.
Three special cases are possible:
Case A: The neural net learns the response patterns and the hit curve reaches 100%, but the net does not generalize, i.e. “it has learned but has not understood anything”. In this case the error curve does not drop and remains near the 50% line.
Case B: If the questions correlate only weakly with the confirmed diagnoses, then learning is not possible and the hit and error curves remain stuck near the 50% line.
Case C: In this desirable case the hit curve increases to 100% and the error curve decreases to 0%, i.e. in this case the neural network has learned, generalized and thus “understood”.
Control of Machine Learning
ROC curves and the corresponding AUC values, which correspond to the area under the curve, are used to evaluate to what extent the results of the calculations are deterministic or only randomly correct. With purely random results, the ROC curve would run linearly from 0 to 100 like a diagonal and the corresponding area under the curve would assume the relative value of 50%.
The mathematical methods developed by the KImedi GmbH and successfully validated in field tests, optimally combine the results from the Data Mining methods with the output signals of the Neural Network. The resulting high AUC values, e.g. 93% for the disease “Morbus Pompe”, confirm the reliability of the calculated diagnostic indications.
APP development under IOS
We develop medical APPs under the IOS operating system and under the development environment XCODE in the SWIFT programming language. Afterwards we upload the APP into the App Store and activate the download.
Our interactive and internet-based software runs on rented German root servers, which are maintained by us. We take the protection of our data very seriously.