基于ModelArts进行AI诗词创作丨【华为云AI贺新年】
AI创作诗词
前言
作为一名从小到大一直担任语文课代表,拥有着一点文艺情感在身的攻城狮,一直想着可以像尔谪仙人李白一样,可以随时随地飘逸若仙,洋洋洒洒地写下应景的诗歌。奈何文采不够,这个愿望迟迟实现不了。
直到这次华为云搞AI体验活动,发现了其中有AI创作诗词的项目,让我眼前一亮。
0. ModelArts使用注意事项
首先非常感谢华为云社区在这个项目贴出来的注意事项,体现了社区的细心和体贴:
那么我们闲话少叙,就先进入ModelArts中看看我们如何让AI帮助我实现这个诗仙的梦想吧~
1. 下载代码和数据集
首先在AI创作诗词项目页,点击“Run in ModelArts”按钮进入ModelArts平台:
进入ModelArts平台之后,会先连接+初始化一会,然后给你1小时的限时免费使用时间:
因为前面指导文章里有写到注意事项:“本文使用的硬件规格:GPU: 1* NVIDIA-V100NV32(32GB) | CPU: 8 核 64GB ”,我就去按了“切换规格”按钮,查看运行环境里的GPU和CPU(发现限时免费的符合文章要求的CPU,GPU规格已经售罄了);无奈之下只能继续使用当前环境下的硬件规格(2核CPU,4GB内存):
我们首先先去导入os和moxing(MoXing是华为云深度学习服务提供的网络模型开发API。相对于TensorFlow和MXNet等原生API,MoXing API让模型的代码编写更加简单,允许用户只需要关心数据输入(input_fn)和模型构建(model_fn)的代码,即可实现任意模型在多GPU和分布式下的高性能运行。【1】),鼠标选中代码框,点击页面上方的三角形箭头(“Run the selected cells and advance”)运行代码。
等到框前面的* 变回了数字,就证明该框内的代码运行完毕。
正在运行:
运行完毕,输出结果:
2. 环境导入
选中代码框,点击运行三角形小箭头;导入项目需要的各个环境依赖:
3. 参数设置
在这一步中,我们用python中用于解析命令行参数和选项的标准模块argparse来解析命令行参数。type是要传入的参数的数据类型,help是该参数的提示信息。
4. 训练
这一步花费时间非常非常久(毕竟我们的硬件规格没有达到注意事项里提出来的这么高);点击运行这一步的代码,会去训练下载代码中的./model/中包含的最新的训练模型(如果训练路径报错,那么我们需要删除./model的模型,重新开始训练)。点击运行之后,会显示“开始训练…”的信息:
## restore from the checkpoint model/poems-125
## start training...
在大概等了小10分钟之后,训练结束了:
5. 诗词生成
接下来就是到了激动人心运行主程序的时候了!
点击运行if __name__ == '__main__':
函数,根据输出提示"## (输入 quit 退出)请输入第一个字 please input the first character:",我们输入一个汉字:
好文采!我们再试试另一个字:
“卧槽”,“哎呦不错哦”!这两首诗写得都很有文采!这个AI有、东西哦!
体会及建议
pros:
- 华为云社区在这个项目有贴出来注意事项,体现了社区的细心和体贴;
- 进入ModelArts平台方便快捷,“run in modelarts”按钮醒目,用户可以轻易找到;
- 函数块总体在干嘛有列出来,让有AI背景+开发背景的用户可以搞清楚程序里面都在干嘛
cons:
- 发现限时免费符合文章要求的CPU,GPU规格已经售罄了,只能继续使用当前环境下的硬件规格(2核CPU,4GB内存);因为规格没达到要求,训练时间异常的长,我等了很久也只训练出了一个model/poems-125
- 实例不太稳定,在时间还剩下20多分钟的时候,有弹窗提示实例自动关闭了(没记住错误原因)
- 代码里要是能加上每个函数都在做什么就更好了
参考资料
活动宣传
感恩能与大家在华为云遇见!希望能与大家一起在华为云社区共同成长。
【华为云AI贺新年】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/325842
- 点赞
- 收藏
- 关注作者
评论(0)