自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 【class19】人工智能初步---语音识别(5)

不同之处在于:detect_nonsilent()通过传入静音段的参数min_silence_len, silence_thresh去除静音段,来定位语音段的位置,从而获取语音段时间信息,返回值为列表。第16行,使用detect_nonsilent()获取语音段时间信息。使用str()函数将mspart转化为字符串,再通过zfill()函数返回长度为3的字符串,位数不够前面补0。使用str()函数将spart转化为字符串,再通过zifill()函数返回长度为2的字符串,位数不够前面补0。

2024-05-29 16:22:27 738

原创 【class18】人工智能初步----语音识别(4)

批量调用接口识别音频:在for循环结果的循环体内,调用语音识别函数audio2text(),获取语音识别结果,并输出识别结果,实现批量调用接口识别音频。语音识别的输入和输出都是不定长序列,换句话说,就是每次输入的语音和输出的文字长度不定。比如,时长不一样的语音,采样后所得的数字序列是不一样长的。本节课,我们学习了语音识别模型的结构和原理,同时调用创建好的AipSpeech客户端实现了语音转文字功能。注意:该接口只能将60秒以下的音频识别为文字,若音频时长超过限制,可切分为多段音频进行识别。

2024-05-28 18:47:00 1435

原创 【class17】人工智能初步-----语音识别(3)

第17行,使用split_on_silence()切分音频,并传入参数sound,min_silence_len,silence_thresh。完成模块的导入后,我们利用语音端点检测的原理: 对split_on_silence类,设置适当的参数。音频这个东西,看波形就可以看出来有没有声音,哪部分是语音段,哪部分是静音段一目了然。文件保存至路径变量path,路径为/Users/yequ/下的音频文件,文件名从音乐片段0.wav-音乐片段11.wav音乐。

2024-05-27 11:35:07 1285

原创 【class15】人工智能初步----语音识别(2)

使用AudioSegment类中的from_wav()函数读取音频文件"大话西游.wav"。是最常见的声音文件格式之一,一种标准的数字音频文件,该文件能记录各种单声道或立体声的声音信息,并能保证声音不失真。使用VideoFileClip类中的.audio属性获取加载后视频文件的音频。使用.audio属性可以获取视频中的音频对象。使用AudioSegment类中的from_wav()函数读取音频文件"大话西游.wav"第7行,使用VideoFileClip类中的audio方法获取加载后视频文件的音频;

2024-05-26 10:34:57 672

原创 【class14】人工智能初步之语音识别

在这个过程中,耳朵就相当于声音的接收端,大脑相当于GPU,对声音进行处理,最终得出一个判定的结果。我们知道电脑只能对数字进行处理分析,语音识别模型的输入和输出没有我们想象的那么简单:输入和输出不一定是简单的语音和文字。比如,音位字典告诉电脑,cat由K、AE、T三个音位组成,遇到这三个音位组合时,就输出cat这个单词。与图像识别类似,人类对自己熟悉的语言,理解起来很简单,遇到不熟悉的语言,理解起来就比较困难了。在深度学习没有流行之前,以音位为输出是很常见的,因为音位和声音的对应关系比较强,机器更好理解。

2024-05-25 09:15:00 950

原创 【class14】创建自己的OCR系统

想要从字典result中取出参数'words_result'的值,得到文字信息,可以用result['words_result']。列表中的每一个元素又是一个字典,我们想要获得'words'参数中的文字信息就需要指定键'words'。示例中添加了参数detect_direction,将其设置为"true",就能检测图像的朝向。这几行高亮的代码,利用「通用文字识别(高精度版)」接口,对一张输入图片,识别出所有文字。最后,为了保存记录,我们试着将刚刚获得的所有文字信息写入最简单的文本文件,方便查看。

2024-05-24 08:30:00 834

原创 【class13】人工智能初步(OCR技术初步)

