A library for flight maneuver classification.
Project description
Todo List
Project
- implement utilities for loading flight scenarios, pre-processing and post-processing, and visualizing predicted maneuvers in a Flask application
- implement
trainer(model, training_data)that relies on Adam to optimize model weights in a fixed number of gradient steps - implement
resnet.py(confirm convergence) - implement
se2_resnet.pyon a 1D signal (confirm convergence) - implement
se3_resnet.pyon a 1D signal (confirm convergence) - implement a suitable strategy for
neural_search - for each flight maneuver, list the resulting precision and recall values for each maneuver class together with confidence intervals
- for each model, plot precision and recall values and show trends as training examples vary
- evolve candidate models for
resnet.py,se2_resnet.py, andse3_resnet.py' by:- fitness function: - Binary Cross-Entropy Loss,
- varying the number of convolution layers, kernel size, kernel width, fully connected layer width
- constaining the a weight space to have fixed computer memory
- the same training set, validation set, and test set
- with each candidate, obtain confidence intervals for precision and recall (per maneuver class) using bootstrapping
- plot a table that, for each flight maneuver, reports precision and recall for each maneuver class together with confidence intervals
Report
- describe related works and their relation to concepts in representation theory and harmonic function theory
- relate the physical symmetries of the label function to actions of $SE(3)$ and $SE(2)$
- show the derivation for one
resnet - show the derivation for one
se2_resnetequivariant convolution layer - show the derivation for one
se3_resnetequivariant convolution layer - describe how models are evolved
- explain trends, update claims in the abstract (if necessary), and describe how the findings support the hypothesis
- conclusions and future work
Description
TODO
Related Projects
Directory Structure and Usage
.
├── README.md
├── app.py # opens web app on localhost created using Dash and Flask
├── main.py # runs experiments on local hardware after parsing CLI arguments
│
├── examples
│ ├── introduction.ipynb # A gentle introduction to background and methodology used in project
│ └── TODO # TODO
│
│
└── src
├── model
│ ├── resnet_1D.py # ordinary residual blocks and network operating on a sampled timeseries
│ ├── se2_resnet_1D.py # TODO
│ └── se3_resnet_1D.py # TODO
│
├── data_module.py # defines classes extending pytorch data utilities
├── neural_search.py # TODO
└── utils.py # standard utilities for plotting results, obtaining statistics, and pre-/postprocessing data
How to run
First, create a new conda environment using Python 3.7 and activate it as follows
# create env
conda create -n flight-maneuvers python=3.7
# activate it
conda activate flight-maneuvers
Next, clone the repo, navigate to the project base, and install requirements,
# clone project
git clone https://github.com/clay-curry/Flight-Maneuvers
# enter project
cd Flight-Maneuvers
# install dependencies
pip install -r requirements.txt
Finally, pass a supporting argument to the main module as follows
# run module (example: mnist as your main contribution)
python main.py COMMAND
where COMMAND is chosen from the following table:
| COMMAND | Description |
|---|---|
| fetch | invokes 'curl' to download 1000 pre-simulated training examples |
| train | instantiates a model and invokes routines for training |
| evaluate | assesses model performance using a randomized ANOVA procedure |
| app | starts a web server on localhost and serves models using Flask |
Project details
Release history Release notifications | RSS feed
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 flight_maneuvers-1.0.1.tar.gz.
File metadata
- Download URL: flight_maneuvers-1.0.1.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
978effb32f016878450290d4deca5165e05db28cd0c3202f3545691c1c457396
|
|
| MD5 |
7d85784a248484f153bb3e1be30fc6cb
|
|
| BLAKE2b-256 |
7aa82449e3897122d8aacc508d2e3e8abf8db0118295a23799f8997207a321f1
|
File details
Details for the file flight_maneuvers-1.0.1-py3-none-any.whl.
File metadata
- Download URL: flight_maneuvers-1.0.1-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57a5b985bc302cea5ed962ee0f5561d11901d9af27e55ba1192d26683d615287
|
|
| MD5 |
f467815c1f12f6978545eee45df5cb72
|
|
| BLAKE2b-256 |
86a82b1af42852e4fb5038f758195e3199e42bd76f0563517101fbb4743c2bd9
|