粉丝1671获赞2741

这节课呢,我们主要是来研究如何调用内中的实力,方法其实很简单,重点我们需要去关注。如果要调用内中的方法,我们需要手动传递一个参数,我们先来定义一个方法, 然后呢我们再来定义一个类,在类里面我们来定义一个同名的方法。好,如果说我现在想要去调用类中的方法,那怎么办呢?先去拿到他的一个对象, 然后呢我通过类名来调用它。类里面的方法当然需要传两个参数,一个呢是对象,一个呢是它的食物。我们执行程序你就可以看到类里面的方法已经被调用到了,但是啊,这种方式是不是特别的恶心啊,对吧? 好,他需要你传递两个东西,如果按照我们原来的方式的话,应该是怎么来调用的?通过对象直接来调用来执行一下,效果是一样的。那如果说我想要调用内外面的方法呢?哎, 直接来调用他的方法,并且把这个参数传给他就可以了。好,再来仔细会发现类里面的方法跟类外面的方法都能够被调用到,其实很简单。好了,我们下课学费来的小伙伴可以帮我点个赞,欢迎进群领资料哦。

模块是一个拍摄文件,能定义函数内和变脸,模块里也能包含可执行的代码。导入一个模块非常简单,使用关键词因破特加上模块名,这里我们导入时间模块,因 pot tom 要用模块里的方法也很简单,通过模块名点方法名就调用了模块里的函数,这里写下 print 括号,括号里写下汤姆点 c, tom 括号 c, 他们是函数,要用函数时,后面要加上括号运行,可以看到输出了当前的系统时间。

喂喂喂喂 而去自己的真实感受,类似 全部拿去黑喂狗, 迎合所有要求,为了衬托爱情之上而重色轻友,本来要去为某人的某某而去自己的城市感受一次,所有的借口全部拿去捍卫。 要爱就爱,全部都爱要爱就爱,全部都爱要爱就爱 我的好看吗?装出来的温柔 后来要成为某人的某某而去自己的真实感受认识所有的 全部拿去 爱慕,也放多了个太阳 气自然的啊。 爱这种 记得激流还要爱就爱你爱我远方多了要爱就爱热爱,爱屋及乌的爱 i outdoor 骑行的速度 just the way i am。

