导读:
华为云ModelArts是面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及半自动化标注、大规模分布式Training、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。
流程简单易懂,在零基础的情况下短短1个多小时就完成了包含服务搭建的整个训练过程。只能说是非常给力的华为云,并且在华为云的官方群里面也会有很多大佬帮助你的。
接下的一小时请交给我,释放你的学习天性吧
目录
前言:
本文针对华为云ModelArts的demo做了一个【简入间出】的完整demo演示,让读者可以快速的掌握华为云具体操作。图片是华为云给的,可以用自己相册里的图片哦。
在编写过程中也遇到了些许疑问,在交流群中都得到了很好的回应,同时也规避了很多问题。

倪平宇大佬还提供了帮助文档:

【使用自动学习0代码开发图像分类AI模型_AI开发平台ModelArts_快速入门_华为云】
【免费体验:一键运行Notebook实现工地钢筋盘点_AI开发平台ModelArts_快速入门_华为云】
大佬们提供了很多帮助。

https://console.huaweicloud.com/modelarts/?region=cn-north-4#/dashboard

从这里可以看出步骤【1/2/3】所以咱们根据对应的步骤进行操作。

说是准备创建【桶】和【新建文件夹】
那么咱们去试试:

在这里说明创建桶的步骤了。挨个去执行
点击【创建桶】
一定要选择【华北-北京四】,输入【桶】名称

这里选择了40G一个月,才一块钱,测试的话很值。

创建的时候给了个提示

配置完成,去支付即可。

直接在线支付就行
支付完成

这有有【桶】了。

我就买错了,后面都没法操作,给大家一个【警示】,别买错位置。
地址:https://support.huaweicloud.com/usermanual-obs/obs_03_0316.html
操作步骤
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在桶列表单击待操作的桶,进入“概览”页面。
- 在左侧导航栏,单击“对象”。
- 单击“新建文件夹”,或者单击进入目标文件夹后,再单击“新建文件夹”。
- 在“文件夹名称”中输入新文件夹名称。
- 支持创建单个文件夹和多层级的文件夹。
- 文件夹名称不能包含以下字符 : \:*?"<>|。
- 文件夹名称不能以英文句号(.)或斜杠(/)开头或结尾。
- 文件夹的绝对路径总长度不能超过1023字符。
- 任何单个斜杠(/)表示分隔并创建多层级的文件夹。
- 不能包含两个以上相邻的斜杠(/)。
- 单击“确定”。
1. 在OBS管理控制台左侧导航栏选择“桶列表”。

2.在桶列表单击待操作的桶,进入“概览”页面。


3.在左侧导航栏,单击“对象”。
这里就能看到【新建文件夹】操作了。

4.单击“新建文件夹”,或者单击进入目标文件夹后,再单击“新建文件夹”。

有了:

第一个大步骤全部完成。

这个步骤简单,直接点击下载就行。
解压出来2个文件夹。

步骤二完成,开始步骤三


直接点击【开始】

这里发现无法继续了,要求授权

这里需要点击【自动创建】,勾选【同意声明】,在点击【同意授权】。
能看到可以创建了。

重新执行【步骤引导】

点击【数据集的输入位置】处的【选择文件夹】图片标识,选择步骤一的【obs】与【文件夹】,点击确定即可。

输入有了,还得有输出,输出需要再创建一个文件夹,别弄乱喽。我这里的【obs】之前写成了【bos】明确一下问题啊。

点击【确定】就行

效果如下:

点击下一步

终于看到曙光了。
继续学习不能停。

这里第二步,要添加图片,【左上角有按钮】
上传之前【步骤二】下载的图片


如果批量上传不行,就挨个上传吧。


点击【同步数据源】

想开始训练的话图片至少得5个,咱们就多上传一些啊。

单独点击图片进行标注


多标注几个,单后点击回项目中就行。

别返回到【自动学习】,点击【图片集合】即可

点【确定】即可保存

先点击一下【同步数据源】,在勾选全部进行训练啊。
这里我选的平衡


叶先生说精准率优先
我这直接提交了啊。


需要等待啊
等待的过程中输出的目录能看到有东西了

等待中,好像没多久就完成了啊。准确率86%呢
部署
勾选【同意】

点击【提交】

等待【启动】
可以看到有刷新按钮啊

等待一会点击【刷新】看看就好,我大概等待时间3分钟后给我提示【异常】,但是部署成功了。

上传一张图片测试一下啊

能用

再测试一张图片

相似度94%,还是很准确的。
到这里,全部操作完成呢,恭喜你,非常棒的掌握了使用方法。