比如,习惯了复制粘贴后,遇上想借鉴的纸质文件、需付费才能复制的文档、无法选取的PDF文件或图片,只能一个字一个字重新敲?背景复杂, 字体多样, 颜色多变, 方向任意, 大小不同, 语言不统一, 板式不固定这些问题。每一层的每个阀门都与下一层的所有阀门相连,组成一个从前到后,逐层完全连通的水流系统。在电商行业中,智能识别广告图中的文字内容,过滤广告中的不良信息,为企业降低业务风险。实际上,对我们来说,OCR一点儿也不陌生。再看一看,是不是标记了"中"字的出口水流最多,如果不是,再调节所有的阀门。

2024-05-23 08:45:00 1197

原创 【class13】人工智能初步(人脸识别(4))

检测到的面孔【位置信息】与配置options参数时添加的【检测质量】、【年龄预测】信息,也会依次记录在ret_data['result']['face_list']这些字典中。当识别到多张人脸时,ret_data['result']['face_list'] 列表里会存储多个字典,且每个字典都对应了一个人脸的基本信息。其中,对五官的遮挡检测存储在face_msg['quality']['occlusion'],ret_data['result']['face_list'] 中用列表存储每张人脸的信息;

2024-05-22 08:45:00 889 1

原创 【class12】人工智能初步(人脸识别(3))

配置options参数不仅让我们成功检测到图中的所有面孔,并依次将每个面孔的【位置信息】、【检测质量】与【年龄预测】等信息,记录在ret_data['result']['face_list']这些字典中。检测到的面孔【位置信息】与配置options参数时添加的【检测质量】、【年龄预测】信息,也会依次记录在ret_data['result']['face_list']这些字典中。在 options 字典中,加入一个键为'face_field'的元素,它的值为字符串存储的属性名称。

2024-05-21 08:30:00 829

原创 【class12】人工智能初步(人脸识别(2))

配置options参数不仅让我们成功检测到图中的所有面孔,并依次将每个面孔的【位置信息】、【检测质量】与【年龄预测】等信息,记录在ret_data['result']['face_list']这些字典中。在 options 字典中,加入一个键为'max_face_num'的元素,该元素对应的整数值就是程序能够从图片中识别到的最多人脸数目。如果文件已经存在,则可以在文件的末尾追加内容,并且可以读取文件内容。在 options 字典中,加入一个键为'face_field'的元素,它的值为字符串存储的属性名称。

2024-05-20 09:00:00 1175

原创 【class11】人工智能初步(人脸识别(1))

是人脸识别的Python SDK客户端,它为使用人脸识别的开发人员提供了一系列的功能方法。若要实现类似于“美颜”、“脸部卡通特效”等更精准的脸部修改,需要程序在检测到人脸的同时,进入【人脸识别】页面以后,我们需要通过【去创建】功能,创建一个私人使用的人脸识别应用。在今天的课程中,通过创建AipFace,我们完成了开发“口罩佩戴检测”系统的第一步。利用一些第三方接口,即API,能够让我们更小成本的实现人脸识别的过程。判断的图案越复杂,程序的计算量就会越大,获取结果的时间也就越长。

2024-05-19 17:13:48 912 1

原创 【class10】人工智能初步----批量化处理

要查看文件夹中所有的文件,该文件夹的路径为imgroot ,就将该路径传入到 os.listdir() 函数中。的方式拼接变量 imgroot、"/"、变量 imgname,将拼接后的字符串赋值给变量 filePath。使用 os.listdir() 函数获取文件名后,返回一个列表,列表中的每个元素是文件夹中的每个文件。每个上层标签的字符数不一样,有的2个字的,比如动物、植物,有4个字的,比如自然风景。使用os.listdir()函数获取该路径下所有的照片,并赋值给变量imglist。

2024-05-17 10:15:00 778

原创 【class9】人工智能初步(处理单张图片)