大家好,今天来跟大家介绍一个这个一个工具啊,那么这个工具呢,就是将这个,呃用 vs 就 svm 啊,就支持销量机的一个算法,去训练一个图像分类的这样的一个模型啊。 呃,我们这个软件呢,训练出的模型支持这个它因为它是一个通用的模型文件,所以它支持 c 加加,支持 python, 还有 c 叉五等移动都可以的,因为它是一个标准的这样的一个生产的这样的一个模型文件。嗯, 呃,当然我们这个软件啊,他只支持这个图片分类啊,所以大家要出一下,呃,为了跟大家演示啊,我就这边啊,这边我会存放这个模型的保存路线的,就放到这里面,然后呢我会做一个 分类的这样的一个演示啊,就是,呃,这是猫啊,大家看这就是猫。呃,大家这个训练模型的时候啊,一定要注意一个细节,就是第一个就是建议大家不要用这个中文的路径还有空格啊,就大家尽量要避免这些, 哎,要如何避免中文还有这个空格这样一个路径啊?就是希望大家能够用全英文的路径去操作。 这个就是我们训练的时候啊,我们一定要把这个文件夹啊,下面要分类的,放好自己的这个类别的这个名字就可以了啊,当然这个类别呢就不要用中文的,大家建议用英文的啊, 这样呢,我们就相当于比如说你可以使用,但我们这个至少是两个分类以上,所以你必须得两个分类以上,比如 cat dog person 啊,然后呢每 一个类别呢,你可以单独建个文件夹,就像我这样建个文件夹,然后这边放图片,那么这个图片呢,因为训练的时候啊,他这个图片会进行缩放,所以你这个图片的任何分辨率都可以啊。呃,建议就是说不要太小,也不要太大,你看我这个分辨率 都可以随意五百至四乘四六七的,然后五百乘四零九的,这样我们的分辨率呢是非常粗松复杂的,就是各种各样的分辨率都有啊,这个就是我们的狗,然后这个就是我们的这个人,这个就是随便我们找到人就做个测试, 然后呢我们演示的时候,我们跟他准备了三百张图片的猫和三百张的图片的狗,还有三百图像,三百张图像里面有人的,这样这样的一个图像好,我们训练模型呢,十分简单啊,我们打开 我们的软件啊,首先呢我们选择图片的路径,大家可以点击选择啊,就这样去选择,也可以直接就是拖拽啊,大家要注意下,拖拽,一定要拖拽到这个,一定要是这个路径啊,大家千万不要选这样的路径,就是选啊,一定要选这个偏选到这个你的 pic 路径面啊,像这个就是错的, 一定要选择你类别的,这个存放的文件夹不能够选这个,这里面去了,所以你要注意一下,就是你的文件夹下面要要是这些类别, 然后你的图片格式啊, g b g 的啊,就是你看你的后缀啊,比如说像我这个猫的后缀,你看是点 g b g 的,点 g b g 的,那么大家就一定要选 g b g 啊,不然的话它会找不到。 如果你是 png 的啊,就是要 png, 所以你的图片一定要统一, 你要同意这个就是。然后训练的尺寸大家可以自己去改,默认的话就是六十乘七十的,你的图片的分辨率比较呃,小的时候你可以自己去改啊,这个就是随便了,默认的就给六十乘七十,然后最大叠的次数按默认就可以了, 然后你的模型往这存,模型往这个我们指定的路径下面去存就可以了啊,我们选择这个路径下面去存一下就可以了。 好,我们看一下我们软件,目前的话,我们这个东西呢是没有啊,就是这样的,就是我们只需要一个图片就行了,把这个按照我们的这种格式放好就可以了。我们点击开始训练。 好,大家看到他这个状态上面会有解释啊,说正在加载训练,正在训练中,然后将会说训练已完成,大家看到。好,当训练完成以后呢,我们可以直接在这个地方,我们点击模型的宝图文件加,大家看到他会 直接进去啊,好,大家看到我们这个地方就有了他这个模型啊,这个文件还文件还是比较大的。 好,这个就是我们的二十二十兆的文件。好,然后这里面分的是类别啊,我们的软件会自动的去把这个类别对应上,也就是零表示 cat, 一表示道路和这个二表示 person, 这个大家注意啊。 好,因为我们已经还跟大家准备了这个模型,我们已经过来测试了,我们已经经过测试了,所以呢, 大家看到我们这个已经经过测试了,我们已经在 c shop 里面测过了,这里呢我们提供了 c 加加的文件,还有 c shop 我们也测过了,还有拍摄我们都测过了,都是没问题的啊, 大家只要用我这工具,那么我就可以这个我们的接口啊,就全部跟大家样例,都跟大家听好听好了,大家 它只需要这个呃,安装 open c b 啊去引用就可以了。呃,我们 c 加加的版本啊,建议大家用四点七级以后的版本啊,那么这是 open c b 的这个版本的一个版本。 呃,我们测试的时候是用的 open cv 四点七啊去跟大家测试的, 然后我们的 c 上部呢是用这个 open c v 上部去,呃,我们是用的是这个 e m g u 这样的一个模块儿啊,跟大家去做测试的,它实际上也是一个类似于 open c v 的这样的一个库啊,用的是这个 e m g u 跟大家做测试的, 理论上也是支持 open cp shop 啊,大家可以自己去写啊,其实都差不多啊大家,首先我们来跟大家做做一下测试啊,我们的测试呢已经跟大家去,嗯,就是我们测试的话呢,我们就可以 已经呃放到这个借口里面去,借口文件里面去了,大家可以自己去测一下,然后我们这里边就测了一个这个 percent, 我们也测了 dog, dog 和 cat 这样的一个类啊,好,我们点击开始啊测一下,大家只要把模型传进去啊,基本上都可以很快的把它测出来。 好,大家看到这个地方呢,就已经正确的测试出来了,他已经是二,就是一个 person, 这个就是符合我们的期望了吧,这个就我们放在这个 person 就是二。 好,呃,我们这个呢,就是相当于我们这个就是 c 叉五的版本,我们也提供了 c r 加版本, c r 版本我就不跟大家演示,因为我这个版本也是,呃,测试,测试通过了,没有什么太大的悬念啊,就是因为我们是测试过了以后, 呃才会去发这个视频教程嘛,所以这个肯定是可以的啊。嗯,这个就是我们提供的这个 c r 加的版本,其实 很简单啊,我们训练的模型出来以后呢,我们只需要移动这几个代码就可以了。好,然后我们也也提供了拍摄的版本,所以我们整个的这个软件呢,是非常实用的啊,就是基本上,呃,让你就是傻瓜式的去训练一个模型,然后去做分类,然后最后呢 通过这个分类呢,我们通过调用啊,比如我们支持这个啊,我们可以支持 c 加加 c 叉五还有 pass 这样的一个接口去直接去做调用啊,大家只需要去新建一个项目,比如说我这个里面 c 叉五里面有些东西啊,你直接去做一下这个调用就可以了,做一下调用就可以了,按照这个模式啊, 这个就是一个典型的视力啊,这呢我们就实现了一个 v s v m 啊,那有人说啊,我们这个 v s v m 有什么特点呢?其实没有什么特点啊,它其实就是调用的这个 open c v 的一个呃, 模块儿, s v s v m 里面的一个支持相连接的模块儿去做训练的啊,所以说,呃,我们这个训练的这个流程啊,其实用你用 c 压压写,用 pass 都是可以写出来的啊, 只不过我这边啊,用这个啊,用界面画画画的方法跟他写出来啊,我们可以非常迅速的去训练,不用纠结于这个 啊,怎么这个做图片的 reset 啊,怎么去做这个标签二档呢,很麻烦。那么我通过我们这个软件的整合啊,我们可以达到这个傻瓜式的训练啊,直接就将我们用我们的 svm 的算法,直接就是 训练一个分类图片,基本上可以做到傻瓜式的操作,十分简单啊,而且我们已经提供了完整的接口跟大家啊,不管怎么说啊,我们这个地方呢,还是我就觉得还是比较非常实用的这个工具啊,好,我们的教程呢就讲解就到此结束,欢迎大家收看。

让拍审训练游戏 ai 十分陌生, 首先我们需要一份标注数据集,可以自己标注或者使用别人标注。好的,接着我们训练自己的 ulov 八模型,这个模型会识别游戏中的双方阵营。 运行过程中我们需要加载自己训练好的模型,然后只截游戏中心六百四乘六百四的图片。新模型当中的零代表 fbi 阵营已代表另外一个阵营,其他代码跟上已经类似。如果你喜欢这个系列,请给我点赞、关注、收藏哦!


