p16_cuberroot立方根
import p15_deriv as deriv def train ( y , x , epoches , learning_rate ) : dy_dx = y . deriv ( x ) x0 = 1.0 for _ in range ( epoches ) : x0 += - dy_dx . eval ( ** { x . name : x0 } ) * learning_rate return x0 if __name__ == '__main__' : x = deriv . Variable ( 'x' ) for a in range ( 2 , 10 + 1 ) : y = ( x ** 3 - a ) ** 2 x_v = train ( y , x , 4000 , 0.005 ) print ( a , a ** 0.3333333 , x_v ) D : \Anaconda\python . exe D : / AI20 / 06_codes / deeplearning_20 / p16_cuberroot . py 2 1.259921020784516 1.2599210498948727 3 1.4422495174916392 1.442249570307408 4 1.587400978614697 1.5874010519681994 5