Captain Jack sparrow
Captain Jack sparrow

Reputation: 1029

Using track.log in ray

In ray, track.init has to be done before calling track.log. However, if i do track.log outside the function that defines the actor it gives me error complaining that no track session found. But if i do the following, i am creating a tracking session for every hyperparam value. Does the below sound right (doesnt look good to me since we are creating one tracking session per track.log)

def train(config, reporter=None):
    track.init('track_session')
    track.log(acc=acc)

if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument("--redis-address")
    args = parser.parse_args()
    ray.init(redis_address=args.redis_address)
    config = {
        "l1": ray.tune.grid_search([0.001, 0.01, 0.1]),
    }
    ray.tune.run(train, config=config)

Upvotes: 0

Views: 115

Answers (1)

richliaw
richliaw

Reputation: 2045

Try this:

def train(config):
    acc = 0
    track.log(acc=acc)

if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument("--redis-address")
    args = parser.parse_args()
    ray.init(redis_address=args.redis_address)
    config = {
        "l1": ray.tune.grid_search([0.001, 0.01, 0.1]),
    }
    ray.tune.run(train, config=config)

Upvotes: 0

Related Questions