logo

ML in Health Science

✍️ Write the new chapter of medical research.

Deploy sustainable and privacy-safe machine learning web applications, right here:

 

Data Classifier v3.5

Build machine learning web apps for classification and regression with numerical data.

soundtrack nor elle

 

1. Click the "Choose File" button to select your dataset as CSV or Excel file

2. Select the target variable (outcome) you wish to predict and click "Submit." If the outcome is numerical, a regression model will be created. If the outcome is categorical (a string or word) with two or more classes, a classification model will be created.

3. Select the predictors (features) from your dataset that will be used to predict the outcome, then click "Submit." Note: Predictors must be numerical!

4. Click the "Train" button to build your machine learning model. If you're not satisfied with the performance, you can click "Train" again to retrain the model.

5. To predict outcomes using new data, input the predictors and click the "Predict" button.

6. To save your trained model, click "Download Model." You can deploy this model as a Web Application or retrain it later with new data.

7. To load a saved model, click "Upload Model." You can add new data for retraining by clicking "Add New Data," then retrain by selecting "Retrain with New Data." For predictions, use the "Predict" button.

 

P.S. The machine is preset to find the best performing result. Thus, utilize training parameters only if you are unhappy with the results.

Architecture: Feedforward Neural Network (MLP) with an input layer for numerical data, followed by two dense layers— the first with units double the number of predictors, and the second with half the units of the first (minimum of 4), culminating in a single-unit output layer for predictions. Tools: TensorFlow.js for building, training, and saving the neural network model, tfjs-vis for visualizing model performance, PapaParse for parsing CSV files, Math.js for mathematical computations, JStat for classical regression analysis, and JSZip for compressing and managing model files. Incremental Learning: The retrain function allows the model to be updated with new data. Fine-Tuning: When re-training, the model attempts to load previously saved weights, allowing it to fine-tune from the existing state. Privacy: All data is processed client-side, ensuring full privacy during model building. Data management: Split: taining 80%, validation 10%, and test 10%. Data standardization (z-score) for training and saving in the downloaded model, and destandardization for predictions. Class weights are used to emphasize underrepresented classes during training. Users can handle missing values through imputation or removal and facilitate outcome and predictor selection.

 

Version Update 3.5 (21.10.2024): Added class weight calculation to address data imbalance, giving more importance to underrepresented classes during training.

Version Update 3.2 (06.10.2024): Added calculation and storage of per-class metrics, including precision, recall, F1-score, and AUC, in metadata.json. Updated the fine-tuning function and calculation of num_epochs in metadata.json.

Version Update 3.15 (05.10.2024): Added storage of confusion matrix and loss log images in the model's downloaded zip archive.

Version Update 3.1 (03.10.2024): Modified data split to 80/10/10. Updated AUC-ROC for all classes and enhanced metadata.json to store precision, recall, F1-score, and AUC metrics.

Version Update 3.0 (22.09.2024): Added support for machine learning classification model building and deployment.

Version Update 2.0 (28.06.2024): Added batch normalization, L2 regularization, and Leaky ReLU activation function.

Version Update 1.31 (26.06.2024): Extended metadata.json. Expanded classical regression table.

Version Update 1.3 (25.06.2024): Added validation test with metrics (Validation MAE and MSE). Added R² metrics.

Version Update 1.21 (24.06.2024): Added Mean Absolute Error (MAE) metrics.

Version Update 1.2 (24.06.2024): Added saving and restoring of the best weights (lowest loss). Added early stopping.

Version Update 1.1 (23.06.2024): Added optional training from scratch or fine-tuning. Added an additional dropout layer.

Version Update 1.05 (22.06.2024): Extended metadata saving to include training settings and performance.

Version Update 1.04 (20.06.2024): Enabled deployment of the model as a web app.

Version Update 1.03 (15.06.2024): Added metadata.json.

Version Update 1.02 (13.06.2024): Saving weightSpecs within model.json instead of separately.

Version Update 1.01 (12.06.2024): Added function to upload Excel files.

