ProD: A visualizable filter-feature selection method based on prodding the class probability densities for overlapping
Project description
ProD, a visualizable filter-feature selection method based on "prodding" the class Probability Densities for overlapping.
Install
ProD can be installed from PyPI:
pip install prod-fs
Example
from prodfs import ProD
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
# Create random classification dataset
X, y = make_classification(
n_samples=300, n_features=50, n_classes=3, n_informative=5,
shuffle=False
)
# Initialize ProD object
prodRanker = ProD()
# Carry out feature selection
prodRanker.fit(X, y)
# Get top 10 features
top10Features = prodRanker.get_topnFeatures(10)
# Visualize the top feature's ability to segregate PDEs
fig, axs = plt.subplots(1, 2, sharey=True)
# Top ranked feature
prodRanker.plot_overlapAreas(top10Features[0], legend="intersection", _ax=axs[0])
axs[0].set_title("Most relevant feature", loc="left")
# Last ranked feature
prodRanker.plot_overlapAreas(49, legend="intersection", _ax=axs[1])
axs[1].set_title("Least relevant feature", loc="left")
axs[0].set_ylabel(r"Probability Density, $\hat{P}$")
for i in range(2):
axs[i].set_xlim(-0.5, 1.5)
axs[i].set_xticks(np.arange(-0.5, 2.0, 0.5))
Check out the notebooks provided as tutorials and examples of some specific use cases.
Citation
For now, cite the followinng abstract
J.C. Liaw, F. Geu Flores. A novel univariate feature selection filter-measure based on the reduction of class overlapping. 94th Annual Meeting of the International Association of Applied Mathematics and Mechanics - GAMM, Magdeburg, Deutschland, 18.-22. March 2024, Oral Presentation S25.01-4
The other feature selection methods that were compared to in our paper is as listed below:
-
LH-RELIEF: Feature weight estimation for gene selection: a local hyperlinear learning approach DOI: https://doi.org/10.1186/1471-2105-15-70
-
I-RELIEF: Iterative RELIEF for Feature Weighting: Algorithms, Theories, and Applications DOI: https://doi.org/10.1109/TPAMI.2007.1093
-
RELIEF-F: Estimating attributes: Analysis and extensions of RELIEF DOI: https://doi.org/10.1007/3-540-57868-4_57
-
MultiSURF: Benchmarking relief-based feature selection methods for bioinformatics data mining DOI: https://doi.org/10.1016/j.jbi.2018.07.015
-
Random Forests DOI: https://doi.org/10.1023/A:1010933404324
-
ANOVA F-statistic: Statistical Methods for Research Workers
-
Mutual Information: Estimating mutual information DOI: https://doi.org/10.1103/PhysRevE.69.066138
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file prod_fs-1.0.8.tar.gz.
File metadata
- Download URL: prod_fs-1.0.8.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1511073fde34294f918cc4cd8241f8cb43f5c19ffae0ed7abaedbd0fa8116282
|
|
| MD5 |
79420f7749c869332de05947bf15dff0
|
|
| BLAKE2b-256 |
51eebb2cd0dee9df3ec393ee2264d553c8c8d2b9e6d14498b124619e8d4fd34a
|
File details
Details for the file prod_fs-1.0.8-py3-none-any.whl.
File metadata
- Download URL: prod_fs-1.0.8-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7c363761ba0bc37e7bb6c03d51b8843f89f5b61a79869459dad5b6aded48d3b
|
|
| MD5 |
5e30b27a72211b2baaceb9f82a591146
|
|
| BLAKE2b-256 |
46e78231ff344fdb3baca2bba9cb6233165b821f8adb7c8ebf7bd19f26926d6f
|