设计和训练人工智能模型的意义是什么?

news/2024/11/20 8:57:48/文章来源:https://www.cnblogs.com/jellyai/p/18556020

前一篇:《人工智能模型训练技术,正则化!》

序言:人工智能模型的真正价值在于其实际应用,而不仅仅停留在理论阶段。本节将通过一个简单而常见的应用场景,展示如何将前面几节所设计和训练的模型应用于实际问题。我们将使用训练好的模型对句子进行分类,具体来说,识别社交平台上用户评论的类别。通过这样的技术,社交平台可以实时分析用户的情绪,迅速采取适当的响应措施,比如缓解冲突、提升用户体验,甚至优化平台的推荐算法。

接下来,我们将逐步引导您完成这一过程,从句子编码到模型预测结果的解读,展示如何将理论和实践结合起来,将人工智能的潜能充分释放。

使用模型对句子进行分类

现在你已经创建了模型,训练它,并通过优化解决了许多导致过拟合的问题,下一步就是运行模型并检查其结果。为此,你需要创建一个包含新句子的数组。例如:

sentences = [

"granny starting to fear spiders in the garden might be real",

"game of thrones season finale showing this sunday night",

"TensorFlow book will be a best seller"

]

然后使用与训练时创建词汇表时相同的 tokenizer 对这些句子进行编码。这一点很重要,因为只有使用相同的 tokenizer 才能确保使用的是模型训练时的词汇表和标记。

sequences = tokenizer.texts_to_sequences(sentences)

print(sequences)

打印输出的结果是上述句子的序列:

[[1, 816, 1, 691, 1, 1, 1, 1, 300, 1, 90],

[111, 1, 1044, 173, 1, 1, 1, 1463, 181],

[1, 234, 7, 1, 1, 46, 1]]

这里有很多 1 标记(表示“”的占位符),因为像“in”和“the”这样的停用词已经从词典中移除了,而像“granny”和“spiders”这样的单词并未出现在训练词典中。

在将这些序列传递给模型之前,需要确保它们的形状符合模型的预期——也就是目标长度。你可以像训练模型时那样使用 pad_sequences 来实现:

padded = pad_sequences(sequences, maxlen=max_length,

padding=padding_type, truncating=trunc_type)

print(padded)

这会将句子输出为长度为 100 的序列,所以第一个序列的输出结果会是这样的:

[ 1 816 1 691 1 1 1 1 300 1 90 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 ]

这个句子确实很短!

现在句子已经被标记化并填充为符合模型输入维度要求的格式了,是时候将它们传递给模型并获取预测结果了。这非常简单,只需要这样操作:

print(model.predict(padded))

结果会以列表的形式返回并打印出来,高分表示可能性较大的讽刺性。以下是我们示例句子的结果:

[[0.7194135 ]

[0.02041999]

[0.13156283]]

对于第一个句子 “granny starting to fear spiders in the garden might be real”,尽管它包含了许多停用词并且有大量的零填充,但它得到了一个很高的分数(0.7194135),这表明它具有很高的讽刺性。而后两个句子的分数低得多,表明它们的讽刺可能性较低。

总结:是的,人类为什么需要人工智能模型?因为在许多实际应用场景中,传统的计算程序或者编程代码无法有效解决问题,而这些场景往往只能由人类很好地处理。为了提高效率、降低运营成本,各大公司和企业才会投入巨额资金去研发和设计人工智能模型。

前一篇:《人工智能模型训练技术,正则化!》

序言:人工智能模型的真正价值在于其实际应用,而不仅仅停留在理论阶段。本节将通过一个简单而常见的应用场景,展示如何将前面几节所设计和训练的模型应用于实际问题。我们将使用训练好的模型对句子进行分类,具体来说,识别社交平台上用户评论的类别。通过这样的技术,社交平台可以实时分析用户的情绪,迅速采取适当的响应措施,比如缓解冲突、提升用户体验,甚至优化平台的推荐算法。

接下来,我们将逐步引导您完成这一过程,从句子编码到模型预测结果的解读,展示如何将理论和实践结合起来,将人工智能的潜能充分释放。

使用模型对句子进行分类

现在你已经创建了模型,训练它,并通过优化解决了许多导致过拟合的问题,下一步就是运行模型并检查其结果。为此,你需要创建一个包含新句子的数组。例如:

sentences = [

"granny starting to fear spiders in the garden might be real",

"game of thrones season finale showing this sunday night",

"TensorFlow book will be a best seller"

]

然后使用与训练时创建词汇表时相同的 tokenizer 对这些句子进行编码。这一点很重要,因为只有使用相同的 tokenizer 才能确保使用的是模型训练时的词汇表和标记。

sequences = tokenizer.texts_to_sequences(sentences)

print(sequences)

打印输出的结果是上述句子的序列:

[[1, 816, 1, 691, 1, 1, 1, 1, 300, 1, 90],

[111, 1, 1044, 173, 1, 1, 1, 1463, 181],

[1, 234, 7, 1, 1, 46, 1]]

这里有很多 1 标记(表示“”的占位符),因为像“in”和“the”这样的停用词已经从词典中移除了,而像“granny”和“spiders”这样的单词并未出现在训练词典中。

在将这些序列传递给模型之前,需要确保它们的形状符合模型的预期——也就是目标长度。你可以像训练模型时那样使用 pad_sequences 来实现:

padded = pad_sequences(sequences, maxlen=max_length,

padding=padding_type, truncating=trunc_type)

print(padded)

这会将句子输出为长度为 100 的序列,所以第一个序列的输出结果会是这样的:

