人工智能的优势:使用 GPT 和扩散模型生成图像

news2025/1/15 23:33:19
推荐:使用 NSDT场景编辑器快速搭建3D应用场景

世界被人工智能 (AI) 所吸引,尤其是自然语言处理 (NLP) 和生成 AI 的最新进展,这是有充分理由的。这些突破性技术有可能提高各种任务的日常生产力。例如,GitHub Copilot帮助开发人员快速编写整个算法,OtterPilot自动生成高管会议记录,Mixo允许企业家快速启动网站。

本文将简要概述生成式 AI,包括相关的 AI 技术示例,然后通过生成式 AI 教程将理论付诸实践,我们将使用 GPT 和扩散模型创建艺术渲染。

作者的六张 AI 生成的图像,使用本教程中的技术创建。

生成式 AI 的简要概述

注意:熟悉生成式 AI 背后的技术概念的人可以跳过本节并继续学习本教程。

2022 年,许多基础模型实现进入市场,加速了许多领域的人工智能进步。在了解了几个关键概念之后,我们可以更好地定义基础模型:

  • 人工智能是一个通用术语,描述任何可以智能地完成特定任务的软件。
  • 机器学习是人工智能的一个子集,它使用从数据中学习的算法。
  • 神经网络是机器学习的一个子集,它使用以人脑为模型的分层节点。
  • 深度神经网络是具有许多层和学习参数的神经网络

基础模型是在大量原始数据上训练的深度神经网络。在更实际的术语中,基础模型是一种非常成功的人工智能类型,可以轻松适应和完成各种任务。基础模型是生成式 AI 的核心:文本生成语言模型(如 GPT)和图像生成扩散模型都是基础模型。

文本:自然语言处理模型

在生成式 AI 中,自然语言处理 (NLP) 模型经过训练,可以生成读起来好像由人类撰写的文本。特别是,大型语言模型(LLM)与当今的AI系统特别相关。LLM根据其对大量数据的使用进行分类,可以识别和生成文本和其他内容。

在实践中,这些模型可以用作写作甚至编码助手。自然语言处理应用程序包括简单地重述复杂概念,翻译文本,起草法律文件,甚至创建锻炼计划(尽管此类用途有一定的局限性)。

Lex 是具有许多功能的 NLP 写作工具的一个例子:提出标题、完成句子以及就给定主题撰写整个段落。目前最容易识别的LLM是GPT。GPT 由 OpenAI 开发,可以在几秒钟内以高精度响应几乎任何问题或命令。OpenAI的各种模型都可以通过单个API获得。与 Lex 不同,GPT 可以处理代码、根据功能需求对解决方案进行编程以及识别代码内问题,从而使开发人员的生活更加轻松。

图像:AI 扩散模型

扩散模型是一种深度神经网络,它包含潜在变量,能够通过消除模糊(即噪声)来学习给定图像的结构。在训练模型的网络以“知道”图像背后的概念抽象后,它可以创建该图像的新变体。例如,通过消除猫图像中的噪声,扩散模型“看到”猫的干净图像,了解猫的外观,并应用这些知识来创建新的猫图像变体。

扩散模型可用于去噪或锐化图像(增强和完善它们),操纵面部表情或生成面部老化图像,以暗示一个人随着时间的推移可能会如何看待。您可以浏览 Lexica 搜索引擎,见证这些 AI 模型在生成新图像方面的强大功能。

教程:扩散模型和 GPT 实现

为了演示如何实现和使用这些技术,让我们练习使用 HuggingFace 扩散模型和 GPT 生成动漫风格的图像,这两者都不需要任何复杂的基础设施或软件。我们将从一个现成的模型(即已经创建和预先训练的模型)开始,我们只需要对其进行微调。

注意:本文介绍了如何使用生成式 AI 图像和语言模型以有趣的风格创建自己的高质量图像。本文中的信息不应(误)用于违反 Google Colab 使用条款创建深度伪造。

设置和照片要求

