AI绘画提示词:从零开始掌握Prompt Engineering的艺术

大模型应用技术之Prompt Engineering(提示词工程) 摘要 本文深入探讨Prompt Engineering(提示词工程)的系统化AI交互技术,重点讲解如何通过精心设计的提示词提升AI输出的准确性和可靠性。文章首先分析了多种AI提问方式(直接提问、引导式提问、对比式提问等)及其适用场景,并介绍5W1H原则和STAR方法等提问技巧。在提示词设计部分,提出清晰性、结构化和引导性三大原则,详细解析Chain of Thought(思维链)、Few-Shot Learning(少样本学习)、Role-Playing(角色扮演)和Constraint-Based(约束导 阅读详情

在当今AI绘画工具蓬勃发展的时代,一个好的提示词(Prompt)往往是作品成功与否的关键。无论你是刚接触AI绘画的新手,还是希望提升作品质量的老手,掌握提示词的撰写技巧都能让你的创作更上一层楼。今天,我就来和大家分享一下AI绘画提示词的构建方法和实用技巧!

什么是AI绘画提示词?

提示词(Prompt)简单来说就是你对AI绘画工具下达的"指令",通过文字描述告诉AI你想要什么样的图像。比如:

一个穿着红色斗篷的少女站在森林里,背景是满月,风格写实,光影明暗对比强烈。

这段描述就是一个基础的提示词,AI会根据这些信息生成相应的图像。但要创作出精美且符合预期的作品,我们需要掌握更多技巧!

提示词的基本结构

一个完整的AI绘画提示词通常包含以下几个部分:

  1. 主体描述:你想要绘制的主要对象
  2. 场景/背景:主体所处的环境
  3. 风格指定:艺术风格、参考艺术家等
  4. 技术参数:构图、光线、质量等
  5. 负面提示:你不希望出现的元素

让我们来拆解这些部分:

主体描述

这是提示词最核心的部分,需要尽可能准确地描述你想要的主体。例如:

一位穿着维多利亚时代服装的年轻女性,棕色卷发,面带微笑,手持一朵玫瑰

注意描述时要关注:

  • 性别、年龄、外貌特征
  • 服装、、表情、动作
  • 持有物品等

越详细越好!(这样AI才能"看懂"你的意图)

场景/背景

场景描述能让图像更加丰富和有故事性:

站,书架高耸到天花板,透过彩色玻璃窗的阳光洒落在木质地板上

好的场景描述应包含:

  • 地点(室内/室外)
  • 时间(日/夜、季节等)
  • 环境细节(家具、植物、天气等)
  • 氛围感受

风格指定

这部分决定了最终图像的艺术表现:

油画风格,类似于John William Waterhouse的作品,浪漫主义色彩,细节丰富

常见的风格描述包括:

  • 艺术流派(印象派、赛博朋克等)
  • 参考艺术家(梵高、宫崎骏等)
  • 媒介类型(水彩、素描、数简主义、超现实主义等)

技术参数

这些参数可以微调图像的视觉效果:

广角构图,自然光线,高对比度,8k超高清,逼真质感

技术参数可以包括:

  • 构图(远景、特写、俯视等)
  • 光线(柔和、逆光、黄昏等)
  • 质量描述(高清、精细等)
  • 镜头效果(景深、虚化等)

负面提示

这部分告诉AI你不希望出现什么(特别重要!!!):

负面提示:模糊,变形,不自然的质量,简笔画风格享几个实用的提示词模板,你可以根据自己的需求进行修改:

人物肖像模板

[性别][年龄],[外貌描述],[服装描
[背景/场景],
[光线],[构图],
[艺术风格],inspired by [艺术家],
[质量描述],[额外效果]

例如:

年轻女性,亚洲面孔,长直发,穿着传统汉服,微笑,半身像,站在樱花树下,柔和自然光,正面构图,水彩风格,inspired by Alphonse Mucha,高清细节,梦幻氛围

风景模板

[场景类型],[地点],[时间],[天气],
[特色元素],[色彩基调],
[艺术风格],[参考艺术家],
[视角],[光线],[质量描述]

例如:

山间湖泊,瑞士阿尔卑斯山,黄昏时分,晴天,倒映山峰的平静湖面,蓝紫色调,油画风格,inspired by Albert Bierstadt,全景视角,金色阳光,超高清,逼真细节

高级技巧

权重调整

在一些AI绘画工具中,你可以使用括号来调整某些元素的权重:

一个(女巫:1.5)在(神秘森林:1.2)中,(魔法光芒:1.3)

括号中数字越大,该元素在生成图像中的重要性越高。

混合风格

尝试混合不同艺术家或风格的特点:

风格混合:70% 梵高 + 30% 赛博朋克,星空下的未来城市

颜色控制

明确指定色彩方案:

主色调:蓝色和金色,高对比度,冷暖色调对比

情绪氛围

描述你希望图像传达的情感:

氛围:忧郁而神秘,令人不安的平静,隐藏的危险感

常见问题与解决方法

手部变形问题

AI绘图工具常常在绘制手部时出现问题。解决方法:

详细描述手的姿势:双手交叉放在膝盖上,手指自然伸展
负面提示:畸形手指,多余的手指,不自然的手部姿势

构图不理想

当AI生成的构图不符合预期时:

明确指定构图:居中构图,主体占据画面三分之二,低角度拍摄
使用摄影术语:广角镜头,f/2.8光圈,浅景深

风格不够突出

当生成的图像风格不够明显时述:强烈的印象派笔触,厚重的对比

多提及参考艺术家:风格类似Claude Monet和Pierre-Auguste Renoir的作品结合

提示词示例库

以下是一些完整的提示词示例,你可以直接使用或根据需要修改:

科幻场景

未来城市街道,2150年东京,夜晚,雨天,霓虹灯反射在湿漉漉的地面上,全息广告投影在高楼上,赛博朋克风格,受Blade Runner启发,广角视角,蓝色和紫色调,高清细节,电影感构图,光影强烈对比

负面提示:模糊,低质量,简单背景,扭曲建筑,不合逻辑的结构

奇幻人物

精灵战士,女性,银色长发,绿色眼睛,穿着轻盈的树叶编织盔甲,站在古老森林中,手持发光的魔法弓箭,魔幻现实主义风格,inspired by Frazetta和Hildebrandt兄弟,自然光透过树叶,鲜明色彩,高清细节,史诗场景

负面提示:卡通风格,不协调的装备,现代元素,解剖错细节

静物画

丰盛的水果静物画,包括葡萄、苹果、柠檬和石榴,放在深色木桌上,白色亚麻桌布部分覆盖,背景是深色墙壁,一束自然光从左侧照射,荷兰黄金时代风格,inspired by Pieter Claesz,超写实主义,高清细节,完美光影,油画质感

负面提示:现代元素,塑料感,不自然光线,失真,模糊

结语

掌握AI绘画提示词的编写是一项需要不断实践的技能。随着你经验的积累,你会逐渐找到适合自己创作风格的提示词结构和表达方式。记住,提示词就像是你和AI之间的一种沟通语言,越清晰、越详细,AI就能越好地理解你的创作意图。

希望这篇文章能帮助你在AI绘画的旅程中更进一步!别忘了多尝试、多实验,记录那些效果良好的提示词,慢慢建立属于自己的提示词库。相信不久的将来,你一定能够创作出令人惊艳的AI艺术作品!

祝你创作愉快,灵感不断!

【MD】Prompt Engineering 提示词工程 定义:Prompt Engineering 是设计和优化输入提示(prompt)以获得预期输出的过程。在与大型语言模型(如 GPT-4)交互时,如何构造提示会显著影响模型的回答质量。例子简单提示"告诉我关于猫的事情。优化提示"请详细描述猫的生物学特征、行为习惯以及它们在不同文化中的象征意义。通过优化提示,用户可以引导模型生成更详细和有用的回答。Prompt Engineering 是设计和优化输入提示以获得预期输出的过程。应用场景:定义特定功能的函数。示例提示。 阅读详情

相关推荐

Prompt Engineering 提示词工程学习

Prompt Engineering 是设计和优化输入提示(Prompt)以获得预期输出的过程。在与大型语言模型(如 GPT-4)交互时,如何构造提示会显著影响模型的回答质量。

weixin_45894006的博客 1359

Midjourney|文心一格prompt教程[技巧篇]:生成多样性、增加艺术风格、图片二次修改、渐进优化、权重、灯光设置等17个技巧等你来学

我认为学习图片类的 prompt,跟学习画画是类似的,最好的学习方法不是直接用模板。而是拿真图,或者别人生成的图来临摹。英文不好,也可以先写中文,然后让 ChatGPT 翻译。当你临摹了几张后,你就会慢慢搞懂如何做出类似的图了。这时候,我们就能尝试写一下 prompt 了(如果你觉得自己英文水平还不太行,也可以尝试用翻译软件翻译)。Midjourney 生成的结果如下所示。Emm 🤔 好像跟我们的预期不一样。不要慌,刚开始用 Midjourney 一定会遇到这种问题,重要的是多尝试。

丨汀、的博客 4654

【LLM大模型】大模型Prompt Engineering提示词工程

【LLM大模型】大模型Prompt Engineering提示词工程

abao6690的博客 1513

【AIGC风格prompt深度指南】掌握绘画风格关键词,实现艺术模仿的革新实践

高速运动的车辆和飞行器穿梭在城市之间,科技元素随处可见,展现了未来主义的速度感和动力。一个极简风格的室内空间,家具线条简洁,色彩单一。大气,水,植物,和平,宁静,平静的海洋,透明的水,珊瑚礁,鱼,珊瑚,内心的平静,意识,沉默,自然,进化,由冰和水制成的和平标志]非常详细,寒冷,冰冻,大气,照片逼真,流动,16K。胡迪尼模拟火和水,非常详细,照片逼真,辛烷值渲染,山和水,16K。大泡泡橡皮鸭]半色调图案设计,霓虹色,橙色和紫色,对称,8k。[小提琴家]ASCII风格,点,爆炸,光,射线,计算机代码。

