{"id":18508853,"url":"https://github.com/hfawaz/ijcnn19ensemble","last_synced_at":"2025-04-09T03:32:16.989Z","repository":{"id":45798345,"uuid":"174340948","full_name":"hfawaz/ijcnn19ensemble","owner":"hfawaz","description":"Deep Neural Network Ensembles for Time Series Classification","archived":false,"fork":false,"pushed_at":"2023-08-31T14:50:05.000Z","size":314,"stargazers_count":111,"open_issues_count":1,"forks_count":38,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-23T22:42:27.374Z","etag":null,"topics":["deep-learning","deep-neural-networks","ensemble","time-series-classification"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hfawaz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-03-07T12:34:32.000Z","updated_at":"2024-11-13T13:18:38.000Z","dependencies_parsed_at":"2022-07-17T01:16:08.980Z","dependency_job_id":"694400d3-5d38-4bb9-b72a-3e8e163c21b7","html_url":"https://github.com/hfawaz/ijcnn19ensemble","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hfawaz%2Fijcnn19ensemble","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hfawaz%2Fijcnn19ensemble/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hfawaz%2Fijcnn19ensemble/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hfawaz%2Fijcnn19ensemble/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hfawaz","download_url":"https://codeload.github.com/hfawaz/ijcnn19ensemble/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247973930,"owners_count":21026736,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","deep-neural-networks","ensemble","time-series-classification"],"created_at":"2024-11-06T15:15:37.974Z","updated_at":"2025-04-09T03:32:16.698Z","avatar_url":"https://github.com/hfawaz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deep Neural Network Ensembles for Time Series Classification\nThis is the companion repository for our paper also available on [ArXiv](https://arxiv.org/abs/1903.06602) titled \"Deep Neural Network Ensembles for Time Series Classification\". This paper has been accepted at the [IEEE International Joint Conference on Neural Networks (IJCNN) 2019](https://www.ijcnn.org/). \n\n## Approach\n![ensemble](https://github.com/hfawaz/ijcnn19ensemble/blob/master/png/ensemble.png)\n\n## Data \nThe data used in this project comes from the [UCR/UEA archive](http://timeseriesclassification.com/TSC.zip), which contains the 85 univariate time series datasets. \n\n## Code \nThe code is divided as follows: \n* The [main.py](https://github.com/hfawaz/ijcnn19ensemble/blob/master/src/main.py) python file contains the necessary code to run all experiements. \n* The [utils](https://github.com/hfawaz/ijcnn19ensemble/blob/master/src/utils/) folder contains the necessary functions to read the datasets and manipulate the data.\n* The [classifiers](https://github.com/hfawaz/ijcnn19ensemble/tree/master/src/classifiers) folder contains eight python files one for each deep individual/ensemble classifier presented in our paper. \n\nTo run a model on all datasets you should issue the following command: \n```\npython3 main.py\n```\nTo control which datasets and which individual/ensemble classifiers to run see the options in [constants.py](https://github.com/hfawaz/ijcnn19ensemble/blob/master/src/utils/constants.py).  \n\nYou can control which algorithms to include in the ensemble by changing [this line of code](https://github.com/hfawaz/ijcnn19ensemble/blob/cb822a0783ea6bd10359348f727b8fd81ae2c131/src/classifiers/nne.py#L35). \n\n## Prerequisites\nAll python packages needed are listed in [pip-requirements.txt](https://github.com/hfawaz/ijcnn19ensemble/blob/master/src/utils/pip-requirements.txt) file and can be installed simply using the pip command.\n\n* [numpy](http://www.numpy.org/)  \n* [pandas](https://pandas.pydata.org/)  \n* [sklearn](http://scikit-learn.org/stable/)  \n* [scipy](https://www.scipy.org/)  \n* [matplotlib](https://matplotlib.org/)  \n* [tensorflow-gpu](https://www.tensorflow.org/)  \n* [keras](https://keras.io/)  \n* [h5py](http://docs.h5py.org/en/latest/build.html)\n* [keras_contrib](https://www.github.com/keras-team/keras-contrib.git)\n\n## Results\nThe following table shows the results of four ensembles, the raw results can be found [here](https://github.com/hfawaz/ijcnn19ensemble/blob/master/results/results.csv). \n\n|                                | Fine-tuned FCNs | NNE    | ALL    | ResNets | \n|--------------------------------|-----------------|--------|--------|---------| \n| 50words                        | 66.81           | **80.00**  | **80.00**  | 77.14   | \n| Adiac                          | **85.17**           | **85.17**  | 83.38  | 83.63   | \n| ArrowHead                      | 84.00           | 86.29  | 86.29  | **86.86**   | \n| Beef                           | 76.67           | 76.67  | **80.00**  | 76.67   | \n| BeetleFly                      | **90.00**           | 85.00  | 85.00  | 85.00   | \n| BirdChicken                    | 90.00           | **95.00**  | 85.00  | 90.00   | \n| CBF                            | **99.78**           | 99.44  | 98.56  | **99.78**   | \n| Car                            | 91.67           | **95.00**  | 86.67  | 93.33   | \n| ChlorineConcentration          | 82.42           | 85.05  | 83.98  | **85.49**   | \n| CinC_ECG_torso                 | 85.87           | 89.71  | **92.90**  | 83.55   | \n| Coffee                         | **100.00**          | **100.00** | **100.00** | **100.00**  | \n| Computers                      | 83.20           | **83.60**  | 71.60  | **83.60**   | \n| Cricket_X                      | 78.97           | **82.05**  | 77.95  | 81.54   | \n| Cricket_Y                      | 79.23           | **84.36**  | 78.72  | 82.05   | \n| Cricket_Z                      | 82.05           | **83.85**  | 79.49  | 82.05   | \n| DiatomSizeReduction            | 30.07           | 30.07  | **88.56**  | 30.07   | \n| DistalPhalanxOutlineAgeGroup   | 71.94           | 72.66  | **76.26**  | 73.38   | \n| DistalPhalanxOutlineCorrect    | 77.54           | 77.90  | 77.90  | **78.99**   | \n| DistalPhalanxTW                | **71.22**           | 65.47  | 67.63  | 66.19   | \n| ECG200                         | 89.00           | 89.00  | **92.00**  | 88.00   | \n| ECG5000                        | 94.16           | 94.42  | **94.51**  | 93.67   | \n| ECGFiveDays                    | 99.54           | **99.88**  | 99.65  | 98.61   | \n| Earthquakes                    | 71.94           | **74.82**  | **74.82**  | 72.66   | \n| ElectricDevices                | 71.74           | **74.39**  | 73.03  | 74.22   | \n| FISH                           | 96.00           | 97.71  | 93.71  | **98.29**   | \n| FaceAll                        | **92.84**           | 86.39  | 83.91  | 84.02   | \n| FaceFour                       | 93.18           | **95.45**  | 92.05  | **95.45**   | \n| FacesUCR                       | 93.95           | 95.76  | 95.51  | **95.90**   | \n| FordA                          | 90.67           | 93.70  | **94.22**  | 92.56   | \n| FordB                          | 88.04           | **92.90**  | 92.33  | 92.16   | \n| Gun_Point                      | **100.00**          | **100.00** | 99.33  | 99.33   | \n| Ham                            | 74.29           | 75.24  | 74.29  | **78.10**   | \n| HandOutlines                   | 92.70           | **95.14**  | 93.78  | 93.78   | \n| Haptics                        | 50.65           | 52.60  | 50.97  | **53.25**   | \n| Herring                        | **65.62**           | 60.94  | 62.50  | 60.94   | \n| InlineSkate                    | **40.55**           | 38.36  | 38.00  | 38.55   | \n| InsectWingbeatSound            | 39.49           | 59.75  | **65.91**  | 52.73   | \n| ItalyPowerDemand               | 96.11           | 96.50  | **96.89**  | 96.40   | \n| LargeKitchenAppliances         | 89.60           | **90.93**  | 83.20  | 89.60   | \n| Lighting2                      | **80.33**           | **80.33**  | 77.05  | 78.69   | \n| Lighting7                      | 89.04           | **90.41**  | 83.56  | 83.56   | \n| MALLAT                         | 96.93           | 96.93  | 95.44  | **97.40**   | \n| Meat                           | 91.67           | 95.00  | 93.33  | **96.67**   | \n| MedicalImages                  | 78.29           | 79.74  | **80.13**  | 78.42   | \n| MiddlePhalanxOutlineAgeGroup   | 53.90           | 59.09  | **60.39**  | 59.09   | \n| MiddlePhalanxOutlineCorrect    | 81.10           | 83.51  | **83.85**  | 83.51   | \n| MiddlePhalanxTW                | 51.95           | 51.95  | **55.19**  | 49.35   | \n| MoteStrain                     | 93.37           | **93.93**  | 93.45  | 93.05   | \n| NonInvasiveFatalECG_Thorax1    | **96.44**           | 96.39  | 95.88  | 95.01   | \n| NonInvasiveFatalECG_Thorax2    | 95.73           | 96.18  | 96.54  | 95.01   | \n| OSULeaf                        | 97.52           | **98.76**  | 78.51  | 98.35   | \n| OliveOil                       | **86.67**           | **86.67**  | **86.67**  | **86.67**   | \n| PhalangesOutlinesCorrect       | 83.57           | 84.27  | 83.57  | **84.97**   | \n| Phoneme                        | 32.65           | **35.13**  | 30.91  | 34.81   | \n| Plane                          | **100.00**          | **100.00** | 99.05  | **100.00**  | \n| ProximalPhalanxOutlineAgeGroup | 84.39           | 84.88  | **85.85**  | 85.37   | \n| ProximalPhalanxOutlineCorrect  | **92.10**           | 91.75  | 90.38  | **92.10**   | \n| ProximalPhalanxTW              | 79.51           | 77.56  | **80.98**  | 78.54   | \n| RefrigerationDevices           | 50.40           | 53.07  | **53.33**  | 52.80   | \n| ScreenType                     | **65.07**           | 62.13  | 52.27  | 62.13   | \n| ShapeletSim                    | 86.11           | 81.11  | 70.56  | **93.89**   | \n| ShapesAll                      | 90.00           | **92.83**  | 89.17  | 92.00   | \n| SmallKitchenAppliances         | 79.47           | **82.13**  | 77.60  | 78.93   | \n| SonyAIBORobotSurface           | 95.84           | 94.68  | 78.04  | **96.17**   | \n| SonyAIBORobotSurfaceII         | **98.22**           | 97.69  | 88.88  | 98.11   | \n| StarLightCurves                | 96.78           | **97.92**  | 97.79  | 97.38   | \n| Strawberry                     | 97.84           | **98.11**  | 97.57  | **98.11**   | \n| SwedishLeaf                    | **97.28**           | **97.28**  | 96.16  | 96.48   | \n| Symbols                        | 95.68           | **95.88**  | 91.06  | 91.56   | \n| ToeSegmentation1               | 96.49           | **98.25**  | 81.58  | 96.05   | \n| ToeSegmentation2               | 90.77           | 92.31  | **93.08**  | 91.54   | \n| Trace                          | **100.00**          | **100.00** | 98.00  | **100.00**  | \n| TwoLeadECG                     | 99.91           | **100.00** | 97.72  | **100.00**  | \n| Two_Patterns                   | 87.62           | **100.00** | **100.00** | **100.00**  | \n| UWaveGestureLibraryAll         | 82.86           | 92.27  | **96.26**  | 87.16   | \n| Wine                           | 77.78           | 87.04  | **90.74**  | 83.33   | \n| WordsSynonyms                  | 55.96           | 66.93  | **68.97**  | 62.85   | \n| Worms                          | 76.62           | 81.82  | 62.34  | **83.12**   | \n| WormsTwoClass                  | 74.03           | **77.92**  | 63.64  | **77.92**   | \n| synthetic_control              | 98.67           | **100.00** | **100.00** | **100.00**  | \n| uWaveGestureLibrary_X          | 76.13           | 82.10  | **83.28**  | 79.51   | \n| uWaveGestureLibrary_Y          | 64.82           | 73.20  | **75.38**  | 68.68   | \n| uWaveGestureLibrary_Z          | 73.12           | **78.03**  | 77.41  | 76.19   | \n| wafer                          | 99.61           | 99.84  | 99.81  | **99.90**   | \n| yoga                           | 87.10           | **89.33**  | 88.57  | 88.17   | \n| **Wins**                           | 18           | **38**  | 29 | 27 | \n\n\n## Critical difference diagrams\nIf you would like to generate these diagrams, take a look at [this code](https://github.com/hfawaz/cd-diagram)!\n\n![cd-diagram-resnets](https://github.com/hfawaz/ijcnn19ensemble/blob/master/png/cd-diagram-resnets.png)\n![cd-diagram-all](https://github.com/hfawaz/ijcnn19ensemble/blob/master/png/cd-diagram-all.png)\n![cd-diagram-nne](https://github.com/hfawaz/ijcnn19ensemble/blob/master/png/cd-diagram-nne.png)\n \n\n## Reference\n\nIf you re-use this work, please cite:\n\n```\n@InProceedings{IsmailFawaz2019deep,\n  Title                    = {Deep Neural Network Ensembles for Time Series Classification},\n  Author                   = {Ismail Fawaz, Hassan and Forestier, Germain and Weber, Jonathan and Idoumghar, Lhassane and Muller, Pierre-Alain},\n  booktitle                = {IEEE International Joint Conference on Neural Networks},\n  Year                     = {2019}\n}\n```\n\n## Acknowledgement\n\nWe would like to thank NVIDIA Corporation for the Quadro P6000 grant and the Mésocentre of Strasbourg for providing access to the cluster.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhfawaz%2Fijcnn19ensemble","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhfawaz%2Fijcnn19ensemble","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhfawaz%2Fijcnn19ensemble/lists"}