好,一起看,现在他,他已经编译完这个 a p p 了,线路式的 a p p 程序,开始编译 ip 程序, 他编译还是需要一段时间。呃,这样的话其实后续呢,他会继续在编译 c 井, c 啥的的工程都是自动脚本来编译的。 那我也想呢,就是开一个专辑跟那些老吉普的身份呢?来跟大家详细聊一聊技术开发上的一些问题,一些如何选择一些。呃,自己的职业规划,因为刚入手的时候会比较懵啊啊?他现在的话就开始用 c 井来编译工程了。好,这个要按一下确认。 这个呢是这样,编译完了之后的话我会进行扫录,因为没有连接硬件设备。那现在已经看一下。呃,之后我们再来看一下这个编译完的成果,这个是新编译的用户名和手机号。那 我们这有几个文件啊?有这个 c 井的执行文件,还有那个 a p 嵌入式 a p p 的并文件和这个。呃,这这个这个 iap 文件,当然还有一个文件啊,这个是 youtuber, 这次生成了一个 s i, 就是 excel 表格,表格记录了每个用户和每个 public 对应的关系。

我们是实线,实线拍死脚本实现,这个 叫调用 oracle 存储过程,存储过程的开始教本。 好,第三步,那我们接下来就在下面去实现这个拍摄交位,那我们首先需要引用我们的这个刚才所安装的我们的 cx arco, 那这里面 c x 好,你看啊,直接会有 c x r 口,我们给他直接 ta 不出来就可以了,那么引用这个 c x r 口,然后紧接着来我们看一下, 好,这个 csrco, 那我们该怎么用?在我们这里有这个笔记哈,那这里面这是整个的我们的代码,那我们来看一下哈,那把这里复制过来, 复制过来,把我们的代码复制过来。好,那这里有很多写的不规范啊,那我们整理整理,稍微整理一下,整理一下,这是名字规范的吗? 括号用余了,嗯,就可以取掉, 在这里面这个加上空格,我们符合我们皮皮吧,这括号等于就得到赢了。 ok, 好了,那我们来看一下啊,看一下我们这个代码,那首先我们设置一个变量,这个变量我们写的是一个啥东西啊? 这是写的一个我们这个 gdbc 的一个连接的 url, 连接的一个 url, 那么这里面我们的格式就是我们的用户名,用户名,然后是斜盖,加上我们的用户的密码,然后加一个艾特, 艾特后面加的是我们这个 oracle 所在 oracle 这个数据库所在服务器的这个 ipip 地址,那由于我们都是在本机,那我这个是在本机的这个刀壳里面,那大家也是自己的 windows 已经安装过我们的这个 oracle, 那我们 oracle 就在就是 自己的本机地址,那就是幺二七点零点一,然后呢奥尔库的端口号,我们默认端口是不是就是幺五二幺啊?咱们也都没有改过,这个是幺五二幺,那我们连接哪个数据库呢?还是我们这个斜杠后面的这个 o r c l 这个默认的库啊? o r c l 这个库。 好,然后紧接着我们要去创建这个连接,也就是创建我们 python 跟我们这个 oracle 的 gdbc 的连接,那需要使用我们的库, 比如说使用我们这个 csr 口下面他的这个连接的这个方法,也就是这个库里面他有一个连接的方法,那用这个方法,这个方法需要传入一个参数,那就是我们前面所创建的这个 uil 地址,所以把这个变量传进来, 把这个变量传进来,然后紧接着那我建立好连接之后,我还要建立啥呀?建立他的这个光标,那么这里面科四建立一个光标,可是这个连接的这个科四直接去建立这个光标,然后这里面我们执行这个踹,这是啥呀? 踹里面的代码,只要是他有错误,那我们可以是报告出他有什么呀?相应什么类型的错误,那么报告出来, 报告出来之后,然后我们去在这里面去执行,也就说在这段代码中一旦有了报错,有了 bug, 那怎么样 他会哎一句什么相应的类型啊?那像我这里写的就是啥呀?这里这个就是所有的错误,只要是他有错误,好,那我们就给他,给他喘执行这一, 也就说只要有车有错误就执行这一步,那没有错误的话,他就能够去顺利执行,他就能够去顺利执行,这也是啥呀?我们的这个错误检验,错误检验是吧?好, 然后看我们这里面哈,这里面首先我定义了这个啥呀?名字,也就是定义一个变量,这个变量是啥呢?是我们这个存储过程的名字,存储过程的名字,然后之后 这里打印一下,打印成什么?正在执行,正在执行这个存储过程,那实际我调用存储过程是怎么调用啊? 那是在这句话哈,这句话,那就是这里面这是调动存储过程的这个规则,那也就是我们科四,也就是我们这个光标,然后他有个方法叫靠,然后什么 p 靠 p、 r、 o、 c、 plc, 那就是调用的存储存储过程,那这里面他相当于是啥呀?就相当于我们在这里,哎,创建了执行过程,那我们想要去调用存储过程,是不是得用?靠,啊?好,跟这个是一个意思啊?靠,加上我们存储过程的名字,是吧?眼皮,这个什么 是吧?是不是调用这个生存过程啊?好,那是一样的哈,那是一样的,好, 那我们这里没有参数,可以直接这样去调整,他跟他是一个意思,也就说我这里这个方法就是你把存储过程的名字给他传进来,他就能让 oricle 数据库去执行。哎,靠,调用这个存储过程 好,要认存的过程,那如果说我这句话执行完了,执行完了,他会怎么样?他会去,哎, 我再给你一个变量来告诉你谁执行成功了,这个存储过程的名字,执行成功了,然后打印一下这个信息,就是谁执行成功这个信息,那当然如果他有报错,他就会执行下面的,下面呢就是他有任何的报错,把这个报错作为这个 e, 然后这个 e 这个参数,我们作为啥了?这个 iro 作为了这个 iro, 然后呢?这里面我们是这个再定一个 message, 如果说他有错误哈,那就说谁执行失败,那是啥呀?我们这个存储过程加上他的这个错误信息,然后说执行失败。好,那我们来试一下哈,试一下, 哎,哎,这里有问题,这里有问题哈。哎。给他 pass, 给他 贝斯艾绒看一下啊,这就是贝斯艾绒。 嗯,这是我的文件,你说我这边能进入文件应该是有问题的。 好,那这个问题我再来搜一下,那么大家就可以用这个啥,就可以用这个去执行,就可以用这个去执行哈。那我们 六十四位的这个二股连接,那应该是这个连接稍微有点问题哈。好,那我来去查一下这个问题的原因。利用拍散库调用 oracle 的存储过程中出现报错怎么办?下期分享,不见不散。