[ 1 816 1 691 1 1 1 1 300 1 90 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 ]

这个句子确实很短!

现在句子已经被标记化并填充为符合模型输入维度要求的格式了,是时候将它们传递给模型并获取预测结果了。这非常简单,只需要这样操作:

print(model.predict(padded))

结果会以列表的形式返回并打印出来,高分表示可能性较大的讽刺性。以下是我们示例句子的结果:

[[0.7194135 ]

[0.02041999]

[0.13156283]]

对于第一个句子 “granny starting to fear spiders in the garden might be real”,尽管它包含了许多停用词并且有大量的零填充,但它得到了一个很高的分数(0.7194135),这表明它具有很高的讽刺性。而后两个句子的分数低得多,表明它们的讽刺可能性较低。

总结:是的,人类为什么需要人工智能模型?因为在许多实际应用场景中,传统的计算程序或者编程代码无法有效解决问题,而这些场景往往只能由人类很好地处理。为了提高效率、降低运营成本,各大公司和企业才会投入巨额资金去研发和设计人工智能模型。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【分享】数据传输新挑战:内外网文件如何实现安全高效摆渡?

随着信息化的不断深入,越来越多的数据被电子化,这使得数据安全问题变得更加突出。全球42%的企业在过去一年中至少经历过一次数据泄露事故,30%的企业IT人员在数据泄露事故中被开除,50%的企业IT认为文件管控难度大、成本高。 为了保护核心数据,大部分企业都实施了内外网隔离…

画图-利用画图工具修改聊天记录时间

1、用Windows自带的画图工具 打开要修改的图片 选择“矩形”用矩形选中要修改的时间即可对其进行 移动 或者覆盖的操作

Redis中常见的数据类型及其应用场景

五种常见数据类型 Redis中的数据类型指的是 value存储的数据类型,key都是以String类型存储的,value根据场景需要,可以以String、List等类型进行存储。各数据类型介绍:Redis数据类型对应的底层数据结构String 类型的应用场景 常用命令存放键值:set key value [EX seconds] …

dotnet 9 WPF 项目禁用 IncludePackageReferencesDuringMarkupCompilation 导致源代码包 XAML 构建失败

本文记录在 dotnet 6 时通过禁用 IncludePackageReferencesDuringMarkupCompilation 解决源代码冲突问题时,在 dotnet 9 将因此导致 XAML 构建生成的 g.cs 文件包含的 XAML 只记录相对文件路径,从而导致构建不通过在 WPF 修复 dotnet 6 与源代码包冲突 这篇博客里面和大家介绍…

WPF 被 灵格斯翻译官 取词带崩

本文记录 灵格斯翻译官 翻译软件带崩 WPF 程序问题灵格斯翻译官 : http://www.lingoes.cn/ 只要有 WPF 的 ToolTip 或者其他小窗口,执行鼠标拖动过程中,就可能被带崩 我这次没有捞 dump 文件,就只记录此问题 退出 灵格斯翻译官 进程则没有此问题 我从事件管理器也看到 WPS …

读数据质量管理:数据可靠性与数据质量问题解决之道09数据可靠性

数据可靠性1. 数据可靠性 1.1. 数据可靠性指的是一个组织在整个数据生命周期中提供高数据可用性和健康状况的能力1.1.1. 是高数据质量带来的结果1.1.1.1. 高质量的大数据是这个大规模转型平台的核心1.1.2. 随着公司接收到比以往更…

sql-labs靶场通关

Basic challeges基础 sql 注入,没有任何的过滤,转义,WAFless-1 -- (单引号)这里虽然是数值型注入,但是,php 中为 id 参数套了个单引号,所以这里按字符型注入方式通过,可以看到,这里输出的还是 id=1 的值,以此判断为数值型,发生了 int 隐式转换payload: 0 union selec…

年底了,你的项目该复盘了

了解复盘? 什么是复盘? 复盘,围棋术语,也称“复局”,指对局完毕后,复演该盘棋的记录,以检查对局中招法的优劣和得失关键。复盘就是每次博弈结束以后,双方棋手把刚才的对局再重复一遍,这样可以有效地加深对这盘对弈的印象,也可以找出双方攻守的漏洞,是提高自己水平的…

强化学习--策略迭代如何解决01背包问题?内附代码

背景 看Sutton的Reinforcement learning: An introduction,里面将策略迭代作为一种基于动态规划的方法。 书中举了个grid world的例子,非常符合书中的数学原理,有状态转移概率,每个时间步就是每个state等..... 动态规划作为一个常见的面试八股,经常出现于笔试题中,一般都…

Redis 学习笔记(一)-Redis 安装

一、Redis简介 (1)什么是Redis ​ Redis 是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。在企业开发中, 主要用于做数据库、缓…

交互式备忘单: 汇集了各种有用的安全工具

这份工具包是一个交互式备忘单,汇集了各种有用的安全工具,主要用于渗透测试或红队练习。这些工具来自于Github仓库和其他公开来源。以下是工具列表及其分类: AD:用于Active Directory安全的工具。 BinaryExp:用于二进制漏洞利用/入侵的工具。 Blue:用于蓝队操作和防御的工…

29. 使用MySQL之数据库维护

1. 备份数据 像所有数据一样,MySQL的数据也必须经常备份。由于MySQL数据库是基于磁盘的文件,普通的备份系统和例程就能备份MySQL的数据。但是,由于这些文件总是处于打开和使用状态,普通的文件副本备份不一定总是有效。 下面列出这个问题的可能解决方案。使用命令行实用程序…