diff --git a/README.md b/README.md index 2e43e8a..5fc2050 100644 --- a/README.md +++ b/README.md @@ -32,14 +32,14 @@ AI systems by requiring less computation, fewer engineers, and less data, to facilitate the giant market of edge AI and AIoT.

- +

- +

## Demo -[![Watch the video](https://hanlab.mit.edu/projects/tinyml/figures/mcunet_demo.png)](https://youtu.be/YvioBgtec4U) +[![Watch the video](https://hanlab18.mit.edu/projects/tinyml/figures/mcunet_demo.png)](https://youtu.be/YvioBgtec4U) ## Related Projects diff --git a/tinytl/README.md b/tinytl/README.md index c1270f2..6206826 100644 --- a/tinytl/README.md +++ b/tinytl/README.md @@ -1,4 +1,4 @@ -# TinyTL: Reduce Activations, Not Trainable Parameters for Efficient On-Device Learning [[website]](https://hanlab.mit.edu/projects/tinyml/tinyTL/) +# TinyTL: Reduce Activations, Not Trainable Parameters for Efficient On-Device Learning [[website]](https://hanlab18.mit.edu/projects/tinyml/tinyTL/) ```BibTex @inproceedings{ @@ -13,27 +13,27 @@ ## On-Device Learning, not Just Inference

- +

## Activation is the Main Bottleneck, not Parameters

- +

## Tiny Transfer Learning

- +

## Transfer Learning Results

- +

## Combining with Batch Size 1 Training

- +

## Data Preparation diff --git a/tinytl/dataset_setup_scripts/make_aircraft.py b/tinytl/dataset_setup_scripts/make_aircraft.py index 8e635c8..3a2274b 100644 --- a/tinytl/dataset_setup_scripts/make_aircraft.py +++ b/tinytl/dataset_setup_scripts/make_aircraft.py @@ -64,8 +64,8 @@ def main(): shutil.rmtree(os.path.join(dataset_path, 'fgvc-aircraft-2013b')) os.remove(os.path.join(dataset_path, 'fgvc-aircraft-2013b.tar.gz')) - download_file('https://hanlab.mit.edu/tools/image_dataset_formats/aircraft/train.txt') - download_file('https://hanlab.mit.edu/tools/image_dataset_formats/aircraft/val.txt') + download_file('https://hanlab18.mit.edu/tools/image_dataset_formats/aircraft/train.txt') + download_file('https://hanlab18.mit.edu/tools/image_dataset_formats/aircraft/val.txt') test_data() train_data() diff --git a/tinytl/dataset_setup_scripts/make_food.py b/tinytl/dataset_setup_scripts/make_food.py index 57ec430..1f21c15 100644 --- a/tinytl/dataset_setup_scripts/make_food.py +++ b/tinytl/dataset_setup_scripts/make_food.py @@ -63,8 +63,8 @@ def main(): shutil.rmtree(os.path.join(dataset_path, 'food-101')) os.remove(os.path.join(dataset_path, 'food-101.tar.gz')) - download_file('https://hanlab.mit.edu/tools/image_dataset_formats/food_101/train.txt') - download_file('https://hanlab.mit.edu/tools/image_dataset_formats/food_101/val.txt') + download_file('https://hanlab18.mit.edu/tools/image_dataset_formats/food_101/train.txt') + download_file('https://hanlab18.mit.edu/tools/image_dataset_formats/food_101/val.txt') test_data() train_data() diff --git a/tinytl/tinytl_fgvc_train.py b/tinytl/tinytl_fgvc_train.py index 8fec71c..769dd0a 100644 --- a/tinytl/tinytl_fgvc_train.py +++ b/tinytl/tinytl_fgvc_train.py @@ -135,7 +135,7 @@ # replace bn layers with gn layers replace_bn_with_gn(net, gn_channel_per_group=8) # load pretrained model - init_file = download_url('https://hanlab.mit.edu/projects/tinyml/tinyTL/files/' + init_file = download_url('https://hanlab18.mit.edu/projects/tinyml/tinyTL/files/' 'proxylessnas_mobile+lite_residual@imagenet@ws+gn', model_dir='~/.tinytl/') net.load_state_dict(torch.load(init_file, map_location='cpu')['state_dict']) net.classifier = LinearLayer( @@ -147,7 +147,7 @@ net_config_path = os.path.join(args.net_path, 'net.config') init_path = os.path.join(args.net_path, 'init') else: - base_url = 'https://hanlab.mit.edu/projects/tinyml/tinyTL/files/specialized/%s/' % args.dataset + base_url = 'https://hanlab18.mit.edu/projects/tinyml/tinyTL/files/specialized/%s/' % args.dataset net_config_path = download_url(base_url + 'net.config', model_dir='~/.tinytl/specialized/%s' % args.dataset) init_path = download_url(base_url + 'init', model_dir='~/.tinytl/specialized/%s' % args.dataset)