hello, 大家好,我今天呢来给大家分享一个这个 passing 的毛块儿叫做奥特 it, 那平时呢,我会经常会用这个奥特 it 来做一些自动化操作,包括以前我也会用它来那个接一些单子啊。 那现在呢,我们就开始跟大家讲一下奥特曼 it 这个模块应该怎样使用啊?我们可以现在我已经将导入进来了,大家可以看到啊,菲尔姆奥特孩 tm 获得所有的这个函数,接下来我们要怎么做呢? 呃,这边代码已经打出来了,我们直接第一个软 notpad 点 se, 当我执行的时候,他就会打开一个这个无标题记日本的这样的一个 notpad 的窗口,我先给他关闭,接着 往下,然后我们知道这个那个判断打开之后,他的这个标题是无标无标题记事本,可以看到无标题记事本,我这边就给他定了一个变量,接下来是等待温位子,呃,是等待这个窗口出现。接下来我又做了一个操作, 什么呢? countrysides tst, 就是设置这个他的这个窗口的这个里面的这个组件,他的这个文本内容为莱迪娜的风声,我们来看一下他会怎么样做呢?我们执行 他会将我的这段内容设置到这里面,但是呢,我也可以继续去做,你比如说叫他去给保存起来,我可以发送一个抗战加 s 的这样的一个按键,然后呢 这里给他设置一下他的这个文本叫 s 点 tst, 保存到这个桌面上,那我保存一下,这个都是能够实现的,就是奥多 it, 他这个组件 可以说是非常强大的一个组件啊啊,用它配合这个十六亩,基本上可以做到这个无往不利。那这个分享呢?就到这里就结束了,谢谢大家的观看,嗯。

