Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move predictors out and into SDK, remove storing of CAO in models #103

Merged
merged 2 commits into from
Jul 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions use_cases/eluc/app/components/prediction.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@
from dash import html
import pandas as pd

from prsdk.persistence.persistors.hf_persistor import HuggingFacePersistor
from prsdk.persistence.serializers.neural_network_serializer import NeuralNetSerializer
from prsdk.persistence.serializers.sklearn_serializer import SKLearnSerializer
from prsdk.predictors.predictor import Predictor

from app import constants as app_constants
from data import constants
from persistence.persistors.hf_persistor import HuggingFacePersistor
from persistence.serializers.neural_network_serializer import NeuralNetSerializer
from persistence.serializers.sklearn_serializer import SKLearnSerializer
from predictors.percent_change.percent_change_predictor import PercentChangePredictor


Expand Down
3 changes: 2 additions & 1 deletion use_cases/eluc/app/components/prescription.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,10 @@
import pandas as pd
import plotly.graph_objects as go

from prsdk.persistence.persistors.hf_persistor import HuggingFacePersistor

from app import constants as app_constants
from data import constants
from persistence.persistors.hf_persistor import HuggingFacePersistor
from persistence.serializers.prescriptor_serializer import PrescriptorSerializer
from prescriptors.prescriptor_manager import PrescriptorManager

Expand Down
28 changes: 0 additions & 28 deletions use_cases/eluc/data/torch_data.py

This file was deleted.

10 changes: 5 additions & 5 deletions use_cases/eluc/experiments/predictor_experiments.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@
"from scipy.stats import ttest_1samp, ttest_ind\n",
"from sklearn.metrics import mean_absolute_error\n",
"\n",
"from prsdk.persistence.serializers.neural_network_serializer import NeuralNetSerializer\n",
"from prsdk.persistence.serializers.sklearn_serializer import SKLearnSerializer\n",
"from prsdk.predictors.predictor import Predictor\n",
"from prsdk.predictors.neural_network.neural_net_predictor import NeuralNetPredictor\n",
"from prsdk.predictors.sklearn_predictor.sklearn_predictor import LinearRegressionPredictor, RandomForestPredictor\n",
"\n",
"from data.eluc_data import ELUCData\n",
"from data import constants\n",
"from persistence.serializers.neural_network_serializer import NeuralNetSerializer\n",
"from persistence.serializers.sklearn_serializer import SKLearnSerializer\n",
"from predictors.neural_network.neural_net_predictor import NeuralNetPredictor\n",
"from predictors.sklearn_predictor.sklearn_predictor import LinearRegressionPredictor, RandomForestPredictor"
"from data import constants"
]
},
{
Expand Down
6 changes: 4 additions & 2 deletions use_cases/eluc/experiments/predictor_significance.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,13 @@
from tqdm import tqdm
from sklearn.metrics import mean_absolute_error

from prsdk.predictors.neural_network.neural_net_predictor import NeuralNetPredictor
from prsdk.predictors.sklearn_predictors.linear_regression_predictor import LinearRegressionPredictor
from prsdk.predictors.sklearn_predictors.random_forest_predictor import RandomForestPredictor

from data.eluc_data import ELUCData
from data import constants
from data.conversion import construct_countries_df
from predictors.neural_network.neural_net_predictor import NeuralNetPredictor
from predictors.sklearn_predictor.sklearn_predictor import RandomForestPredictor, LinearRegressionPredictor


def train_and_test(n: int,
Expand Down
5 changes: 3 additions & 2 deletions use_cases/eluc/experiments/prescriptor_experiments.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,15 @@
"import numpy as np\n",
"from sklearn.linear_model import LinearRegression\n",
"\n",
"from prsdk.predictors.neural_network.neural_net_predictor import NeuralNetPredictor\n",
"\n",
"from data import constants\n",
"from data.eluc_data import ELUCData\n",
"from data.eluc_encoder import ELUCEncoder\n",
"from prescriptors.nsga2.candidate import Candidate\n",
"from prescriptors.nsga2.land_use_prescriptor import LandUsePrescriptor\n",
"from prescriptors.prescriptor_manager import PrescriptorManager\n",
"from prescriptors.heuristics.heuristics import EvenHeuristic, PerfectHeuristic\n",
"from predictors.neural_network.neural_net_predictor import NeuralNetPredictor"
"from prescriptors.heuristics.heuristics import EvenHeuristic, PerfectHeuristic"
]
},
{
Expand Down
70 changes: 0 additions & 70 deletions use_cases/eluc/persistence/persistors/hf_persistor.py

This file was deleted.

This file was deleted.

45 changes: 0 additions & 45 deletions use_cases/eluc/persistence/serializers/sklearn_serializer.py

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,13 @@

from prsdk.predictors.predictor import Predictor

from data import constants


class TemplatePredictor(Predictor):
"""
A template predictor returning dummy values for ELUC.
The class that gets passed into the Evaluator should call the load method which should return a Predictor.
The Predictor just needs to impelement predict.
"""
def __init__(self):
super().__init__(context=constants.CAO_MAPPING["context"],
actions=constants.CAO_MAPPING["actions"],
outcomes=constants.CAO_MAPPING["outcomes"])

def fit(self, X_train, y_train):
pass

Expand Down
Empty file.
55 changes: 0 additions & 55 deletions use_cases/eluc/predictors/neural_network/eluc_neural_net.py

This file was deleted.

Loading
Loading