Image Classifier v2.25

Build computer vision web apps with images

soundtrack bitwvlf haunting you

 

1. Press "Add Class" and upload the first image dataset

2. Press "Add Class" again to add the next dataset. You need at least two classes to build a model, with an optimal dataset containing more than 50 images.

3. Press the "Train" button. That's all! Your AI is ready to work. If you are not happy with the performance, press the "Retrain" button.

4. You can now classify new images using the "Predict" button.

5. Press "Download Model" to save your model save your model for Deployment as Web Application or retraining with new data. 

6. To use a saved model, press "Upload Model." You can retrain the model by adding new data with the "Choose File" button, followed by the "Retrain" button. For prediction, use the "Predict" button.

 

P.S. The machine is preset to find the best performing result. Thus, utilize training parameters only if you are unhappy with the results.

Loading, please wait...

Training Progress: 0%

Uploaded image for prediction

Epoch Status:

Image Augmentation:







Confusion Matrix
Validation Log Final Training Log
LOADING...

Architecture: Transfer Learning with MobileNetV2 layers model as a base, with the last layer being "global_average_pooling2d_1". Library: TensorFlow.js. Resizing: Images for training and predictions will be resized to 224x224 px using bilinear interpolation. Normalization: Division by 255. Regularization: Dropout to prevent overfitting. Augmentation: Users can specify the type of augmentation. Note: Augmented images are distributed across all data splits. Data split: training 80%, validation 10%, and test set 10%. Class weights are used to emphasize underrepresented classes during training.

 

Version Update 2.25 (15.11.2024): Updated ROC AUC functions to handle edge cases and avoid division by zero.

Version Update 2.21 (06.10.2024): Restructured medata.json.

Version Update 2.2 (30.09.2024): Added performance metrics: precision, recall, and F1-score.

Version Update 2.1 (29.09.2024): Modified the data split for training, validation, and test sets to 80%, 10%, 10%. Updated metadata.json to include test accuracy and test loss metrics. Added storage of confusion matrix image and log image within the model.zip archive.

Version Update 2.0 (07.07.2024): Switching to the MobileNetV2 layers model as the base, with the last layer being "global_average_pooling2d_1". The trained model is now stored as a combined model (custom + MobileNet base), eliminating the need to upload MobileNet for prediction purposes.

Version Update 1.21 (04.07.2024): Added augmentations: Convert to Grayscale and Add Color Channel Noise.

Version Update 1.2 (03.07.2024): Added a checkbox to choose the type of image augmentation for training.

Version Update 1.1 (26.06.2024): Added early stopping. Added class weights. Optimized the logging process. Extended metadata saving.

Version Update 1.05 (22.06.2024): Extended metadata saving to include training settings and performance.

Version Update 1.03 (20.06.2024): Added metadata.json. Enabled deployment of the model as a web app.

Version Update 1.02 (19.06.2024): Included "Add class" in uploaded models. Added an LR scheduler. Included ELU (Exponential Linear Unit) activation function in one layer to provide diversity in activation functions. Improved normalization.

Version Update 1.01 (18.06.2024): Added: Gaussian Noise, Advanced Activation: LeakyReLU, and additional dense layers.

Audio Classifier (Beta-Test)

Control the position of the circle indicator with your voice

1. Press the 'Left' button to start recording Sample 0. For example, repeat 'Yes.' Press the button again to stop.

2. Press the 'Right' button to start recording Sample 1. For example, repeat 'No.' Press the button again to stop.

3. Press the 'Noise' button to start recording Sample 2. Say nothing; your background noise will be recorded. Press the button again to stop.

4. Press the 'Train' button to train the model. That's all! Your AI is ready to work.

5. After that, you can classify new audio with the 'Listen' button. You can say your sample words (for example, 'Yes' or 'No') and move the circle indicator with your voice to the 'Left' or 'Right'.

 

Note: You can train not only words but also intonation and mood, such as happiness or anger.

check out these free tutorials on machine learning and TensorFlow.js