由于自己搞替大家踩了坑,总计花费测试金额【2.01】元,实际只需【1.01】元就学会了创建AI图像分析,超级划算的。
在菜单中可以看到【AI Gallery】

在社区的博客中你可以找到很多帮助。

我在开始测试前观看过【AI浩】大佬的文章,很有帮助的,可以点过去学习一下。

希望能给大家提供一定的帮助,祝大家学习快乐。
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
system-view进入系统视图quit退到系统视图sysname交换机命名vlan20创建vlan(进入vlan20)displayvlan显示vlanundovlan20删除vlan20displayvlan20显示vlan里的端口20Interfacee1/0/24进入端口24portlink-typeaccessvlan20把当前端口放入vlan20undoporte1/0/10删除当前VLAN端口10displaycurrent-configuration显示当前配置02配置交换机支持TELNETinterfacevlan1进入VLAN1ipaddress192.168.3.100
在我做的一些网络开发中,我有多个操作开始,比如对外部API的GET请求,我希望它们同时开始,因为一个不依赖另一个的结果。我希望事情能够在后台运行。我找到了concurrent-rubylibrary这似乎运作良好。通过将其混合到您创建的类中,该类的方法具有在后台线程上运行的异步版本。这导致我编写如下代码,其中FirstAsyncWorker和SecondAsyncWorker是我编写的类,我在其中混合了Concurrent::Async模块,并编写了一个名为“work”的方法来发送HTTP请求:defindexop1_result=FirstAsyncWorker.new.async.
一边学习thisRailscast我从Rack中看到了以下源代码:defself.middleware@middleware||=beginm=Hash.new{|h,k|h[k]=[]}m["deployment"].concat[[Rack::ContentLength],[Rack::Chunked],logging_middleware]m["development"].concatm["deployment"]+[[Rack::ShowExceptions],[Rack::Lint]]mendend我的问题是关于第三行。什么是传递block{|h,k|h[k]=[]}到Has
所有题目均有五种语言实现。C实现目录、C++实现目录、Python实现目录、Java实现目录、JavaScript实现目录题目n行m列的矩阵,每个位置上有一个元素你可以上下左右行走,代价是前后两个位置元素值差的绝对值.另外,你最多可以使用一次传送阵(只能从一个数跳到另外一个相同的数)求从走上角走到右下角最少需要多少时间。输入描述:第一行两个整数n,m,分别代表矩阵的行和列。后面n行,每行m个整数,分别代表矩阵中的元素。输出描述:一个整数,表示最少需要多少时间。
西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,
我不确定如何为我的搜索功能添加自动完成表单。"get"do%>nil%>我有一个具有自定义操作的Controllerdefquery@users=Search.user(params[:query])@article=Search.article(params[:query])end模型如下:defself.user(search)ifsearchUser.find(:all,:conditions=>['first_nameLIKE?',"%#{search}%"])elseUser.find(:all)endenddefself.article(search)ifsearchArt
编辑#2这是类(class)ControllerclassCoursesController编辑#1因此,根据下面Jagdeep的回答,我现在完成了以下操作:类(class).rbclassCoursecourse_modules_user.rbclassCourseModulesUsercourses_user.rbclassCoursesUser用户.rbclassUser迁移classCreateCoursesUsers但是,我遇到这样的错误原始问题所以这是previousquestion的延续,然而,这会偏离那个主题,所以这里是一个新的主题。在此之后,我大致得到了我想要开始工作
#!/usr/bin/envrubyrequire'optparse'options={}OptionParser.newdo|opts|opts.on("--languageLANGUAGE",["Ruby","JavaScript"])do|language|options[:language]=languageendend.parse!puts"Language:#{options[:language]}"如果我用./bin/example--languageRu运行它,它将输出:Language:Ruby我想禁用此自动完成/最接近的匹配行为,并在未提供确切名称时引发Option
我在nginx+unicorn后面运行一系列Rails/Sinatra应用程序,零停机部署。我喜欢这个设置,但Unicorn需要一段时间才能完成重新启动,所以我想在完成时发送某种通知。我能在Unicorn文档中找到的唯一回调与workerfork相关,但我认为这些回调对此不起作用。这是我从赏金中寻找的东西:老unicorn主人启动新主人,然后新主人开始它的worker,然后旧主人停止它的worker并让新主人接管。我想在交接完成后执行一些ruby代码。理想情况下,我不想为此实现任何复杂的流程监控。如果这是唯一的方法,那就这样吧。但在走那条路之前,我正在寻找更简单的选择。