关键词:
手把手教你基于torch玩转
学汪峰写词、自动聊天机器人、图像着色、图像生成、看图说话、生成字幕
作者:骁哲、李伟、小蔡、July。
说明:本教程出自七月在线助教团队、及七月在线深度学习在线班学员之手,有何问题欢迎加Q群交流:472899334。且探究实验背后原理,请参看:深度学习在线班。
时间:二零一六年十月十二日。
前言
我们教梵高作画的教程发布之后,国庆7天,上百位朋友一一陆续动手尝试,大有全民DL、全民实验之感。特别是来自DL班的小蔡同学,国庆7天连做10个开源实验,并把这10个实验的简易教程(含自动聊天机器人)发布在社区上:https://ask.julyedu.com/explore/category-13。盛赞。
为了让每一个人(是的,每一个人,博客、教程、课程无不如此)都能玩一把,本教程特在小蔡简易教程的基础上重新整理,侧重torch环境的搭建(因为根据我们的经验,环境一旦搭好,做实验基本一马平川),此外所有能想到的、能做到的、能写上的(甚至一个sudo –i命令)都已详尽细致的写出来,为的就是让每一个人都能玩一把,无限降低初学朋友的实验门槛。
还是那句话,欢迎更多朋友跟我们一起做实验,一起玩。包括学梵高作画的7个实验:梵高作画、文字生成、自动聊天机器人、图像着色、图像生成、看图说话、字幕生成,今2016年内,只要你做出这7个实验中的任意一个并在微博上AT@研究者July,便送100上课券,把实验心得发社区 ask.julyed.com 后,再送100上课券。
另,我们更会在深度学习在线班上详解实验背后的原理,让君知其然更知其所以然。
一、 准备工作
1、 Torch介绍
Torch是一个有大量机器学习算法支持的科学计算框架,其诞生已经有十年之久,但是真正起势得益于Facebook开源了大量Torch的深度学习模块和扩展。Torch另外一个特殊之处是采用了编程语言Lua(该语言曾被用来开发视频游戏)。
Torch的优势:
- 构建模型简单
- 高度模块化
- 快速高效的GPU支持
- 通过LuaJIT接入C
- 数值优化程序等
- 可嵌入到iOS、Android和FPGA后端的接口
*信息来源--http://www.leiphone.com/news/201608/5kCJ4Vim3wMjpBPU.html?_t_t_t=0.9860681521240622
2、 系统说明
本次搭建是在Ubuntu14.04基础上搭建,Ubuntu14.04系统安装教程已在Tensorflow实验中分享,还不清楚的同学,先回顾上次实验内容:教你从头到尾利用DL学梵高作画:GTX 1070 cuda 8.0 tensorflow gpu版
3、 实验目录
(1) 文字生成
(2) 自动聊天
(3) 图像着色
(4) 图像生成
(5) 看图说话
(6) 字幕生成
二、 搭建Torch
l 参考github网址: https://github.com/torch/torch7
l 搭建torch7网址:http://torch.ch/docs/getting-started.html
步骤:
1、 笔者假设读者已经安装完成NVIDIA的GPU驱动以及CUDA、cudnn,若还未安装的,请参考教你从头到尾利用DL学梵高作画:GTX 1070 cuda 8.0 tensorflow gpu版
2、 ubuntu终端窗口输入:
以下所有命令均在root用户下执行
apt-get update (更新源)
3、 打开搭建torch7网址
git clone https://github.com/torch/distro.git ~/torch --recursive (克隆torch到~/torch文件下)
cd ~/torch; bash install-deps; (执行install-deps)
./install.sh (执行程序)
source ~/.bashrc (Ubuntu14.04一般情况执行这个,更新.bashrc文件)
source ~/.zshrc (读者不放心了把这个也执行了)
*******如果读者用Lua5.2就执行如下,没有就跳过*******
第一个git忽略,开始搭建时候已经下载过了
cd ~/torch (进入torch文件)
./clean.sh (执行clean.sh)
TORCH_LUA_VERSION=LUA52 ./install.sh(执行命令)
*****************结束*************************
luarocks install image (安装image)
luarocks list (列出luarocks安装的包、检查是否安装成功)
th (测试能否用torch7,出现如上图标志,表示能用)
4、 笔者在安装过程中出现torch7的环境变量未能添加到PATH内。解决办法如下:
在终端输入:vi /etc/profile
进入文件后,在最后添加如下命令:
PATH=~/torch/install/bin:$PATH
按Esc 接着输入: q 退出
执行 source /etc/profile (更新一下)
三、7个实验
1. 文字生成
参考教程地址:https://ask.julyedu.com/question/7405
参考课程:https://www.julyedu.com/video/play/18/130
参考github:https://github.com/karpathy/char-rnn
l 下载包
luarocks install nngraph
luarocks install optim
luarocks install nn
l 如果用GPU,安装如下包
luarocks install cutorch
luarocks install cunn
l 下载char-rnn包
git clone --recursive https://github.com/karpathy/char-rnn
cd char-rnn;
l 自行下载你想要生成类型的模板(.txt文件),例如唐诗三百首、汪峰歌词、韩寒小说……
l 利用cp命令和mv命令,把下载好的.txt文件覆盖data/tinyshakespeare下的input.txt
l 训练
chatgpt-聊天机器人
第3章ChatGPT-聊天机器人3.1聊天机器人的定义与发展聊天机器人是一种基于人工智能技术的智能对话系统,旨在模仿人类的对话方式与用户进行交互。聊天机器人可以通过自然语言处理技术和机器学习算法分析用户的输入,理解用... 查看详情
基于小程序制作一个chatgpt聊天机器人(代码片段)
...将ChatGPT与实战开发相结合,制作一个随身携带的聊天机器人,紧贴前沿的同时稳固基础。一、前言1.1、什么是ChatGPT1.2、什么是文本完成二、API2.1、ChatGPT官网申请API所需要的key2.2、搭建API2.3、创建控制器及动作方法三、... 查看详情
基于python以及aiuiwebsocket,wechatpyapi实现的微信聊天机器人(代码片段)
基于python以及AIUIWebSocket,WeChatPYAPI实现的微信聊天机器人做此文的目的首先是学习Markdown的用法哈哈哈哈,其实也是记录自己学习的一个过程。以后我也会将自己在图像处理,计算机视觉的所学以及实践实战的process上... 查看详情
基于chatgpt+python快速打造前后端分离的openai人工智能聊天机器人(代码片段)
🚀ChatGPT是最近很热门的AI智能聊天机器人🚀用途方面相比于普通的聊天AI更加的广泛,甚至可以帮助你改BUG,写代码!!!🚀下面是使用python+ChatGPT+Vue实现的在线聊天机器人,可直接调... 查看详情
综述|检索式聊天机器人技术
...联网上对话语料的不断积累,闲聊导向对话系统(简称聊天机器人)取得了令人瞩目的进展,受到了学术界的广泛关注,并在产业界进行了初步的尝试。当前,聊天机器人分为检索式聊天机器人和生成式聊天机器人,而检索式聊天机器人... 查看详情
opencv进阶基于opencv的图像着色(代码片段)
有时技术会增强艺术,有时它会破坏艺术。为黑白电影着色是一个可以追溯到1902年的非常古老的想法。几十年来,许多电影创作者反对为黑白电影着色的想法,并认为这是对他们艺术的破坏。今天,它被认为是对艺术... 查看详情
(转载)(官方)ue4--图像编程----着色器开发----hlsl交叉编译器
...OpenGL着色语言(GLSL) 兼容源代码。这个库在很大程度上基于Mesa的GLSL编译器。前端已进行大量重新编写,以解析HLSL并根据HLSL 抽象语法树(AST) 生成MesaIR。这个库利用Mesa的I 查看详情
自然语言处理(nlp)聊天机器人模块实现(代码片段)
【自然语言处理(NLP)】聊天机器人模块实现(文章目录)前言(一)、任务描述使用PaddleNLP内置的生成式API的功能和用法,并使用PaddleNLP内置的plato-mini模型和配置的生成式API实现一个简单的闲聊机器人。(二)、环境配置本示例基于... 查看详情
markdown基于检索式聊天机器人设计(代码片段)
ai嘻哈写歌词软件总结(代码片段)
...下完成歌词创作核心模型主题生成首句模型-相似度计算+基于SIF加权的word2vec模型首句生成整段歌词模型-基本的Seq2Seq模型和双向Decoder+beamsearch的改进模型(二)核心模型A.主题生成首句模型--基于向量和基于 查看详情
基于perfect用swift语言编写slack聊天机器人
基于Perfect用Swift语言编写Slack聊天机器人本项目是专门为Slack聊天机器人定制的模板服务器。完整的源代码下载在Githubhttps://github.com/PerfectServers/SlackBot在本项目模板中,一个聊天机器人可以加入授权频道,读取频道内所有用户发... 查看详情
有没有可能在聊天机器人中将输入作为图像文件发送
】有没有可能在聊天机器人中将输入作为图像文件发送【英文标题】:isthereanypossibletosendinputasimagefileinChatbot【发布时间】:2021-09-0521:05:37【问题描述】:我正在使用MSTeams应用程序的最新版本,并且我使用强大的虚拟代理创建了... 查看详情
使用chatterbot库制作一个聊天机器人
...杂烩我们学习一些如何使用ChatterBot库在Python中创建聊天机器人,该库实现了各种机器学习算法来生成响应对话,还是挺不错的1什么是聊天机器人聊天机器人也称为聊天机器人、机器人、人工代理等,基本上是由人工... 查看详情
基于itchat定制聊天机器人
...nse(msg): #这里我们就像在“3.实现最简单的与图灵机器人的交互”中做的一样 #构造了要发送给服务器的数据 apiUrl 查看详情
是否可以为基于谷歌应用引擎的聊天机器人设置头像?
】是否可以为基于谷歌应用引擎的聊天机器人设置头像?【英文标题】:Isitpossibletosetaavatarforchatbotbuiltonthegoogleappengine?【发布时间】:2012-03-2306:24:27【问题描述】:使用python和谷歌应用引擎构建聊天机器人真的很容易。但是没有... 查看详情
我用python轻松玩转chatgpt的聊天机器人和ai画画(代码片段)
...人工智能研究实验室OpenAI在2022年11月30日发布的全新聊天机器人模型,一款人工智能技术驱动的自然语言处理工具。它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来... 查看详情
小白学习pytorch教程十七基于torch实现unet图像分割模型(代码片段)
@Author:Runsen在图像领域,除了分类,CNN今天还用于更高级的问题,如图像分割、对象检测等。图像分割是计算机视觉中的一个过程,其中图像被分割成代表图像中每个不同类别的不同段。上面图片一段代表... 查看详情
加更搭建基于chatgpt的钉钉聊天机器人
应某些小伙伴的加更请求,出一期基于钉钉上的聊天机器人,我顺便加更一期,搭建一个钉钉聊天机器人的小教程。首先进入到钉钉开放平台的后台管理系统:https://open.dingtalk.com/进入到应用开发->企业内部开发... 查看详情