Skip to content

constant-zero no matter what #8

@kazemia

Description

@kazemia

Hi,
I tried using this package, and in the total dictionary I only got constant vectors. I digged a bit in the code and it seems like in line 217 in orthogonal_projection.py, you pass ptb_strategy="constant-zero"to replace_column_of_matrix no matter what the user has selected as direct_input_pertubation_strategy. This means the algorithm produces the exact same number in each iteration no matter what.
So in line 217 in orthogonal_projection.py, "constant-zero" should be replaced by direct_input_pertubation_strategy.

In addition the comments are not consistent with what the algorithm actually does.
In line 132 in orthogonal_projection.py you have:
direct_input_pertubation_strategy -> This is referring to how to zero out a
single variable. One of three different options
1) replace with a random constant value
2) replace with median constant value
3) replace all values with a random permutation of
the column. options = [constant-zero,
constant-median, global-permutation]

While in reality, you should have:

direct_input_pertubation_strategy -> This is referring to how to zero out a
single variable. One of three different options
1) replace with 0 constant value
2) replace with median constant value
3) replace with one random sample from the data
options = [constant-zero, constant-median, random-sample]

Also the first option, which is the default is not very smart, given that 0 might not even be in the range of the variable.

Otherwise IOFP is a smart idea ;)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions