14 KiB
14 KiB
# This script needs these libraries to be installed:
# tensorflow, numpy
import wandb
from wandb.keras import WandbMetricsLogger, WandbModelCheckpoint
import random
import numpy as np
import tensorflow as tf
# Start a run, tracking hyperparameters
wandb.init(
# set the wandb project where this run will be logged
project="Detection of plant diseases",
# track hyperparameters and run metadata with wandb.config
config={
"layer_1": 512,
"activation_1": "relu",
"dropout": random.uniform(0.01, 0.80),
"layer_2": 10,
"activation_2": "softmax",
"optimizer": "sgd",
"loss": "sparse_categorical_crossentropy",
"metric": "accuracy",
"epoch": 8,
"batch_size": 256
}
)
# [optional] use wandb.config as your config
config = wandb.config
# get the data
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
x_train, y_train = x_train[::5], y_train[::5]
x_test, y_test = x_test[::20], y_test[::20]
labels = [str(digit) for digit in range(np.max(y_train) + 1)]
# build a model
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(config.layer_1, activation=config.activation_1),
tf.keras.layers.Dropout(config.dropout),
tf.keras.layers.Dense(config.layer_2, activation=config.activation_2)
])
# compile the model
model.compile(optimizer=config.optimizer,
loss=config.loss,
metrics=[config.metric]
)
# WandbMetricsLogger will log train and validation metrics to wandb
# WandbModelCheckpoint will upload model checkpoints to wandb
history = model.fit(x=x_train, y=y_train,
epochs=config.epoch,
batch_size=config.batch_size,
validation_data=(x_test, y_test),
callbacks=[
WandbMetricsLogger(log_freq=5),
WandbModelCheckpoint("models")
])
# [optional] finish the wandb run, necessary in notebooks
wandb.finish()
Tracking run with wandb version 0.16.6
Run data is saved locally in
/mnt/c/Users/krzys/OneDrive/Studia/inz-uczenia-maszynowego/Detection-of-plant-diseases/wandb/run-20240416_232247-bfji8amn
Epoch 1/8 44/47 [===========================>..] - ETA: 0s - loss: 2.1872 - accuracy: 0.2224INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 2s 32ms/step - loss: 2.1734 - accuracy: 0.2344 - val_loss: 1.9111 - val_accuracy: 0.5380 Epoch 2/8 40/47 [========================>.....] - ETA: 0s - loss: 1.7703 - accuracy: 0.5437INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 1s 31ms/step - loss: 1.7483 - accuracy: 0.5527 - val_loss: 1.5486 - val_accuracy: 0.6880 Epoch 3/8 46/47 [============================>.] - ETA: 0s - loss: 1.4466 - accuracy: 0.6818INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 2s 33ms/step - loss: 1.4444 - accuracy: 0.6829 - val_loss: 1.2824 - val_accuracy: 0.7460 Epoch 4/8 44/47 [===========================>..] - ETA: 0s - loss: 1.2232 - accuracy: 0.7362INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 2s 32ms/step - loss: 1.2162 - accuracy: 0.7390 - val_loss: 1.0886 - val_accuracy: 0.7880 Epoch 5/8 44/47 [===========================>..] - ETA: 0s - loss: 1.0583 - accuracy: 0.7694INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 1s 28ms/step - loss: 1.0519 - accuracy: 0.7711 - val_loss: 0.9497 - val_accuracy: 0.8020 Epoch 6/8 41/47 [=========================>....] - ETA: 0s - loss: 0.9382 - accuracy: 0.7897INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 1s 28ms/step - loss: 0.9339 - accuracy: 0.7902 - val_loss: 0.8484 - val_accuracy: 0.8180 Epoch 7/8 47/47 [==============================] - ETA: 0s - loss: 0.8496 - accuracy: 0.8043INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 1s 27ms/step - loss: 0.8496 - accuracy: 0.8043 - val_loss: 0.7735 - val_accuracy: 0.8220 Epoch 8/8 44/47 [===========================>..] - ETA: 0s - loss: 0.7790 - accuracy: 0.8180INFO:tensorflow:Assets written to: models/assets
INFO:tensorflow:Assets written to: models/assets [34m[1mwandb[0m: Adding directory to artifact (./models)... Done. 0.1s
47/47 [==============================] - 1s 29ms/step - loss: 0.7779 - accuracy: 0.8183 - val_loss: 0.7165 - val_accuracy: 0.8260
Run history:
batch/accuracy | ▁▁▁▂▂▄▅▅▅▅▆▆▆▇▇▇▇▇▇▇▇▇▇▇████████████████ |
batch/batch_step | ▁▁▁▂▂▂▂▂▂▃▃▃▃▃▃▄▄▄▄▄▅▅▅▅▅▅▆▆▆▆▆▆▇▇▇▇▇███ |
batch/learning_rate | ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ |
batch/loss | ███▇▇▆▆▆▅▅▅▄▄▄▄▄▃▃▃▃▃▂▂▂▂▂▂▂▂▂▁▁▁▁▁▁▁▁▁▁ |
epoch/accuracy | ▁▅▆▇▇███ |
epoch/epoch | ▁▂▃▄▅▆▇█ |
epoch/learning_rate | ▁▁▁▁▁▁▁▁ |
epoch/loss | █▆▄▃▂▂▁▁ |
epoch/val_accuracy | ▁▅▆▇▇███ |
epoch/val_loss | █▆▄▃▂▂▁▁ |
Run summary:
batch/accuracy | 0.81726 |
batch/batch_step | 395 |
batch/learning_rate | 0.01 |
batch/loss | 0.77969 |
epoch/accuracy | 0.81825 |
epoch/epoch | 7 |
epoch/learning_rate | 0.01 |
epoch/loss | 0.77791 |
epoch/val_accuracy | 0.826 |
epoch/val_loss | 0.71648 |
View run floral-energy-3 at: https://wandb.ai/uczenie-maszynowe-projekt/Detection%20of%20plant%20diseases/runs/bfji8amn
View project at: https://wandb.ai/uczenie-maszynowe-projekt/Detection%20of%20plant%20diseases
Synced 5 W&B file(s), 0 media file(s), 42 artifact file(s) and 0 other file(s)
View project at: https://wandb.ai/uczenie-maszynowe-projekt/Detection%20of%20plant%20diseases
Synced 5 W&B file(s), 0 media file(s), 42 artifact file(s) and 0 other file(s)
Find logs at:
./wandb/run-20240416_232247-bfji8amn/logs