ChatGPT大模型极简应用开发-CH1-初识 GPT-4 和 ChatGPT
文章目录
- 1.1 LLM 概述
- 1.1.1 语言模型和NLP基础
- 1.1.2 Transformer及在LLM中的作用
- 1.1.3 解密 GPT 模型的标记化和预测步骤
- 1.2 GPT 模型简史:从 GPT-1 到 GPT-4
- 1.2.1 GPT1
- 1.2.2 GPT2
- 1.2.3 GPT-3
- 1.2.4 从 GPT-3 到 InstructGPT
- 1.2.5 GPT-3.5、Codex 和 ChatGPT
- 1.2.6 GPT-4
- 1.3 LLM 用例和示例产品
- 1.3.1 Be My Eyes
- 1.3.2 摩根士丹利
- 1.3.3 可汗学院
- 1.3.4 多邻国
- 1.3.5 Yabble
- 1.3.6 Waymark
- 1.3.7 Inworld AI
- 1.4 警惕 AI 幻觉:限制与考虑
- 1.5 使用插件和微调优化 GPT 模型
- 1.6 小结
1.1 LLM 概述
1.1.1 语言模型和NLP基础
GPT-4 和其他 GPT 模型是基于大量数据训练而成的大语言模型 (large language model,LLM),它们能够以非常高的准确性识别和生成人类可读的文本。
GPT-4 和 ChatGPT 基于一种特定的神经网络架构,即 Transformer。 Transformer 就像阅读机一样,它关注句子或段落的不同部分,以理解其上下文并产生连贯的回答。此外,它还可以理解句子中的单词顺序和上下 文意思。这使 Transformer 在语言翻译、问题回答和文本生成等任务中非 常有效。
NLP 是 AI 的一个子领域,专注于使计算机能够处理、解释和生成人类语言。现代 NLP 解决方案基于 ML 算法。NLP 的目标是让计算机能够处理自然语言文本。这个目标涉及诸多任务
- 文本分类
- 自动翻译
- 问题回答
- 文本生成:给定输入文本(prompt提示词)生成连贯且相关的输出文本
LLM 是试图完成文本生成任务的一类 ML 模型。LLM 使计算机 能够处理、解释和生成人类语言,从而提高人机交互效率。为了做到这一 点,LLM 会分析大量文本数据或基于这些数据进行训练,从而学习句子中 各词之间的模式和关系。
数据源
- 维基百科
- 成千上万本书
- 甚至互联网本身
在给定输入文本的情况下,这个学习过程使得 LLM 能够预测最有可能出现的后续单词,从而生成对输入文本有意义的回应。
早期发展
始于简单的语言模型,如 n-gram 模 型。n-gram 模型通过使用词频来根据前面的词预测句子中的下一个词,其 预测结果是在训练文本中紧随前面的词出现的频率最高的词。虽然这种方 法提供了不错的着手点,但是 n-gram 模型在理解上下文和语法方面仍需 改进,因为它有时会生成不连贯的文本。
为了提高 n-gram 模型的性能,人们引入了更先进的学习算法,包括循环神经网络(recurrent neural network,RNN)和长短期记忆(long short-term memory,LSTM)网络。这些模型能够学习更长的序列,并且能够更好地分析上下文,但它们在处理大量数据时的效率仍然欠佳。
1.1.2 Transformer及在LLM中的作用
Transformer 架构彻底改变了 NLP 领域,这主要是因为它能够有效地解决之前的 NLP 模型(如 RNN)存在的一个关键问题:很难处理长文本序列并记住其上下文。换句话说,RNN 在处理长文本序列时容易忘记上下文(也就是臭名昭著的“灾难性遗忘问题”),Transformer 则具备高效处理和编码上下文的能力。
这场革命的核心支柱是注意力机制,这是一个简单而又强大的机制。模型不再将文本序列中的所有词视为同等重要,而是在任务的每个步骤中关注最相关的词。交叉注意力和自注意力是基于注意力机制的两个架构模块,它们经常出现在 LLM 中。Transformer 架构广泛使用了交叉注意力模块和自注意力模块
交叉注意力有助于模型确定输入文本的不同部分与输出文本中下一个词的相关性。
自注意力机制是指模型能够关注其输入文本的不同部分。具体到 NLP 领域,自注意力机制使模型能够评估句子中的每个词相比于其他词的重要性。这使得模型能够更好地理解各词之间的关系,并根据输入文本中的多个词构建新概念。
与 RNN 不同,Transformer 架构具有易于并行化的优势。这意味着Transformer 架构可以同时处理输入文本的多个部分,而无须顺序处理。这样做可以提高计算速度和训练速度。
Transformer 架构由来自谷歌公司的 Ashish Vaswani 等人在 2017 年的论文“Attention Is All You Need”中提出,最初用于序列到序列的任务,如机器翻译任务。标准的 Transformer 架构有两个主要组件:编码器和解码器,两者都十分依赖注意力机制。
编码器的任务是处理输入文本,识别有价值的特征,并生成有意义的文本表示,称为嵌入(embedding)。
解码器使用这个嵌入来生成一个输出,比如翻译结果或摘要文本。这个输出有效地解释了编码信息。
生成式预训练 Transformer(Generative Pre-trained Transformer,GPT)是一类基于 Transformer 架构的模型,专门利用原始架构中的解码器部分。
在 GPT 中,不存在编码器,因此无须通过交叉注意力机制来整合编码器产生的嵌入,GPT 仅依赖解码器内部的自注意力机制来生成上下文感知的表示和预测结果。
1.1.3 解密 GPT 模型的标记化和预测步骤
GPT 模型接收一段提示词作为输入,然后生成一段文本作为输出,这个过程被称为文本补全,这主要是一个概率问题。
当 GPT 模型收到一段提示词之后,它首先将输入拆分成标记(token)。这些标记代表单词、单词的一部分、空格或标点符号。比如,在前面的例子中,提示词可以被拆分成[The, wea, ther, is, nice, today, so,I, de, ci, ded, to]。几乎每个语言模型都配有自己的分词器。
理解标记与词长的一条经验法则是,对于英语文本,100 个标记大约等于 75 个单词。
为了生成新的句子,LLM 根据提示词的上下文预测最有可能出现的下一个标记。OpenAI 开发了两个版本的 GPT-4,上下文窗口大小分别为 8192 个标记和 32 768 个标记。
带有注意力机制的Transformer 架构使得 LLM 能够将上下文作为一个整体来考虑。基于这个上下文,**模型为每个潜在的后续标记分配一个概率分数,然后选择概率最高的标记作为序列中的下一个标记。**在前面的例子中,“今天天气很好,所以我决定”之后,下一个最佳标记可能是“去”。
接下来重复此过程,但现在上下文变为“今天天气很好,所以我决定去”,之前预测的标记“去”被添加到原始提示词中。这个过程会一直重复,直到形成一个完整的句子:“今天天气很好,所以我决定去散步。”这个过程依赖于 LLM 学习从大量文本数据中预测下一个最有可能出现的单词的能力。
1.2 GPT 模型简史:从 GPT-1 到 GPT-4
1.2.1 GPT1
2018 Improving Language Understanding by Generative Pre-Training
早期需要有大量标记良好的监督数据。这一需求限制了监督学习的性能,因为要生成这样的数据集,难度很大且成本高昂。
在论文中,GPT-1 的作者提出了一种新的学习过程,其中引入了无监督的预训练步骤。这个预训练步骤不需要标记数据。相反,他们训练模型来预测下一个标记。
对于预训练,GPT-1 模型使用了 BookCorpus 数据集。该数据集包含约 11 000 本未出版图书的文本。BookCorpus 最初由Yukun Zhu 等人在 2015 年的论文“Aligning Books and Movies:Towards Story-like Visual Explanations by Watching Movies andReading Books”中给出,并通过多伦多大学的网页提供。然而,原始数据集的正式版本如今已不能公开访问。
人们发现,GPT-1 在各种基本的文本补全任务中是有效的。在无监督学习阶段,该模型学习 BookCorpus 数据集并预测文本中的下一个词。**然而,GPT-1 是小模型,它无法在不经过微调的情况下执行复杂任务。因此,人们将微调作为第二个监督学习步骤,让模型在一小部分手动标记的数据上进行微调,从而适应特定的目标任务。**比如,在情感分析等分类任务中,可能需要在一小部分手动标记的文本示例上重新训练模型,以使其达到不错的准确度。
尽管规模相对较小,但 GPT-1 在仅用少量手动标记的数据进行微调后,能够出色地完成多个 NLP 任务。GPT-1 的架构包括一个解码器(与原始Transformer 架构中的解码器类似),具有 1.17 亿个参数。作为首个GPT 模型,它为更强大的模型铺平了道路。
1.2.2 GPT2
2019 ,OpenAI 提出了 GPT-2。
这是 GPT-1 的一个扩展版本,其参数量和训练数据集的规模大约是 GPT-1 的 10 倍。这个新版本的参数量为15 亿,训练文本为 40 GB。GPT-2 表明,使用更大的数据集训练更大的语言模型可以提高语言模型的任务处理能力,并使其在许多任务中超越已有模型。它还表明,更大的语言模型能够更好地处理自然语言。
1.2.3 GPT-3
2020 年 6 月,OpenAI 发布了 GPT-3。
GPT-2 和 GPT-3 之间的主要区别在于模型的大小和用于训练的数据量。GPT-3 比 GPT-2 大得多,它有1750 亿个参数,这使其能够捕捉更复杂的模式。
GPT3的数据集:
- Common Crawl(它就像互联网档案馆,其中包含来自数十亿个网页的文本)
- 维基百科
- 网站、书籍和文章的内容
能力:
-
它在文本生成方面还展示出更强的连贯性和创造力。
-
它甚至能够编写代码片段,如 SQL 查询,并执行其他智能任务。
-
GPT-3 取消了微调步骤,而这在之前的 GPT 模型中是必需的。
问题:
- GPT-3 存在一个问题,即最终用户提供的任务与模型在训练过程中所见到的任务不一致
- 训练过程不一定与最终用户希望模型执行的任务一 致
- 增大语言模型的规模并不能从根本上使其更好地遵循用户的意图或指令
- 用于训练模型的数据仍然可能包含虚假信息或有问题的文本,比如涉及种族歧视、性别歧
- 模型有时可能说错话,甚至说出有害的话
2021年,OpenAI 发布了 GPT-3 模型的新版本,并取名为 InstructGPT。
与原始的 GPT-3 基础模型不同,InstructGPT 模型通过强化学习和人类反馈进行优化。这意味着 InstructGPT 模型利用反馈来学习和不断改进。这使得模型能够从人类指令中学习,同时使其真实性更大、伤害性更小。
使用标准的 GPT-3模型也能够得到所需的回答,但需要应用特定的提示词设计和优化技术。这种技术被称为提示工程(prompt engineering)
1.2.4 从 GPT-3 到 InstructGPT
instructGPT Training Language Models to Follow Instructions with Human Feedback
从 GPT-3 模型到 InstructGPT 模型的训练过程主要有两个阶段:
- 监督微调(supervised fine-tuning,SFT)
- 通过人类反馈进行强化学习(reinforcement learning from human feedback,RLHF)
每个阶段都会针对前一阶段的结果进行微调,SFT 阶段接收 GPT-3 模型并返回一个新模型。RLHF 阶段接收该模型并返回 InstructGPT 版本。
在 SFT 阶段中,原始的 GPT-3 模型通过监督学习进行微调。OpenAI 拥有一系列由最终用户创建的提示词。
- 首先,从可用的提示词数据集中随机抽样
- 然后,要求一个人(称为标注员)编写一个示例来演示理想的回答。重复这个过程数千次,以获得一个由提示词和相应的理想回答组成的监督训练数据集。
- 最后,使用该数据集微调 GPT-3 模型,以针对用户的提问提供更一致的回答。此时得到的模型称为 SFT 模型
图 1-6:获取 InstructGPT 模型的步骤
RLHF 阶段分为两个子步骤:
-
首先训练奖励模型
- 奖励模型的目标是自动为回答给出分数。
- 当回答与提示词中的内容匹配时,奖励分数应该很高;
- 当回答与提示词中的内容不匹配时,奖励分数应该很低;
- OpenAI 首先随机选择一个问题,并使用 SFT模型生成几个可能的答案。通过一个叫作温度(temperature)的参数,可以针对同一输入生成许多回答。
- 要求标注员根据与提示词的匹配程度和有害程度等标准给这些回答排序。在多次重复此过程后,使用数据集微调 SFT 模型以进行评分。
- 奖励模型的目标是自动为回答给出分数。
-
然后使用奖励模型进行强化学习
- 迭代的过程。它从一个初始的生成式模型开始,比如 SFT 模型;
- 根据得到的奖励分数,相应地更新生成式模型。这个过程可以在无须人工干预的情况下重复无数次,从而自动、高效地提高模型的性能;
1.2.5 GPT-3.5、Codex 和 ChatGPT
2022 年 3 月,OpenAI 发布了 GPT-3 的新版本。新模型可以编辑文本或向文本中插入内容。(训练数据截至 2021 年 6 月)。2022 年 11 月底,OpenAI 正式称这些模型为GPT-3.5 模型。
OpenAI 还提出了 Codex 模型,这是一个在数十亿行代码上进行了微调的GPT-3 模型。Codex 模型在 2023 年 3 月被OpenAI 弃用。GitHub 发布了基于 GPT-4 的 Copilot X 版本,功能比之前的版本多得多。
可以说,ChatGPT 是由 LLM 驱动的应用程序,而不是真正的LLM。ChatGPT 背后的 LLM 是 GPT-3.5 Turbo。然而,OpenAI 在发布说明中将 ChatGPT 称为“模型”。
ChatGPT 是由 LLM 驱动的应用程序,而不是真正的LLM。ChatGPT 背后的 LLM 是 GPT-3.5 Turbo。然而,OpenAI 在发布说明中将 ChatGPT 称为“模型”。
1.2.6 GPT-4
2023 年 3 月,OpenAI 发布了 GPT-4。与 OpenAI GPT 家族中的其他模型不同,GPT-4 是第一个能够同时接收文本和图像的多模态模型。这意味着 GPT-4 在生成输出句子时会考虑图像和文本的上下文。
1.3 LLM 用例和示例产品
1.3.1 Be My Eyes
自 2012 年起,Be My Eyes 已通过技术为数百万视障人士提供了帮助。它的应用程序是志愿者与需要帮助的视障人士之间的纽带,使视障人士在日常生活中得到帮助,比如识别产品或在机场导航。只需在应用程序中点击一次,需要帮助的视障人士即可联系到一位志愿者,后者通过视频和麦克风提供帮助。GPT-4 的多模态能力使得它能够处理文本和图像。Be My Eyes 开始基于GPT-4 开发新的虚拟志愿者。这个虚拟志愿者旨在达到与人类志愿者相当的理解水平和帮助能力。
1.3.2 摩根士丹利
作为财富管理领域的领头羊,摩根士丹利拥有数十万页的知识和见解内容库,涵盖投资策略、市场研究与评论,以及分析师意见。这些海量信息分散在多个内部网站上,其文件格式主要是 PDF。这意味着顾问必须搜索大量文档才能找到他们想要的答案。可以想象,搜索过程既漫长又乏味。
由公司内部开发的模型将驱动一个聊天机器人,对财富管理内容进行全面搜索,并高效地解锁摩根士丹利积累的知识。通过这种方式,GPT-4 提供了一种更易使用的格式来分析所有相关信息。
1.3.3 可汗学院
Khanmigo 是由 GPT-4 驱动的新型 AI 助手。Khanmigo 可以为学生做很多事情,比如引导和鼓励他们,提问并帮助他们准备考试。Khanmigo 旨在成为对用户友好的聊天机器人,帮助学生完成课堂作业。它不会直接给出答案,而会引导学生进行学习。除了帮助学生,Khanmigo 还可以帮助教师准备教案、完成行政任务和制作教材等。
1.3.4 多邻国
多邻国已经使用 GPT-4 为其产品添加了两个新功能:“角色扮演”和“解释我的答案”。这两个功能在名为 Duolingo Max 的新订阅级别中可用。借助这两个功能,多邻国填补了理论知识和语言应用之间的鸿沟。多亏了LLM,多邻国让语言学习者能够沉浸在真实世界的场景中。
- “角色扮演”功能模拟与母语人士的对话,让用户能够在各种场景中练习语言技能。
- “解释我的答案”功能针对语法错误提供个性化反馈,帮助用户更深入地理解语言结构。
1.3.5 Yabble
Yabble 是一家市场研究公司,它利用 AI 技术分析消费者数据,为企业提供可用的见解。Yabble 的平台将原始的非结构化数据转化为可视化形式,使企业能够根据客户需求做出明智的决策。
1.3.6 Waymark
Waymark 提供了一个创作视频广告的平台。该平台利用 AI 技术帮助企业轻松创作高质量的视频,无须技术知识或昂贵的设备。
显著地改进了平台用户的脚本编写过程。这种由 GPT 驱动的增强功能使得平台能够在几秒内为用户生成定制脚本。用户能够更专注于他们的主要目标,因为他们无须花费太多时间编辑脚本,从而有更多的时间来创作视频广告
1.3.7 Inworld AI
Inworld AI 为开发人员提供了一个平台,用于创建具有独特个性、多模态表达能力和上下文意识的 AI 角色。Inworld AI 平台的主要应用领域之一是视频游戏。
将GPT 与其他 ML 模型结合,该平台可以为 AI 角色生成独特的个性、情感、记忆和行为。这个过程使游戏开发人员能够专注于叙事和其他主题,而无须花费大量时间从头开始创建语言模型。
1.4 警惕 AI 幻觉:限制与考虑
LLM 根据给定的输入提示词逐个预测下一个词(也就是标记),从而生成回答。在大多数情况下,模型的输出是与提问相关的,并且完全可用,但是在使用语言模型时需要小心,因为它们给出的回答可能不准确。这种回答通常被称为 AI 幻觉,即 AI 自信地给出一个回答,但是这个回答是错误的,或者涉及虚构的信息。
当要求它进行检查并重新计算时,它仍然给出了一个错误的答案
强烈推荐在创意型应用程序中使用纯 GPT 解决方案,而不是在医疗咨询工具等真相至关重要的问答类应用程序中使用。对于这类用例,插件可能是理想的解决方案。
1.5 使用插件和微调优化 GPT 模型
除了简单的文本补全功能,还可以使用更高级的技术来进一步利用 GPT 模型的能力:
- 插件
- 微调
局限性:
GPT 模型有一定的局限性,例如其计算能力有限。正如你所见,GPT 模型可以正确回答简单的数学问题,如 2 + 2 等于多少,但在面对更复杂的计算时可能会遇到困难,如 3695 × 123 548。此外,它没有直接访问互联网的权限,这意味着 GPT 模型无法获取新信息,其知识仅限于训练数据。对于 GPT-4,最后一次知识更新是在 2021 年 9 月。截至 2023 年 11 月下旬,GPT-4 的训练知识已更新至 2023 年 4 月。
**OpenAI 提供的插件服务允许该模型与可能由第三方开发的应用程序连接。**这些插件使模型能够与开发人员定义的应用程序接口(application program interface,API)进行交互。这个过程可以极大地增强 GPT 模型的能力,因为它们可以通过各种操作访问外部世界。
在其网站上,OpenAI 表示可以通过插件让 ChatGPT 执行以下操作:
- 检索实时信息,如体育赛事比分、股票价格、最新资讯等;
- 检索基于知识的信息,如公司文档、个人笔记等;
- 代表用户执行操作,如预订航班、订购食品等;
- 准确地执行数学运算。
微调过程涉及使用特定的一组新数据重新训练现有的GPT 模型。新模型专为特定任务而设计,这个额外的训练过程让模型能够调节其内部参数,以适应给定的任务。经过微调的模型应该在该任务上表现得更好。比如,采用金融文本数据进行微调的模型应该能够更好地回应针对该领域的查询并生成相关性更强的内容。
1.6 小结
从简单的 n-gram 模型发展到 RNN、LSTM,再到先进的 Transformer 架构,LLM 已经取得了长足的进步。LLM 是可以处理和生成人类语言的计算机程序,它利用 ML 技术来分析大量的文本数据。通过使用自注意力机制和交叉注意力机制,Transformer 极大地增强了模型的语言理解能力。
相关文章:

