I need your help with this mistake

I’m trying to find the next mistake but I can’t

I have the following code

import matplotlib.pyplot as plt
%reload_ext autoreload
%autoreload 2
%matplotlib inline
from fastai.imports import *
from fastai.torch_imports import *
from fastai.transforms import *
from fastai.conv_learner import *
from fastai.model import *
from fastai.dataset import *
from fastai.sgdr import *
from fastai.plots import *
from random import sample
from itertools import chain
from sklearn.metrics import confusion_matrix
from itertools import chain
from random import sample

use first GPU if you have many

PATH = “/Users/jorgemariomartinez/Documents/Tesis Maestria/Python/Codigos articulos/data/pics/” ### path to where your pictures are downloaded and the .csv files with val sets
sz = 224 ### resize images to this px by px
arch = resnext101_64 ### pre-trained network choice
bs = 200 ### batch size for minibatches

def get_val_cv_byclass(label_csv):
label_df = pd.read_csv(label_csv)
val_idxs = []
for x in label_df[‘class’].unique(): ### should be class but reversed column labels
start= label_df.index[label_df[‘class’] == x].tolist()[0]
end = start+len(label_df.index[label_df[‘class’] == x].tolist())-1
n_sample= int(round((end-start)*0.2,0))
val_idxs.append(random.sample(range(start,end),n_sample))
val_idxs = list(chain.from_iterable(val_idxs))
return val_idxs

def get_val_idx_fromfile(validx_csv):
validx_df =pd.read_csv(validx_csv, header=None)
return validx_df[0].tolist()

def get_data(sz, bs, val_idxs, label_csv): # sz: image size, bs: batch size
tfms = tfms_from_model(arch, sz, aug_tfms=transforms_top_down, max_zoom=1.1)
data = ImageClassifierData.from_csv(PATH, ‘train2’, label_csv,
val_idxs=val_idxs, suffix=’.png’, tfms=tfms, bs=bs, num_workers=3)
return data if sz > 300 else data.resize(340, ‘tmp’)

label_csv = f’{PATH}3cls_rmsaltol.csv’
#n = len(list(open(label_csv))) - 1
vacc =[]
reps=5
start=0
bs=200
valididx_base = ‘3cls_val_ids’

for rep in range(reps):
print(rep+start)
val_idxs = get_val_idx_fromfile(f’{PATH}’+valididx_base+str(rep+start)+’.csv’)
data = get_data(sz, bs, val_idxs, label_csv)
learn = ConvLearner.pretrained(arch, data, precompute=True)
val_loss, val_acc = learn.fit(1e-2, 10, cycle_len=1, cycle_mult=2)
vacc.append(val_acc)
print(‘3 class average, cyclic learning’)
print(np.mean(vacc))
print(np.std(vacc))

BUT WHEN I TRY TO RUN THE CODE IT PRESENTS THE FOLLOWING ERROR

0
HBox(children=(FloatProgress(value=0.0, max=6.0), HTML(value=’’)))

HBox(children=(FloatProgress(value=0.0, description=‘Epoch’, max=1023.0, style=ProgressStyle(description_width…
epoch trn_loss val_loss accuracy

AttributeError Traceback (most recent call last)
AttributeError: ‘float’ object has no attribute ‘rint’

The above exception was the direct cause of the following exception:

TypeError Traceback (most recent call last)
in
12 data = get_data(sz, bs, val_idxs, label_csv)
13 learn = ConvLearner.pretrained(arch, data, precompute=True)
—> 14 val_loss, val_acc = learn.fit(1e-2, 10, cycle_len=1, cycle_mult=2)
15 vacc.append(val_acc)
16 print(‘3 class average, cyclic learning’)

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/fastai/learner.py in fit(self, lrs, n_cycle, wds, **kwargs)
285 self.sched = None
286 layer_opt = self.get_layer_opt(lrs, wds)
–> 287 return self.fit_gen(self.model, self.data, layer_opt, n_cycle, **kwargs)
288
289 def warm_up(self, lr, wds=None):

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/fastai/learner.py in fit_gen(self, model, data, layer_opt, n_cycle, cycle_len, cycle_mult, cycle_save_name, best_save_name, use_clr, use_clr_beta, metrics, callbacks, use_wd_sched, norm_wds, wds_sched_mult, use_swa, swa_start, swa_eval_freq, **kwargs)
232 metrics=metrics, callbacks=callbacks, reg_fn=self.reg_fn, clip=self.clip, fp16=self.fp16,
233 swa_model=self.swa_model if use_swa else None, swa_start=swa_start,
–> 234 swa_eval_freq=swa_eval_freq, **kwargs)
235
236 def get_layer_groups(self): return self.models.get_layer_groups()

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/fastai/model.py in fit(model, data, n_epochs, opt, crit, metrics, callbacks, stepper, swa_model, swa_start, swa_eval_freq, **kwargs)
158
159 if epoch == 0: print(layout.format(*names))
–> 160 print_stats(epoch, [debias_loss] + vals)
161 ep_vals = append_stats(ep_vals, epoch, [debias_loss] + vals)
162 if stop: break

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/fastai/model.py in print_stats(epoch, values, decimals)
171 def print_stats(epoch, values, decimals=6):
172 layout = “{!s:^10}” + " {!s:10}" * len(values)
–> 173 values = [epoch] + list(np.round(values, decimals))
174 print(layout.format(*values))
175

< array_function internals> in round_(*args, **kwargs)

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/numpy/core/fromnumeric.py in round_(a, decimals, out)
3597 around : equivalent function; see for details.
3598 “”"
-> 3599 return around(a, decimals=decimals, out=out)
3600
3601

< array_function internals> in around(*args, **kwargs)

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/numpy/core/fromnumeric.py in around(a, decimals, out)
3222
3223 “”"
-> 3224 return _wrapfunc(a, ‘round’, decimals=decimals, out=out)
3225
3226

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/numpy/core/fromnumeric.py in _wrapfunc(obj, method, *args, **kwds)
56 bound = getattr(obj, method, None)
57 if bound is None:
—> 58 return _wrapit(obj, method, *args, **kwds)
59
60 try:

~/opt/anaconda3/envs/fastai-cpu/lib/python3.6/site-packages/numpy/core/fromnumeric.py in _wrapit(obj, method, *args, **kwds)
45 except AttributeError:
46 wrap = None
—> 47 result = getattr(asarray(obj), method)(*args, **kwds)
48 if wrap:
49 if not isinstance(result, mu.ndarray):

TypeError: loop of ufunc does not support argument 0 of type float which has no callable rint method