啊,大家好,欢迎继续学习 excel 数据分析系列技巧视频,今天呢给大家来讲解一下如何在 excel 里边呢,去调用呃最新增加的 passion 的模块去处理我们的数据啊,包括数据整理以及数据可视化啊,还有数据分析。 呃,首先说明的是呢,如果你想使用这个拍摄的功能的话呢,必须要把你的订阅版的 oppo 三六五呢升级到贝特的预览通道啊,贝特预览通道因为现在这个功能呢,还没有完全向这个正式的用户放开啊,所以处于一个预览的状态, 所以你要把你的 op 三六五的版本先升级的预览通道啊,然后更新一下就可以了啊。呃,他的出现的是在公式菜单里边啊,这个地方就是有一个 pasen 的预览板啊,这里有一个插入 pasen 啊这样的一个 呃功能模块在这里边,但是一般情况下呢,我们用不到这个菜单上这个功能啊,直接使用这个函数调用拍摄功能就可以了啊,当你确认你已经具有了这个拍摄模块之后的话呢,我们在工作板里面调用它呢,实际上是非常简单的啊,比如说在这里边呢, 我们直接等于这个 p y 啊 p y, 然后按一下 tab 键啊,这样的我们就生成了一个这个 python 的一个代码的单元格,在这里面呢,我们就可以直接输入 python 代码了,比如说我啊,把这篇数据选中啊,然后把它复制给 d f, 那么等于 d f 等于等于完之后呢,我们就直接选这个数据就可以了,这个时候它会自动的用了调用了这个 x l 的这个函数啊,然后呢,呃相关的参数也给你了啊,这个还在那一处啊,这个它就直接知道你是 是有标题的,然后我们把这个数据选中啊,把这个数据选中,呃,选中之后的话呢,我们需要这个按一下 ctrl enter 啊,就不是直接回车,直接回车的话是换行啊,我们需要按住 ctrl 再回车的话才是提交这个代码。 好啊,然后这样的话呢,其实我们就生成了一个这个数据集啊,就是如果对拍摄比较熟悉的话,尤其是拍的是比较熟悉的话,大家对这个 dat 朋友们应该是不陌生的啊,这就是在拍摄里边的这个标准的一个横竖数据集啊, 好,这里边呢升了数据之后呢,他是默认的是一个对象的状态啊,就是排损对象的状态,如果你想看数据的话呢啊,我们在这个公示栏的这个地方,就是原来这个提交或者是放弃的 这个对号叉号这个地方呢,多了一个选项,我们可以选择是排成对象还是 excel 值, excel 值的话呢,就会把具体的值显示出来,比如说我们切换的 excel 值的话呢,他跟我们显示的就是我们刚刚选中的这个数据啊,如果我们再给他切回的对象的话呢,他就是一个对象。 好啊,然后现在有了这个排损对象之后呢,我们就可以进一步对他的进行操作啊,比如说在这里边呢,我们选一个小的一个数据级,我们这个数据级做筛选啊,等于还是要等于 p y 先把它转换成这个呃排损代码啊,然后呢 我们现在呢调用 d f 啊, d f 里边的话呢啊,我只要第一列啊,姓名 啊,第一列姓名,然后呢啊要要是英文状态标点符号啊,这个好像有点,前边这个引号好像就有点不对了,引号 然后 in 好,这是我要姓名这一列,然后呢我再要这个质检成绩这一列 啊,这件成绩对对 s m 状态,然后一层两层 啊,这样的话呢,其实我们就对这个,呃,刚刚生成的这个数据数据框啊 decream 呢,做了一个两列的一个这个筛选啊,也就是直接我取两列来形成新的一个数据结, 如果我执行这个代码的话呢,你会看到他呢就形成了一个新的小的一个数据计啊,然后我们再看一下的话,他就是只有两列的一个值啊,非常简单。看到没有啊,就是我们的整个的筛选的功能呢,就已经起来了 啊,现在呢我们呢把它变换一下啊,能不能生成图表呢啊?也是可以的,我们现在把它按一下 fire 恢复的这个状态啊,比如说我质检成绩和 质检成绩和这个什么呢?和这个平均处理时长吧, 平均处理市场啊,我取这两列,取这两列干嘛呢?我直接来作图啊,第二 plot 啊, dear plot, 那么默认的话呢,其实就是折线图啊,这个我们就可以直接来 生成图表啊, plot, 如果这个时候我们执行的话呢, ctrl enter, 哎,它就是已经生成一个图表啊,看到没有?生成一个图表, 稍等,这个图表呢我们需要放大一下,因为现在实在是太小了,把这个我们把这个单元格的那个选择 大一点啊,选择大一点,然后呢我们来默制一下来合并后居中啊,这个图表就有了啊,就这样,这是这个两条折线的一个图表 呃,但是呢有一个中文没显示出来,这个图例你看看全是方块啊,就没显示出来啊。这个呢我们需要稍微再做一下加工,我们在这个上面的 这公式啊,现在已经变成代码框了啊,这已经不是公式来了,这个现在是代码框,然后我们在前面呢给他做一个设置, 对这个 macbook label 呢有一个有一个设置好,那么这两行代码呢,实际上就是让 macbook label 呢可以正确显示中文以及这个符号啊。然后呢我们再去做图,那么现在我们执行这三行代码, ctrl enter 啊,这还是没有找到我们这个字体啊,这右边的报号信息出来了,还是没有找到我们这个字体啊,看一下,换一个字体, 看一下还能不能找到啊 啊?仍然是没有找到啊,这个我们就管了,就是这个是需要跟你的这个 windows 里边的那个 bout 文件夹里边字体呢相配合啊啊,就是一定要有这个字体啊,他才会我们显示这个 正确的中文啊啊,这个大家自己去调试一下就可以就行了啊,这个我就不在这里面再浪费时间把这个字体改来改去了 啊。好,然后现在呢我们对这个图表呢来做一个修饰啊,现在呢是两条折线呢,就绘在了一张图上啊,现在我们把它两个呢分开来绘图,本来是两个指标嘛,这个地方我们加一个命令,比如说叫,呃, sub pro 等于 处啊,杀 pro 等于处,然后呢我们给它再加一个这个颜色啊, c c map, c map 就是这个调色盘儿啊,等于比如说是 set 二,好,我们加这样加这么两个指令啊,再重新来做这个图,重新生成 啊,好了啊,现在呢就是两个图呢,就各自分开了啊,形成这样一个非常好的一个图表,那么以此类推呢,其实我们还可以做成这个三张图啊,四张图啊,都在同一个画布上,这是在正常的 excel 工作表里边,我们梦寐以求的功能啊,就是很难你 把多张小图呢放在一个画布上,那么通过拍摄呢,调用这个 mappletable 这绘图包呢,我们可以轻松的实现这样的一个功能,非常的方便啊,所以除此之外呢,我们还可以对这个数据集呢做更多的一个操作啊,比如说在这里边我叫 df, 在这里边呢等于 py 啊,就是要先调用,先调用这个这个功能啊,在这里边呢,我们比如说 df 点啊, describe 啊, describe 就是对这个数据级呢做一个描述,然后呢如果我们执行的话呢啊,因为他会生成一个新的一个 disadframe, 然后我们来展示一下这个 deadframe 啊,他就给我们做了一个数据的一个描述,可以看到啊,这是计数,那然后这是均值标准差啊,最小值就是五分位了啊,最小值,然后最大值,然后第一四分位中值和第三四分位啊,这样的,把这个数值性的这个给我们做了一个描述, 同样呢我们还可以去做这个,呃,其他的一些操作啊,比如说再加一个啊,等于 于 p y, 然后呢生成代码之后呢? d f 点儿 info 啊,我们来看一下这个数据的基本信息啊,来执行啊,执行完了之后的话呢,我们还是把它变成 excel 值 啊, info 愣是没有信息, 这是这是啥啊?在这里他这个 input 呢哈,他把他把那个结果呢输出的这个这个地方来了啊,结果输出的这个右上角这个地方来了,我们可以看一下这个 input 啊, 就是每一列啊一百个值,没有缺失值。然后呢姓名和性别呢,都是这种对象, 这个对象啊,实际上就是文本啊,这个分类型数据,然后呢年龄是六十四位整数啊,工资六十四位整数啊,下边都是六十四位整数这样的一个这个基本信息在这里啊,看来这个音符呢,可能是不能显示在工作表里边啊,就之前显示在这里边啊,都一样 好。呃,这个呢,就是我们如何在 excel 里边呢,去调用啊,或者是去使用我们的拍摄的这个模块的基本的功能 啊,后续的视频里面呢,会给大家来系统的讲解啊,如何去绘图啊,如何去做这个数据的统计分析啊,这节这节视频呢,就算啊,带大家呢,先熟悉这个路径啊,熟悉这个模块,好啊,这节视频给大家分享到这。

