node { name: "net_input" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: -1 } dim { size: 29 } dim { size: 13 } } } } } node { name: "net/random_uniform/shape" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\r\000\000\000<\000\000\000" } } } } node { name: "net/random_uniform/min" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: -0.2866910994052887 } } } } node { name: "net/random_uniform/max" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.2866910994052887 } } } } node { name: "net/random_uniform/RandomUniform" op: "RandomUniform" input: "net/random_uniform/shape" attr { key: "T" value { type: DT_INT32 } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "seed" value { i: 87654321 } } attr { key: "seed2" value { i: 8388397 } } } node { name: "net/random_uniform/sub" op: "Sub" input: "net/random_uniform/max" input: "net/random_uniform/min" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/random_uniform/mul" op: "Mul" input: "net/random_uniform/RandomUniform" input: "net/random_uniform/sub" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/random_uniform" op: "Add" input: "net/random_uniform/mul" input: "net/random_uniform/min" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/kernel" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 13 } dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "net/kernel/Assign" op: "Assign" input: "net/kernel" input: "net/random_uniform" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "net/kernel/read" op: "Identity" input: "net/kernel" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/kernel" } } } } node { name: "net/recurrent_kernel/initial_value" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } dim { size: 60 } } tensor_content: "\201\014^\275\343z\312\275\200\343\231=;\331P=\373\266\017\2766\257)>\314\344\035>P\325\207\276\366\263\234S\366\2757\213A=$\266 >\255(\254=?,\013>\017\2429<&\254\026\276\035R\360\274\"\"\335=\350I\215=\254\202\204\276\301\223\205\273\216:S=C&\335;\275-\354\275\345\222\360=!\204M\275|\027\007\275K?:;\360\274\300=e\010\245<\214[\254\276?e\002\273u\242D=!;\272\274K\301\340=\27266>3\366\270>\250\240&\274`\263\351=\017\217\260=\266\227\347=P\245\356\275=W\010>\302\372\360\275`\332\214\276Q\'\277<\220`\201\276\305=a\276\006\026\305=\025UG\275\025b:\274\356bU\275\225l\017=\347U\213>\254\206.=\037:\234=:bi>W}$>\337B\312\275V*\303=d\n\211;;\275\006;,~\024\276\222\215\234>\265g\334\275x])=\373\332\353=\265#\033\2718/\275c3\202\275S\267-\275\337\366\247=\022\216\204=\244\2348>\027\216\t=\226\373\\>\270\215\202<\003\320\371;9e\342=\230\200\023>\321\332\366\275\372\204g\276Z\001_>\227\272\246\273\177/\347\274\252\374\205\276\225\341B=\255\221\010<\253\0073\276J\251\031>\3206b\275\001\365\345\275\265O\215\276-9@>{f\267=-\267\357=\214\321\316\274ef\344\275\311\200A=\022\365\242\275\030)c\276/_\214=\376o\357\343\024*=\"V\250=\335\204\002=\314\357S=\320\241\264=\201\\v=\253\2232=PfE\276\364Tt\273]\247\277\275K]i\275B\352u\274@g!\276o\2064\275X\367\202\275a\305\323\275\256A(>\006OR\276\273k:\274Q\036\322\274/R\021={\023u\276\361\031!>K\226\r\275\032)\223\274M\261\256\275UI\260=\r\207\200=\006qE>\2070\343=T\030\231\274A-[>=\362\000\275\366=J\276_M\005>#\371D>u\205u\274\203;\261\274*\201\265<\207 (\276\021\177\333=x\244\355=aE\025>\377\252\211\275\215\236\251\274\245\034\024>\272\034\231\275\361{*\276\177p\224=\376\372\022>\373X\t>t7\256=\2153*\275#\354\213\276\203~v\275\241\340\256\275\207\360\326\275\257\222\257>\310\334\224>bt\227>\025\017h\274\263@/>8;\032\276\003\223\313\275Q_k=t \203\275]\013\207=l\236\267=\202\3409\275B\307i>\210\302\314=v0\010\276,\363\333\2754\361\266\275\006\223\333<\023\255\013=\323?\356\275i\241\315<\224\007=>N\177\356\274>-\201\274X\0045>=U\n\276\237\366}\276q=}\275\270\331W\2766z\200\275\005\323s\276\376\373\337\275\213\250P>\231G(\276 \301\027\2763\243\256\275\240\017\n=\225 \014\275\311\330\002>\006V|\274\027~\034>\017d\t\276e\013U\275\227\236\202\276^4\334=T\201\355\275T}9\276\352:D\276\312i\032\275\377\035\210\275\247\233\346=\337NP\274z\364b:\375\371\004<\013L\020\276ip\022\276*a\234\360\306j=\376S\032>\313\036\265\275\231vV\275QM\007=\202)\'\276\207\226\275\275<\017\001>\256>\335\275*\316\035\275\375\223Z\276\364b/=\027\343\302\2759\306o\275\302l>\275K\272\233=\202\0132\276\003Ir\276\250\020\035=\3657R\275\"9\316\274-\222\227=B\211\010\275+\356\034\275\272d\250=P\t\t>Yb\314=<\210B\276\210m=\275l\'.\276\245\240i>\205\035c=1\033\326=t\2307\276\275\010\235\275\355\351\277\275S\271\334=\024i\217\276p?\234\274\210\226W>\217\331E\2765\221\257\273*+\021<\022\222\241\276\345S\262=5&J=\245\336G=\316R\026\275?\030\010\276M\\\025>\t]\033\276gHF>\343\032\026>~\333r\273g\256/\276\256\003\317\275\247\005\0008\301\317&>\350w\311=\226TE\276\233\n\247\274\322\244\213<_\237\r=\004\367K=\002\020\206=w\375\261!>\004\276\305\177\221=\014\322\351=\220c\376=\232\367\026>\024\r\032\275:\337\222=fc\271\275>\365\317\275\213x\036=\273(\314=\327\241\004\276\r\207\275\275\257[\312\276Q\360\334\275\315\266_>1Cj\276\330\2716\276\323,\345=\026\252\263=Vu \276<\376\216=\327\214\201\275\274\231\276\273\2436|\275\013\242\201=\235LA\276\223.\377:\321p\252\275E\235\242>\034*\032\276\006\t\002\274@\213\022\276\361\t\222\275\316\215\031\2761\205h\276Rs\257\273-\344S=34\270;\207+\370=\213%F\276\\?\300<\320T\265\275\241 \261\262\277\202\274\r\027\000\276nq@>\254\322\227=\277\316\374=\244j\216\274)\350\025\275\312T\225\014\300\031\275w\245g3 \023<\227\270\235=\3458%=\023\'\270\275\225\177\220\274i\213\356=\207\003b\275K>\321=s\317\255=p\302\027>\244\251\036\276\213J\217=i/\300\275\265^\314\274K\031\202>N)^=^\214^>\362*T>\345\221p\001\352c\276\271B\224=\256{\030=\253S\314\275\316\007\246\276\254\036T=0\205|=I\211\">TF\301\274)F0\275\311\250\036>\352\036\232>\006\254\222\274l\254\246={e\216\273\206\254\346\274\233.\305\275\331)-\276\013\304\022>[\\\367=\2004Y\2745\030r\274V}$\276\325\340\003>\372\245h\275\336B\215\275T\204\350\275r=\233\274\276\203\033=\017\233\027=\220\244G\275\n\326\215=\013\255\327=\242tz\275\377I\242\27669s\276\037\332%\276\327\355\364\274\177\217$>\032\010\221\275\266h\372\275z\227\032\276\007\347H=\341\230\365\275{\010,:\325i\225<\r\303\244>\"\240\344<\251A\246;fU\232\275\254\212\033<\300\216\300\275\003\200\205\275\316M|\275\324\321\356=\023\022\031>\271\177\010\276\237\261\315=\332\270\256\275\320X\326=\354!w\276\355d\255\276^\245\324\275~t\300<\345\036\264<\036\311\027>3\302\033>4\212;\274\'\210\216=n\235\032\276<\0221=\237\226m=\301\304><9{\336=\225\3549\276\023\347\267\274\342\311\316=[\341\001\276\347x\373\2753\362\313\275\220\004\242\275V\n\220=63\236>\024\355\301\275\020\020\036>i\235\257\274\337w.>\037\220\t\275`S\343d\350*\275t4\\=UU\260\275\200!\353\274\325\376:>\302;\177\276IS\376\245\275&\177\027\273+\316\212>\315\301z\276\305a\035>R)\324\274L\032h=FX\230\274\261\330\376\275\352;\350<\300\317\321\275\006\300\207>x\323]\273\231\325\000>\251\337\233=\001\373\376\275XsG;Ce\252=\025\350\325=\356\376,>,\3233>sz\340=q;\241\274w\354\221\275:\037\356\275\020\330\246;\310\023\301\274%\032\255\251\231\251\275[O\000>\345\367\340\271}\356\304\276gz\215=\210\3540>s\300L\276\217\215\214=\203\036\225>!`\224\276\3176\263=A\375\210\274\345q\202<\213\365\334<\030\372\202>\371;/>O\230R=\371\344\301=O\310\300\275\24210=\001\377\325<\214\267\362\275\373\276\022=P1\317=\206\330O\275_\333\324\275\252]\336\274\356\300P=\tf\002>\211y\203=\213\246\005\276$\262z=\230\314\217=\250\344\220\275\242\274V>d\235\010=\027\341\t>VA\030\276!\032>\275\324o\361=\324\2112\275~\263\252\276\330\373\307\2755*\303\273\323\275\376=\351\302\335\272Z\006o\276\310\"M\276\034\020\211>[\317\222\275\253\373\301\274\270\324\312=\013\033j=\237\376\317=\322\034B<\305@@=\036\262\026\276\213\367\001>\237\266\353\275\r\032\354=\027\223\321\274\'\235\t\275}$\026>\026\342\254=\2213\276=\202\311\004>0\037P=i\215\347\275\237i\261\275Q&\036<\241\217)\276\000\030)\276n/&=H\275\007<\341\355t<$)[<\202\177\243>Q\341\017>xIm>W\263?\276\236\220\'\275,\n\236\274\375e\361=\253\300\254\275\226\026\005\276\372?F\275u/\343\275\355\363I=-\363\245=\023\354\202\275\267\331\006>l\324->O\304\211\275\017\374\320;\356.\r\276A+\225\2751\315\257<\341\203\'>l\304\304\272yo\330\275\327\373\245=\353\327\217=\331K\201=d\352\312\275\365c^=z,\246\275dI\256\275z\332\'=Ykv>\016\"\227\276E\355\200\275Y\276\225\274J\025\276=)}\025\276\214\241R\2761?\210\276\312/\332=\362\304B\276\365\2347\276@\213\345=\203D\207=\224o\305;\237w\026>~Pb>[\027\016>\224M\036\276\312\330G\2752\327\255\275\324\212\t>\231*\201\276\306\025\243\274,b\020\276\31383\274q\332\010>\021\357I\275Y\257\210\275B\017+>\035\264G\276&\307u=\207\224 =L{\317\275\333L\246=x\212B\276\202+\365\275he,=T@e=\036\325\313\275\307\023\244<\347v\227=<0\035=\025\342\032>\264\256\272\276\341\256\256<(\371s\276\262Q\253\275\375\237J\274-\230X=\345\355A\276gk\350==\332R=G\300\n=\216Q\355\275{\020\177\275._\r\276WJ\016\276\201\353\270=\370\205\t>\225|\256\275\342\214\201\275\035\017\300\275}\323\203\276\020j\356\275h\202S\275m\301\021\275\240\216z=\232\005$\276\263uE\276D\230T\276\323\023\000=\'5I\275\204r_\276V\265a=\237\034&\276={\276=A\010I),|=\372\345@=\275\363\223<;]%\274[\340q>\037\314\224\275\223jB>X\377#>\357ro>C\323\">\205\007W=YO\023=\246Q\375=3\322\031>4\001\244\275\250q=>\314\357\254\275\311?~=\351\263\016<\201\212->\252g\202\274\2760\355=\"\204\204=B\230a\276\230\237\221;\310X\216=\356d\230<\031R\257<\377\264\332=\n\277\222=\023\177Y\275\303\226\230\275\027\213L\276\211\221H=\323G\016=\333>\244;O\3025>\322S\316\275>\320\307\275\241ux\275\260\277\212<\310h3\275\257\246\351<\241\366j=\260\326\234>\214\226^>?Q\215>\236s\264\276{L$\275\023q\352\275\246\334\204>?\254V\274\036\234\020\275\275V\266\275\223\367~=%\r\243\226\t\262;\2069\306=\227`7>m\346~>\330\232\241\274\326\326\223\276\333\251\313=\212\236n\275\316R\006>a*s=\256\263\t>\354S\243\276\202o0>\344\234\341\274#\224\013\276\203\277\225=\276\363\220;#\310\374\275\220\352%<\263\327\223\275IUR=\021\244S;\t\351\213>ND\217=\324\344\003\276s\363\274\275\202[\022\276\276\200\205=\\\360\313\275\010!\027\275b\344Wz\357\t>\371\t\323\275\231\002\275\275d=5\273/\216\355\275m\351\314<\203y\004\276\220\212\026\276l\037\'>+\001\207\276S\366\223!;V<\306\277\353\275\007\313\237=\000\326\022\275\302]\'\276bOG\276\033\246\300\275f\323Z=\360\303\215\275.,)>\276Rj>q\276&>\346\t\201\275\232\307u<9x\201\275f\245\306\275\246\313*\273\003\377)>g\366\005\276\362\002\263=H\243U\276\026\313\321\274\t\257\222=\320v\214\275x\023Y>U\'\033\276Z~T>Zm!>b\275\322\275\304\020i\275\306\211>\276\344\3621\275\343\224E\276P\264\314;1\2735>\276\345\225>B\357\212\275`\361=\275\347r\356\275HE\222=6|n\275\024[\320=\300\342x\276\333\241_\276s\255\236<\312\220\373\275\014\324\361\274\335IO>k@[>+n\222=,5\316=\312d\020> %=>\315\340.<\337\327&=\342\365\226\273\302A\356\275Bd\362=c\r\n\275\023^\010\275\017\221\374\274\363\206\013<\220\241\000>\347`)\275\274\001A\275\265z\356=\327^6\276\220\005\337<\326\353\345\275\037/\312=\273u\372\275\0241\210\275\267\204\256\273\341\265\030\275\362\2513=\202i\322\275\372\316!\275vm#\276r\265\273\273c\270@\275\337^9\276c\375*>\345H\366\275\321sl\275&\252\246\275\260Kk=A\226\200=\211&\033>\244\312+>43\357=\253>9>;\"\251=\235xH\276\272h\353\274Q\260\036\275\277Z\350=\220\343\'>\320\306\246=>\303E\274=!:=r\301\244>\247\310S>\307\343\250\275\345J\225\276\375A\233\275\354\240\305\275.\014\355=\315h\314\275\201\374\270\275\\\023j\274\325v{\276lzN\275\317\177\027\276|\301\026\2765\320\302<\343e\240\275E\177]\275z\322\227=\022\234_>\230\027}\2766\351\317=\372C%\276>\010#\273/\251s\276q\271\325=q\317\217\274\301\210\357\274\242\212\020\276\353\003\'\275\022\006\036=\366;\352\274\365\233\220\276\002\346\217<\333fO>\251L\260\275\267\032\313\274\310\242\353=\244\020\222\274\\K\250\275:\2653\276\321\365\314=L\236\\\276\026\037\243\274Ns\234>\330A\261=\003\313#>-O\203\276\017\353V>\346\357n\276\0136\217\275\t\007k\273\240\257\335<\242%\264=\217!\204\275B\"\016>\'s\201\275W\232/\275\275B\031=\264\010\026\275Ap\346\275\333\334&\275/\274W>\355\206{\276\035$\332\275\263\362F\275\335H\236=6\315?>?\226\303=\217\314D=\232\221\t\273\201^W\276\363\232\314\275}\255O>\225/<\276\"X\265\275\266!\002\275\361\202\364=g\340\021=Q\364\001\2764\311\211\274_\332\317=\362X5\274\023\2302\275\235b\244\274\320\243&\276\004\246X=;\346\343<|\312\026\275\211\320\">9\301m\276\311u&>\352\346p>(5\332\274\210W\027=H\026\224=\331\365$>\302\246O=-W\343<\372\351r\275\345H\035>#.^\276\323\242i\274\256\304\001\275\022a\311=\326\003\263=\206(K\275T\014L\276bO$\274\231\214\217\2758$F;\373\377V>f\357#>N\243\273=s\271\240>\355\004\2432\324\004\276-\024\230<7i5\275\237\000I\276\306)]\275y\363\007>\027\214\207=T@`>}\267\260\275`\034\371<\220\022\335:\375\331\263:\336\\5=\231\220\346\275\376\035\304;\255\316D\276\261\312\220=\010gA\276\340Uo>8\251\356\274|+\262<#G\371=\007\356\306\275OS\307<\177\264*>\r\303X>\005\367\220\276-\254l\275\237\373\223=f\203\272=\037cc\275\303S\244=I\254F>9\260\002>\010j\002\276\253\351\272\276\307_C\275s\002c\276+\371\320<\357\330\211\275\007\026\305<7\312L=\354\3121\276\242\324\236>?Q\313=\021\261\222\275\343\r\t\274\263P\203\275K\236\311=Vv\214=s3\247\275\003Z\031>\201\263\351\275\350\344R\276:\177\312;\256.\034\276\265\265j\276\302{6\276\275V\351\275E\2739\276\366\263\326\275\367MD>7\002\030=\020y\017=N\2119<*\342N:\001\347\243\275\016\3345>\325\214\263>\017\013>9\202N=,\350\266\275\021i\350\275\345\004\013\276\311\257\020=&\213S=t6M>\370g\367\275\200_\207\275\376\033*\276]\036\234\274*\006\360\273D\212\243=\262M\315\275U\025\332=N}\215>,\237Z<\346\353#\276\035M\004>\036\263\342\275a\\*>\352\254\270\275\213\030\255\275\r\242f= \317\014\276\203\227\013\276\027\215\241>7\245\312=\352\324k\275V\247<\276=J\223\275\340\200\247>h\360\361=f\375\001=1\330\245\274p\211*>\0304\'=\354\030$=\227\240\233\275\300\340\272\275\303\230\014\276\203\034\222\275\263\205\033>\211\226E=r\262;>\320\300n>\205\"\017\276\355\331\021>\322\232\010>q\\^>\"\213\326\274\336\232\005\276\266\257?w\337\210\274M\320\376\275*h\234<\363\361\342\275b\305>\276\227\221\343=w\347\246=\362pw=\332s<=\037 \264<" } } } } node { name: "net/recurrent_kernel" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "net/recurrent_kernel/Assign" op: "Assign" input: "net/recurrent_kernel" input: "net/recurrent_kernel/initial_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/recurrent_kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "net/recurrent_kernel/read" op: "Identity" input: "net/recurrent_kernel" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/recurrent_kernel" } } } } node { name: "net/Const" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 60 } } float_val: 0.0 } } } } node { name: "net/bias" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "net/bias/Assign" op: "Assign" input: "net/bias" input: "net/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/bias" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "net/bias/read" op: "Identity" input: "net/bias" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/bias" } } } } node { name: "net/strided_slice/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\000\000\000\000" } } } } node { name: "net/strided_slice/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\024\000\000\000" } } } } node { name: "net/strided_slice/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice" op: "StridedSlice" input: "net/kernel/read" input: "net/strided_slice/stack" input: "net/strided_slice/stack_1" input: "net/strided_slice/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 3 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_1/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\000\000\000\000" } } } } node { name: "net/strided_slice_1/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\024\000\000\000" } } } } node { name: "net/strided_slice_1/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice_1" op: "StridedSlice" input: "net/recurrent_kernel/read" input: "net/strided_slice_1/stack" input: "net/strided_slice_1/stack_1" input: "net/strided_slice_1/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 3 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_2/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\024\000\000\000" } } } } node { name: "net/strided_slice_2/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000(\000\000\000" } } } } node { name: "net/strided_slice_2/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice_2" op: "StridedSlice" input: "net/kernel/read" input: "net/strided_slice_2/stack" input: "net/strided_slice_2/stack_1" input: "net/strided_slice_2/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_3/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\024\000\000\000" } } } } node { name: "net/strided_slice_3/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000(\000\000\000" } } } } node { name: "net/strided_slice_3/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice_3" op: "StridedSlice" input: "net/recurrent_kernel/read" input: "net/strided_slice_3/stack" input: "net/strided_slice_3/stack_1" input: "net/strided_slice_3/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_4/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000(\000\000\000" } } } } node { name: "net/strided_slice_4/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\000\000\000\000" } } } } node { name: "net/strided_slice_4/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice_4" op: "StridedSlice" input: "net/kernel/read" input: "net/strided_slice_4/stack" input: "net/strided_slice_4/stack_1" input: "net/strided_slice_4/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 3 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_5/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000(\000\000\000" } } } } node { name: "net/strided_slice_5/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\000\000\000\000" } } } } node { name: "net/strided_slice_5/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "net/strided_slice_5" op: "StridedSlice" input: "net/recurrent_kernel/read" input: "net/strided_slice_5/stack" input: "net/strided_slice_5/stack_1" input: "net/strided_slice_5/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 3 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_6/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_6/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 20 } } } } node { name: "net/strided_slice_6/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_6" op: "StridedSlice" input: "net/bias/read" input: "net/strided_slice_6/stack" input: "net/strided_slice_6/stack_1" input: "net/strided_slice_6/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_7/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 20 } } } } node { name: "net/strided_slice_7/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 40 } } } } node { name: "net/strided_slice_7/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_7" op: "StridedSlice" input: "net/bias/read" input: "net/strided_slice_7/stack" input: "net/strided_slice_7/stack_1" input: "net/strided_slice_7/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/strided_slice_8/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 40 } } } } node { name: "net/strided_slice_8/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_8/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_8" op: "StridedSlice" input: "net/bias/read" input: "net/strided_slice_8/stack" input: "net/strided_slice_8/stack_1" input: "net/strided_slice_8/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "net/zeros_like" op: "ZerosLike" input: "net_input" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/Sum/reduction_indices" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\002\000\000\000" } } } } node { name: "net/Sum" op: "Sum" input: "net/zeros_like" input: "net/Sum/reduction_indices" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "net/ExpandDims/dim" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "net/ExpandDims" op: "ExpandDims" input: "net/Sum" input: "net/ExpandDims/dim" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tdim" value { type: DT_INT32 } } } node { name: "net/Tile/multiples" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\024\000\000\000" } } } } node { name: "net/Tile" op: "Tile" input: "net/ExpandDims" input: "net/Tile/multiples" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tmultiples" value { type: DT_INT32 } } } node { name: "net/transpose/perm" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 3 } } tensor_content: "\001\000\000\000\000\000\000\000\002\000\000\000" } } } } node { name: "net/transpose" op: "Transpose" input: "net_input" input: "net/transpose/perm" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tperm" value { type: DT_INT32 } } } node { name: "net/Shape" op: "Shape" input: "net/transpose" attr { key: "T" value { type: DT_FLOAT } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "net/strided_slice_9/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_9/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_9/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_9" op: "StridedSlice" input: "net/Shape" input: "net/strided_slice_9/stack" input: "net/strided_slice_9/stack_1" input: "net/strided_slice_9/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 1 } } } node { name: "net/strided_slice_10/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_10/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_10/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_10" op: "StridedSlice" input: "net/transpose" input: "net/strided_slice_10/stack" input: "net/strided_slice_10/stack_1" input: "net/strided_slice_10/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 1 } } } node { name: "net/Shape_1" op: "Shape" input: "net/strided_slice_10" attr { key: "T" value { type: DT_FLOAT } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "net/strided_slice_11/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: -1 } } } } node { name: "net/strided_slice_11/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_11/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_11" op: "StridedSlice" input: "net/Shape_1" input: "net/strided_slice_11/stack" input: "net/strided_slice_11/stack_1" input: "net/strided_slice_11/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 1 } } } node { name: "net/Shape_2" op: "Shape" input: "net/strided_slice_10" attr { key: "T" value { type: DT_FLOAT } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "net/strided_slice_12/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/strided_slice_12/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_12/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/strided_slice_12" op: "StridedSlice" input: "net/Shape_2" input: "net/strided_slice_12/stack" input: "net/strided_slice_12/stack_1" input: "net/strided_slice_12/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 1 } } } node { name: "net/ones/mul" op: "Mul" input: "net/strided_slice_12" input: "net/strided_slice_11" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/ones/Less/y" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1000 } } } } node { name: "net/ones/Less" op: "Less" input: "net/ones/mul" input: "net/ones/Less/y" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/ones/packed" op: "Pack" input: "net/strided_slice_12" input: "net/strided_slice_11" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "axis" value { i: 0 } } } node { name: "net/ones/Const" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/ones" op: "Fill" input: "net/ones/packed" input: "net/ones/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "net/mul" op: "Mul" input: "net/strided_slice_10" input: "net/ones" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_1" op: "Mul" input: "net/strided_slice_10" input: "net/ones" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_2" op: "Mul" input: "net/strided_slice_10" input: "net/ones" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/MatMul" op: "MatMul" input: "net/mul" input: "net/strided_slice" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/MatMul_1" op: "MatMul" input: "net/mul_1" input: "net/strided_slice_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/MatMul_2" op: "MatMul" input: "net/mul_2" input: "net/strided_slice_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/BiasAdd" op: "BiasAdd" input: "net/MatMul" input: "net/strided_slice_6" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/BiasAdd_1" op: "BiasAdd" input: "net/MatMul_1" input: "net/strided_slice_7" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/BiasAdd_2" op: "BiasAdd" input: "net/MatMul_2" input: "net/strided_slice_8" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/MatMul_3" op: "MatMul" input: "net/Tile" input: "net/strided_slice_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/MatMul_4" op: "MatMul" input: "net/Tile" input: "net/strided_slice_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/add" op: "Add" input: "net/BiasAdd" input: "net/MatMul_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_3/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "net/mul_3" op: "Mul" input: "net/mul_3/x" input: "net/add" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/add_1/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.5 } } } } node { name: "net/add_1" op: "Add" input: "net/mul_3" input: "net/add_1/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/Const_1" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "net/Const_2" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/clip_by_value/Minimum" op: "Minimum" input: "net/add_1" input: "net/Const_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/clip_by_value" op: "Maximum" input: "net/clip_by_value/Minimum" input: "net/Const_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/add_2" op: "Add" input: "net/BiasAdd_1" input: "net/MatMul_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_4/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "net/mul_4" op: "Mul" input: "net/mul_4/x" input: "net/add_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/add_3/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.5 } } } } node { name: "net/add_3" op: "Add" input: "net/mul_4" input: "net/add_3/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/Const_3" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "net/Const_4" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/clip_by_value_1/Minimum" op: "Minimum" input: "net/add_3" input: "net/Const_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/clip_by_value_1" op: "Maximum" input: "net/clip_by_value_1/Minimum" input: "net/Const_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_5" op: "Mul" input: "net/clip_by_value_1" input: "net/Tile" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/MatMul_5" op: "MatMul" input: "net/mul_5" input: "net/strided_slice_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/add_4" op: "Add" input: "net/BiasAdd_2" input: "net/MatMul_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_6" op: "Mul" input: "net/clip_by_value" input: "net/Tile" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/sub/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/sub" op: "Sub" input: "net/sub/x" input: "net/clip_by_value" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/mul_7" op: "Mul" input: "net/sub" input: "net/add_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/add_5" op: "Add" input: "net/mul_6" input: "net/mul_7" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/TensorArray" op: "TensorArrayV3" input: "net/strided_slice_9" attr { key: "clear_after_read" value { b: true } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "dynamic_size" value { b: false } } attr { key: "element_shape" value { shape { unknown_rank: true } } } attr { key: "identical_element_shapes" value { b: true } } attr { key: "tensor_array_name" value { s: "output_ta" } } } node { name: "net/TensorArray_1" op: "TensorArrayV3" input: "net/strided_slice_9" attr { key: "clear_after_read" value { b: true } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "dynamic_size" value { b: false } } attr { key: "element_shape" value { shape { unknown_rank: true } } } attr { key: "identical_element_shapes" value { b: true } } attr { key: "tensor_array_name" value { s: "input_ta" } } } node { name: "net/TensorArrayUnstack/Shape" op: "Shape" input: "net/transpose" attr { key: "T" value { type: DT_FLOAT } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "net/TensorArrayUnstack/strided_slice/stack" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "net/TensorArrayUnstack/strided_slice/stack_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/TensorArrayUnstack/strided_slice/stack_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "net/TensorArrayUnstack/strided_slice" op: "StridedSlice" input: "net/TensorArrayUnstack/Shape" input: "net/TensorArrayUnstack/strided_slice/stack" input: "net/TensorArrayUnstack/strided_slice/stack_1" input: "net/TensorArrayUnstack/strided_slice/stack_2" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 1 } } } node { name: "net/TensorArrayUnstack/range/start" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 0 } } } } node { name: "net/TensorArrayUnstack/range/delta" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "net/TensorArrayUnstack/range" op: "Range" input: "net/TensorArrayUnstack/range/start" input: "net/TensorArrayUnstack/strided_slice" input: "net/TensorArrayUnstack/range/delta" attr { key: "Tidx" value { type: DT_INT32 } } } node { name: "net/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3" op: "TensorArrayScatterV3" input: "net/TensorArray_1" input: "net/TensorArrayUnstack/range" input: "net/transpose" input: "net/TensorArray_1:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/transpose" } } } } node { name: "net/time" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 0 } } } } node { name: "net/while/Enter" op: "Enter" input: "net/time" attr { key: "T" value { type: DT_INT32 } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/Enter_1" op: "Enter" input: "net/TensorArray:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/Enter_2" op: "Enter" input: "net/Tile" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/Merge" op: "Merge" input: "net/while/Enter" input: "net/while/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/Merge_1" op: "Merge" input: "net/while/Enter_1" input: "net/while/NextIteration_1" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Merge_2" op: "Merge" input: "net/while/Enter_2" input: "net/while/NextIteration_2" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Less" op: "Less" input: "net/while/Merge" input: "net/while/Less/Enter" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/Less/Enter" op: "Enter" input: "net/strided_slice_9" attr { key: "T" value { type: DT_INT32 } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/LoopCond" op: "LoopCond" input: "net/while/Less" } node { name: "net/while/Switch" op: "Switch" input: "net/while/Merge" input: "net/while/LoopCond" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Merge" } } } } node { name: "net/while/Switch_1" op: "Switch" input: "net/while/Merge_1" input: "net/while/LoopCond" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_1" } } } } node { name: "net/while/Switch_2" op: "Switch" input: "net/while/Merge_2" input: "net/while/LoopCond" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_2" } } } } node { name: "net/while/Identity" op: "Identity" input: "net/while/Switch:1" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/Identity_1" op: "Identity" input: "net/while/Switch_1:1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Identity_2" op: "Identity" input: "net/while/Switch_2:1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/TensorArrayReadV3" op: "TensorArrayReadV3" input: "net/while/TensorArrayReadV3/Enter" input: "net/while/Identity" input: "net/while/TensorArrayReadV3/Enter_1" attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "net/while/TensorArrayReadV3/Enter" op: "Enter" input: "net/TensorArray_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/TensorArrayReadV3/Enter_1" op: "Enter" input: "net/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/mul" op: "Mul" input: "net/while/TensorArrayReadV3" input: "net/while/mul/Enter" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul/Enter" op: "Enter" input: "net/ones" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/mul_1" op: "Mul" input: "net/while/TensorArrayReadV3" input: "net/while/mul/Enter" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_2" op: "Mul" input: "net/while/TensorArrayReadV3" input: "net/while/mul/Enter" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/MatMul" op: "MatMul" input: "net/while/mul" input: "net/while/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul/Enter" op: "Enter" input: "net/strided_slice" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/MatMul_1" op: "MatMul" input: "net/while/mul_1" input: "net/while/MatMul_1/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul_1/Enter" op: "Enter" input: "net/strided_slice_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/MatMul_2" op: "MatMul" input: "net/while/mul_2" input: "net/while/MatMul_2/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul_2/Enter" op: "Enter" input: "net/strided_slice_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/BiasAdd" op: "BiasAdd" input: "net/while/MatMul" input: "net/while/BiasAdd/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/while/BiasAdd/Enter" op: "Enter" input: "net/strided_slice_6" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/BiasAdd_1" op: "BiasAdd" input: "net/while/MatMul_1" input: "net/while/BiasAdd_1/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/while/BiasAdd_1/Enter" op: "Enter" input: "net/strided_slice_7" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/BiasAdd_2" op: "BiasAdd" input: "net/while/MatMul_2" input: "net/while/BiasAdd_2/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "net/while/BiasAdd_2/Enter" op: "Enter" input: "net/strided_slice_8" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/MatMul_3" op: "MatMul" input: "net/while/Identity_2" input: "net/while/MatMul_3/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul_3/Enter" op: "Enter" input: "net/strided_slice_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/MatMul_4" op: "MatMul" input: "net/while/Identity_2" input: "net/while/MatMul_4/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul_4/Enter" op: "Enter" input: "net/strided_slice_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/add" op: "Add" input: "net/while/BiasAdd" input: "net/while/MatMul_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_3/x" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "net/while/mul_3" op: "Mul" input: "net/while/mul_3/x" input: "net/while/add" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/add_1/y" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.5 } } } } node { name: "net/while/add_1" op: "Add" input: "net/while/mul_3" input: "net/while/add_1/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Const" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "net/while/Const_1" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/while/clip_by_value/Minimum" op: "Minimum" input: "net/while/add_1" input: "net/while/Const_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/clip_by_value" op: "Maximum" input: "net/while/clip_by_value/Minimum" input: "net/while/Const" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/add_2" op: "Add" input: "net/while/BiasAdd_1" input: "net/while/MatMul_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_4/x" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "net/while/mul_4" op: "Mul" input: "net/while/mul_4/x" input: "net/while/add_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/add_3/y" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.5 } } } } node { name: "net/while/add_3" op: "Add" input: "net/while/mul_4" input: "net/while/add_3/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Const_2" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "net/while/Const_3" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/while/clip_by_value_1/Minimum" op: "Minimum" input: "net/while/add_3" input: "net/while/Const_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/clip_by_value_1" op: "Maximum" input: "net/while/clip_by_value_1/Minimum" input: "net/while/Const_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_5" op: "Mul" input: "net/while/clip_by_value_1" input: "net/while/Identity_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/MatMul_5" op: "MatMul" input: "net/while/mul_5" input: "net/while/MatMul_5/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "net/while/MatMul_5/Enter" op: "Enter" input: "net/strided_slice_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/add_4" op: "Add" input: "net/while/BiasAdd_2" input: "net/while/MatMul_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_6" op: "Mul" input: "net/while/clip_by_value" input: "net/while/Identity_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/sub/x" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "net/while/sub" op: "Sub" input: "net/while/sub/x" input: "net/while/clip_by_value" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/mul_7" op: "Mul" input: "net/while/sub" input: "net/while/add_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/add_5" op: "Add" input: "net/while/mul_6" input: "net/while/mul_7" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/TensorArrayWrite/TensorArrayWriteV3" op: "TensorArrayWriteV3" input: "net/while/TensorArrayWrite/TensorArrayWriteV3/Enter" input: "net/while/Identity" input: "net/while/add_5" input: "net/while/Identity_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "net/while/TensorArrayWrite/TensorArrayWriteV3/Enter" op: "Enter" input: "net/TensorArray" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "net/while/add_6/y" op: "Const" input: "^net/while/Identity" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "net/while/add_6" op: "Add" input: "net/while/Identity" input: "net/while/add_6/y" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/NextIteration" op: "NextIteration" input: "net/while/add_6" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/NextIteration_1" op: "NextIteration" input: "net/while/TensorArrayWrite/TensorArrayWriteV3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/NextIteration_2" op: "NextIteration" input: "net/while/add_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Exit" op: "Exit" input: "net/while/Switch" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/while/Exit_1" op: "Exit" input: "net/while/Switch_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/while/Exit_2" op: "Exit" input: "net/while/Switch_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "net/TensorArrayStack/TensorArraySizeV3" op: "TensorArraySizeV3" input: "net/TensorArray" input: "net/while/Exit_1" attr { key: "_class" value { list { s: "loc:@net/TensorArray" } } } } node { name: "net/TensorArrayStack/range/start" op: "Const" attr { key: "_class" value { list { s: "loc:@net/TensorArray" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 0 } } } } node { name: "net/TensorArrayStack/range/delta" op: "Const" attr { key: "_class" value { list { s: "loc:@net/TensorArray" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "net/TensorArrayStack/range" op: "Range" input: "net/TensorArrayStack/range/start" input: "net/TensorArrayStack/TensorArraySizeV3" input: "net/TensorArrayStack/range/delta" attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/TensorArray" } } } } node { name: "net/TensorArrayStack/TensorArrayGatherV3" op: "TensorArrayGatherV3" input: "net/TensorArray" input: "net/TensorArrayStack/range" input: "net/while/Exit_1" attr { key: "_class" value { list { s: "loc:@net/TensorArray" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "element_shape" value { shape { dim { size: -1 } dim { size: 20 } } } } } node { name: "net/sub_1/y" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "net/sub_1" op: "Sub" input: "net/while/Exit" input: "net/sub_1/y" attr { key: "T" value { type: DT_INT32 } } } node { name: "net/TensorArrayReadV3" op: "TensorArrayReadV3" input: "net/TensorArray" input: "net/sub_1" input: "net/while/Exit_1" attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "net/transpose_1/perm" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 3 } } tensor_content: "\001\000\000\000\000\000\000\000\002\000\000\000" } } } } node { name: "net/transpose_1" op: "Transpose" input: "net/TensorArrayStack/TensorArrayGatherV3" input: "net/transpose_1/perm" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tperm" value { type: DT_INT32 } } } node { name: "dense_1/random_uniform/shape" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\024\000\000\000\001\000\000\000" } } } } node { name: "dense_1/random_uniform/min" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: -0.5345224738121033 } } } } node { name: "dense_1/random_uniform/max" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.5345224738121033 } } } } node { name: "dense_1/random_uniform/RandomUniform" op: "RandomUniform" input: "dense_1/random_uniform/shape" attr { key: "T" value { type: DT_INT32 } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "seed" value { i: 87654321 } } attr { key: "seed2" value { i: 5882729 } } } node { name: "dense_1/random_uniform/sub" op: "Sub" input: "dense_1/random_uniform/max" input: "dense_1/random_uniform/min" attr { key: "T" value { type: DT_FLOAT } } } node { name: "dense_1/random_uniform/mul" op: "Mul" input: "dense_1/random_uniform/RandomUniform" input: "dense_1/random_uniform/sub" attr { key: "T" value { type: DT_FLOAT } } } node { name: "dense_1/random_uniform" op: "Add" input: "dense_1/random_uniform/mul" input: "dense_1/random_uniform/min" attr { key: "T" value { type: DT_FLOAT } } } node { name: "dense_1/kernel" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 1 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "dense_1/kernel/Assign" op: "Assign" input: "dense_1/kernel" input: "dense_1/random_uniform" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "dense_1/kernel/read" op: "Identity" input: "dense_1/kernel" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/kernel" } } } } node { name: "dense_1/Const" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 1 } } float_val: 0.0 } } } } node { name: "dense_1/bias" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 1 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "dense_1/bias/Assign" op: "Assign" input: "dense_1/bias" input: "dense_1/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/bias" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "dense_1/bias/read" op: "Identity" input: "dense_1/bias" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/bias" } } } } node { name: "dense_1/MatMul" op: "MatMul" input: "net/TensorArrayReadV3" input: "dense_1/kernel/read" attr { key: "T" value { type: DT_FLOAT } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: false } } } node { name: "dense_1/BiasAdd" op: "BiasAdd" input: "dense_1/MatMul" input: "dense_1/bias/read" attr { key: "T" value { type: DT_FLOAT } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "dense_1/Sigmoid" op: "Sigmoid" input: "dense_1/BiasAdd" attr { key: "T" value { type: DT_FLOAT } } } node { name: "Placeholder" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 13 } dim { size: 60 } } } } } node { name: "Assign" op: "Assign" input: "net/kernel" input: "Placeholder" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/kernel" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_1" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 60 } } } } } node { name: "Assign_1" op: "Assign" input: "net/recurrent_kernel" input: "Placeholder_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/recurrent_kernel" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_2" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 60 } } } } } node { name: "Assign_2" op: "Assign" input: "net/bias" input: "Placeholder_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/bias" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_3" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 1 } } } } } node { name: "Assign_3" op: "Assign" input: "dense_1/kernel" input: "Placeholder_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/kernel" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_4" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 1 } } } } } node { name: "Assign_4" op: "Assign" input: "dense_1/bias" input: "Placeholder_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/bias" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "IsVariableInitialized" op: "IsVariableInitialized" input: "net/kernel" attr { key: "_class" value { list { s: "loc:@net/kernel" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_1" op: "IsVariableInitialized" input: "net/recurrent_kernel" attr { key: "_class" value { list { s: "loc:@net/recurrent_kernel" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_2" op: "IsVariableInitialized" input: "net/bias" attr { key: "_class" value { list { s: "loc:@net/bias" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_3" op: "IsVariableInitialized" input: "dense_1/kernel" attr { key: "_class" value { list { s: "loc:@dense_1/kernel" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_4" op: "IsVariableInitialized" input: "dense_1/bias" attr { key: "_class" value { list { s: "loc:@dense_1/bias" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "init" op: "NoOp" input: "^dense_1/bias/Assign" input: "^dense_1/kernel/Assign" input: "^net/bias/Assign" input: "^net/kernel/Assign" input: "^net/recurrent_kernel/Assign" } node { name: "RMSprop/lr/initial_value" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0010000000474974513 } } } } node { name: "RMSprop/lr" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { } } } attr { key: "shared_name" value { s: "" } } } node { name: "RMSprop/lr/Assign" op: "Assign" input: "RMSprop/lr" input: "RMSprop/lr/initial_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/lr" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "RMSprop/lr/read" op: "Identity" input: "RMSprop/lr" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/lr" } } } } node { name: "RMSprop/rho/initial_value" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.8999999761581421 } } } } node { name: "RMSprop/rho" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { } } } attr { key: "shared_name" value { s: "" } } } node { name: "RMSprop/rho/Assign" op: "Assign" input: "RMSprop/rho" input: "RMSprop/rho/initial_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/rho" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "RMSprop/rho/read" op: "Identity" input: "RMSprop/rho" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/rho" } } } } node { name: "RMSprop/decay/initial_value" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "RMSprop/decay" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { } } } attr { key: "shared_name" value { s: "" } } } node { name: "RMSprop/decay/Assign" op: "Assign" input: "RMSprop/decay" input: "RMSprop/decay/initial_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/decay" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "RMSprop/decay/read" op: "Identity" input: "RMSprop/decay" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@RMSprop/decay" } } } } node { name: "RMSprop/iterations/initial_value" op: "Const" attr { key: "dtype" value { type: DT_INT64 } } attr { key: "value" value { tensor { dtype: DT_INT64 tensor_shape { } int64_val: 0 } } } } node { name: "RMSprop/iterations" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_INT64 } } attr { key: "shape" value { shape { } } } attr { key: "shared_name" value { s: "" } } } node { name: "RMSprop/iterations/Assign" op: "Assign" input: "RMSprop/iterations" input: "RMSprop/iterations/initial_value" attr { key: "T" value { type: DT_INT64 } } attr { key: "_class" value { list { s: "loc:@RMSprop/iterations" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "RMSprop/iterations/read" op: "Identity" input: "RMSprop/iterations" attr { key: "T" value { type: DT_INT64 } } attr { key: "_class" value { list { s: "loc:@RMSprop/iterations" } } } } node { name: "dense_1_target" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: -1 } dim { size: -1 } } } } } node { name: "dense_1_sample_weights" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: -1 } } } } } node { name: "loss/dense_1_loss/add/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "loss/dense_1_loss/add" op: "Add" input: "loss/dense_1_loss/add/x" input: "dense_1_target" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Neg" op: "Neg" input: "loss/dense_1_loss/add" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/add_1/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "loss/dense_1_loss/add_1" op: "Add" input: "loss/dense_1_loss/add_1/x" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/add_2/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "loss/dense_1_loss/add_2" op: "Add" input: "loss/dense_1_loss/add_1" input: "loss/dense_1_loss/add_2/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Log" op: "Log" input: "loss/dense_1_loss/add_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/mul" op: "Mul" input: "loss/dense_1_loss/Neg" input: "loss/dense_1_loss/Log" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/sub/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "loss/dense_1_loss/sub" op: "Sub" input: "loss/dense_1_loss/sub/x" input: "dense_1_target" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Neg_1" op: "Neg" input: "loss/dense_1_loss/sub" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/sub_1/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "loss/dense_1_loss/sub_1" op: "Sub" input: "loss/dense_1_loss/sub_1/x" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/add_3/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "loss/dense_1_loss/add_3" op: "Add" input: "loss/dense_1_loss/sub_1" input: "loss/dense_1_loss/add_3/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Log_1" op: "Log" input: "loss/dense_1_loss/add_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/mul_1" op: "Mul" input: "loss/dense_1_loss/Neg_1" input: "loss/dense_1_loss/Log_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Const" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\001\000\000\000" } } } } node { name: "loss/dense_1_loss/Mean" op: "Mean" input: "loss/dense_1_loss/mul_1" input: "loss/dense_1_loss/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "loss/dense_1_loss/mul_2/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.8999999761581421 } } } } node { name: "loss/dense_1_loss/mul_2" op: "Mul" input: "loss/dense_1_loss/mul_2/x" input: "loss/dense_1_loss/Mean" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Const_1" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\000\000\000\000\001\000\000\000" } } } } node { name: "loss/dense_1_loss/Mean_1" op: "Mean" input: "loss/dense_1_loss/mul" input: "loss/dense_1_loss/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "loss/dense_1_loss/mul_3/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.10000000149011612 } } } } node { name: "loss/dense_1_loss/mul_3" op: "Mul" input: "loss/dense_1_loss/mul_3/x" input: "loss/dense_1_loss/Mean_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/add_4" op: "Add" input: "loss/dense_1_loss/mul_2" input: "loss/dense_1_loss/mul_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Mean_2/reduction_indices" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "loss/dense_1_loss/Mean_2" op: "Mean" input: "loss/dense_1_loss/add_4" input: "loss/dense_1_loss/Mean_2/reduction_indices" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "loss/dense_1_loss/mul_4" op: "Mul" input: "loss/dense_1_loss/Mean_2" input: "dense_1_sample_weights" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/NotEqual/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "loss/dense_1_loss/NotEqual" op: "NotEqual" input: "dense_1_sample_weights" input: "loss/dense_1_loss/NotEqual/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Cast" op: "Cast" input: "loss/dense_1_loss/NotEqual" attr { key: "DstT" value { type: DT_FLOAT } } attr { key: "SrcT" value { type: DT_BOOL } } attr { key: "Truncate" value { b: false } } } node { name: "loss/dense_1_loss/Const_2" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "loss/dense_1_loss/Mean_3" op: "Mean" input: "loss/dense_1_loss/Cast" input: "loss/dense_1_loss/Const_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "loss/dense_1_loss/truediv" op: "RealDiv" input: "loss/dense_1_loss/mul_4" input: "loss/dense_1_loss/Mean_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "loss/dense_1_loss/Const_3" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "loss/dense_1_loss/Mean_4" op: "Mean" input: "loss/dense_1_loss/truediv" input: "loss/dense_1_loss/Const_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "loss/mul/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "loss/mul" op: "Mul" input: "loss/mul/x" input: "loss/dense_1_loss/Mean_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "metrics/acc/Round" op: "Round" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } } node { name: "metrics/acc/Equal" op: "Equal" input: "dense_1_target" input: "metrics/acc/Round" attr { key: "T" value { type: DT_FLOAT } } } node { name: "metrics/acc/Cast" op: "Cast" input: "metrics/acc/Equal" attr { key: "DstT" value { type: DT_FLOAT } } attr { key: "SrcT" value { type: DT_BOOL } } attr { key: "Truncate" value { b: false } } } node { name: "metrics/acc/Mean/reduction_indices" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "metrics/acc/Mean" op: "Mean" input: "metrics/acc/Cast" input: "metrics/acc/Mean/reduction_indices" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "metrics/acc/Const" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "metrics/acc/Mean_1" op: "Mean" input: "metrics/acc/Mean" input: "metrics/acc/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/mul" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/grad_ys_0" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/mul" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/gradients/Fill" op: "Fill" input: "training/RMSprop/gradients/Shape" input: "training/RMSprop/gradients/grad_ys_0" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/mul" } } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/f_count" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 0 } } } } node { name: "training/RMSprop/gradients/f_count_1" op: "Enter" input: "training/RMSprop/gradients/f_count" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/Merge" op: "Merge" input: "training/RMSprop/gradients/f_count_1" input: "training/RMSprop/gradients/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/Switch" op: "Switch" input: "training/RMSprop/gradients/Merge" input: "net/while/LoopCond" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/Add/y" op: "Const" input: "^net/while/Identity" attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "training/RMSprop/gradients/Add" op: "Add" input: "training/RMSprop/gradients/Switch:1" input: "training/RMSprop/gradients/Add/y" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/Add" input: "^training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPushV2_1" input: "^training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPushV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPushV2" input: "^training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPushV2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/f_count_2" op: "Exit" input: "training/RMSprop/gradients/Switch" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/b_count" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "training/RMSprop/gradients/b_count_1" op: "Enter" input: "training/RMSprop/gradients/f_count_2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/Merge_1" op: "Merge" input: "training/RMSprop/gradients/b_count_1" input: "training/RMSprop/gradients/NextIteration_1" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/GreaterEqual" op: "GreaterEqual" input: "training/RMSprop/gradients/Merge_1" input: "training/RMSprop/gradients/GreaterEqual/Enter" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/GreaterEqual/Enter" op: "Enter" input: "training/RMSprop/gradients/b_count" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/b_count_2" op: "LoopCond" input: "training/RMSprop/gradients/GreaterEqual" attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/Switch_1" op: "Switch" input: "training/RMSprop/gradients/Merge_1" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/Sub" op: "Sub" input: "training/RMSprop/gradients/Switch_1:1" input: "training/RMSprop/gradients/GreaterEqual/Enter" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/NextIteration_1" op: "NextIteration" input: "training/RMSprop/gradients/Sub" input: "^training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/b_sync" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/b_count_3" op: "Exit" input: "training/RMSprop/gradients/Switch_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } } node { name: "training/RMSprop/gradients/loss/mul_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/Fill" input: "loss/dense_1_loss/Mean_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/mul_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/Fill" input: "loss/mul/x" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Reshape/shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 1 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/mul_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Reshape/shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape" op: "Shape" input: "loss/dense_1_loss/truediv" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Tile" op: "Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tmultiples" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape_1" op: "Shape" input: "loss/dense_1_loss/truediv" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape_2" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Prod" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Const" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Prod_1" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Shape_2" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Const_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Maximum/y" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Maximum" op: "Maximum" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Prod_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Maximum/y" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/floordiv" op: "FloorDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Maximum" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Cast" op: "Cast" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/floordiv" attr { key: "DstT" value { type: DT_FLOAT } } attr { key: "SrcT" value { type: DT_INT32 } } attr { key: "Truncate" value { b: false } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/truediv" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/Cast" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape" op: "Shape" input: "loss/dense_1_loss/mul_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/truediv" input: "loss/dense_1_loss/Mean_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Neg" op: "Neg" input: "loss/dense_1_loss/mul_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv_1" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Neg" input: "loss/dense_1_loss/Mean_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv_2" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv_1" input: "loss/dense_1_loss/Mean_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_4_grad/truediv" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/RealDiv_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/mul" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/truediv" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape_1" op: "Shape" input: "dense_1_sample_weights" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Reshape" input: "dense_1_sample_weights" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Mul_1" op: "Mul" input: "loss/dense_1_loss/Mean_2" input: "training/RMSprop/gradients/loss/dense_1_loss/truediv_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_4" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Reshape/shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_4_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Reshape/shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Tile" op: "Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tmultiples" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/truediv" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_2_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/truediv" input: "loss/dense_1_loss/Mean" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_2_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/truediv" input: "loss/dense_1_loss/mul_2/x" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_3_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/truediv" input: "loss/dense_1_loss/Mean_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_3" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_3_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_2_grad/truediv" input: "loss/dense_1_loss/mul_3/x" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_3" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Reshape/shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_2_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Reshape/shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape" op: "Shape" input: "loss/dense_1_loss/mul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Tile" op: "Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tmultiples" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape_1" op: "Shape" input: "loss/dense_1_loss/mul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape_2" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Prod" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Const" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Prod_1" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Shape_2" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Const_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Maximum/y" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Maximum" op: "Maximum" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Prod_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Maximum/y" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/floordiv" op: "FloorDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Maximum" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Cast" op: "Cast" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/floordiv" attr { key: "DstT" value { type: DT_FLOAT } } attr { key: "SrcT" value { type: DT_INT32 } } attr { key: "Truncate" value { b: false } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/truediv" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/Cast" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Reshape/shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\001\000\000\000\001\000\000\000" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_3_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Reshape/shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape" op: "Shape" input: "loss/dense_1_loss/mul" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Tile" op: "Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tmultiples" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape_1" op: "Shape" input: "loss/dense_1_loss/mul" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape_2" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Prod" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Const" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 0 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Prod_1" op: "Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Shape_2" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Const_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Maximum/y" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: 1 } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Maximum" op: "Maximum" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Prod_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Maximum/y" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/floordiv" op: "FloorDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Prod" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Maximum" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Cast" op: "Cast" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/floordiv" attr { key: "DstT" value { type: DT_FLOAT } } attr { key: "SrcT" value { type: DT_INT32 } } attr { key: "Truncate" value { b: false } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/truediv" op: "RealDiv" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Tile" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/Cast" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Mean_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape" op: "Shape" input: "loss/dense_1_loss/Neg_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape_1" op: "Shape" input: "loss/dense_1_loss/Log_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/truediv" input: "loss/dense_1_loss/Log_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Mul_1" op: "Mul" input: "loss/dense_1_loss/Neg_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_grad/truediv" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape" op: "Shape" input: "loss/dense_1_loss/Neg" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape_1" op: "Shape" input: "loss/dense_1_loss/Log" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/truediv" input: "loss/dense_1_loss/Log" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Mul_1" op: "Mul" input: "loss/dense_1_loss/Neg" input: "training/RMSprop/gradients/loss/dense_1_loss/Mean_1_grad/truediv" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Mul_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/mul" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Log_1_grad/Reciprocal" op: "Reciprocal" input: "loss/dense_1_loss/add_3" input: "^training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Log_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Log_1_grad/mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_1_grad/Reshape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_1_grad/Reciprocal" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Log_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Log_grad/Reciprocal" op: "Reciprocal" input: "loss/dense_1_loss/add_2" input: "^training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Log" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/Log_grad/mul" op: "Mul" input: "training/RMSprop/gradients/loss/dense_1_loss/mul_grad/Reshape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_grad/Reciprocal" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/Log" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape" op: "Shape" input: "loss/dense_1_loss/sub_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_1_grad/mul" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_1_grad/mul" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_3" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape" op: "Shape" input: "loss/dense_1_loss/add_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape_1" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_grad/mul" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/Log_grad/mul" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_2" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape_1" op: "Shape" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_3_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Neg" op: "Neg" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Sum_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Neg" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape_1" op: "Shape" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/loss/dense_1_loss/add_2_grad/Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Sum_1" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/add_1" } } } } node { name: "training/RMSprop/gradients/AddN" op: "AddN" input: "training/RMSprop/gradients/loss/dense_1_loss/sub_1_grad/Reshape_1" input: "training/RMSprop/gradients/loss/dense_1_loss/add_1_grad/Reshape_1" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@loss/dense_1_loss/sub_1" } } } } node { name: "training/RMSprop/gradients/dense_1/Sigmoid_grad/SigmoidGrad" op: "SigmoidGrad" input: "dense_1/Sigmoid" input: "training/RMSprop/gradients/AddN" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/Sigmoid" } } } } node { name: "training/RMSprop/gradients/dense_1/BiasAdd_grad/BiasAddGrad" op: "BiasAddGrad" input: "training/RMSprop/gradients/dense_1/Sigmoid_grad/SigmoidGrad" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/BiasAdd" } } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "training/RMSprop/gradients/dense_1/MatMul_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/dense_1/Sigmoid_grad/SigmoidGrad" input: "dense_1/kernel/read" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/MatMul" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/dense_1/MatMul_grad/MatMul_1" op: "MatMul" input: "net/TensorArrayReadV3" input: "training/RMSprop/gradients/dense_1/Sigmoid_grad/SigmoidGrad" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/MatMul" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayGrad/TensorArrayGradV3" op: "TensorArrayGradV3" input: "net/TensorArray" input: "net/while/Exit_1" attr { key: "_class" value { list { s: "loc:@net/TensorArray" s: "loc:@net/TensorArrayReadV3" } } } attr { key: "source" value { s: "training/RMSprop/gradients" } } } node { name: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayGrad/gradient_flow" op: "Identity" input: "net/while/Exit_1" input: "^training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayGrad/TensorArrayGradV3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/TensorArray" s: "loc:@net/TensorArrayReadV3" } } } } node { name: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayWrite/TensorArrayWriteV3" op: "TensorArrayWriteV3" input: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayGrad/TensorArrayGradV3" input: "net/sub_1" input: "training/RMSprop/gradients/dense_1/MatMul_grad/MatMul" input: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayGrad/gradient_flow" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/TensorArrayReadV3" } } } } node { name: "training/RMSprop/gradients/zeros_like" op: "ZerosLike" input: "net/while/Exit_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/Exit_1_grad/b_exit" op: "Enter" input: "training/RMSprop/gradients/net/TensorArrayReadV3_grad/TensorArrayWrite/TensorArrayWriteV3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/Exit_2_grad/b_exit" op: "Enter" input: "training/RMSprop/gradients/zeros_like" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Exit_2" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/Switch_1_grad/b_switch" op: "Merge" input: "training/RMSprop/gradients/net/while/Exit_1_grad/b_exit" input: "training/RMSprop/gradients/net/while/Switch_1_grad_1/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_1" } } } } node { name: "training/RMSprop/gradients/net/while/Switch_2_grad/b_switch" op: "Merge" input: "training/RMSprop/gradients/net/while/Exit_2_grad/b_exit" input: "training/RMSprop/gradients/net/while/Switch_2_grad_1/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_2" } } } } node { name: "training/RMSprop/gradients/net/while/Merge_1_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/Switch_1_grad/b_switch" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_1" } } } } node { name: "training/RMSprop/gradients/net/while/Merge_2_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/Switch_2_grad/b_switch" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_2" } } } } node { name: "training/RMSprop/gradients/net/while/Enter_1_grad/Exit" op: "Exit" input: "training/RMSprop/gradients/net/while/Merge_1_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Enter_1" } } } } node { name: "training/RMSprop/gradients/net/while/Enter_2_grad/Exit" op: "Exit" input: "training/RMSprop/gradients/net/while/Merge_2_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Enter_2" } } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/TensorArrayGradV3" op: "TensorArrayGradV3" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/TensorArrayGradV3/Enter" input: "training/RMSprop/gradients/net/while/Merge_1_grad/Switch:1" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "source" value { s: "training/RMSprop/gradients" } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/TensorArrayGradV3/Enter" op: "Enter" input: "net/TensorArray" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/gradient_flow" op: "Identity" input: "training/RMSprop/gradients/net/while/Merge_1_grad/Switch:1" input: "^training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/TensorArrayGradV3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3" op: "TensorArrayReadV3" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/TensorArrayGradV3" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPopV2" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayGrad/gradient_flow" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/Identity" s: "loc:@net/while/add_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/Const" attr { key: "_class" value { list { s: "loc:@net/while/Identity" s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/Enter" input: "net/while/Identity" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/b_sync" op: "ControlTrigger" input: "^training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1" input: "^training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPopV2" input: "^training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPopV2" input: "^training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "training/RMSprop/gradients/AddN_1" op: "AddN" input: "training/RMSprop/gradients/net/while/Merge_2_grad/Switch:1" input: "training/RMSprop/gradients/net/while/TensorArrayWrite/TensorArrayWriteV3_grad/TensorArrayReadV3" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_2" } } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Shape" op: "Shape" input: "net/while/mul_6" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Shape_1" op: "Shape" input: "net/while/mul_7" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_5_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/add_5_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/AddN_1" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_5_grad/Sum" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/AddN_1" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_5_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_5_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_5_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_5" } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Shape" op: "Shape" input: "net/while/clip_by_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Shape_1" op: "Shape" input: "net/while/Identity_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/mul_6_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/net/while/add_5_grad/Reshape" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/Identity_2" s: "loc:@net/while/mul_6" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/Const" attr { key: "_class" value { list { s: "loc:@net/while/Identity_2" s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/Enter" input: "net/while/Identity_2" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_6_grad/Sum" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_5_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" s: "loc:@net/while/mul_6" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/Enter" input: "net/while/clip_by_value" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul_1" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_6_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_6_grad/Sum_1" input: "training/RMSprop/gradients/net/while/mul_6_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Shape" op: "Shape" input: "net/while/sub" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Shape_1" op: "Shape" input: "net/while/add_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/mul_7_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/net/while/add_5_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_4" s: "loc:@net/while/mul_7" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_4" s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/Enter" input: "net/while/add_4" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_7_grad/Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_5_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" s: "loc:@net/while/sub" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" s: "loc:@net/while/sub" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/Enter" input: "net/while/sub" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Mul_1" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_7_grad/Sum_1" input: "training/RMSprop/gradients/net/while/mul_7_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_7" } } } } node { name: "training/RMSprop/gradients/net/while/Switch_1_grad_1/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/Merge_1_grad/Switch:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_1" } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Shape" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Shape_1" op: "Shape" input: "net/while/clip_by_value" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/sub_grad/Shape" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/sub_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/sub_grad/Sum" input: "training/RMSprop/gradients/net/while/sub_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Neg" op: "Neg" input: "training/RMSprop/gradients/net/while/sub_grad/Sum_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } } node { name: "training/RMSprop/gradients/net/while/sub_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/sub_grad/Neg" input: "training/RMSprop/gradients/net/while/sub_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/sub" } } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Shape" op: "Shape" input: "net/while/BiasAdd_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Shape_1" op: "Shape" input: "net/while/MatMul_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_4_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/add_4_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_4_grad/Sum" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_7_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_4_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_4_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_4_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_4" } } } } node { name: "training/RMSprop/gradients/AddN_2" op: "AddN" input: "training/RMSprop/gradients/net/while/mul_6_grad/Reshape" input: "training/RMSprop/gradients/net/while/sub_grad/Reshape_1" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape" op: "Shape" input: "net/while/clip_by_value/Minimum" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape_2" op: "Shape" input: "training/RMSprop/gradients/AddN_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/zeros/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/zeros" op: "Fill" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape_2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/zeros/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual" op: "GreaterEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Enter" input: "net/while/clip_by_value/Minimum" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual/Const_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Select" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual" input: "training/RMSprop/gradients/AddN_2" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/zeros" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Select" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Select_1" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/GreaterEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/zeros" input: "training/RMSprop/gradients/AddN_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Select_1" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Sum_1" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2_grad/BiasAddGrad" op: "BiasAddGrad" input: "training/RMSprop/gradients/net/while/add_4_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2" } } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_4_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_4_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" s: "loc:@net/while/mul_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/Enter" input: "net/while/mul_5" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape" op: "Shape" input: "net/while/add_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape_2" op: "Shape" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/zeros/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/zeros" op: "Fill" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape_2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/zeros/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual" op: "LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_1" s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_1" s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Enter" input: "net/while/add_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual/Const_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Select" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/zeros" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Select" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Sum" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Select_1" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/zeros" input: "training/RMSprop/gradients/net/while/clip_by_value_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Select_1" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Sum_1" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_4_grad/Reshape" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_4_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" s: "loc:@net/while/mul_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" s: "loc:@net/while/mul_2" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/Enter" input: "net/while/mul_2" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/BiasAdd_2_grad/BiasAddGrad" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Shape" op: "Shape" input: "net/while/clip_by_value_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Shape_1" op: "Shape" input: "net/while/Identity_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/mul_5_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_5_grad/Sum" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" s: "loc:@net/while/mul_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/Enter" input: "net/while/clip_by_value_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_5_grad/Mul_1" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_5_grad/Sum_1" input: "training/RMSprop/gradients/net/while/mul_5_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_5" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_5_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_5/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Shape" op: "Shape" input: "net/while/mul_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_1_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_1_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Reshape" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_1_grad/Sum" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value/Minimum_grad/Reshape" input: "training/RMSprop/gradients/net/while/add_1_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_1_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_1_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_1_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_1" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 13 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_2_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_2/Enter" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_8_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_8" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 60 } } } } node { name: "training/RMSprop/gradients/net/strided_slice_8_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_8_grad/Shape" input: "net/strided_slice_8/stack" input: "net/strided_slice_8/stack_1" input: "net/strided_slice_8/stack_2" input: "training/RMSprop/gradients/net/while/BiasAdd_2/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_8" } } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape" op: "Shape" input: "net/while/clip_by_value_1/Minimum" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape_2" op: "Shape" input: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/zeros/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/zeros" op: "Fill" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape_2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/zeros/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual" op: "GreaterEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Enter" input: "net/while/clip_by_value_1/Minimum" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual/Const_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Select" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual" input: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/zeros" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Select_1" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/GreaterEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/zeros" input: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Select_1" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Sum_1" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_5_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_5" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\024\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_5_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_5_grad/Shape" input: "net/strided_slice_5/stack" input: "net/strided_slice_5/stack_1" input: "net/strided_slice_5/stack_2" input: "training/RMSprop/gradients/net/while/MatMul_5/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_5" } } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 3 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Shape" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Shape_1" op: "Shape" input: "net/while/add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/mul_3_grad/Shape" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/mul_3_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/net/while/add_1_grad/Reshape" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add" s: "loc:@net/while/mul_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/Const" attr { key: "_class" value { list { s: "loc:@net/while/add" s: "loc:@net/while/mul_3" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/Enter" input: "net/while/add" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_3_grad/Sum" input: "training/RMSprop/gradients/net/while/mul_3_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul_1/Const" input: "training/RMSprop/gradients/net/while/add_1_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Mul_1/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_3_grad/Mul_1" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_3_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_3_grad/Sum_1" input: "training/RMSprop/gradients/net/while/mul_3_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_3" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_4_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\r\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_4_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_4_grad/Shape" input: "net/strided_slice_4/stack" input: "net/strided_slice_4/stack_1" input: "net/strided_slice_4/stack_2" input: "training/RMSprop/gradients/net/while/MatMul_2/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_4" } } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 3 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape" op: "Shape" input: "net/while/add_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape_2" op: "Shape" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/zeros/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/zeros" op: "Fill" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape_2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/zeros/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual" op: "LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Const_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_3" s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_3" s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Enter" input: "net/while/add_3" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual/Const_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Select" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/zeros" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Select_1" op: "Select" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/LessEqual" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/zeros" input: "training/RMSprop/gradients/net/while/clip_by_value_1_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Select_1" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Sum_1" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/clip_by_value_1/Minimum" } } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Shape" op: "Shape" input: "net/while/BiasAdd" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Shape_1" op: "Shape" input: "net/while/MatMul_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/add_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_3_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_grad/Sum" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_3_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add" } } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Shape" op: "Shape" input: "net/while/mul_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Shape_1" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_3_grad/Shape_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_3_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Reshape" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_3_grad/Sum" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/clip_by_value_1/Minimum_grad/Reshape" input: "training/RMSprop/gradients/net/while/add_3_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_3_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_3_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_3_grad/Shape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_3" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_grad/BiasAddGrad" op: "BiasAddGrad" input: "training/RMSprop/gradients/net/while/add_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd" } } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" input: "training/RMSprop/gradients/net/while/add_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Shape" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { } } } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Shape_1" op: "Shape" input: "net/while/add_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/mul_4_grad/Shape" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/mul_4_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul" op: "Mul" input: "training/RMSprop/gradients/net/while/add_3_grad/Reshape" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_2" s: "loc:@net/while/mul_4" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_2" s: "loc:@net/while/mul_4" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/Enter" input: "net/while/add_2" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_4_grad/Sum" input: "training/RMSprop/gradients/net/while/mul_4_grad/Shape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul_1" op: "Mul" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul_1/Const" input: "training/RMSprop/gradients/net/while/add_3_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Mul_1/Const" op: "Const" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.20000000298023224 } } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_4_grad/Mul_1" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/mul_4_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/mul_4_grad/Sum_1" input: "training/RMSprop/gradients/net/while/mul_4_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/mul_4" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_grad/Reshape" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul" s: "loc:@net/while/mul" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul" s: "loc:@net/while/mul" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/Enter" input: "net/while/mul" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/BiasAdd_grad/BiasAddGrad" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_3/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Shape" op: "Shape" input: "net/while/BiasAdd_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Shape_1" op: "Shape" input: "net/while/MatMul_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "out_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs" op: "BroadcastGradientArgs" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Const" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Enter" input: "training/RMSprop/gradients/net/while/add_2_grad/Shape" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Const_1" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc_1" op: "StackV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Const_1" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "elem_type" value { type: DT_INT32 } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Enter_1" op: "Enter" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPushV2_1" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/Enter_1" input: "training/RMSprop/gradients/net/while/add_2_grad/Shape_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "elem_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/f_acc_1" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Sum" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_4_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Reshape" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_2_grad/Sum" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Sum_1" op: "Sum" input: "training/RMSprop/gradients/net/while/mul_4_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs:1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tidx" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } attr { key: "keep_dims" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/add_2_grad/Reshape_1" op: "Reshape" input: "training/RMSprop/gradients/net/while/add_2_grad/Sum_1" input: "training/RMSprop/gradients/net/while/add_2_grad/BroadcastGradientArgs/StackPopV2_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "Tshape" value { type: DT_INT32 } } attr { key: "_class" value { list { s: "loc:@net/while/add_2" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 13 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul/Enter" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_6_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_6" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 60 } } } } node { name: "training/RMSprop/gradients/net/strided_slice_6_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_6_grad/Shape" input: "net/strided_slice_6/stack" input: "net/strided_slice_6/stack_1" input: "net/strided_slice_6/stack_2" input: "training/RMSprop/gradients/net/while/BiasAdd/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_6" } } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/strided_slice_1_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\024\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_1_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_1_grad/Shape" input: "net/strided_slice_1/stack" input: "net/strided_slice_1/stack_1" input: "net/strided_slice_1/stack_2" input: "training/RMSprop/gradients/net/while/MatMul_3/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_1" } } } attr { key: "begin_mask" value { i: 3 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1_grad/BiasAddGrad" op: "BiasAddGrad" input: "training/RMSprop/gradients/net/while/add_2_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1" } } } attr { key: "data_format" value { s: "NHWC" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_2_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/mul_6_grad/Mul/StackPopV2" input: "training/RMSprop/gradients/net/while/add_2_grad/Reshape_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/strided_slice_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\r\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_grad/Shape" input: "net/strided_slice/stack" input: "net/strided_slice/stack_1" input: "net/strided_slice/stack_2" input: "training/RMSprop/gradients/net/while/MatMul/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice" } } } attr { key: "begin_mask" value { i: 3 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul" op: "MatMul" input: "training/RMSprop/gradients/net/while/add_2_grad/Reshape" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul/Enter" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "transpose_a" value { b: false } } attr { key: "transpose_b" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul/Enter" op: "Enter" input: "net/strided_slice_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1" op: "MatMul" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPopV2" input: "training/RMSprop/gradients/net/while/add_2_grad/Reshape" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "transpose_a" value { b: true } } attr { key: "transpose_b" value { b: false } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/Const" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" s: "loc:@net/while/mul_1" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { } int_val: -1 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/f_acc" op: "StackV2" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" s: "loc:@net/while/mul_1" } } } attr { key: "elem_type" value { type: DT_FLOAT } } attr { key: "stack_name" value { s: "" } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "frame_name" value { s: "net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPushV2" op: "StackPushV2" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/Enter" input: "net/while/mul_1" input: "^training/RMSprop/gradients/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "swap_memory" value { b: true } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPopV2" op: "StackPopV2" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPopV2/Enter" input: "^training/RMSprop/gradients/Sub" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "elem_type" value { type: DT_FLOAT } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/StackPopV2/Enter" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1/f_acc" attr { key: "T" value { type: DT_RESOURCE } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: true } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/BiasAdd_1_grad/BiasAddGrad" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/BiasAdd_1/Enter" } } } } node { name: "training/RMSprop/gradients/AddN_3" op: "AddN" input: "training/RMSprop/gradients/net/while/mul_6_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/mul_5_grad/Reshape_1" input: "training/RMSprop/gradients/net/while/MatMul_3_grad/MatMul" input: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul" attr { key: "N" value { i: 4 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/mul_6" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_4_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_4/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc" op: "Const" attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 13 } dim { size: 20 } } float_val: 0.0 } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_1" op: "Enter" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } attr { key: "frame_name" value { s: "training/RMSprop/gradients/net/while/while_context" } } attr { key: "is_constant" value { b: false } } attr { key: "parallel_iterations" value { i: 32 } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_2" op: "Merge" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_1" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/NextIteration" attr { key: "N" value { i: 2 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/Switch" op: "Switch" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_2" input: "training/RMSprop/gradients/b_count_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/Add" op: "Add" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/Switch:1" input: "training/RMSprop/gradients/net/while/MatMul_1_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/Add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_3" op: "Exit" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/Switch" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/MatMul_1/Enter" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_7_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_7" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 1 } } int_val: 60 } } } } node { name: "training/RMSprop/gradients/net/strided_slice_7_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_7_grad/Shape" input: "net/strided_slice_7/stack" input: "net/strided_slice_7/stack_1" input: "net/strided_slice_7/stack_2" input: "training/RMSprop/gradients/net/while/BiasAdd_1/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_7" } } } attr { key: "begin_mask" value { i: 0 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 0 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/while/Switch_2_grad_1/NextIteration" op: "NextIteration" input: "training/RMSprop/gradients/AddN_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/while/Merge_2" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_3_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_3" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\024\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_3_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_3_grad/Shape" input: "net/strided_slice_3/stack" input: "net/strided_slice_3/stack_1" input: "net/strided_slice_3/stack_2" input: "training/RMSprop/gradients/net/while/MatMul_4/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_3" } } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/net/strided_slice_2_grad/Shape" op: "Const" attr { key: "_class" value { list { s: "loc:@net/strided_slice_2" } } } attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\r\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/gradients/net/strided_slice_2_grad/StridedSliceGrad" op: "StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_2_grad/Shape" input: "net/strided_slice_2/stack" input: "net/strided_slice_2/stack_1" input: "net/strided_slice_2/stack_2" input: "training/RMSprop/gradients/net/while/MatMul_1/Enter_grad/b_acc_3" attr { key: "Index" value { type: DT_INT32 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_2" } } } attr { key: "begin_mask" value { i: 1 } } attr { key: "ellipsis_mask" value { i: 0 } } attr { key: "end_mask" value { i: 1 } } attr { key: "new_axis_mask" value { i: 0 } } attr { key: "shrink_axis_mask" value { i: 0 } } } node { name: "training/RMSprop/gradients/AddN_4" op: "AddN" input: "training/RMSprop/gradients/net/strided_slice_8_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_6_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_7_grad/StridedSliceGrad" attr { key: "N" value { i: 3 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_8" } } } } node { name: "training/RMSprop/gradients/AddN_5" op: "AddN" input: "training/RMSprop/gradients/net/strided_slice_5_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_1_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_3_grad/StridedSliceGrad" attr { key: "N" value { i: 3 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_5" } } } } node { name: "training/RMSprop/gradients/AddN_6" op: "AddN" input: "training/RMSprop/gradients/net/strided_slice_4_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_grad/StridedSliceGrad" input: "training/RMSprop/gradients/net/strided_slice_2_grad/StridedSliceGrad" attr { key: "N" value { i: 3 } } attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/strided_slice_4" } } } } node { name: "training/RMSprop/zeros" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 13 } dim { size: 60 } } float_val: 0.0 } } } } node { name: "training/RMSprop/Variable" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 13 } dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "training/RMSprop/Variable/Assign" op: "Assign" input: "training/RMSprop/Variable" input: "training/RMSprop/zeros" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/Variable/read" op: "Identity" input: "training/RMSprop/Variable" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable" } } } } node { name: "training/RMSprop/zeros_1/shape_as_tensor" op: "Const" attr { key: "dtype" value { type: DT_INT32 } } attr { key: "value" value { tensor { dtype: DT_INT32 tensor_shape { dim { size: 2 } } tensor_content: "\024\000\000\000<\000\000\000" } } } } node { name: "training/RMSprop/zeros_1/Const" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/zeros_1" op: "Fill" input: "training/RMSprop/zeros_1/shape_as_tensor" input: "training/RMSprop/zeros_1/Const" attr { key: "T" value { type: DT_FLOAT } } attr { key: "index_type" value { type: DT_INT32 } } } node { name: "training/RMSprop/Variable_1" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "training/RMSprop/Variable_1/Assign" op: "Assign" input: "training/RMSprop/Variable_1" input: "training/RMSprop/zeros_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_1" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/Variable_1/read" op: "Identity" input: "training/RMSprop/Variable_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_1" } } } } node { name: "training/RMSprop/zeros_2" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 60 } } float_val: 0.0 } } } } node { name: "training/RMSprop/Variable_2" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 60 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "training/RMSprop/Variable_2/Assign" op: "Assign" input: "training/RMSprop/Variable_2" input: "training/RMSprop/zeros_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_2" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/Variable_2/read" op: "Identity" input: "training/RMSprop/Variable_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_2" } } } } node { name: "training/RMSprop/zeros_3" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 20 } dim { size: 1 } } float_val: 0.0 } } } } node { name: "training/RMSprop/Variable_3" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 1 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "training/RMSprop/Variable_3/Assign" op: "Assign" input: "training/RMSprop/Variable_3" input: "training/RMSprop/zeros_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_3" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/Variable_3/read" op: "Identity" input: "training/RMSprop/Variable_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_3" } } } } node { name: "training/RMSprop/zeros_4" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { dim { size: 1 } } float_val: 0.0 } } } } node { name: "training/RMSprop/Variable_4" op: "VariableV2" attr { key: "container" value { s: "" } } attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 1 } } } } attr { key: "shared_name" value { s: "" } } } node { name: "training/RMSprop/Variable_4/Assign" op: "Assign" input: "training/RMSprop/Variable_4" input: "training/RMSprop/zeros_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_4" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/Variable_4/read" op: "Identity" input: "training/RMSprop/Variable_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_4" } } } } node { name: "training/RMSprop/AssignAdd/value" op: "Const" attr { key: "dtype" value { type: DT_INT64 } } attr { key: "value" value { tensor { dtype: DT_INT64 tensor_shape { } int64_val: 1 } } } } node { name: "training/RMSprop/AssignAdd" op: "AssignAdd" input: "RMSprop/iterations" input: "training/RMSprop/AssignAdd/value" attr { key: "T" value { type: DT_INT64 } } attr { key: "_class" value { list { s: "loc:@RMSprop/iterations" } } } attr { key: "use_locking" value { b: false } } } node { name: "training/RMSprop/mul" op: "Mul" input: "RMSprop/rho/read" input: "training/RMSprop/Variable/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/sub" op: "Sub" input: "training/RMSprop/sub/x" input: "RMSprop/rho/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Square" op: "Square" input: "training/RMSprop/gradients/AddN_6" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/mul_1" op: "Mul" input: "training/RMSprop/sub" input: "training/RMSprop/Square" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add" op: "Add" input: "training/RMSprop/mul" input: "training/RMSprop/mul_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign" op: "Assign" input: "training/RMSprop/Variable" input: "training/RMSprop/add" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_2" op: "Mul" input: "RMSprop/lr/read" input: "training/RMSprop/gradients/AddN_6" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Const" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/Const_1" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: inf } } } } node { name: "training/RMSprop/clip_by_value/Minimum" op: "Minimum" input: "training/RMSprop/add" input: "training/RMSprop/Const_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/clip_by_value" op: "Maximum" input: "training/RMSprop/clip_by_value/Minimum" input: "training/RMSprop/Const" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Sqrt" op: "Sqrt" input: "training/RMSprop/clip_by_value" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_1/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "training/RMSprop/add_1" op: "Add" input: "training/RMSprop/Sqrt" input: "training/RMSprop/add_1/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/truediv" op: "RealDiv" input: "training/RMSprop/mul_2" input: "training/RMSprop/add_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_1" op: "Sub" input: "net/kernel/read" input: "training/RMSprop/truediv" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_1" op: "Assign" input: "net/kernel" input: "training/RMSprop/sub_1" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_3" op: "Mul" input: "RMSprop/rho/read" input: "training/RMSprop/Variable_1/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_2/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/sub_2" op: "Sub" input: "training/RMSprop/sub_2/x" input: "RMSprop/rho/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Square_1" op: "Square" input: "training/RMSprop/gradients/AddN_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/mul_4" op: "Mul" input: "training/RMSprop/sub_2" input: "training/RMSprop/Square_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_2" op: "Add" input: "training/RMSprop/mul_3" input: "training/RMSprop/mul_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_2" op: "Assign" input: "training/RMSprop/Variable_1" input: "training/RMSprop/add_2" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_1" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_5" op: "Mul" input: "RMSprop/lr/read" input: "training/RMSprop/gradients/AddN_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Const_2" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/Const_3" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: inf } } } } node { name: "training/RMSprop/clip_by_value_1/Minimum" op: "Minimum" input: "training/RMSprop/add_2" input: "training/RMSprop/Const_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/clip_by_value_1" op: "Maximum" input: "training/RMSprop/clip_by_value_1/Minimum" input: "training/RMSprop/Const_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Sqrt_1" op: "Sqrt" input: "training/RMSprop/clip_by_value_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_3/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "training/RMSprop/add_3" op: "Add" input: "training/RMSprop/Sqrt_1" input: "training/RMSprop/add_3/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/truediv_1" op: "RealDiv" input: "training/RMSprop/mul_5" input: "training/RMSprop/add_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_3" op: "Sub" input: "net/recurrent_kernel/read" input: "training/RMSprop/truediv_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_3" op: "Assign" input: "net/recurrent_kernel" input: "training/RMSprop/sub_3" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/recurrent_kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_6" op: "Mul" input: "RMSprop/rho/read" input: "training/RMSprop/Variable_2/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_4/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/sub_4" op: "Sub" input: "training/RMSprop/sub_4/x" input: "RMSprop/rho/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Square_2" op: "Square" input: "training/RMSprop/gradients/AddN_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/mul_7" op: "Mul" input: "training/RMSprop/sub_4" input: "training/RMSprop/Square_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_4" op: "Add" input: "training/RMSprop/mul_6" input: "training/RMSprop/mul_7" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_4" op: "Assign" input: "training/RMSprop/Variable_2" input: "training/RMSprop/add_4" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_2" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_8" op: "Mul" input: "RMSprop/lr/read" input: "training/RMSprop/gradients/AddN_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Const_4" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/Const_5" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: inf } } } } node { name: "training/RMSprop/clip_by_value_2/Minimum" op: "Minimum" input: "training/RMSprop/add_4" input: "training/RMSprop/Const_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/clip_by_value_2" op: "Maximum" input: "training/RMSprop/clip_by_value_2/Minimum" input: "training/RMSprop/Const_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Sqrt_2" op: "Sqrt" input: "training/RMSprop/clip_by_value_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_5/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "training/RMSprop/add_5" op: "Add" input: "training/RMSprop/Sqrt_2" input: "training/RMSprop/add_5/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/truediv_2" op: "RealDiv" input: "training/RMSprop/mul_8" input: "training/RMSprop/add_5" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_5" op: "Sub" input: "net/bias/read" input: "training/RMSprop/truediv_2" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_5" op: "Assign" input: "net/bias" input: "training/RMSprop/sub_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@net/bias" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_9" op: "Mul" input: "RMSprop/rho/read" input: "training/RMSprop/Variable_3/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_6/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/sub_6" op: "Sub" input: "training/RMSprop/sub_6/x" input: "RMSprop/rho/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Square_3" op: "Square" input: "training/RMSprop/gradients/dense_1/MatMul_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/mul_10" op: "Mul" input: "training/RMSprop/sub_6" input: "training/RMSprop/Square_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_6" op: "Add" input: "training/RMSprop/mul_9" input: "training/RMSprop/mul_10" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_6" op: "Assign" input: "training/RMSprop/Variable_3" input: "training/RMSprop/add_6" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_3" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_11" op: "Mul" input: "RMSprop/lr/read" input: "training/RMSprop/gradients/dense_1/MatMul_grad/MatMul_1" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Const_6" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/Const_7" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: inf } } } } node { name: "training/RMSprop/clip_by_value_3/Minimum" op: "Minimum" input: "training/RMSprop/add_6" input: "training/RMSprop/Const_7" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/clip_by_value_3" op: "Maximum" input: "training/RMSprop/clip_by_value_3/Minimum" input: "training/RMSprop/Const_6" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Sqrt_3" op: "Sqrt" input: "training/RMSprop/clip_by_value_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_7/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "training/RMSprop/add_7" op: "Add" input: "training/RMSprop/Sqrt_3" input: "training/RMSprop/add_7/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/truediv_3" op: "RealDiv" input: "training/RMSprop/mul_11" input: "training/RMSprop/add_7" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_7" op: "Sub" input: "dense_1/kernel/read" input: "training/RMSprop/truediv_3" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_7" op: "Assign" input: "dense_1/kernel" input: "training/RMSprop/sub_7" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/kernel" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_12" op: "Mul" input: "RMSprop/rho/read" input: "training/RMSprop/Variable_4/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_8/x" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0 } } } } node { name: "training/RMSprop/sub_8" op: "Sub" input: "training/RMSprop/sub_8/x" input: "RMSprop/rho/read" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Square_4" op: "Square" input: "training/RMSprop/gradients/dense_1/BiasAdd_grad/BiasAddGrad" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/mul_13" op: "Mul" input: "training/RMSprop/sub_8" input: "training/RMSprop/Square_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_8" op: "Add" input: "training/RMSprop/mul_12" input: "training/RMSprop/mul_13" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_8" op: "Assign" input: "training/RMSprop/Variable_4" input: "training/RMSprop/add_8" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_4" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/RMSprop/mul_14" op: "Mul" input: "RMSprop/lr/read" input: "training/RMSprop/gradients/dense_1/BiasAdd_grad/BiasAddGrad" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Const_8" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 0.0 } } } } node { name: "training/RMSprop/Const_9" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: inf } } } } node { name: "training/RMSprop/clip_by_value_4/Minimum" op: "Minimum" input: "training/RMSprop/add_8" input: "training/RMSprop/Const_9" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/clip_by_value_4" op: "Maximum" input: "training/RMSprop/clip_by_value_4/Minimum" input: "training/RMSprop/Const_8" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Sqrt_4" op: "Sqrt" input: "training/RMSprop/clip_by_value_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/add_9/y" op: "Const" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "value" value { tensor { dtype: DT_FLOAT tensor_shape { } float_val: 1.0000000116860974e-07 } } } } node { name: "training/RMSprop/add_9" op: "Add" input: "training/RMSprop/Sqrt_4" input: "training/RMSprop/add_9/y" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/truediv_4" op: "RealDiv" input: "training/RMSprop/mul_14" input: "training/RMSprop/add_9" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/sub_9" op: "Sub" input: "dense_1/bias/read" input: "training/RMSprop/truediv_4" attr { key: "T" value { type: DT_FLOAT } } } node { name: "training/RMSprop/Assign_9" op: "Assign" input: "dense_1/bias" input: "training/RMSprop/sub_9" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@dense_1/bias" } } } attr { key: "use_locking" value { b: true } } attr { key: "validate_shape" value { b: true } } } node { name: "training/group_deps" op: "NoOp" input: "^loss/mul" input: "^metrics/acc/Mean_1" input: "^training/RMSprop/Assign" input: "^training/RMSprop/AssignAdd" input: "^training/RMSprop/Assign_1" input: "^training/RMSprop/Assign_2" input: "^training/RMSprop/Assign_3" input: "^training/RMSprop/Assign_4" input: "^training/RMSprop/Assign_5" input: "^training/RMSprop/Assign_6" input: "^training/RMSprop/Assign_7" input: "^training/RMSprop/Assign_8" input: "^training/RMSprop/Assign_9" } node { name: "IsVariableInitialized_5" op: "IsVariableInitialized" input: "RMSprop/lr" attr { key: "_class" value { list { s: "loc:@RMSprop/lr" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_6" op: "IsVariableInitialized" input: "RMSprop/rho" attr { key: "_class" value { list { s: "loc:@RMSprop/rho" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_7" op: "IsVariableInitialized" input: "RMSprop/decay" attr { key: "_class" value { list { s: "loc:@RMSprop/decay" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_8" op: "IsVariableInitialized" input: "RMSprop/iterations" attr { key: "_class" value { list { s: "loc:@RMSprop/iterations" } } } attr { key: "dtype" value { type: DT_INT64 } } } node { name: "IsVariableInitialized_9" op: "IsVariableInitialized" input: "training/RMSprop/Variable" attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_10" op: "IsVariableInitialized" input: "training/RMSprop/Variable_1" attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_1" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_11" op: "IsVariableInitialized" input: "training/RMSprop/Variable_2" attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_2" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_12" op: "IsVariableInitialized" input: "training/RMSprop/Variable_3" attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_3" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "IsVariableInitialized_13" op: "IsVariableInitialized" input: "training/RMSprop/Variable_4" attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_4" } } } attr { key: "dtype" value { type: DT_FLOAT } } } node { name: "init_1" op: "NoOp" input: "^RMSprop/decay/Assign" input: "^RMSprop/iterations/Assign" input: "^RMSprop/lr/Assign" input: "^RMSprop/rho/Assign" input: "^training/RMSprop/Variable/Assign" input: "^training/RMSprop/Variable_1/Assign" input: "^training/RMSprop/Variable_2/Assign" input: "^training/RMSprop/Variable_3/Assign" input: "^training/RMSprop/Variable_4/Assign" } node { name: "Placeholder_5" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 13 } dim { size: 60 } } } } } node { name: "Assign_5" op: "Assign" input: "training/RMSprop/Variable" input: "Placeholder_5" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_6" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 60 } } } } } node { name: "Assign_6" op: "Assign" input: "training/RMSprop/Variable_1" input: "Placeholder_6" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_1" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_7" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 60 } } } } } node { name: "Assign_7" op: "Assign" input: "training/RMSprop/Variable_2" input: "Placeholder_7" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_2" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_8" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 20 } dim { size: 1 } } } } } node { name: "Assign_8" op: "Assign" input: "training/RMSprop/Variable_3" input: "Placeholder_8" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_3" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "Placeholder_9" op: "Placeholder" attr { key: "dtype" value { type: DT_FLOAT } } attr { key: "shape" value { shape { dim { size: 1 } } } } } node { name: "Assign_9" op: "Assign" input: "training/RMSprop/Variable_4" input: "Placeholder_9" attr { key: "T" value { type: DT_FLOAT } } attr { key: "_class" value { list { s: "loc:@training/RMSprop/Variable_4" } } } attr { key: "use_locking" value { b: false } } attr { key: "validate_shape" value { b: true } } } node { name: "net_output" op: "Identity" input: "dense_1/Sigmoid" attr { key: "T" value { type: DT_FLOAT } } } versions { producer: 63 }