Jensun Ravichandran
c0c0044a42
[REFACTOR] Remove CustomLabelsInitializer
2021-06-11 14:52:09 +02:00
Alexander Engelsberger
47d7f5831f
[Refactor] Add Modules for prior distrbutions
2021-06-08 08:36:55 +02:00
Jensun Ravichandran
2272c55092
[BUGFIX] Fix typo
2021-06-04 22:24:42 +02:00
Jensun Ravichandran
b03c9b1d3c
Add competition and pooling modules
2021-06-04 22:18:46 +02:00
Jensun Ravichandran
0c28eda706
[FEATURE] Remove utility modules and add wrappers instead
2021-06-04 22:16:55 +02:00
Jensun Ravichandran
7bc0bfa3ab
Rename loss functions
2021-06-04 22:15:57 +02:00
Jensun Ravichandran
827958a28a
[FEATURE] Optional transforms in DataAwareInitializers
2021-06-04 22:14:45 +02:00
Jensun Ravichandran
8200e1d3d8
[FEATURE] Allow initialized_components
to be a dataset
2021-06-04 22:13:36 +02:00
Jensun Ravichandran
729b20e9ab
[FEATURE] Add scale to random initializer
2021-06-03 16:35:44 +02:00
Alexander Engelsberger
ca8ac7a43b
[REFACTOR] Probabilistic losses
2021-06-03 14:01:13 +02:00
Alexander Engelsberger
b724a28a6f
[BUGFIX] Stratified functions work on GPU now
2021-06-03 13:19:26 +02:00
Jensun Ravichandran
1e0a8392a2
[QA] Fix for "redefined-builtin" (W0622)
2021-06-02 00:07:44 +02:00
Jensun Ravichandran
2eb7b05653
[FEATURE] Add wrappers for more sklearn datasets
2021-06-01 23:33:51 +02:00
Jensun Ravichandran
d8a0b2dfcc
Minor tweaks
2021-06-01 23:28:01 +02:00
Jensun Ravichandran
2a7394b593
[QA] Remove commented-out torch.jit.script
decorators
2021-06-01 19:46:21 +02:00
Jensun Ravichandran
b1e64c8b8b
[QA] Remove utils.py
2021-06-01 19:41:48 +02:00
Jensun Ravichandran
70cf17607e
[BUGFIX] Fix broken _precheck_initializer
2021-06-01 19:41:21 +02:00
Jensun Ravichandran
b1568a550a
[QA] Fix for "no-self-use" (R0201)
2021-06-01 19:26:05 +02:00
Jensun Ravichandran
e8e803e8ef
[QA] Fix for "dangerous-default-value" (W0102)
2021-06-01 19:24:00 +02:00
Jensun Ravichandran
7336d35fee
[QA] Fix "dangerous-default-value" (W0102)
2021-06-01 19:15:06 +02:00
Jensun Ravichandran
bc18952c05
[QA] Fix "dangerous-default-value" (W0102)
2021-06-01 19:10:53 +02:00
Jensun Ravichandran
5a7da2b40b
[QA] Fix for "no-value-for-parameter" (E1120)
2021-06-01 19:03:57 +02:00
Jensun Ravichandran
b6d38f442b
[QA] Remove trailing whitespace
2021-06-01 19:01:20 +02:00
Jensun Ravichandran
8e8851d962
Dynamically remove components
2021-06-01 18:45:47 +02:00
Jensun Ravichandran
27b43b06a7
Rename functions/transform.py -> functions/transforms.py
2021-06-01 17:43:23 +02:00
Jensun Ravichandran
ff69eb1256
Tecator.data is a Tensor and Tecator.targets is a LongTensor
2021-06-01 17:28:37 +02:00
Alexander Engelsberger
4ca581909a
[FEATURE] Change NumpyDataset.data to torch.Tensor
2021-06-01 17:17:42 +02:00
Alexander Engelsberger
2722d976f5
[WIP] Add Growing Neural Gas Energy
2021-06-01 17:16:26 +02:00
Jensun Ravichandran
946cda00d2
Add more competition functions
2021-06-01 12:37:21 +02:00
Jensun Ravichandran
8227525c82
Add LambdaLayer
2021-05-31 16:47:20 +02:00
Jensun Ravichandran
e61ae73749
Make components dynamic
2021-05-31 00:31:40 +02:00
Alexander Engelsberger
040d1ee9e8
Add probabilistic losses
...
Based on Soft LVQ paper by Seo and Obermayer
2021-05-28 20:38:50 +02:00
Alexander Engelsberger
7f0da894fa
Add transformation from distances into gaussian distribution
2021-05-28 16:50:04 +02:00
Alexander Engelsberger
62726df278
Add stratified sum as competition
...
For example used in RSLVQ
2021-05-28 16:49:39 +02:00
Alexander Engelsberger
0ba09db6fe
Bump version: 0.4.5 → 0.5.0
2021-05-28 16:17:49 +02:00
Alexander Engelsberger
87334c11e6
Remove Prototypes1D and its tests
2021-05-28 16:17:49 +02:00
Alexander Engelsberger
40ef3aeda2
Remove usage of Prototype1D
...
Update Iris example to new component API
Update Tecator example to new component API
Update LGMLVQ example to new component API
Update GTLVQ to new component API
2021-05-28 16:17:40 +02:00
Christoph
94fe4435a8
Bump version: 0.4.4 → 0.4.5
2021-05-27 09:58:25 +02:00
Alexander Engelsberger
c204bc8e1f
integrate reviews from ChristophRaab:master
2021-05-27 09:43:02 +02:00
Alexander Engelsberger
00615ae837
refactored gtlvq from ChristophRaab:master
2021-05-27 09:40:42 +02:00
Jensun Ravichandran
9f5f0d12dd
[BUGFIX] Parse dictionary distribution appropirately
2021-05-25 20:52:39 +02:00
Jensun Ravichandran
8a291f7bfb
Overload distribution
argument in component initializers
...
The component initializers behave differently based on the type of the
`distribution` argument. If it is a Python
[list](https://docs.python.org/3/tutorial/datastructures.html ), it is assumed
that there are as many entries in this list as there are classes, and the number
at each location of this list describes the number of prototypes to be used for
that particular class. So, `[1, 1, 1]` implies that we have three classes with
one prototype per class. If it is a Python
[tuple](https://docs.python.org/3/tutorial/datastructures.html ), it a shorthand
of `(num_classes, prototypes_per_class)` is assumed. If it is a Python
[dictionary](https://docs.python.org/3/tutorial/datastructures.html ), the
key-value pairs describe the class label and the number of prototypes for that
class respectively. So, `{0: 2, 1: 2, 2: 2}` implies that we have three classes
with labels `{1, 2, 3}`, each equipped with two prototypes.
2021-05-25 20:05:29 +02:00
Alexander Engelsberger
a6bd6e130a
Add subpackages into prototorch namespace.
2021-05-25 16:40:53 +02:00
Alexander Engelsberger
73e6fe384e
Use 'num_' in all variable names
2021-05-25 15:57:05 +02:00
Alexander Engelsberger
aff7a385a3
Use dict for distribution
...
This change allows the use of LightningCLI.
2021-05-21 17:10:02 +02:00
Alexander Engelsberger
ee30d4da5b
[BUGFIX] Initializers can handle Dataloaders now
2021-05-21 16:00:20 +02:00
Alexander Engelsberger
14508f0600
[DOC] Small improvements
2021-05-21 15:59:44 +02:00
Jensun Ravichandran
e3f8828da4
Accept dataloaders for component initialization
2021-05-21 11:59:57 +02:00
Jensun Ravichandran
ee42fd68b1
NumpyDataset now has data and targets properties
2021-05-18 19:38:40 +02:00
Jensun Ravichandran
736d9a6349
Rename PositionAwareInitializer to DataAwareInitializer
...
Also, add the aliases `Zeros` and `Ones`.
2021-05-18 19:37:25 +02:00
Alexander Engelsberger
0055e15bc1
[DOC] Fix iris data dimension
2021-05-18 18:57:03 +02:00
Alexander Engelsberger
b2e1df7308
Improve dataset documentation.
2021-05-18 18:54:43 +02:00
Jensun Ravichandran
b935e9caf3
Update _get_dp_dm
2021-05-18 13:09:11 +02:00
Jensun Ravichandran
503ef0e05f
Cleanup components
2021-05-17 16:58:57 +02:00
Jensun Ravichandran
dc6248413c
Apply transformations in component initializers
2021-05-17 16:58:22 +02:00
Jensun Ravichandran
e73b70ceb7
Minor aesthetic change
2021-05-17 16:57:41 +02:00
Jensun Ravichandran
639198e774
Update Iris dataset
2021-05-17 16:57:13 +02:00
Alexander Engelsberger
768d969f89
Device agnostic initialization of components.
2021-05-13 15:21:04 +02:00
Jensun Ravichandran
6c14170de6
[BUGFIX] Fix typo
2021-05-12 16:31:22 +02:00
Jensun Ravichandran
36a330aa66
Update component initializers
2021-05-12 16:28:55 +02:00
Jensun Ravichandran
acd4ac6a86
Flatten tensors before computing distances
2021-05-12 16:28:34 +02:00
Danny
caae95d01d
Removed wrong parameter.
2021-05-12 16:00:01 +02:00
Alexander Engelsberger
088429a16a
Bump version: 0.4.3 → 0.4.4
2021-05-11 17:17:49 +02:00
Jensun Ravichandran
b6145223c8
[HOTFIX] Add missing iris.py and fix knnc bug
2021-05-11 17:20:48 +02:00
Alexander Engelsberger
09256956f3
Bump version: 0.4.2 → 0.4.3
2021-05-11 17:04:08 +02:00
Jensun Ravichandran
0ca90fdcee
Merge branch 'dev' of github.com:si-cim/prototorch into dev
2021-05-11 17:07:04 +02:00
Jensun Ravichandran
be21412f8a
Add thin wrapper for the Iris dataset
2021-05-11 17:06:41 +02:00
Jensun Ravichandran
ae6bc47f87
[BUGFIX] Fix knnc
2021-05-11 17:06:27 +02:00
Jensun Ravichandran
7bb93f027a
Support for unequal prototype distributions
2021-05-11 16:11:11 +02:00
Alexander Engelsberger
bc20acd63b
Bump version: 0.4.1 → 0.4.2
2021-05-11 16:08:37 +02:00
Alexander Engelsberger
a864cf5d4d
Bump version: 0.4.0 → 0.4.1
2021-05-11 13:37:54 +02:00
Alexander Engelsberger
c1c21e92df
Add LVQ 1 and LVQ 2.1 loss functions.
2021-05-11 13:25:10 +02:00
Alexander Engelsberger
a9eef8ae6d
Bump version: 0.3.1 → 0.4.0
2021-05-10 15:10:07 +02:00
Alexander Engelsberger
ac3091d8da
Update Bumpversion config
2021-05-10 15:09:38 +02:00
Jensun Ravichandran
ce3991de94
Accept torch datasets to initialize components
2021-05-07 15:19:22 +02:00
Jensun Ravichandran
47b4b9bcb1
Expose prototorch.datasets
2021-05-07 15:18:33 +02:00
Alexander Engelsberger
19475d7e2b
Update Tecator dataset storage id.
2021-05-06 18:42:36 +02:00
Jensun Ravichandran
b06ded683d
Update functions/activations.py
2021-05-04 20:55:49 +02:00
Jensun Ravichandran
466e9bde6b
Refactor functions/losses.py
2021-05-04 20:36:48 +02:00
Jensun Ravichandran
9a7d3192c0
[BUG] GLVQ training is unstable
...
GLVQ training is unstable when prototypes are initialized exactly to datapoints
without small shifts. Perhaps because of zero distances?
2021-04-29 19:25:28 +02:00
Jensun Ravichandran
e686adbea1
Add spiral dataset
2021-04-29 19:15:35 +02:00
Jensun Ravichandran
b7d53aa5f1
Update initializers
2021-04-29 19:15:27 +02:00
Jensun Ravichandran
9b663477fd
Update components
2021-04-29 18:06:26 +02:00
Alexander Engelsberger
40751aa50a
Create Component and initializer classes.
2021-04-26 20:49:50 +02:00
Alexander Engelsberger
7c30ffe2c7
Automatic Formatting.
2021-04-23 17:25:23 +02:00
Alexander Engelsberger
e1d56595c1
Add NumpyDataset.
2021-04-23 17:24:59 +02:00
Alexander Engelsberger
4540c8848e
Add neural gas energy function as loss.
2021-04-23 17:24:59 +02:00
Alexander Engelsberger
c88f288d12
Copy utilities for visualization from Protoflow.
2021-04-23 17:24:59 +02:00
Jensun Ravichandran
e2918dffed
Add euclidean_distance_v2
2021-04-22 16:55:50 +02:00
Jensun Ravichandran
7d9dfc27ee
Add similarities file
2021-04-22 13:12:19 +02:00
Alexander Engelsberger
ae75b9ebf7
Bump version: 0.2.0 → 0.3.0-dev0
2021-04-21 14:57:45 +02:00
Alexander Engelsberger
34973808b8
Improve documentation.
2021-04-21 14:55:54 +02:00
Alexander Engelsberger
c42df6e203
Merge version 0.2.0 into feature/plugin-architecture.
2021-04-19 16:44:26 +02:00
Jensun Ravichandran
101b50f4e6
Update prototypes.py
...
Changes:
1. Change single-quotes to double-quotes.
2021-04-15 12:35:06 +02:00
Jensun Ravichandran
db842b79bb
Bump version: 0.1.1-rc0 → 0.2.0
2021-04-14 19:21:14 +02:00
Jensun Ravichandran
98a8fc52fa
Add docs
2021-04-14 19:20:08 +02:00
Jensun Ravichandran
6796ec494f
Merge pull request #1 from ChristophRaab/dev
...
gtlvq
2021-04-14 16:18:30 +02:00
Alexander Engelsberger
cd9303267b
Use git version.
2021-04-14 13:48:00 +02:00
Alexander Engelsberger
599dfc3fda
Fix issue with plugin subpackage import.
2021-04-13 22:55:49 +02:00
Alexander Engelsberger
5b2ab34232
Add plugin loader.
2021-04-13 12:36:22 +02:00