DeepMind的AI学会了画画,利用强化学习完全不需人教

邓侃解读:DeepMind如何教AI自主学会画画?

给你一幅油画,问你是不是梵高风格,这个问题很容易回答。但是让你用文字描述,什么是梵高风格,却很难清晰地界定。

如何让电脑自动模仿梵高油画?DeepMind 想了一个办法。

1. 用强化学习算法,像走迷宫那样,在画布上涂抹颜色。刚开始时,不妨把强化学习算法设定为随机行走。一通乱走,直到把画布填满。

2. 强化学习算法需要设定报酬函数,评定算法的好坏,然后反复调整算法参数,使得报酬最大。刚开始时,随机涂鸦的作品,当然离梵高风格差距很大。差距越大,报酬越低。反复调整算法参数,使之获得的报酬越来越高。直到报酬不再增长,训练过程结束。

3. 设计一个报酬函数,如果电脑的作品,与梵高作品越相似,那么报酬越高。如何设计报酬函数呢?一个办法是做一个分类器(classifier),如果这个分类器,能够轻而易举地辨别电脑的作品,不是梵高油画,那么报酬越低。反之,如果分类器傻傻分不清哪一幅是电脑作品,哪一幅电脑作品,那么说明电脑已经模仿得很像,这时报酬很高。

eaec4692cf3869503fb3fb48be662403a585568b

DeepMind 用这个算法,教电脑模仿手写体数字,教电脑画头像。最后成像效果不错,但是笔划顺序不对。

原因是,模仿的参照物是静态的图像,而静态的图像不存在绘图的笔划顺序。

这个现象引发三点思考:

1. 本质上来说,让电脑绘图,无非是确定图像中每个像素的值。从这个意义上来说,不需要笔划顺序。因此,填满像素的最佳算法,应该不是强化学习这种强调顺序路径的算法。

2. 但是人类作画时,是很强调笔划顺序的。倒笔画会有什么伤害?常见的回答是,容易把字写歪。为什么倒笔画容易把字写歪?是人类肌肉适合从上到下,从左到右运动?如果是这样,电脑就无所谓倒笔画了。

3. 梵高的油画,中国的水墨,是很强调笔触顺序的。如何从静态的作品中,识别笔触顺序,然后把正确的顺序,融入强化学习的报酬函数?

以下为DeepMind博客译文:

原文链接

猜你喜欢

转载自blog.csdn.net/weixin_40581617/article/details/81220247