1.水无常形——开源围棋 AI 软件 KataGo 安装使用指南
2.机器人能治理国家吗?换言之,码分机器人能取代美国总统吗?
3.腾讯T2I-adapter源码分析(1)-运行源码跑训练
水无常形——开源围棋 AI 软件 KataGo 安装使用指南
KataGo是码分一款由David J. Wu开发的围棋软件,它借鉴了DeepMind的码分AlphaGo Zero与AlphaZero论文中的研究,并在训练速度上进行了大幅改进,码分成为目前世界顶级的码分电脑围棋软件之一。其名字来源于日语“かた”,码分拍照翻译app源码寓意通过强化学习永久训练自己并完成形式的码分人工智能。 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文件夹中使用命令生成配置文件。
自动生成配置文件时,webservice源码Java根据提示设置规则和参数。
对于自定义配置文件的编辑,您可以按照特定的规则和参数进行修改,以适应您的需求。例如,您可以在规则部分选择特定的规则,调整是否允许认输,以及设置线程数以优化性能。 最后,为了提供更直观的分析结果,您可以使用图形用户界面工具,如Sabaki,与KataGo配合使用。通过设置界面参数,您可以查看胜率图、变化树等信息,以便更好地理解AI的分析结果。 总之,KataGo是一款强大的围棋软件,通过适当的选择后端版本、安装配置文件和使用图形用户界面工具,您可以在不同的硬件环境中优化其性能,从而获得更深入的围棋分析体验。机器人能治理国家吗?换言之,机器人能取代美国总统吗?
机器人家上了解到,前不久马云曾说过未来年后世界上最优秀的CEO可能是机器人。在未来数年,数以百万计的人类工作岗位将被机器人取代。工人、司机和飞行员可能最容易受到影响,而艺术家、演员以及经理人等需要与人类打交道的工作则会继续保持安全。有些工作可能必须由人类继续承担,但对于经理人来说,被取代的危险却越来越高。很快,机器人将取代人类担任高级管理职务,包括首席执行官(CEO)。而这一切将比我们想象的28娱乐源码更早到来。
机器人的进化速度比想像更快
网络上有很多文章分析预测,哪些职业不会受到机器人或自动化影响。2年前,公认的安全职业为律师、医生以及金融分析师。然而令人惊讶的是,这些文章的预测已被证明显然是错误的,各种各样的人类工作都在受到自动化的快速侵蚀。
年,在美国国防部高级研究计划局(DARPA)举办的挑战赛上,最好的无人驾驶汽车也仅仅行驶了公里就陷入瘫痪。8年后,谷歌(微博)无人驾驶汽车却独自行驶了近万公里,期间没有发生过任何事故。
年前,全世界都敬畏地看着计算机“深蓝”击败国际象棋世界冠军加里·卡斯帕罗夫(Gary Kasparov)。令人惊奇的是,“深蓝”使用强力计算能力和预定义规则获得了胜利,而非真正的机器智能。与此同时,有人预测电脑可能还需要年时间才能在围棋游戏中击败人类棋手。
可是仅仅几天前,谷歌AlphaGo在五场比赛中击败世界围棋冠军李世石。令人感到震惊的不是计算机成了围棋世界冠军,而是AlphaGo实际上是自学成才的,可以模仿我们所谓的“直觉”。
机器人在无形中崛起
过去很长时间中,人类都以为地球是宇宙的中心。至少我们现在依然存在幻想,认为现代生活中的一切都以人类为中心。但现实是,我们的世界正被机器人优化。
大多数由人类书写的网络内容都需要通过机器的重新设计。你在网络上读到的任何文章都在被优化,谷歌算法通过抓取到足够关键词、相关连接以及短语,以便获得更高的“页面排名”得分。谷歌在网络搜索领域取得的成功证明,在决定何时、devtools源码解析何地信息才会被最有效地展示时,机器人的表现更好。
在物理世界中,电脑也能比人类做出更好的决定,快餐连锁店已经开始实现自动化。尽管尚没有烙牛肉饼的机器人,但已经有软件帮助制定何人何时工作计划。
员工们可能不喜欢它,但是计算机化的人事决策显然更高效。这是因为人类经理人在查看工作空间时存在限制,而机器人却能一次性监控数百人类产生的数据。更为重要的是,机器人拥有更好的优化能力,软件可以通过云技术轻易扩展到更多岗位。一旦新的调度方法展现出工厂生产力得到改善的效果,新的策略在数秒内就会被数以百计的岗位所复制,并立即实施,不再需要昂贵的培训,也不会有人抵制改变。
令人感到讽刺的是,我们已经达到一个临界点,相比起机器人同事来说,有些人更憎恶人类同事。下次你与自动电话系统对话,并说脏话时,你可能被立即转接回人类操作员,因为他们更擅长处理粗鲁客户。
机器人CEO表现更好
在提到CEO时,你可能想到报酬丰厚的老板坐在巨大玻璃办公室中的红木桌后面,盯着外面成千上万的工人。但现实完全不同,年美国人口普查局公布数据显示,.%的美国企业只有不到名员工。小公司进行董事会投票,用机器人取代工人通过的风险更小,小企业CEO将看到自己的职责和决定被大数据和预测性分析“优化”,无论他们是否喜欢。
企业书籍和管理顾问通常列举CEO的6个代表性功能:决定战略方向、分配资源、xss获取源码建立文化、监督和提高公司业绩、代表公司形象以及巧妙应对日常妥协等。对于大多数CEO来说,做出客观的、数字驱动的决策更有利于企业成功。
想像一下,一家小建筑公司的老板想要购买卡车。昨天,这个决策完全是他自己下的。今天,对公司数据的实时分析显示他需要支付多少贷款利息。明天,分析将确定建筑工地的位置以及员工的行程,它甚至监控当地经济趋势。不久后,电脑告诉老板:“我很遗憾,鲍勃,我认为你不该购买卡车。”计算机首先帮助人类变得更高效,然后让人类显得多余。
在分配资源工作方面,计算机也做得更好。计算机不仅可以同时考虑到更多参数,同时其输出是中性且可不断重复的。这令其决策更难受到质疑。对于那些害怕承担法律风险的企业主来说,算法管理是最终解决方案:歧视诉讼最终只需审核软件源代码。软件还可为非技术性企业主带来优化好处。承包商无需掌握熟练的线性规划能力,就可以选择哪个项目更合适。
计算机不仅比人类更聪明,它们也可以考虑到人类忽略的因素,进而做出更好的决策。举例来说,Waze可以向你显示最好的路径,即使在日常通勤中,因为它知道几公里外是否出现交通拥堵。
投资者和股东最终可能推动算法管理成为主流。不仅因为这种管理方式更高效,而且可预防徇私舞弊、挪用贪污等行为。办公室政治很快将变得无关紧要,机器人可以确保其决策总是与董事会的战略相一致。随着数据驱动的决策从资源分配到绩效衡量,最终到日常管理任务,人类高管的决策主要转向“为什么”,而非“如何”。
有些创新公司甚至已经没有中心领导层,就连企业文化都由明确的规则和激励机制代替,而不再基于CEO的个人理念。Valve Software没有经理人或老板,简短的员工手册奠定了企业文化,比如“任何人无需向其他人报告”,“我们有创始人/总裁,但他不是经理人。”
瑞典咨询公司Crisp大约有人组成,但他们都不是真正的“员工”,也没有经理人或CEO。决策通常由集体做出,而非依赖某些经理人去分配任务。当有新任务出现时,Crisp会开发自己的协议详细确定责任链。
留给人类CEO的任务将是传递公司福音。换句话说,CEO将成为最重要的讲故事者。公司将向国家那样,所有决策遵循“国会”的协定,国家总统则成了新闻秘书。
工作区分散将加速转型
大型集中化的办公室和生产设施需要经理人的仔细规划,这种情况在过去年间发生了巨大变化。物理集中变得不再重要,大公司和办公室正被独立承包商的Ad-Hoc(点对点)模式网络所取代。
随着软件公司的重要性日益增加,企业影响与其规模不再息息相关。被Facebook斥资亿美元收购的WhatsApp如今已经是世界上最大通信应用,而被收购时它刚创建5年时间,仅有名员工。AirBnB如今是世界上最大的酒店公司,但其却没有任何酒店房间甚至清洁员工。机器人经理特别适合这类新型企业,因为它们可以立即适应和发展这些企业。
准备好应对机器人老板吗?
如今,每天都有数以亿计的人遵循着软件设定的程序或指令工作。我们可能不会称这些指令为“命令”,但大数据和分析驱动公司上层决策的时代即将来临。一个机器人已经开始锻炼“直接管理控制”能力,包括对万名工人进行绩效评估,它就是打车应用Uber的自动化管理系统。
糟糕的消息是,与现任老板比起来,你的下个老板可能更缺少同情心。好消息是,它将不再有任何针对你个人的无理举动。
腾讯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等技术,我们也分析了它的源码实现,写了一系列文章。
2024-12-24 09:12
2024-12-24 08:35
2024-12-24 08:18
2024-12-24 08:09
2024-12-24 07:44
2024-12-24 07:30