和德天老师一起踏上学习Python之旅 1788

2、Prompt基础:Prompt Engineering 提示词工程

定义:Prompt Engineering 是设计和优化输入提示(prompt)以获得预期输出的过程。在与大型语言模型(如 GPT-4)交互时,如何构造提示会显著影响模型的回答质量。例子简单提示"告诉我关于猫的事情。优化提示"请详细描述猫的生物学特征、行为习惯以及它们在不同文化中的象征意义。通过优化提示,用户可以引导模型生成更详细和有用的回答。Prompt Engineering 是设计和优化输入提示以获得预期输出的过程。应用场景:定义特定功能的函数。示例提示。

Hugo的博客 954

从Prompt Engineering到AI Innovation的跨越之路

当ChatGPT、GPT-4、Claude 3等大模型将“自然语言交互”变为AI的核心入口时,Prompt Engineering(提示工程)从“大模型使用技巧”升级为“AI创新的底层逻辑”。它不仅是连接人类意图与模型能力的“翻译器”,更是重构AI开发范式的“创造力引擎”——从“修改模型参数”到“设计指令逻辑”,从“数据驱动”到“意图驱动”,从“用AI解决问题”到“用AI创造新价值”。本文以第一性原理底层逻辑:用信息论重新定义Prompt的本质——如何通过条件约束引导模型的概率分布;实践框架。

