Skip to content

Commit 0f99b40

Browse files
authored
Merge pull request #148 from BerkeleyLab/map-without-getters
Feature: redesigned functionality for mapping input and output tensors to and from training ranges
2 parents 2328050 + 3b89271 commit 0f99b40

File tree

2 files changed

+14
-10
lines changed

2 files changed

+14
-10
lines changed

src/inference_engine/inference_engine_m_.f90

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ module inference_engine_m_
3131
contains
3232
procedure :: infer
3333
procedure :: to_json
34-
procedure :: input_range
35-
procedure :: output_range
34+
procedure :: map_to_input_range
35+
procedure :: map_from_output_range
3636
procedure :: num_inputs
3737
procedure :: num_outputs
3838
procedure :: nodes_per_layer
@@ -82,16 +82,20 @@ impure elemental module function construct_from_json(file_) result(inference_eng
8282

8383
interface
8484

85-
pure module function input_range(self) result(my_input_range)
85+
elemental module function map_to_input_range(self, tensor) result(normalized_tensor)
86+
!! The result contains the input tensor values normalized to fall on the range used during training
8687
implicit none
8788
class(inference_engine_t), intent(in) :: self
88-
type(tensor_range_t) my_input_range
89+
type(tensor_t), intent(in) :: tensor
90+
type(tensor_t) normalized_tensor
8991
end function
9092

91-
pure module function output_range(self) result(my_output_range)
93+
elemental module function map_from_output_range(self, normalized_tensor) result(tensor)
94+
!! The result contains the output tensor values unnormalized via the inverse of the mapping used in training
9295
implicit none
9396
class(inference_engine_t), intent(in) :: self
94-
type(tensor_range_t) my_output_range
97+
type(tensor_t), intent(in) :: normalized_tensor
98+
type(tensor_t) tensor
9599
end function
96100

97101
pure module function to_exchange(self) result(exchange)

src/inference_engine/inference_engine_s.F90

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818

1919
contains
2020

21-
module procedure input_range
22-
my_input_range = self%input_range_
21+
module procedure map_to_input_range
22+
normalized_tensor = self%input_range_%map_to_training_range(tensor)
2323
end procedure
2424

25-
module procedure output_range
26-
my_output_range = self%output_range_
25+
module procedure map_from_output_range
26+
tensor = self%output_range_%map_from_training_range(normalized_tensor)
2727
end procedure
2828

2929
module procedure to_exchange

0 commit comments

Comments
 (0)