ChatGPT大模型极简应用开发-CH1-初识 GPT-4 和 ChatGPT
文章目录 1.1 LLM 概述1.1.1 语言模型和NLP基础1.1.2 Transformer及在LLM中的作用1.1.3 解密 GPT 模型的标记化和预测步骤 1.2 GPT 模型简史:从 GPT-1 到 GPT-41.2.1 GPT11.2.2 GPT21.2.3 GPT-31.2.4 从 GPT-3 到 InstructGPT1.2.5 GPT-3.5、Codex 和 ChatGPT1.2.6 …...
Golang学习笔记_27——单例模式
Golang学习笔记_24——泛型 Golang学习笔记_25——协程Golang学习笔记_25——协程 Golang学习笔记_26——通道 文章目录 单例模式1. 介绍2. 应用场景3. 实现3.1 饿汉式3.2 懒汉模式 源码 单例模式 1. 介绍 单例模式是一种创建型设计模式,它确保一个类只有一个实例…...

хорошо哈拉少wordpress俄语主题
хорошо哈拉少wordpress俄语主题 wordpress俄文网站模板,推荐做俄罗斯市场的外贸公司建俄语独立站使用。 演示 https://www.jianzhanpress.com/?p7360...

[数据结构与算法]js实现二叉树
DFS 与 BFS dfs 递归 本质通过栈结构 bfs 层序遍历 通过队列结构 function permute(nums) {let res [];let cur []; // 记录当前内容let visted {}; //记录访问过的节点let len nums.length;function dfs(nth) {//递归终止条件if (nth len) {res.push([...cur]);return …...
MySQL程序之:连接到服务器的命令选项
本节介绍大多数MySQL客户端程序支持的选项,这些选项控制客户端程序如何建立与服务器的连接、连接是否加密以及连接是否压缩。这些选项可以在命令行或选项文件中给出。 连接建立的命令选项 本节介绍控制客户端程序如何建立与服务器的连接的选项。 表6.4连接建立选…...

python3GUI--仿崩坏三二次元登录页面(附下载地址) By:PyQt5
文章目录 一.前言二.预览三.实现方案1.实现原理1.PyQt52. 具体实现 2.UI设计1.UI组件化、模块化2.UI设计风格思路 3.项目代码结构4.使用方法3.代码分享1.支持跳转网页的QLabel组件2.三角形ICON按钮 四.总结 大小:33.3 …...

阿里云 Serverless 助力盟主直播:高并发下的稳定性和成本优化
在直播场景中,阿里云 Serverless 应用引擎 SAE 提供的无缝弹性伸缩与极速部署能力,确保直播间高并发时的流畅体验,降低了我们的运营成本,简化了运维流程。结合阿里云云原生数据库 PolarDB 的 Serverless 能力,实现了数…...
Unity 学习指南与资料分享
Unity学习资料 Unity学习资料 Unity学习资料 Unity 作为一款强大的跨平台游戏开发引擎,在游戏开发及实时 3D 内容创作领域占据着重要地位。它功能丰富、易于上手,支持多平台发布,为开发者提供了广阔的创作空间。下面为你带来全面的 Unity 学…...
Android SystemUI——CarSystemBar视图解析(十一)
前面文章我们已经把 CarSystemBar 从启动到构建视图,再到将视图添加到 Window 的流程分析完毕,我们知道默认情况下在车载系统中只显示顶部栏和底部栏视图的。这里我们在前面文章的基础上以顶部栏为例具体解析其视图的结构。 一、顶部栏解析 通过《CarSystemBar车载状态栏》这…...

.NET周刊【1月第1期 2025-01-05】
国内文章 3款.NET开源、功能强大的通讯调试工具,效率提升利器! https://www.cnblogs.com/Can-daydayup/p/18631410 本文介绍了三款功能强大的.NET开源通讯调试工具,旨在提高调试效率。这些工具包括LLCOM,提供串口调试和自动化处…...

初识go语言之指针用法
一、环境准备 安装go语言编译环境,官网地址:https://go.dev/dl/ 或者 https://golang.google.cn/dl/ 点击下载按提示安装即可 vscode 安装go语言扩展 测试 package mainimport "fmt"func main() {fmt.Println("Hello, World!") …...

用户中心项目教程(二)---umi3的使用出现的错误
目录 1.情况的说明 2.遇到的问题 1)第一个问题-关于npx的使用 2)第二个问题--unsupport问题 3)第三个收获--nodejs安装问题 4)第四个收获---nvm下载问题 5)第五个问题--尚未解决的问题 3.个人总结 1.情况的说明…...
Android设备:Linux远程gdb调试
更多内容:XiaoJ的知识星球 目录 1.准备工作1)安装Android NDK:2)连接Android手机3)编译程序 2.启动gdbserver1)**推送gdbserver及可执行文件**:**2)启动gdbserver**:3&am…...

