1.柯洁被打败,码下中美人工智能的码下战争才刚刚开始吗?
2.水无常形——开源围棋 AI 软件 KataGo 安装使用指南
3.腾讯T2I-adapter源码分析(1)-运行源码跑训练
4.Pythonå¹è®è¯¾ç¨åªå®¶å¥½ï¼
柯洁被打败,中美人工智能的码下战争才刚刚开始吗?
柯洁对战AlphaGo落败!5月日,码下中国著名围棋选手柯洁与AlphaGo的码下首场较量结束,经过手的码下茶叶商店系统源码激战,柯洁以微弱劣势输给了这款围棋人工智能。码下尽管AlphaGo在围棋领域取得了胜利,码下但中美两国在人工智能领域的码下竞争才刚刚开始。《纽约时报》曾报道,码下中美两国正进入人工智能的码下新一轮竞争,中国在技术发展上正迅速追赶美国。码下此外,码下《麻省理工评论》将百度、码下阿里巴巴的码下人工智能技术评为十大突破性技术之一,《财富》杂志也将百度与微软、谷歌、Facebook并列为人工智能领域的四大巨头。中国的AI发展得到了国际同行的认可,中美的人工智能之战才刚刚开始。
在智能终端领域,中美各大企业都在积极布局。亚马逊在智能家居领域处于领先地位,其智能音箱产品出货量超过万台,占据美国市场%的份额。谷歌则收购了Nest公司,推出了自己的智能音箱产品谷歌Home,并向第三方开发者开放,以此进攻智能家居市场。maskrcnn源码解析在中国,小米通过生态链模式孵化了家相关企业,其物联网平台拥有超过万的连接设备,APP日活用户超过万。百度也在陆奇的领导下大举进入智能硬件领域,收购了国内最大的智能硬件服务商“涂鸦科技”,并将度秘升级为事业部,度秘拥有与谷歌Home相同的语音对话能力,并已展开第三方合作。
在人工智能操作系统领域,各大企业都在努力整合自身技术,将语音识别、图像识别、自然语言理解等技术整合到操作系统中,以实现最强整合输出。微软、苹果和谷歌等国际巨头在操作系统领域有着先发优势,而百度、阿里巴巴和腾讯等中国企业在人工智能OS级别的布局能力也不容小觑。百度推出了DuerOS,并与多家企业达成合作,将各种智能服务覆盖至百度各个产品线中。阿里巴巴将操作系统押注在阿里云上,推出了YunOS系统,不断融合旗下投资的手机企业魅族、锤子以及第三方智能硬件。腾讯虽然曾推出手机OS,但未能成功,彩票新闻源码如今正通过微信小程序和独立搜索部门尝试打造微信OS系统。
在开源开放领域,各大企业都在努力吸引更多的传统企业和智能硬件开发者接入自身的OS系统,以巩固自身地位,占领更多智能场景。特斯拉、微软和谷歌等国际巨头已对大量项目进行代码开源和平台能力开放,而百度和阿里巴巴在这方面做得相对较好。百度推出了“阿波罗计划”,开放无人车源码和能力,并在前沿技术领域进行开放。阿里巴巴则主要在服务器底层进行开放,主要集中于大数据挖掘和处理。
在商业变现领域,各大企业都在通过人工智能提升商业效率,并创造新的商业场景。DeepMind的AlphaGo虽然击败了人类围棋选手,但目前也在尝试进军医疗领域,寻找盈利的商业场景。谷歌和百度都采取了攻守兼备的策略,谷歌通过Alphabet架构分离盈利性业务和探索性业务,以便更好地探索新兴市场和商业场景。百度也在去年进行了组织架构调整,以更好地支持人工智能的发展。谷歌和百度在人工智能领域的对抗,成为了目前中美人工智能竞争的关键标志。
水无常形——开源围棋 AI 软件 KataGo 安装使用指南
KataGo是一款由David J. Wu开发的围棋软件,它借鉴了DeepMind的表白信源码AlphaGo Zero与AlphaZero论文中的研究,并在训练速度上进行了大幅改进,成为目前世界顶级的电脑围棋软件之一。其名字来源于日语“かた”,寓意通过强化学习永久训练自己并完成形式的人工智能。 KataGo相比AlphaGo的优势在于使用方法。用户通过命令行输入指令,KataGo以文本形式输出分析结果。对于非专业用户来说,掌握这些指令较为困难。因此,需要一个图形用户界面作为中介,将用户的棋谱转化为命令,将KataGo的输出转化为可视化的棋盘。常见的图形用户界面包括KaTrain等工具。 此外,KataGo提供了四个后端版本供用户选择,分别是OpenCL、CUDA、TensorRT和Eigen。根据不同的硬件配置和需求,用户可以选择最适合的后端版本以优化性能。 在安装KataGo之前,需要确保显卡驱动程序已经安装。对于TensorRT后端,还需要额外安装CUDA和TensorRT。以下是KataGo的安装步骤:前往KataGo的源代码库编译或下载主程序。
下载权重文件,并将其复制到KataGo文件夹中。天马影视源码
使用命令行自动生成配置文件,根据提示设置规则和参数。
对于那些希望简化安装过程的用户,可以尝试使用KaTrain这样的All in One工具。KaTrain提供了一个集成的界面,使得使用KataGo变得更加容易。 如果您希望深入了解KataGo的高级使用方法,可以按照以下步骤进行:在KataGo文件夹中使用命令生成配置文件。
自动生成配置文件时,根据提示设置规则和参数。
对于自定义配置文件的编辑,您可以按照特定的规则和参数进行修改,以适应您的需求。例如,您可以在规则部分选择特定的规则,调整是否允许认输,以及设置线程数以优化性能。 最后,为了提供更直观的分析结果,您可以使用图形用户界面工具,如Sabaki,与KataGo配合使用。通过设置界面参数,您可以查看胜率图、变化树等信息,以便更好地理解AI的分析结果。 总之,KataGo是一款强大的围棋软件,通过适当的选择后端版本、安装配置文件和使用图形用户界面工具,您可以在不同的硬件环境中优化其性能,从而获得更深入的围棋分析体验。腾讯T2I-adapter源码分析(1)-运行源码跑训练
稳定扩散、midjourney等AI绘图技术,为人们带来了令人惊叹的效果,不禁让人感叹技术发展的日新月异。然而,AI绘图的可控性一直不是很好,通过prompt描述词来操控图像很难做到随心所欲。为了使AI绘制的图像更具可控性,Controlnet、T2I-adapter等技术应运而生。本系列文章将从T2I-adapter的源码出发,分析其实现方法。
本篇是第一篇,主要介绍源码的运行方法,后续两篇将以深度图为例,分别分析推理部分和训练部分的代码。分析T2I-Adapter,也是为了继续研究我一直在研究的课题:“AI生成同一人物不同动作”,例如:罗培羽:stable-diffusion生成同一人物不同动作的尝试(多姿势图),Controlnet、T2I-adapter给了我一些灵感,后续将进行尝试。
T2I-Adapter论文地址如下,它与controlnet类似,都是在原模型增加一个旁路,然后对推理结果求和。
T2I-Adapter和controlnet有两个主要的不同点,从图中可见,其一是在unet的编码阶段增加参数,而controlnet主要是解码阶段;其二是controlnet复制unit的上半部结构,而T2I-Adapter使用不同的模型结构。由于采用较小的模型,因此T2I-Adapter的模型较小,默认下占用M左右,而controlnet模型一般要5G空间。
首先确保机器上装有3.6版本以上python,然后把代码clone下来。随后安装依赖项,打开requirements.txt,可以看到依赖项的内容。然后下载示例,下载的会放到examples目录下。接着下载sd模型到model目录下,再下载T2I-Adapter的模型到目录下,模型可以按需到huggingface.co/TencentA...下载。这里我下载了depth和openpose。sd模型除了上述的v1-5,也还下载了sd-v1-4.ckpt。
根据文档,尝试运行一个由深度图生成的例子,下图的左侧是深度图,提示语是"desk, best quality, extremely detailed",右侧是生成出来的。运行过程比较艰辛,一开始在一台8G显存的服务器上跑,显存不够;重新搭环境在一台G显存的服务器上跑,还是不够;最后用一台G显存的服务器,终于运行起来了。
接下来尝试跑openpose的例子,下图左侧是骨架图,提示词为"Iron man, high-quality, high-res",右侧是生成的图像。
既然能跑推理,那么尝试跑训练。为了后续修改代码运行,目标是准备一点点数据把训练代码跑起来,至于训练的效果不是当前关注的。程序中也有训练的脚步,我们以训练深度图条件为例,来运行train_depth.py。
显然,习惯了,会有一些问题没法直接运行,需要先做两步工作。准备训练数据,分析代码,定位到ldm/data/dataset_depth.py,反推它的数据集结构,然后准备对应数据。先创建文件datasets/laion_depth_meta_v1.txt,用于存放数据文件的地址,由于只是测试,我就只添加两行。然后准备,图中的.png和.png是结果图,.depth.png和.depth.png是深度图,.txt和.txt是对应的文本描述。
文本描述如下,都只是为了把代码跑起来而做的简单设置。设置环境变量,由于T2I-Adapter使用多卡训练,显然我也没这个环境,因此要让它在单机上跑。而代码中也会获取一些环境变量,因此做简单的设置。
做好准备工作,可以运行程序了,出于硬件条件限制,只能把batch size设置为1。在A显卡跑了约8小时,完成,按默认的配置,模型保存experiments/train_depth/models/model_ad_.pth。那么,使用训练出来的模型试试效果,能生成如下(此处只是为了跑起来代码,用训练集来测试),验证了可以跑起来。
运行起来,但这还不够,我们还得看看代码是怎么写法,下一篇见。
PS:《直观理解AI博弈原理》是笔者写的一篇长文,从五子棋、象棋、围棋的AI演进讲起,从深度遍历、MAX-MIN剪枝再到蒙特卡罗树搜索,一步步介绍AI博弈的原理,而后引出强化学习方法,通俗易懂地介绍AlphaGo围棋、星际争霸强化学习AI、王者荣耀AI的一些强化学习要点,值得推荐。
AUTOMATIC的webui是近期很流行的stable-diffusion应用,它集合stable-diffusion各项常用功能,还通过扩展的形式支持controlnet、lora等技术,我们也分析了它的源码实现,写了一系列文章。
Pythonå¹è®è¯¾ç¨åªå®¶å¥½ï¼
ä¸åæºæ课ç¨å®æä¸åï¼æ¯ä¸ªäººéæ±ä¸ä¸æ ·ï¼éæ©ä¸ä¹æ¯åå¨å·®å¼ï¼å»ºè®®æ ¹æ®èªèº«éæ±ï¼å®å°ä½éªä¸ä¸ã
课ç¨å®æï¼
é¶æ®µä¸ï¼Pythonå¼ååºç¡
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹Pythonå¼ååºç¡ç¥è¯å¦ä¹ å 容å æ¬ï¼Pythonåºç¡è¯æ³ãæ°æ®ç±»åãå符ç¼ç ãæ件æä½ãå½æ°ãè£ é¥°å¨ãè¿ä»£å¨ãå ç½®æ¹æ³ã常ç¨æ¨¡åçã
é¶æ®µäºï¼Pythoné«çº§ç¼ç¨åæ°æ®åºå¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹Pythoné«çº§ç¼ç¨åæ°æ®åºå¼åç¥è¯å¦ä¹ å 容å æ¬ï¼é¢å对象å¼åãSocketç½ç»ç¼ç¨ã线ç¨ãè¿ç¨ãéåãIOå¤è·¯æ¨¡åãMysqlæ°æ®åºå¼åçã
é¶æ®µä¸ï¼å端å¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹å端å¼åç¥è¯å¦ä¹ å 容å æ¬ï¼HtmlãCSSãJavaScriptå¼åãJquery&bootstrapå¼åãå端æ¡æ¶VUEå¼åçã
é¶æ®µåï¼WEBæ¡æ¶å¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹WEBæ¡æ¶å¼åå¦ä¹ å 容å æ¬ï¼Djangoæ¡æ¶åºç¡ãDjangoæ¡æ¶è¿é¶ãBBS+Blogå®æ项ç®å¼åãç¼ååéåä¸é´ä»¶ãFlaskæ¡æ¶å¦ä¹ ãTornadoæ¡æ¶å¦ä¹ ãRestful APIçã
é¶æ®µäºï¼ç¬è«å¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹ç¬è«å¼åå¦ä¹ å 容å æ¬ï¼ç¬è«å¼åå®æã
é¶æ®µå ï¼å ¨æ 项ç®å®æ
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹å ¨æ 项ç®å®æå¦ä¹ å 容å æ¬ï¼ä¼ä¸åºç¨å·¥å ·å¦ä¹ ãCRM客æ·å ³ç³»ç®¡çç³»ç»å¼åãè·¯é£å¦åå¨çº¿æè²å¹³å°å¼åçã
é¶æ®µä¸ï¼æ°æ®åæ
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹æ°æ®åæå¦ä¹ å 容å æ¬ï¼éèéååæã
é¶æ®µå «ï¼äººå·¥æºè½
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹äººå·¥æºè½å¦ä¹ å 容å æ¬ï¼æºå¨å¦ä¹ ãå¾å½¢è¯å«ãæ 人æºå¼åãæ 人驾驶çã
é¶æ®µä¹ï¼èªå¨åè¿ç»´&å¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹èªå¨åè¿ç»´&å¼åå¦ä¹ å 容å æ¬ï¼CMDBèµäº§ç®¡çç³»ç»å¼åãIT审计+主æºç®¡çç³»ç»å¼åãåå¸å¼ä¸»æºçæ§ç³»ç»å¼åçã
é¶æ®µåï¼é«å¹¶åè¯è¨GOå¼å
Pythonå ¨æ å¼åä¸äººå·¥æºè½ä¹é«å¹¶åè¯è¨GOå¼åå¦ä¹ å 容å æ¬ï¼GOè¯è¨åºç¡ãæ°æ®ç±»åä¸æ件IOæä½ãå½æ°åé¢å对象ã并åç¼ç¨çã