大数据洞察的博客 770

猫头虎分享:18种写AI 提示词 Prompt Engineering方法大集合

# 猫头虎分享:18种写AI 提示词 Prompt Engineering方法大集合 大家好,我是猫头虎! 今天为大家整理了 **Prompt Engineering(提示工程)** 的18种方法,并为每种方法提供了实际案例及对应论文参考链接。希望大家能从中受益! 猫头虎分享提示词 - Top1 **猫头虎提示词**

猫头虎技术团队:授渔优于赠鱼,兴趣引领智慧,探索之乐尤显珍贵。商务合作+:Libin9iOak ,万粉变现+:优快云WF,猫头虎承诺每年免费为100名C站创作者做账号流量诊断服务!全网搜:猫头虎技术团队,点击文章底部名片或直接私信我一切皆可谈,快找虎哥! 8524

【Prompt Engineering 教程:写 Prompt 的艺术】1、什么是 Prompt Engineering?

解释这个词之前,首先需要解释 prompt 这个词。简单的理解它是给 AI 模型的指令。它可以是一个问题、一段文字描述,甚至可以是带有一堆参数的文字描述。AI 模型会基于 prompt 所提供的信息,生成对应的文本,亦或者图片。比如,我们在 ChatGPT 里输入(中国的首都是什么?),这个问题就是 prompt。

AI天才研究院 1万+

【写好AI提示词】——面向 AI 爱好者的 Prompt 工程实用指南:与 AI 高效对话的艺术

Prompt Engineering(提示工程)是与 AI 模型对话的艺术和技术,通过设计高质量的「提示(Prompt)」来引导 AI 更好地理解任务、输出高质量结果。就像程序员通过代码告诉计算机要做什么,提示工程师通过文字告诉 AI 要如何回应。它不仅适用于开发者,也适合普通用户,只要你想更聪明地使用 AI,Prompt 工程就是你最好的工具箱。提示工程是一门人人都能学会的技能,不需要懂代码,也无需 AI 背景,只要你愿意动手尝试,就能成为更聪明的 AI 使用者!