(十四)WebGL纹理坐标初识
纹理坐标是 WebGL 中将 2D 图像(纹理)应用到 3D 物体表面的重要概念。在 WebGL 中,纹理坐标通常使用一个二维坐标系,称为 uv 坐标,它们决定了纹理图像如何映射到几何体上。理解纹理坐标的核心就是明白它们如何将二维纹…...

【机器学习】制造业转型:机器学习如何推动工业 4.0 的深度发展
我的个人主页 我的领域:人工智能篇,希望能帮助到大家!!!👍点赞 收藏❤ 引言 在当今科技飞速发展的时代,制造业正经历着前所未有的变革,工业4.0的浪潮席卷而来。工业4.0旨在通过将…...

Nginx安装配置Mac使用Nginx访问前端打包项目
目录 Linux安装环境变量配置 WinMac安装基本配置 Mac使用Nginx访问前端项目常用命令 Linux 官网:https://nginx.org/ 中文官网:https://nginx.p2hp.com/ 安装 http://nginx.org/en/download.html 1). 安装依赖包 由于nginx是基于c语言开发的&#x…...

国自然面上项目|基于组合机器学习算法的病理性近视眼底多模态影像资料自动化定量分析研究|基金申请·25-01-18
小罗碎碎念 今天和大家分享一个面上项目,资助年限为2020~2023,直接费用为55万。 病理性近视致盲问题严峻,机制和诊疗策略尚待探索。本项目基于前期积累的大量影像资料和算法开发工作,计划构建标准影像数据库࿰…...

03_UI自适应
因为Canvas大小是始终和屏幕一致的 所以设置Canvas的屏幕大小 通常设置为1920 * 1080 又因为屏幕的图像及按钮如果想适配各种显示屏需要锁定长或者宽, 之后利用钉子将其他图像利用创建空节点定在左右或者上下两侧 比如unity编辑器通常是锁定宽的,那我…...
Python在DevOps中的应用:自动化CI/CD管道的实现
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 在现代软件开发中,DevOps理念的引入极大地提升了开发与运维的协作效率,而持续集成(…...
API接口技术推动电商数据处理的自动化
在当今数字化浪潮中,电商行业正以前所未有的速度发展。API(Application Programming Interface,应用程序编程接口)接口技术在这一过程中扮演着至关重要的角色。API接口作为连接不同系统和服务的关键桥梁,通过其自动化处…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...

关于easyexcel动态下拉选问题处理
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导…...