例如:cat.jpg 要移动到'动物-猫'这个文件夹中,需要先检查 'img'文件夹中是否已经创建了名为'动物-猫'的文件夹。创建完文件夹,我们打开'img'文件夹就可以看到刚刚创建的'动物-猫'这个文件夹。及以后的版本中,字典记住了插入顺序,但这是一个实现细节,不应依赖于这一点来保证跨版本的一致性)。这几行高亮的代码,利用通用物体识别接口,对一张输入图片,输出其中的多个物体及场景标签。它接收两个参数,第一个参数是要移动的文件(夹)路径,第二个参数是目标文件(夹)的路径。

2024-05-16 08:00:00 1182

原创 【class8】人工智能初步(图像识别-----卷积神经网络)

这里,为了方便使用,先将AppID、API Key和Secret Key以字符串的形式,依次赋值给变量APP_ID、API_KEY和SECRET_KEY。但是网络的设计并不是简单的层数上的纵向堆叠,每一层的参数都需要不断反复的调试,投入大量的人力、物力和时间。即使一个简单的深度学习模型,跑一次数据的时间也短则数小时,长则数天,普通的电脑很难满足要求。大量的数据和参数需要大量的计算资源支持,因此越深越复杂的网络对计算资源的需求也越大。深度学习的许多研究成果,离不开对大脑认知原理的研究,尤其是视觉原理的研究。

2024-05-15 08:00:00 1214

原创 【class】人工智能初步(了解深度学习)

对于同样尺寸的一幅图,如果图像分辨率越高,则组成该图的图像像素数目越多,像素点也越小,图像越清晰、逼真,印刷的质量也就越好。我们的眼球转动一次的平均时间是200毫秒,如果把这每一次转动比作按下一次相机快门的话,一个2岁左右的孩子,已经看过上亿张现实世界的图片了。我们常说的某幅图像的分辨率是1280(长)×720(宽),指的就是这张图中的每一行都有1280个像素,每一列都有720个像素。面对陌生的事物,我们也很难认清。如果我们用不同的数字来表示不同的颜色,图像就可以表示为一个数字表,这就是计算机所看到的。

2024-05-14 08:15:00 781

原创 【class6】人工智能初步(选择一个合适的监督学习算法。)

通过这样的方式,第二层的感知器就能处理更复杂和更抽象的数据。细心的同学可能已经发现,我们在处理数据集时使用的是fit_transform()函数,但在处理没有标签的预测数据时使用的是transform()函数,为什么呢?因此,我们只需要使用transform(),这样就可以使用相同的均值和方差来对没有标签的数据进行转换,同时又避免了我们的模型学习预测数据的特征。那么对于没有标签的数据,如果使用fit()函数,则会重新计算一份新的特征均值和方差,这样的话我们的模型就会又学习一遍没有标签数据的特征。

2024-05-13 08:15:00 1356

原创 【class5】建立人工智能系统(2)

通过这样的方式,第二层的感知器就能处理更复杂和更抽象的数据。有了预测结果后,我们就可以通过对比【依靠模型生成的测试集标签数据test_pred】和【测试集原本的标签数据test_label】,来检验模型的准确率。因此,我们只需要使用transform(),这样就可以使用相同的均值和方差来对没有标签的数据进行转换,同时又避免了我们的模型学习预测数据的特征。那么对于没有标签的数据,如果使用fit()函数,则会重新计算一份新的特征均值和方差,这样的话我们的模型就会又学习一遍没有标签数据的特征。

2024-05-12 05:24:06 928

原创 【class4】建立人工智能系统(1)

而每条评论的文本特征则需要我们来提取。当我们提取评价的文本特征后,就可以发现,每一条评论的文本特征都有一一对应的“好评”或“差评”的标签。这里,我们将random_state参数赋值为1,该数字没有特殊含义,可以换成其它任意整型(int),它相当于一个种子参数,使得每次划分数据的结果一致。每次运行程序时,train_test_split()函数都是根据随机数来对数据进行“洗牌”,从而达到随机划分数据的效果。将需要进行划分的数据集的文本特征X,作为必选参数,传入到train_test_split()函数中。