大家好,那么这节课啊,咱们就来讲一讲关于模型的保存还有读取,嗯,这个东西啊,还是蛮重要的, 就是说啊,当咱们在进行一个网络的训练时候啊,咱们最终想要的目的是什么?咱们最终想要干的是不是说要把这些最好的权重参数还有编制参数啊,给他保存下来啊,也就是说咱们需要得到这个最好的 w 还有 b。 那么大家想一想,咱们之前啊,也是讲过这个转机神经网络吧,咱们也可以进行训练,也可以进行测试,但是呢,咱们没有进行这个模型保存这个操作吧,也就是说啊,咱们当咱们训练的时候,那些 w 和 b 保存来的啊,保存在咱们当前这个程序里的内存里吧, 但是呢,大家想一想,我光保存到内存里啊,好像来说我现在把这个 id 啊,或者说把咱们的编辑环境给它关掉了,下次我再想给它打开, 在讲测试的时候是不是就没有这个模型了?那么咱们今天要讲到这个保存模型啊,是说把咱们的这些权重参数还有编制参数以及呢咱们整个的计算图,或者说整个 section 当中里边所涉及到的每一个参数,咱们都给他固化到咱们的磁盘上。 那么下面呢,咱们啊就先来看这样一个非常简单的小例子,谢谢大家。用一个小例子来说一说咱们该怎么样?呃,用 twenty flow 啊,帮咱们保存一个模型, 那么首先啊,大家看,嗯,这里啊,我定义了两遍量,一个是 v 一,一个是 v 二啊,他们都是一个随机的定义,用 tensor flower random note 啊,咱们进行一个呃高斯的随机处理化,然后呢它是有这样一个大小的, 这个一二啊和二三分别表示着这个 v 一啊,它是一个一行两列的矩阵,然后呢 v 二 它是一个两行三列的矩阵。然后啊,咱们还是按照咱们之前那样一种做法啊,先把咱们的变量进行一个全局数字化,数字化完之后啊,咱们要定义这样一个筛审欲吧,但是呢,这里多了一个东西啊,大家注意这点,就是说咱们掉了一个吞丝辅料点的寸模块下,寸模块下呢,有这样一个 siver 类, 咱们把这个 cover 类啊给他拿出来初始化这样一个 cover 类的对象。小的 cover 一会呢,咱们就要用这个小的 cover 帮咱们把这个 v 一和 vr 保存进来, 咱们看啊,就是说,嗯,咱们首先啊,还是在三神里边进行一次初始化实际的操作。初始化完之后呢,咱们这里啊先打印了一下这个 v 一 v 二, 为了便于啊,咱们一会对比一下,因为这里啊咱们是一个随机的数字化吧,嗯,打印完了之后啊,咱们主要的就是这行代码啊,咱们用这个小 c 窝,我们看进小 c 窝点 c 五, 我们是把怎么存下来了,咱们是把这个 session 的计算率给他存下来了吧,也就是说呢,咱们当前这个 session 里边涉及到的一切的参数,咱们都可以给他保存下来, 然后后面就是说第一个参数是咱们要保存的东西,第二参数呢,就是要保存到的一个位置啊,这个位置呢,就是说以咱们当前啊这个代码所在的位置啊,为咱们的根部落,我们可以看一下,这里给大家打开了, 这个是咱们当前代码时的一个根末路,然后呢保存到当前末路里边的 save 里面,咱们来看 save 里边本来啊,这个 nice, 咱们先别管 本来啊,它里边是个空的吧,一会咱们来执行下代码,咱们来看一看,就是说啊,它的 flow 啊,是不是真正的把咱们的这个两个变量固化到咱们这个瓷板上来,哎,咱们先来运行一下,呃,我们一看啊,现在已经打印出来了,咱们这个 model 啊,已经 save 的 in fail 了,哎,就 保存到这个文件夹下了,咱们再来看刚才是一个空的吧,那么现在呢,咱们是把它保存的一个什么名字啊? model 点 c k c k p t 吧,一般情况下,咱们用这个点 c k p t 当咱们一个保存的文件, 嗯,就是说啊,咱们现在确实的是把这个 vvr, 不是说 vvr 把这个 session 给他保存下来了吧,那么一会咱们就来看一下,咱们能不能够通过啊 test flow 给咱们提供的一种读取的方式,把这个 vvvr 给他读取出来呢。 嗯,这里啊,大家先记住这两个值啊,一会咱们再看一下啊, vvr 现在是这样两个值,一会呢咱们就读取出来看一看这个 vvr 的值啊,发没发生一些变化。 那么首先呢,就是说啊,为了防止一些作弊嫌疑啊,我先把这个咱们的这个啊,中途啊给他重启一下啊,我给他 restar 一下, restar 完之后啊,相当于什么?相当于咱们这个, 嗯,这一部分代码相当于是没有执行过的,咱们直接去执行下面这部分代码啊,在下面这部分代码里啊,咱们来看, 其实呢,还是掉了这样一个 sever 啊,这个 sever 呢?还是等于这个 ten several 啊,这个春模块下的这个 sever 类, 然后呢,这个 v 一 v 二还是进行一个随机处置化,大家接下来就要看这个 v 一和 v 二咱们拿出来的值,哎,是进行一个随机处置化值,还是跟咱们之前啊保存的值是一样的呢?那下面咱们就来运行一下, 嗯,运行之前咱们再说一句,就是说咱们怎么样读取模型啊?读取模型是用 c word 点 restart 啊,咱们之前是用什么?咱们之前啊是用这个 c word 点 c 五八,这是咱们保存模型,咱们读取模型呢,咱们就用这个 c word 点 restor restor 意思啊,就是说把咱们固化到磁盘里的这个塞水啊,再给它读取出来, 还是啊到咱们刚才保存的路径下,再去把咱们这个 size 啊给读取出来。那么下面啊,咱们就来运行一下 我们,你看现在运行出来一个结果吧,咱们来对比一下,现在的 v 一是负的零点六一九,负的零点六一九,零点一零七,也就是说呢,咱们这个 v 一和 v 二是一模一样的吧,虽然说啊,咱们都是一个随机的数值化,但是呢,咱们读出来的这个 v 一和 v 二跟咱们之前保存的模型的 v 一和 v 二是一模一样的吧, 那么就是说咱们 test flow 啊,确实帮助咱们完成了一次模型的保存,还有读取的操作。那么现在呢,只是啊举了一个非常简单的小例子啊,跟大家说了一下 咱们怎么样用 tensive flow 给咱们提供好的这样一个方式去保存和读取模型。那么下面呢,咱们再来看一下一个稍微复杂的例子,嗯,咱们之前啊讲过了这 个 cnn 吧,就是说一个卷机神经网络,咱们在讲卷机神经网络的时候啊,咱们是不是没有去保存咱们这个卷机层里边的每一层的参数啊?那么下面咱们就要来稍微的改一改咱们之前啊写过的那个卷机神经网络的代码了, 嗯,咱们来看一下,我来看一下在哪修改啊?其实啊上面哎就是说咱们卷机的定义啊,以及每一个层位结构啊,这些咱们都没有发生变化,跟咱们之前讲的那个 c n n 啊是一模一样的。 直播说呢,在这里啊,我加上了一些额外的操作啊,大家来看这块呢,就是说方阵之上啊,还是跟咱们之前是一模一样的。直播说,在这里啊,我定义了额外的一些东西, 我首先呢定义了一个 save step 啊,这个 save step 的意思啊,就是说当咱们卷机神经网络在进行迭代时候,咱们可以进行一个选择,就是说咱们是不是每一个 pro 一个 epoch 进行训练啊,你可以选择哎,我是隔五个 epoch 已保存呢,还是隔一个 epoch 已保存呢?咱们保存的一个间隔,这个是咱们大家可以自己手动设定的 这个 save step 等于一的意思啊,就是说一会呢,我要进行一个 epo 值,一个 epo 值进行咱们当前筛审,里边权重参数还有编制参数,就是说所有的层涉及到的所有的参数咱们都给他保存下来, 那么咱们还是啊调了一个 tensive flow 点儿春模块儿啊,春模块儿还是像之前一样,把它的这个 several 类拿出来实地画这样一个对象直播说呢,这里啊,我爹我写了额外的一个参数, 这个 max to keep 等于三是什么意思呢?一会大家在咱们实际的运行时候,哎,会大家看这个 max max to keep 等于三,到底啊,做了一件什么事?这是咱们在这块先定义了啊,两个东西, 那么这块呢,还有一个啊,略微的不同,就是说咱们之前啊是不是只进行了一个卷机神经网络的训练?咱们在测试的时候也是啊,就是说咱们训练完了直接进行测试啊,拿咱们的模型啊保存到内存当中。那么这回呢,咱们定义了额外的一个东西, 看这里啊,就是说我定义了一个度寸等于零,这个是什么意思呢?嗯,就是说当咱们在训,我先改成一吧,在咱们训练的时候啊,咱们让,哎咱们来看这啊,就是说这个度寸是什么意思呢?这块我们看有一个 f 度寸等于等于一, 也就是说如果我把这个杜春设置成一了,就是说咱们接下来是要训练一个卷机神经网络,在这里呢,咱们就要不断的进行训练,训练啊,咱们之前这一部分跟咱们之前是一模一样的啊,只不过说我加上了一个保存的东西,我们看咱们保存什么,咱们加了一个 一炮制这个再除上这个 cout 吧。如果说啊,他这个是啊等于等于零,就是说可以整除的情况下,咱们就要进行一个保存,那么现在来说就是说每一个一炮制,每一个一炮制都要进行一个模模型的保存,模型的保存呢,咱们还是用这个 cour 加 c 五,咱们保存的还是这个三审的计算率, 咱们把它保存到这个当前的一个根部路下面的 c 五,我们看啊,这个 c 五里边儿, c 五里边儿嘛,这是 c 五, c 五里边儿有一个 nice, 现在我把之前我做的给他删掉,那么现在啊,他是一个空的,一会儿呢,大家在保存的时候就能看到咱们实际的是往这里啊存进,存进去一些值了, 这里存值啊,咱们需要给每一个 epoch 啊,进行一个啊,就是说咱们要咱们要每一个 epoch 一个 epoch 进行保存嘛,所以说啊,每一个 epoch 的名字啊都是不一样的,咱们在这里呢给让每一个 e epoch 名字啊都是不一样的,咱们在后面加上了一个杠几啊,比如说杠零,杠一杠二,咱们代表每一个 epoch 的模型啊的一个名字,他是叫什么的。 那么这个是咱们一个度寸等于一的情况下啊,咱们就要进行一个网络的训练,以及呢模型的选择啊,模型的保存, 然后呢如果说啊,咱们把这个度寸设成零,设成零之后啊,他是不是就不走咱们这个训练的训练的这个模块了,他直接就要走这样一个测试的模块吧? 在走测试的模块下,咱们是不是说咱们进行测试的时候,咱们要进行一个模型参数的读读取了,咱们要把之前啊那个卷基层啊,还有全连接层啊,所有的层的 w b 啊都读进来,以及呢 咱们的一些啊,这些中间的这些东西啊都给他读进来,因为啊这些东西都是咱们腮神里边定义的吧,所以说呢,咱在这里啊,就是说 用了一个 server 点 restart, 哎,把这个 section 啊再读进来,读进来意思啊,就是说把之前的模型里面所涉及到的所有的东西都加载进来,加载进来之后啊,咱们是不是就可以进行一个啊这个 test 了,我们看这块进行了一个 settle run, 拿哪个赛事进行 run, 拿咱们之前保存下来的那个赛事进行了一个 run 操作吧,也就是说啊,咱们拿咱们之前加载好的这样一个模型哎去做了咱们一个测试的工作,那么下面呢,咱们就来运行一下,看一看咱们的,嗯,这个代码会 好,不是说咱们代码看一看咱们保存模型的时候的一个效果啊,我们我们直接 restar 一下吧,直接 restar 一下,从头开始运行一下,咱们来从头开始跑一下,还是啊先把咱们的这个所需要的这些包啊都导进来,然后呢把 minis 的加载进来, 指定好啊咱们模型的一些参数,然后定义好咱们计算的一个框架,然后这块就是咱们定义一些超参数这块,咱们先让这个度寸等于一,注意啊,就是说度寸等于一的时候,咱们是进行一个模型的保存还有训练吧,咱们来看一下,在这里呢,咱们就要进行一个模型的保存还有训练了, 大家看就是说现在这个 nice 里边是一个空的吧,咱们来运行一下,看一看,运行可能稍微有些慢啊,大家,可以啊,还行,不是很慢。 咱们来看,现在是一个 epoch, 一个 epoch 进行了吧,现在是第零个,第一个,然后呢?这个 cos 的时代不断下降的吧,就是说咱们模型啊,确实起到了一个效果。咱们再来看 现在这里边有这样杠零,什么杠零是第零次吧,杠一第一次哎,杠二是第二次哎,大家翻翻一点,就是说我杠四出来之后啊,杠一就没了,然后呢?杠, 杠五出来之后杠二就没了,这是为什么呢?这块是因为咱们之前定义了这样一个东西,咱们定义了一个 max to keep 等于三吧,这个 max to keep 等于三啊,就是说咱们最终啊只要只保留这样三组模型,大家看就是说现在是六七八吧, 等九出来的时候六就没了啊,也就是说咱们只保留啊,最后那三组模型,咱们要拿最后那三组模型出来, 哎,为什么说咱们只保留三种模型啊?哎,咱能不能多保留一些模型啊?咱们来看一下,我随便打开一个,咱们来看一下他的大小啊,他是多大 一个来说啊,咱们现在一个非常简单的结构啊,他就已经是七十多兆了,如果说你的模型啊,再稍微复杂一些,很有可能他达到六七百兆,这都是有可能的,也就是说呢,咱们不希望啊,咱们保存下来的模型啊太多,那么这个东西啊,都是可以大家 手动设置的,你也可以设置一个 max to keep 等于十啊,或者是等于多少啊?如果说 max to keep 等于乱,就是说啊,咱们要把所有的模型啊都保存下来,这个东西啊都是咱们可以手动进行设置的, 现在应该已经是迭代完了,咱们看啊,现在迭代的一个,嗯,咱们可以看一个寸的 x c 啊,咱们已经达到了一点零啊,可能是这个不是太准,可能啊发生了一些过敏壳的现象,一会呢咱们啊就要拿这个,嗯,这个度让度寸啊等于零的时候,咱们要把这个模型拿进来,咱们再来测试一下。 那么现在啊,咱们是不是已经把这个模型啊都给他保存下来了,咱们来看最后一个模型是十四个吧,因为咱们这个 epox 是从零开始的,所以说这块当咱们再进行一个测试的时候,我就把这个杜春啊给他改成零,改成零之后啊,咱们就可以来运行这块了啊,就是说咱们可以进行 一个测试了,咱们再来运行一下。这块呢,我拿到的是哪个?咱们寸一炮尺是等于十五的吧,所以说我现在拿到的是第十四个一炮尺,也就是说这里最后一次迭代的结果,咱们拿最后一次迭代结果来去跑一下咱们的测试级,看一看咱们现在一个测试的效果会是怎么样,咱们来运行运行一下。 哎呀,这题怎么没运行呢?呃,我看一下刚才这块是没改吧, if 读 trin 等于零,我看一下 if 读 trin 等于等于零,哎,为什么没有运行呢 啊?这块啊,这块我还没有改,刚才啊就是说这点注意点,如果说大家拿这个 notebook 进行,呃,就是说拿 notebook 进行代码书写的时候,当咱们完成了一个块的时候啊,咱们需要先给他运行一下,给他运行一下之后啊,咱们才能再运行下面这个区域,好, 那么他变成一个星号啊,就代表着他现在正在运行了,咱们一会啊就可以看一下他的一个运行的结果。那么这里啊为什么给大家说这个呃度寸这个事呢?也是推荐大家按照我这种写法,就是说咱们其实啊咱们测试,咱们 test 还有寸的时候, 是不是说都要利用上咱们之前写好的这个网络的模型啊,为了避免咱们重复的去书写这些东西啊,就是说咱们可以设置这样一个变量,等于零或者等于一来控制着咱们到底是训练还是测试啊,这样做起来是相对来说是比较方便的。 那么一会啊,他可能应该啊,我们看这是已经是给我跑满了,这个速度啊,可能稍微比较慢,我现在搭的这个 tender flow, 他也是一个 cpu 的版本,因为啊用这个笔记本来说啊,他这个性能啊还是比较低的,那么可以看啊,现在的一个探测结果是零点八八六吧,哎,也就是说咱们现在 带的这个效果还是可以的啊,就是说咱们确实啊是从咱们这个啊,咱们这个磁盘上把咱们的模型呢加载进来了,加载完模型之后啊,咱们又对咱们的模型啊进行了一个太子的操作, 那么这样咱们就完成了一次完整的卷机神经网络的训练,包括了咱们模型的这个呃固定到磁盘底以及呢,还有咱们从这个磁盘底啊把咱们模型再读取进来,再进行一个测试。那么关于啊这个模型的这个读取还有保存,那么就先给大家讲到这里了。
