ODYSSEE A-Eye is a decision support tool exploiting Machine Learning (ML), image processing and reduced-order modeling technology to propose predictions based on a database from multiple sources: images, qualitative data, quantitative data, 3D models, curves, etc.
ODYSSEE A-Eye includes:
- A-Eye_Manager: A GUI tool used to define specific customizations and manage them.
- A-Eye_App: A GUI tool used to create a vertical application based on selected customization.
- Quasar: An AI/AML/ROM solver allowing for predictive modeling and data mining analysis.
- ODYSSEE A-Eye Launcher: A GUI tool to visualize the existing customizations and to give access to A-Eye_Manager and A-Eye_App.
What's New in ODYSSEE A-Eye 2024.2
A-Eye Manager
- Direct or not Direct process: Until now, input data (e.g. images) were processed to extract indicators to fill the database before performing prediction. It is now possible to define a process where raw images are directly used as input to a prediction function. The user defines at the beginning of the configuration window his choice,
- Process with extracting indicators on data before prediction,
- Process using raw data for prediction,
giving access to 2 different configuration modes.
- Two new prediction methods in the raw process are available: Neural Network and direct processing.
- In the Neural network category, there is the opportunity to use:
- Images Classification (learnTransfer_NN / predictTransfer_NN) function predicting the class of an image. (Image in input, tag in output).
- Images Detection (learnModifiedUnet / predictModifyUnet) function that segments an image to highlight object/pattern defined in the learning database. (Image in input, segmented Image in output).
- In the direct processing, there is the opportunity to use:
- thin Object detection for detecting small object in an image like holes, burrs, cracks. ( Image in input, 2 Images in output).
- In the Neural network category, there is the opportunity to use:
- New input data type: PATH(). A new type of input data has been created to answer at the problematic of Neural Network function needing to point on a folder of images in the learning step and pointing to an image file for prediction. So, we can now select the PATH () type that it will load all the data found in a defined directory path in the learning step and for prediction step, support the loading of one file image only (for example: /image .jpg).
- Change where the tag list is defined: To satisfy the implementation of Classification algorithm with Neural Network, for the TAG type, we have changed the definition location of the tag list. From now, it will be defined in the Application interface when the user enters the tag names and no more in a list of the Tag settings of Manager. This allows more flexibility as well.
- Add a hypertext link pointing to the Neural Network algorithm description in the Quasar pdf help documentation.
A-Eye App
- Regarding process using Neural Network algorithm
- In the Learning tab, after loading the data and click on “Send to database” button, a message is displayed to ask if user wants to "start training" the database.
-
-
- If the user selects “no”, the database is simple loaded in database viewer tab. The user has still the option to "start training" thanks to a new button in the bottom part of the data viewer tab.
- If the user selects “yes” the training is done. As it can take long time to train, a green bar is displayed to inform it is still in progress.
-
- Improvements
- Messages printed in a popup window after having sent data in Base Viewer tab or after prediction execution are now optional. It can be disabled in Options window from Settings tab.
- A new icon is visible in the top-bar menu to access at ODYSSEE Explore (data visualization and data mining tool)
- Bug fixes
- The CAD geometry was not displayed in the viewer, even if process using CADs was working. It is fixed.
ODYSSEE Quasar - Solver
- New Statistic function implemented:
- kde: kernel density estimation (KDE) function corresponds to the kernel smoothing of a finite data sample (matrix X), which output a continuous probability density estimation at each output point. The most common kernel is a Gaussian function. The last argument nbrOutputPoints determines number of equidistant points to compute KDE at.
ext("statistics", " kde", X, nbrOutputPoints)
-
- Quantile function gives sample quantiles: zeroth quantile or minimum value (Q0), Quantile (Q1), 2nd quantile or median (Q2), Quantile (Q3), 4th quantile or maximum value (Q4) computed for each column of input matrix X.
ext("statistics", " quantile", X, computeMethod)
-
- Histogram function has been documented: This function displays the frequencies of data included in the different bins defined by the user with the variable nbr_bins.
ext("operator","matrix","histogram", X, nbr_bins)
-
- effects_withstats function provides more information for a linear regression than just the values of coefficients, based on some assumptions for a linear regression:
-
- standard deviation error associated to the coefficient computed.
- Confident interval for the coefficient, based on provided confidence level alpha.
- p-value that shows the significance of a variable. p-value determines if obtained effects pf a variable, could be simply due to randomness or chance.
- sensitivity index (SI) which shows how much the output can change (relatively) by changing independently each input variable. it is normalized based on range of Y.
- Confidence and Prediction intervals for the linear model.
ext("mining","effects_withstats",X,Y, norm, order, "coeff_output", alpha)
- Modified Unet function has been added. It is an images processing algorithm using a semantic segmentation process that consists of labeling each pixel of an input PNG image with a class. This function based on neural network is using for the learning part the vgg pretrained model and a defined user database of PNG and semantic images (mask). Learning dataset size can be relatively small: starting from tens. The number of classes in the images must be given by the user.
learnModifiedUnet(lr, batchsize, epochs, resize_width, resize_height, num_classes, validationPercent , dataset_path_img , dataset_path_mask , output_model_name)
predictModifiedUnet(New_image_file, resize_width, resize_height, num_classes, model_name, save_file, DisplayOutput)
- Transfer_NN function has been added. This neural network-based classifier predicts the class of an image. It applies a transfer model: learning a new task is done by transferring knowledge from a related task already learned. Based on a learning dataset that contains different classes, Transfer_NN learns classify the new images.
learnTransfer_NN(double learning_rate, int batch_size, int n_epochs, String type, String output_model_name,String[] class_folders_paths)
predictTransfer_NN(String img_path, String output_model_name)
- VAR (Vector Auto Regression) function is an additional method used in time series analysis to model the dynamic relationship between multiple time series variables: Y (t) = function(Y, X1, X2,.., from time t-1 to t-n).
VAR(X, Y, X_toTest, Yinit, regression_order, difference_type, integrator)
- Bug fixes
- The regression function used to compute the regression coefficient on XY database has been updated to handle the correlated predictors (columns of X input matrix).
We are now using the following simpler function:
COEFFS = ext("mining", "effectsqr", X, Y, "parameter_effect_")
instead of
COEFFS = ext("mining", "effects", X, Y, 0, ORDER, "parameter_effect_")
ODYSSEE Nova - Optimizer
- NSGAII (Non-dominated Sorting Genetic Algorithm II), is a new global multi-objective evolutionary algorithm, method #19, looking for the best candidates to plot an optimal Front Pareto. To reach that, the points are ranked in level where the front rank contains candidates with a pareto distance is minimum, with no violating constraints. So, as iterations go on, the algorithm seeks to obtain a single rank with a minimum crowding distance between candidates to plot the optimal Front Pareto.
- Bugs fixed:
- For NLPQLP and SLSQP, nova was able stay lock at the end of the iteration loops without giving up control.
- For the DNN function executed under Linux, the function was launched but remained frozen before the “epoch” message. It is fixed.
- A French message was displayed if the bad path of Nova.exe was used. It is now translated.