2024-05-11 08:18:50 1131 1

原创 【class3】人工智能初步(词频统计)

函数,用于构造词袋模型,计算各个词语出现的次数。fit_transform() 会筛选出所有评价里前15个出现频率最高的词语,并对这些词语进行编号,然后依次统计每条评价里这些词语出现的次数。接下来,就需要构造词袋模型,从这些评价中提取所有出现过的词语,然后统计每个词出现的频率,即词频。找到商品评论中出现次数最多的词语,比如出现频率最高的前15个词,可能就找出了最能够描述这件商品的关键词。为了构造词袋模型,我们已经完成了处理分词结果的第一个步骤,将每条评价的分词结果以空格连接生成一个新的字符串。

2024-05-11 06:32:09 1034 2

原创 【class2】人工智能初步(自然语言处理)

它的数据格式如图所示,文件中多个数据之间通常用逗号分隔,每一行的数据都是相同的结构。但在中文文本里,所有的字都连在一起,计算机并不知道一个字应该与其前后的字连成词语,还是应该自己形成一个词语。通过词袋模型生成的结果,词的顺序和语法都被忽略了,变成了一些词语间的组合,但又在一定程度上保留了主题信息。具体的方法是把所有的评价都存储在一个列表中,这样不论是遍历所有评价还是访问单独的某一条评价,都会非常方便。编程语言中的关键词数量是固定的,而自然语言中能使用的词汇量是无限的,甚至还在不断创造新词;

2024-05-08 22:46:44 1320 4

原创 【class1】人工智能初步(认识人工智能)

比如,我们会学习如何通过“人脸识别”技术,自动提取监控设备中的人脸画面,对乘客的面部特征进行分析,并对未佩戴口罩的乘客进行筛选并提醒。若在规定的时间内,大部分测试人员没有意识到与他聊天的是机器人,那我们就认为该机器人是“人类聊天模仿大师”,即它是具有智能的。测试具有聊天功能的机器人是否“智能”,我们可以让它模仿人类的说话习惯,然后与不同的测试人员聊天。简单来说,早期的“人工智能”程序由大量的字典等内容组成数据储备,并用固定数量的条件规则作为逻辑。通过某种方式将这些数据归纳、总结,就可以得出新的结论。

2024-05-08 16:04:29 740 1

原创 【class2】两个小练习

60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,高于100 万元时,超过 100 万元的部分按 1%提成,从键盘输入当月利润 I,求应发放奖金总数?`for`循环结束后,如果还有剩余的利润(即利润超过了所有定义的阈值),则使用`rates`列表中的最后一个费率(针对超出最高阈值部分的利润)来计算奖金,并加到`bonus`中。- 如果当前利润大于正在处理的阈值,则先按照该阈值的费率计算该阈值部分的奖金,并从总利润中减去该阈值金额,继续循环处理下一个阈值。

2024-04-12 07:25:29 358 1

原创 【class1】python基础

1.变量名可以包含的字符有:小写字母(a-z),大写字母(A-Z),数字(0-9),注意:此函数返回值为字符串型数据,要用 int()、float()或 eval()转。>>>a[1:4] #[start:end]从start提取到end-1。同时输出文字和变量 a 的数值(逗号分隔):print(“结果是”,a)2.布尔运算(逻辑运算):and(与),or(或),not(非)9.变量a在原有数值上增加1(a+=1,即a=a+1)>>>a[:4] #[:end]从开头提取到end-1。

2024-04-11 20:29:44 820

原创 【class7】

将 url 和 headers参数,添加进requests.get()中,将字典headers传递headers参数,给赋值给response。在 jieba 模块中,分词的方法有很多种,在这里,我们使用 jieba.lcut()。,将列表 list1 和列表 list2 使用 + 运算,赋值给 result,即可将两个。在 Python 中合并列表是非常常见的操作,方法也有很多,在这里,我们学习通过。传入 jieba.lcut(),将语句进行切分。,在这里,有多少条电影短评,就有多少个列表生成。

