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 |
Metadata
Release files for flight-maneuvers 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| flight_maneuvers-1.0.1.tar.gz | 9.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| flight_maneuvers-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.5 kB
Release files / flight_maneuvers-1.0.1.tar.gz
| Download URL | flight_maneuvers-1.0.1.tar.gz |
|---|---|
| Size | 9.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
978effb32f016878450290d4deca5165e05db28cd0c3202f3545691c1c457396
|
|
BLAKE2b-256 checksum How to use checksums |
7aa82449e3897122d8aacc508d2e3e8abf8db0118295a23799f8997207a321f1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.7.16
|
Release files / flight_maneuvers-1.0.1-py3-none-any.whl
| Download URL | flight_maneuvers-1.0.1-py3-none-any.whl |
|---|---|
| Size | 11.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
57a5b985bc302cea5ed962ee0f5561d11901d9af27e55ba1192d26683d615287
|
|
BLAKE2b-256 checksum How to use checksums |
86a82b1af42852e4fb5038f758195e3199e42bd76f0563517101fbb4743c2bd9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.7.16
|