Skip to content

Commit

Permalink
refactor(validation): rename validation module to evaluation
Browse files Browse the repository at this point in the history
  • Loading branch information
nmaarnio committed Apr 23, 2024
1 parent 98b56ff commit c673683
Show file tree
Hide file tree
Showing 33 changed files with 103 additions and 106 deletions.
3 changes: 3 additions & 0 deletions docs/evaluation/calculate_base_metrics.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Calculate base metrics

::: eis_toolkit.evaluation.calculate_base_metrics
3 changes: 3 additions & 0 deletions docs/evaluation/classification_label_evaluation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Classification label evaluation

::: eis_toolkit.evaluation.classification_label_evaluation
3 changes: 3 additions & 0 deletions docs/evaluation/classification_probability_evaluation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Classification probability evaluation

::: eis_toolkit.evaluation.classification_probability_evaluation
3 changes: 3 additions & 0 deletions docs/evaluation/plot_confusion_matrix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Plot confusion matrix

::: eis_toolkit.evaluation.plot_confusion_matrix
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Plot neural network training performance (accuracy and loss)

::: eis_toolkit.validation.plot_nn_model_performance
::: eis_toolkit.evaluation.plot_nn_model_performance
3 changes: 3 additions & 0 deletions docs/evaluation/plot_prediction_area_curves.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Plot prediction-area (P-A) curves

::: eis_toolkit.evaluation.plot_prediction_area_curves
3 changes: 3 additions & 0 deletions docs/evaluation/plot_rate_curve.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Plot rate curve

::: eis_toolkit.evaluation.plot_rate_curve
3 changes: 0 additions & 3 deletions docs/validation/calculate_base_metrics.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/validation/classification_label_evaluation.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/validation/classification_probability_evaluation.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/validation/plot_confusion_matrix.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/validation/plot_prediction_area_curves.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/validation/plot_rate_curve.md

This file was deleted.

2 changes: 1 addition & 1 deletion eis_toolkit/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -2879,7 +2879,7 @@ def winsorize_transform_cli(
typer.echo(f"Winsorize transform completed, writing raster to {output_raster}.")


# ---VALIDATION ---
# ---EVALUATION ---
# TODO


Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion eis_toolkit/prediction/machine_learning_general.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@
from sklearn.base import BaseEstimator
from sklearn.model_selection import KFold, LeaveOneOut, StratifiedKFold, train_test_split

from eis_toolkit.evaluation.scoring import score_predictions
from eis_toolkit.exceptions import (
InvalidParameterValueException,
NonMatchingParameterLengthsException,
NonMatchingRasterMetadataException,
)
from eis_toolkit.utilities.checks.raster import check_raster_grids
from eis_toolkit.validation.scoring import score_predictions
from eis_toolkit.vector_processing.rasterize_vector import rasterize_vector

SPLIT = "split"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Validation funtions\n",
"# Evaluation funtions\n",
"\n",
"Purpose of this notebook is to demonstrate and test validation functions"
"Purpose of this notebook is to demonstrate and test evaluation functions"
]
},
{
Expand All @@ -23,9 +23,9 @@
"\n",
"import sys\n",
"sys.path.insert(0, \"..\")\n",
"from eis_toolkit.validation.calculate_base_metrics import calculate_base_metrics\n",
"from eis_toolkit.validation.plot_rate_curve import plot_rate_curve\n",
"from eis_toolkit.validation.plot_prediction_area_curves import plot_prediction_area_curves"
"from eis_toolkit.evaluation.calculate_base_metrics import calculate_base_metrics\n",
"from eis_toolkit.evaluation.plot_rate_curve import plot_rate_curve\n",
"from eis_toolkit.evaluation.plot_prediction_area_curves import plot_prediction_area_curves"
]
},
{
Expand Down
143 changes: 70 additions & 73 deletions notebooks/testing_classifier_evaluation.ipynb

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
import pytest
import rasterio

from eis_toolkit.evaluation.calculate_base_metrics import calculate_base_metrics
from eis_toolkit.exceptions import GeometryTypeException, NonMatchingCrsException
from eis_toolkit.validation.calculate_base_metrics import calculate_base_metrics

test_dir = Path(__file__).parent.parent
raster_path = test_dir.joinpath("data/remote/small_raster.tif")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
import numpy as np
import pytest

from eis_toolkit.evaluation.plot_confusion_matrix import plot_confusion_matrix
from eis_toolkit.exceptions import InvalidDataShapeException
from eis_toolkit.validation.plot_confusion_matrix import plot_confusion_matrix


def test_plot_confusion_matrix():
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

from eis_toolkit.evaluation.plot_nn_model_performance import plot_nn_model_accuracy, plot_nn_model_loss
from eis_toolkit.exceptions import InvalidDatasetException, InvalidDataShapeException
from eis_toolkit.prediction.mlp import train_MLP_classifier
from eis_toolkit.transformations.one_hot_encoding import one_hot_encode
from eis_toolkit.validation.plot_nn_model_performance import plot_nn_model_accuracy, plot_nn_model_loss

X_IRIS, Y_IRIS = load_iris(return_X_y=True)
X_DIABETES, Y_DIABETES = load_diabetes(return_X_y=True)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import numpy as np
import pytest

from eis_toolkit.evaluation.plot_prediction_area_curves import _get_pa_intersection, plot_prediction_area_curves
from eis_toolkit.exceptions import InvalidParameterValueException
from eis_toolkit.validation.plot_prediction_area_curves import _get_pa_intersection, plot_prediction_area_curves


def test_get_pa_intersection():
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import numpy as np
import pytest

from eis_toolkit.evaluation.plot_rate_curve import plot_rate_curve
from eis_toolkit.exceptions import InvalidParameterValueException
from eis_toolkit.validation.plot_rate_curve import plot_rate_curve


def test_plot_rate_curve_x_values_out_of_bound():
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split

from eis_toolkit.evaluation.scoring import score_predictions
from eis_toolkit.prediction.machine_learning_predict import predict_classifier
from eis_toolkit.prediction.random_forests import random_forest_classifier_train
from eis_toolkit.validation.scoring import score_predictions

X, y = make_classification(n_samples=200, n_features=20, n_informative=2, n_redundant=10, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
Expand Down
2 changes: 1 addition & 1 deletion tests/prediction/machine_learning_general_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier

from eis_toolkit.evaluation.scoring import score_predictions
from eis_toolkit.exceptions import InvalidParameterValueException, NonMatchingParameterLengthsException
from eis_toolkit.prediction.machine_learning_general import (
_train_and_validate_sklearn_model,
Expand All @@ -14,7 +15,6 @@
split_data,
)
from eis_toolkit.prediction.machine_learning_predict import predict_classifier
from eis_toolkit.validation.scoring import score_predictions

TEST_DIR = Path(__file__).parent.parent

Expand Down

0 comments on commit c673683

Please sign in to comment.