Huazzi的博客 2154

AIGC时代的必备技能:提示词工程(Prompt Engineering)全面指南

本文主要介绍了AIGC时代的重要技能——提示词工程(Prompt Engineering)。文章首先定义了提示词的概念,强调其作为人类与AI沟通桥梁的重要性,并详细阐述了提示词的功能特性,包括输入、大模型处理和输出三个环节。接着,文章探讨了提示工程的重要性,如提高输出质量、节省资源和时间等。随后,文章深入分析了提示词的基本构成要素,包括指令、上下文、输入数据和输出指示符,并提出了提示词的五大基本原则:清晰性与具体性、提供充足的上下文、明确任务与目标、考虑受众和迭代思维。最后,文章介绍了提示词的七大常见技巧

weixin_43178406的博客 27万+

[Ethernet in CANoe]2--如何在CANoe中去仿真CP版本的SOME/IP通信

上篇文章()介绍了SOME/IP的两种类型的数据格式,根据作者目前的项目经验,目前在CANoe V18之前的版本,CP版本的arxml是最方便实现SOME/IP以太网仿真的。作者目前只有CANoe V17的license,所以本片文章是在CANoe 17上基于CP版本的arxml去做仿真模拟。

汽车ECU自动化测试 1764

深度解析 AI 提示词工程(Prompt Engineering)

提示词工程(Prompt Engineering)是指在与大型语言模型(Large Language Models,LLMs)进行交互时,基于对模型行为机制的理解,通过构造具有明确语义意图、结构化语言特征、上下文感知能力的自然语言提示(Prompt),以系统性方式引导模型生成具备特定目标的输出结果的一门技术方法论。提示词工程不仅仅是“写一句话让模型理解”,它更是一种融合了语言设计、上下文建模、意图建构、任务控制与输出调优的工程实践。

分享关于Java编程、数据库管理和信息安全方面的最佳实践 1553

深入解析组合逻辑环(combinational loop)的成因与解决方案

本文深入解析了数字电路设计中组合逻辑环(combinational loop)的成因与危害。通过边沿检测和中断轮询(round_robin)仲裁器等实例,揭示了代码如何意外形成环路,并对比了插入触发器、重构逻辑以及状态机思维三种核心解决方案,帮助硬件工程师从根本上避免这一常见设计陷阱,确保电路稳定可靠。

weixin_28278377的博客 313

提示词工程(Prompt Engineering)

Prompt ⁠工程(Prompt Eng‌ineering)又叫提示​词工程,它是一门较新的学科,主要关注提示词的开发和优化,帮助用户将大模型用于各场景和研究领域。那么Prompt又是什么,简单来说就是给大模型输的命令。就是我们在使用大模型时,用于明确地告诉大模型我们需要解决的问题或者是要完成的任务,同时也是大模型理解用户需求并生成相关、准确回答或内容的基础。提示词工程在大模型的应用中至关重要。研究人员借助这项技术,能够显著提升大语言模型应对复杂任务的能力,比如问答理解、算术推理这类场景。

m0_57396886的博客 1257

配置VS Code使用Linux服务器上的Matlab

