{"id":13499103,"url":"https://github.com/jaxony/ShuffleNet","last_synced_at":"2025-03-29T04:30:30.296Z","repository":{"id":51225490,"uuid":"97298151","full_name":"jaxony/ShuffleNet","owner":"jaxony","description":"ShuffleNet in PyTorch. Based on https://arxiv.org/abs/1707.01083","archived":false,"fork":false,"pushed_at":"2017-12-20T12:50:24.000Z","size":14081,"stargazers_count":290,"open_issues_count":6,"forks_count":90,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-08-01T22:50:06.003Z","etag":null,"topics":["artificial-intelligence","convolution","deep-learning","neural-network","pytorch"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jaxony.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}},"created_at":"2017-07-15T06:58:13.000Z","updated_at":"2024-06-12T11:30:02.000Z","dependencies_parsed_at":"2022-08-27T19:02:17.987Z","dependency_job_id":null,"html_url":"https://github.com/jaxony/ShuffleNet","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/jaxony%2FShuffleNet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaxony%2FShuffleNet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaxony%2FShuffleNet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaxony%2FShuffleNet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jaxony","download_url":"https://codeload.github.com/jaxony/ShuffleNet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222455960,"owners_count":16987578,"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":["artificial-intelligence","convolution","deep-learning","neural-network","pytorch"],"created_at":"2024-07-31T22:00:28.766Z","updated_at":"2024-10-31T17:31:32.158Z","avatar_url":"https://github.com/jaxony.png","language":"Python","funding_links":[],"categories":["Papers\u0026Codes","DLA"],"sub_categories":["ShuffleNet"],"readme":"# ShuffleNet in PyTorch\nAn implementation of `ShuffleNet` in PyTorch. `ShuffleNet` is an efficient convolutional neural network architecture for mobile devices. According to the paper, it outperforms Google's MobileNet by a small percentage.\n\n## What is ShuffleNet?\nIn one sentence, `ShuffleNet` is a ResNet-like model that uses residual blocks (called `ShuffleUnits`), with the main innovation being the use of pointwise, or 1x1, *group* convolutions as opposed to normal pointwise convolutions.\n\n## Usage\nClone the repo:\n```bash\ngit clone https://github.com/jaxony/ShuffleNet.git\n```\n\nUse the model defined in `model.py`:\n```python\nfrom model import ShuffleNet\n\n# running on MNIST\nnet = ShuffleNet(num_classes=10, in_channels=1)\n```\n\n## Performance\n\nTrained on ImageNet (using the [PyTorch ImageNet example][imagenet]) with\n`groups=3` and no channel multiplier. On the test set, got 62.2% top 1 and\n84.2% top 5. Unfortunately, this isn't comparable to Table 5 of the paper,\nbecause they don't run a network with these settings, but it is somewhere\nbetween the network with `groups=3` and half the number of channels (42.8%\ntop 1) and the network with the same number of channels but `groups=8`\n(32.4% top 1). The pretrained state dictionary can be found [here][tar], in\nthe [following\nformat](://github.com/pytorch/examples/blob/master/imagenet/main.py#L165-L171):\n\n```\n{\n    'epoch': epoch + 1,\n    'arch': args.arch,\n    'state_dict': model.state_dict(),\n    'best_prec1': best_prec1,\n    'optimizer' : optimizer.state_dict()\n}\n```\n\nNote: trained with the default ImageNet settings, which are actually\ndifferent from the training regime described in the paper. Pending running\nagain with those settings (and `groups=8`).\n\n[tar]: https://drive.google.com/file/d/12oGJsyDgp51LhQ7FOzKxF9nBsutLkE6V/view?usp=sharing\n[imagenet]: https://github.com/pytorch/examples/tree/master/imagenet\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaxony%2FShuffleNet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaxony%2FShuffleNet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaxony%2FShuffleNet/lists"}