MCPcopy Create free account
hub / github.com/AtlasAnalyticsLab/AdaFisher / main

Function main

Language_Model/run_exp.py:95–214  ·  view source on GitHub ↗
(args)

Source from the content-addressed store, hash-verified

93
94
95def main(args):
96 # Seed the experiment, for repeatability
97 seed_experiment(args.seed)
98 # Dataloaders
99 train_dataset = Wikitext2(args.data_folder, split="train")
100 train_dataloader = DataLoader(
101 train_dataset,
102 batch_size=args.batch_size,
103 shuffle=True,
104 num_workers=args.num_workers,
105 )
106 valid_dataset = Wikitext2(args.data_folder, split="validation")
107 valid_dataloader = DataLoader(
108 valid_dataset,
109 batch_size=args.batch_size,
110 shuffle=False,
111 num_workers=args.num_workers,
112 )
113 test_dataset = Wikitext2(args.data_folder, split="test")
114 test_dataloader = DataLoader(
115 test_dataset,
116 batch_size=args.batch_size,
117 shuffle=False,
118 num_workers=args.num_workers,
119 )
120
121 # Download the embeddings
122 if not os.path.isfile(args.embeddings):
123 print("Downloading embeddings...")
124 urllib.request.urlretrieve(EMBEDDINGS_URL, args.embeddings)
125
126 # Model
127
128 model = MiniGPT1.load_embeddings_from(
129 args.embeddings, num_heads=12, num_layers=args.layers
130 )
131 model.to(args.device)
132
133 # Optimizer
134 if args.optimizer == "adamw":
135 optimizer = AdamW(
136 model.parameters(), lr=args.lr, weight_decay=args.weight_decay
137 )
138 elif args.optimizer == "AdaFisherW":
139 optimizer = AdaFisherW(model, lr=args.lr, gammas=[args.gamma1, args.gamma2], TCov=args.curvature_update_interval,
140 weight_decay=args.weight_decay, Lambda=args.damping
141 )
142 elif args.optimizer == "AdaHessian":
143 optimizer = Adahessian(
144 model.parameters(),
145 lr=args.lr,
146 weight_decay=args.weight_decay,
147 )
148 elif args.optimizer in ['Shampoo', 'kfac']:
149 optimizer = SGD(
150 model.parameters(),
151 lr=args.lr,
152 weight_decay=args.weight_decay,

Callers 1

run_exp.pyFile · 0.70

Calls 11

seed_experimentFunction · 0.90
Wikitext2Class · 0.90
AdamWClass · 0.90
AdaFisherWClass · 0.90
AdahessianClass · 0.90
SGDClass · 0.90
track_memory_gpuFunction · 0.90
save_logsFunction · 0.90
trainFunction · 0.85
evaluateFunction · 0.85
load_embeddings_fromMethod · 0.45

Tested by

no test coverage detected