0、需求 Linux服务器上安装有Matlab 无图形界面,只能使用命令行工具,编辑文件不方便 1、VS Code插件安装 在扩展商店中搜索matlab,会出现Matlab Extension Pack,里面有整理好的matlab扩展 这里只安装了第一排的三个扩展 2、设置(Windows、Mac的设置类似,只是不同系统的文件路径不同) 安装好扩展,重启VS Code后,进行设置 打开:文件→首选项→设置(或快捷键ctrl+,),搜索matlab,结果如下图所示;直接打开完整json配置文件(图

赵彬的博客 5009

保姆级教程:手把手教你从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件(附网址规律总结)

本文提供从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件的详细教程,包括路径解析、版本号确定和下载命令示例。特别解析了GRCh37的特殊存储结构,并分享批量下载、文件校验等高级技巧,帮助生物信息学研究者高效获取基因组注释文件。

weixin_29289821的博客 204

Prompt Engineering

概述:内容、种类、CoT、提示词漂移、提示词洗牌、优化; 拓展:PDL、POML、PromptWizard、RTSCEN、CRISPE、grok-prompt、PrompterHub、PromptLayer、PromptPilot。

lonelymanontheway的博客 1568

SAP销售订单POD实操:从VL01N创建到VLPOD差异处理,保姆级避坑指南

本文详细解析SAP销售订单POD全流程,从VL01N创建到VLPOD差异处理,提供保姆级避坑指南。涵盖核心业务逻辑、前置配置、销售订单创建、交货单处理及差异解决方案,帮助用户高效管理供应链执行环节,确保财务与物流的准确对接。

weixin_27219587的博客 626

【简单学习】Prompt Engineering 提示词工程

定义:Prompt Engineering 是设计和优化输入提示(prompt)以获得预期输出的过程。在与大型语言模型(如 GPT-4)交互时,如何构造提示会显著影响模型的回答质量。例子简单提示"告诉我关于猫的事情。优化提示"请详细描述猫的生物学特征、行为习惯以及它们在不同文化中的象征意义。通过优化提示,用户可以引导模型生成更详细和有用的回答。Prompt Engineering 是设计和优化输入提示以获得预期输出的过程。应用场景:定义特定功能的函数。示例提示。

风信子的博客 1312

数学建模学习(5):最全概率分析之图表绘制详解,内容比较多,建议收藏

(1) 绘制正整数频率使用 tabulate(X) (2)

全栈川川 4593

智能车图像处理24-进阶篇16--三叉路口的判断

这篇文章主要讲述图像处理中如何判断三叉路口并进行补线操作。

taiyuezyh的博客 1万+

【AI大模型】Prompt Engineering

提示工程也叫「指令工程」。Prompt 就是你发给大模型的指令,比如「讲个笑话」、「用 Python 编个贪吃蛇游戏」、「给男/女朋友写封情书」等貌似简单,但意义非凡「Prompt」 是 AGI 时代的「编程语言」「Prompt 工程」是 AGI 时代的「软件工程」「提示工程师」是 AGI 时代的「程序员」学会提示工程,就像学用鼠标、键盘一样,是 AGI 时代的基本技能提示工程「门槛低,天花板高」,所以有人戏称 prompt 为「咒语」

lmj3732018的博客 7697

Citra 3DS模拟器完整教程:3步免费在高画质下运行3DS游戏

Citra 是一款免费开源的任天堂 3DS 模拟器,让 PC 直接运行 .cia 和 .3ds 游戏文件,适合想重温老游戏的老玩家、没机器却想体验 3DS 的用户。仓库属于 PabloMK7 fork 中仍可维护的分支,主线开发已转向 Azahar Emulator。 ## ⚡ 最短路径跑起来 先核对 3 个前置条件: - 系统是 Windows 10 以上、macOS 10.15 以上或主

gitblog_00581的博客 1111

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

AI开发范式的变革:从Prompt Engineering到Agent Engineering的能力迁移

2023-2024年,Prompt Engineering是整个AI领域"最年轻的高薪技能"。从业者通过精准控制几百个Token的提示词来引导大模型的输出,涌现出一整套工程化方法论:少样本提示、思维链、自一致性、树状搜索。当时的核心假设是"模型能力是固定的,而Prompt是杠杆"——一个精巧的Prompt可以挖掘出模型本身没有被训练体现的能力。但这个假设在2025-2026年加速失效。原因不在于Prompt Engineering的技巧退化了,而在于模型的能力进化使得"与模型对话"的复杂度本身成为了瓶颈。

qq_35160742的博客 4486

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【超全指南】一文吃透提示词工程:从入门到实战,解锁AI沟通的艺术(上)

本文将带你全面深入了解提示词工程 (Prompt Engineering)。从Prompt的基本定义与实例解析,到提升AI沟通效率的核心技巧(如符号分隔、指定输出格式、角色扮演等),再到结合十种高效学习法(费曼学习法、80/20法则等)优化提示词指令,最后探讨提示词工程化的实践价值、结构化框架和团队协作流程。无论你是AI初学者还是资深开发者,本文都将为你提供系统化的知识体系和实战指南,助你掌握与AI高效对话的艺术,让大模型真正成为你的超级助手!

V.V.R.Y 2614
上一篇: Java 进化之路:从 Java 8 到 Java 21 的重要新特性(开发者必看指南)
下一篇: PyTorch入坑指南:从张量到第一个神经网络模型(手把手实战篇)
kernelguru
博客等级 码龄2年 612粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值