要准备本教程,请在以下位置注册:

谷歌

使用云端硬盘和 Colab。

开放人工智能

进行 GPT API 调用。

您还需要将 20 张自己的照片(甚至更多照片)保存在您计划用于本教程的设备上,以提高性能。为获得最佳效果,照片应:

  • 不小于 512 x 512 像素。
  • 属于你,也只属于你。
  • 具有相同的扩展格式。
  • 从各种角度拍摄。
  • 至少包括三到五次全身镜头和两到三次中身镜头;其余的应该是面部照片。

也就是说,照片不需要完美——看看偏离这些要求如何影响输出甚至会很有启发性。

使用拥抱人脸扩散模型生成 AI 图像

要开始使用,请打开本教程的配套 Google Colab 笔记本,其中包含所需的代码。

  1. 运行单元格 1 将 Colab 与您的 Google 云端硬盘连接,以存储模型并在以后保存其生成的图像。
  2. 运行单元 2 以安装所需的依赖项。
  3. 运行单元格 3 以下载拥抱面模型。
  4. 在单元格 4 中,在字段中键入“我的外观”,然后运行该单元格。会话名称通常标识模型将学习的概念。Session_Name
  5. 运行单元格 5 并上传您的照片。
  6. 转到单元格 6 以训练模型。通过在运行单元之前选中该选项,可以多次重新训练它。(此步骤可能需要大约一个小时才能完成。Resume_Training
  7. 最后,运行单元格 7 以测试模型并查看其运行情况。系统将输出一个URL,您可以在其中找到生成图像的界面。输入提示后,按“生成”按钮以渲染图像。
    用于生成图像的用户界面

有了工作模型,我们现在可以尝试各种提示,产生不同的视觉风格(例如,“我作为一个动画角色”或“我作为一个印象派绘画”)。但是,将 GPT 用于字符提示是最佳的,因为与用户生成的提示相比,它可以产生更多细节,并最大限度地发挥模型的潜力。

使用 GPT 进行有效扩散模型提示

我们将通过 OpenAI 将 GPT 添加到我们的管道中,尽管 Cohere 和其他选项为我们的目的提供了类似的功能。首先,在 OpenAI 平台上注册并创建您的 API 密钥。现在,在 Colab 笔记本的“生成良好的提示”部分,安装 OpenAI 库:

pip install openai

接下来,加载库并设置 API 密钥:

import openai
openai.api_key = "YOUR_API_KEY"

我们将从 GPT 生成优化的提示,以动漫角色的风格生成我们的图像,替换为笔记本单元格 4 中设置的会话名称“我的样子”:YOUR_SESSION_NAME

ASKING_TO_GPT = 'Write a prompt to feed a diffusion model to generate beautiful images '\
                'of YOUR_SESSION_NAME styled as an anime character.' 
response = openai.Completion.create(model="text-davinci-003", prompt=ASKING_TO_GPT,
                                    temperature=0, max_tokens=1000)
print(response["choices"][0].text)

该参数的范围介于 0 和 2 之间,它确定模型是应严格遵守其训练的数据(值接近 0),还是对其输出更具创造性(值接近 2)。该参数设置要返回的文本量,四个标记相当于大约一个英语单词。temperaturemax_tokens

就我而言,GPT 模型输出如下:

"Juan is styled as an anime character, with large, expressive eyes and a small, delicate mouth.
His hair is spiked up and back, and he wears a simple, yet stylish, outfit. He is the perfect
example of a hero, and he always manages to look his best, no matter the situation."

最后,通过将此文本作为输入输入到扩散模型中,我们实现了最终输出:

六张 AI 生成的作者图像,使用 GPT 生成的提示进行优化。
六张 AI 生成的作者图像,使用 GPT 生成的提示进行优化。

让 GPT 编写扩散模型提示意味着您不必详细考虑动漫角色外观的细微差别——GPT 将为您生成适当的描述。您可以随时根据口味进一步调整提示。完成本教程后,您可以创建自己的复杂创意图像或您想要的任何概念。

人工智能的优势触手可及

GPT 和扩散模型是两个基本的现代 AI 实现。我们已经看到了如何单独应用它们,并通过配对它们来乘以它们的功率,使用 GPT 输出作为扩散模型输入。在此过程中,我们创建了一个由两个大型语言模型组成的管道,这些模型能够最大限度地提高它们自己的可用性。

原文链接:人工智能的优势:使用 GPT 和扩散模型生成图像 (mvrlink.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/980802.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

借助各大模型的优点生成原创视频(真人人声)Plus

【技术背景】 众所周知,组成视频的3大元素,即文本语音图片。接着小编逐一介绍生成原创视频的过程。 【文本生成】 天工AI搜索(thttp://iangong.cn) 直接手机短信验证就可以使用,该大模型已经接入互联网&#xff0c…

实现CenterNet图像分割算法模型的转换和量化(SDK0301-转ONNX编译)

一、实现CenterNet图像分割算法模型的转换和量化(SDK0301-转ONNX编译) 1、模型转换 (1)下载CenterNet算法移植代码: $ git clone https://github.com/sophon-ai-algo/examples.git # CenterNet示例项目代码位置 /ex…

成集云 | 飞书审批同步金蝶云星空销售订单 | 解决方案

源系统成集云目标系统 方案介绍 飞书是字节跳动于2016年自研的新一代一站式协作平台,将即时沟通、日历、云文档、云盘和工作台深度整合,通过开放兼容的平台,让成员在一处即可实现高效的沟通和流畅的协作,全方位提升企业效率。 …

【vue2第十五章】VueRouter 路由配置(VueRouter)与使用 和 router-link与router-view标签使用

单页面应用 与 多页面应用 单页面应用(Single-Page Application,SPA)和多页面应用(Multi-Page Application,MPA)是 Web 应用程序的两种不同架构方式。它们在页面加载和交互方式上有所区别。 单页面应用&a…

【工作记录】基于spiderflow+ocr实现图片验证码识别@20230906

声明: 本文引用的网站仅用于演示,如侵删。 背景 这两天收到运营同事一个关于需要登录的网站的数据爬取需求,登录同时需要填入图片验证码。 经过多次尝试,结合百度OCR可以完成图片验证码的获取和识别,特此记录。 希望能帮助到需要…

解决readme.md文件中粘贴的图片放到GitHub上无法显示问题

问题原因 GitHub的README.md文件通常无法直接引用本地文件或图片,因为GitHub的README.md是在远程服务器上渲染和显示的,无法访问本地文件系统。 解决方案 要在GitHub的README.md中显示图片,你需要将图片上传到GitHub上,然后使用图…

多维时序 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络的多变量时间序列预测

多维时序 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络的多变量时间序列预测 目录 多维时序 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络的多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现CNN-BiGRU-A…

完成Centos上使用SSH公钥进行免密上传文件到gitee的步骤后,测试免密推送到gitee的时候还是需要输入邮箱和密码

如果你已经按照正确的步骤设置了SSH公钥并进行了免密测试,但仍然需要输入邮箱地址和密码才能推送到gitee,那么可能有以下几种原因: 您可能没有使用SSH URL来推送代码。请确保您使用的是SSH URL而不是HTTPS URL来推送代码。您可以使用命令 gi…

SimVODIS++: Neural Semantic Visual Odometry in Dynamic Environments 论文阅读

论文信息 题目:SimVODIS: Neural Semantic Visual Odometry in Dynamic Environments 作者:Ue-Hwan Kim , Se-Ho Kim , and Jong-Hwan Kim , Fellow, IEEE 时间:2022 来源: IEEE ROBOTICS AND AUTOMATION LETTERS(RAL…

⛳ MVCC 原理详解

🎍目录 ⛳ MVCC 原理详解🐾 一、事务回顾📐 1.1、什么是数据库事务,为什么要有事务🎉 1.2、事务包括哪几个特性?🎍 1.3、事务并发存在的问题1.3.1、脏读1.3.2、不可重复读1.3.3、幻读 &#x1f…

【Spring Boot】SpringBoot 2.6.6 集成 SpringDoc 1.6.9 生成swagger接口文档

文章目录 前言一、SpringDoc是什么?二、使用步骤1.引入库2.配置类3.访问测试 总结其他配置立个Flag 前言 之前常用的SpringFox在2020年停止更新了,新项目集成SpringFox出来一堆问题,所以打算使用更活跃的SpringDoc,这里简单介绍一…

【双向传输ConvLSTM网络:Pan-Sharpening】

D2TNet: A ConvLSTM Network With Dual-Direction Transfer for Pan-Sharpening (D2TNet:用于泛锐化的双向传输ConvLSTM网络) 在本文中,我们提出了一种有效的卷积长短期记忆(ConvLSTM)网络,具有双向传输的泛锐化,称为D2TNet。我们设计了一个…

【ARM CoreLink 系列 3 -- CCI-550 控制器介绍 】

文章目录 CCI FamilyCCI-550 简介CCI-550 功能CCI-550 Interfaces Snoop filter 使用背景CCI-550 Snoop filter 上篇文章:ARM CoreLink 系列 2 – CCI-400 控制器简介 CCI Family CCI-550 简介 Arm CoreLink CCI-550 Cache Coherent Interconnect 扩展了 CoreLink…

sentinel加密狗使用及规则配置

Sentinel加密狗是一种硬件加密设备,用于保护软件应用程序免受未经授权的访问和复制。它可以提供软件许可管理、访问控制和数据保护等功能。下面是Sentinel加密狗的使用及规则配置的相关介绍。 Sentinel加密狗的使用 插入加密狗:将Sentinel加密狗插入计算…

用滑动条做调色板---cv2.getTrackbarPos(),cv2.creatTrackbar()

滑动轨迹栏作调色板 cv.createTrackbar(‘R’, ‘image’, 0, 255, nothing) 参数:哪个滑动轨迹栏,哪个窗口,最小值,最大值,回调函数 cv.getTrackbarPos(‘R’, ‘image’) 参数:轨迹栏名,窗口…

IMAU鸿蒙北向开发-2023年9月5日学习日志

1. 5种调试方式 1.1 Previewer 在侧边 Previewer 选项卡内可以预览Entry。 如果要单独预览组件,可以在给组件加Preview 装饰器 1.2 Local Emulator(本地模拟) 1.3 Remote Emulator(远程模拟) 使用时需要登录华为开发…

FSK解调技术的FPGA实现

本原创文章由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处 一、FSK信号的解调原理 FSK信号的解调也有非相干和相干两种,FSK信号可以看作是用两个频率源交替传输得到的,所以FSK的接收机由…

[构建 Vue 组件库] 小尾巴 UI 组件库 —— 横向商品卡片(仿淘宝)

文章归档于:https://www.yuque.com/u27599042/row3c6 组件库地址 npm:https://www.npmjs.com/package/xwb-ui?activeTabreadmegitee:https://gitee.com/tongchaowei/xwb-ui 下载 npm i xwb-ui配置 按需导入 import {组件名 } from xwb-…

css中flex和flex-grow的区别

设置了1个class为parent且宽度为700px的div父级元素&#xff1b; 它有3个子元素&#xff0c;分别宽高为100px&#xff1b; 其中item2的元素flex值为1&#xff0c;item3的元素flex值为2 <!DOCTYPE html> <html lang"en"> <head><style>.pare…

车船边缘网关是如何给车辆船只定位的?

随着智能交通系统的不断发展&#xff0c;车路协同成为了重要的研究方向之一。而AI边缘计算网关在这个领域中发挥着至关重要的作用。本文将重点介绍AI边缘计算网关在车路协同中的应用&#xff0c;并强调其中的重点词汇或短语。 首先&#xff0c;什么是AI边缘计算网关&#xff1…