Download v21graph/prep.py from Eric-Yyvuw/yeepee-ctr: direct link, hf CLI and curl.
- Browser
- Download file 1.6 kB
-
https://huggingface.co/Eric-Yyvuw/yeepee-ctr/resolve/main/v21graph/prep.py
- Command line
-
hf download hf://Eric-Yyvuw/yeepee-ctr/v21graph/prep.py
-
curl -L -o prep.py https://huggingface.co/Eric-Yyvuw/yeepee-ctr/resolve/main/v21graph/prep.py
1.6 kB
| import sys,time,os; sys.dont_write_bytecode=True | |
| sys.path.insert(0,'/workspace/huawei/v12'); os.environ['PYTHONDONTWRITEBYTECODE']='1' | |
| from mkdw import * # Data, CUT, rows_train, extend_eval, J20, DAY, Jd (chdir to dw_signals) | |
| O='/workspace/huawei/v21graph/out/' | |
| D=Data(); NU,NI=D.NU,D.NI; print(NU,NI,flush=True) | |
| HL=30 | |
| def hist(ev): | |
| n=len(ev); hi=np.full((n,HL),NI,np.int32); ht=np.zeros((n,HL),np.int64) | |
| for j,e in enumerate(ev): | |
| a,b=D.OFF[e],D.OFF[e+1]; it=D.HI[a:b]; t=D.HT[a:b]; o=np.argsort(-t,kind='stable')[:HL]; hi[j,:len(o)]=it[o]; ht[j,:len(o)]=t[o] | |
| return hi,ht | |
| seq='/workspace/huawei/v21seq/seqfeat/' | |
| def tab(nm,V,y=None): | |
| ev=V['e'][::10]; hi,ht=hist(ev) | |
| s=np.load(seq+f'A_{nm}.npz',allow_pickle=True) | |
| assert (np.asarray(s['rowid']).astype(str)==np.asarray(V['rowid']).astype(str)).all(),nm | |
| ets=D.ETS[ev] | |
| np.savez(O+f'tab_{nm}.npz',rowid=np.asarray(V['rowid']).astype(str),user=V['user'].astype(np.int32),item=V['item'].astype(np.int32),ts=ets,hist=hi,hts=ht, | |
| y=(y if y is not None else np.zeros(len(V['rowid']),np.int8))) | |
| print('tab',nm,len(ev),flush=True) | |
| for nm in ['f1','f2','f3','f4','f5','f6','val23','val25','val26']: | |
| V=rows_train(D,nm); y=pl.read_parquet(f'{F3}/{nm}.parquet',columns=['clicked'])['clicked'].to_numpy().astype(np.int8) | |
| tab(nm,V,y) | |
| # graphs (train-only) at cutoffs | |
| for k in range(1,8): | |
| S=D.snap(J20+k*DAY); np.savez(O+f'g_{k}.npz',cu=S['cu'],ci=S['ci'],ct=S['ct'],nX=S['nX']); print('g',k,len(S['cu']),flush=True) | |
| V=extend_eval(D); tab('eval',V) | |
| np.save(O+'dims.npy',np.array([NU,NI])) | |