An open API service indexing awesome lists of open source software.

https://github.com/hadware/adfluo

A python library for multimodal and structured feature extraction, using the Dataflow design pattern
https://github.com/hadware/adfluo

dataflow feature-extraction pipeline python-library python3 python36 python37

Last synced: about 1 month ago
JSON representation

A python library for multimodal and structured feature extraction, using the Dataflow design pattern

Awesome Lists containing this project

README

        

# adfluo

[![Tests](https://github.com/hadware/adfluo/actions/workflows/test.yml/badge.svg)](https://github.com/hadware/adfluo/actions/workflows/test.yml)
[![Documentation](https://github.com/hadware/adfluo/actions/workflows/doc.yml/badge.svg)](https://github.com/hadware/adfluo/actions/workflows/doc.yml)

*adfluo, adfluis, adfluere, adfluxi, adfluxum*

1. to flow on/to/towards/by
2. to glide/drift quietly

`adfluo` is a Python library for pipeline-oriented feature computation, mainly aimed at tricky
multimodal datasets that might require a wide range of different features to be computed from.

Adfluo makes your feature extraction code:

- **clean** : it encourages you to outline clearly the steps needed to compute
a feature as a pipeline of atomic steps
- **data scientist-friendly**: ``adfluo``'s output has a predictable structure,
ensuring that once you've run the feature extraction, you'll be able to focus a 100%
on your data-science/statistics work.
- **efficient** : if different features have computation steps in common, ``adfluo``
will do its best to compute only what is necessary, without any extra configuration.
- **reusable**: By separating the input data from the feature computation logic,
you'll easily be able to reuse an existing extraction pipeline on another dataset,
or use another extraction pipeline on the same dataset.
- **sample-oriented**: ``adfluo`` organizes its processing around samples of data.

## Installation

Adfluo is available on Pypi, and has no special dependencies, a simple

```shell
pip install adfluo
```

will do.

## Example

```python
import random

# Defining our dataset as a list of dicts
my_dataset = [
{"numbers" : [random.randint(1, 20) for j in range(50)],
"idx": i}
for i in range(20)
]

# TODO: examples
# - mean, std dev of numbers
# - "relative" mean using idx
```

##