2024-04-08 07:25:38 1300 1

原创 【class6】一个爬虫的案例

response.raise_for_status() # 如果响应状态码为4XX/5XX,则引发HTTPError。info.to_excel(excel_writer=writer, sheet_name="计算机科学与技术")file_path = "C:\\Users\\DELL\\公务员职位信息.xlsx"print(f"请求页面{page}时出错:{e}")print(f"解析页面{page}时出错:{e}")"部门": departmentList,"地区": areaList,

2024-04-07 07:28:15 710

原创 【class5】关于string和text的一些知识 and 示例

使用BeautifulSoup()读取html,添加lxml解析器,赋值给soup。时,示例中标黄的部分:有两个节点,一个节点是 em 标签内容,另一个节点是纯文字。使用BeautifulSoup()读取html,添加lxml解析器,赋值给soup。使用find_all()查询soup中em的节点,赋值给content_all。使用find_all()查询soup中h2节点,赋值给content_all。使用find_all()查询soup中p节点,赋值给content_all。

2024-04-05 12:03:06 666 1

原创 【class4】爬虫基础

变量 soup 是一个 BeautifulSoup 对象,调用 soup 使用 find_all() 函数就能查找 HTML 中的内容。示例代码中,如果我们想要获取 h1 标签所在的节点,可以在 find_all() 中,传入 name 参数,其参数值为 h1。使用find_all()查询soup中em的节点,赋值给content_all。中的 find_all() 函数,可以根据标签名,获取soup中的节点。将返回的结果,赋值给一个变量。看一看有什么不记得的内容,这是前几天的内容,多复习一下。

2024-04-04 08:59:13 1202

原创 【class3】

请求方法在请求头(Requests Headers)中,浏览器发送HTTP请求时,要告诉服务器此次请求的方法类型。状态码是由3位的数字构成的,主要用于返回服务器执行的结果。标签用于定义文档的主体,包含网页的图片、文字、链接、视频等多种展现形式。的,例如<head>元素中嵌套了<title></title>成对标签。,原因是它具有更高的效率,所以我们也将采用lxml解析器。标签用于定义文档的头部信息,这些信息不会展示在网页中。学习了对内容的解析,下节课我们继续学习对内容的定位~~

2024-04-03 11:03:50 1267

原创 【class2】爬虫基础

前面内容讲到,网页爬虫能够获取网页上的信息,要使用Python来爬取网页内容,需要安装。注意】在自己电脑上安装模块后,导入requests模块时,可能会出现如下报错信息。以上就是作者今日所学,明天我们就开始了解HTML,wei后面的爬虫项目做准备,仔细观察刚刚输出的内容,不像我们日常接触的Python语言。(1)爬虫爬取的原则是所见即所得,只能获取网页上有的内容。安装之后,用import导入requests模块。(3)“//”后面,“/”前面部分为主机名。,url=“ http://+主机号+/”

2024-04-02 10:30:12 1844

原创 【class1】爬虫基础知识

服务器的种类有很多,当浏览网页时其主要作用就是将网页信息提供给浏览器,此时的服务器也被称为Web服务器。日常浏览的网页中,既有图片、文字,还有精致的排版,这些页面是怎样展示出来的呢?表示服务器无法找到请求的资源,或者,有的服务器拒绝你的请求并不想说明理由时也会提示404。,爬虫主要请求服务器的资源,大量快速的访问服务器,会影响服务器速度,耗费服务器性能。请求方法在请求头中,浏览器发送HTTP请求时,要告诉服务器此次请求的方法类型。所以,爬虫获取的就是浏览器解析之前的源代码,也就是图中框选的内容。

2024-04-01 09:38:35 1614 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除