Skip to content

Commit

Permalink
Adjust some parameter help text and moved the section on randomness h…
Browse files Browse the repository at this point in the history
…igher up in the docs

Signed-off-by: Michael Jackson <[email protected]>
  • Loading branch information
imikejackson committed Jun 21, 2024
1 parent 7f5f7ad commit 882bffd
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 8 deletions.
8 changes: 4 additions & 4 deletions src/Plugins/SimplnxCore/docs/DBSCANFilter.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,10 @@ A clustering algorithm can be considered a kind of segmentation; this implementa
| Face Ensemble | Face Ensemble |
| Cell Ensemble | Cell Ensemble|

## Note on Randomness

It is not recommended to use iterative for the _Initalization Type_, as it was just included for backwards compatibility. The inclusion of randomness in this algorithm is solely to attempt to reduce bias from starting cluster. Iterative produced identical results in our test cases, but the random initialization is truest to the well known DBSCAN algorithm.

% Auto generated parameter table will be inserted here

## Notes on Hyperparameter Tuning
Expand Down Expand Up @@ -97,10 +101,6 @@ This dataset is not the ideal case for this algorithm, but it is what we were ab

_Note from Developers_: We are aware of a paper that outlines an algorithm that can reasonably predict the hyperparameter values, but at the current time implementation is left up to potential contributors [2].

## Note on Randomness

It is not recommended to use iterative for the _Initalization Type_, as it was just included for backwards compatibility. The inclusion of randomness in this algorithm is solely to attempt to reduce bias from starting cluster. Iterative produced identical results in our test cases, but the random initialization is truest to the well known DBSCAN algorithm.

## References

[1] A density-based algorithm for discovering clusters in large spatial databases with noise, M. Ester, H.P. Kriegel, J. Sander, and X. Xu, Proceedings of the Second International Conference on Knowledge Discovery and Data Mining, pp. 226-231, 1996.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ std::string DBSCANFilter::humanName() const
//------------------------------------------------------------------------------
std::vector<std::string> DBSCANFilter::defaultTags() const
{
return {className(), "DREAM3D Review", "Clustering"};
return {className(), "DBSCAN", "Clustering", "Segmentation", "Statistics"};
}

//------------------------------------------------------------------------------
Expand Down Expand Up @@ -89,12 +89,13 @@ Parameters DBSCANFilter::parameters() const
ArraySelectionParameter::AllowedTypes{DataType::boolean, DataType::uint8}));

params.insertSeparator(Parameters::Separator{"Input Data Objects"});
params.insert(std::make_unique<ArraySelectionParameter>(k_SelectedArrayPath_Key, "Attribute Array to Cluster", "The array to cluster from", DataPath{}, nx::core::GetAllNumericTypes()));
params.insert(std::make_unique<ArraySelectionParameter>(k_SelectedArrayPath_Key, "Attribute Array to Cluster", "The data array to cluster", DataPath{}, nx::core::GetAllNumericTypes()));

params.insertSeparator(Parameters::Separator{"Output Data Object(s)"});
params.insert(std::make_unique<DataObjectNameParameter>(k_FeatureIdsArrayName_Key, "Cluster Ids Array Name", "name of the ids array to be created in Attribute Array to Cluster's parent group",
params.insert(std::make_unique<DataObjectNameParameter>(k_FeatureIdsArrayName_Key, "Cluster Ids Array Name", "Name of the ids array to be created in Attribute Array to Cluster's parent group",
"Cluster Ids"));
params.insert(std::make_unique<DataGroupCreationParameter>(k_FeatureAMPath_Key, "Cluster Attribute Matrix", "name and path of Attribute Matrix to hold Cluster Data", DataPath{}));
params.insert(
std::make_unique<DataGroupCreationParameter>(k_FeatureAMPath_Key, "Cluster Attribute Matrix", "The complete path to the attribute matrix in which to store to hold Cluster Data", DataPath{}));

// Associate the Linkable Parameter(s) to the children parameters that they control
params.linkParameters(k_InitTypeIndex_Key, k_SeedArrayName_Key, static_cast<ChoicesParameter::ValueType>(to_underlying(AlgType::Random)));
Expand Down

0 comments on commit 882bffd

Please sign in to comment.