华为机试

什么是华为od,od 薪资待遇,od机试题清单,为什么会去华为 OD?华为od怎么刷题?(最新华为od机试2025B卷刷题建议) 华为OD是Outsourcing Dispacth模式,是华为和外企德科联合招聘的简称。目前华为大多数是OD招聘。OD模式也是华为提出的一种新的用工形式,每年都会从OD项目挑优秀员工转为正编。所有OD和正式员工一样对待,没有差别,部门平时开会、评审等活动都是一起参加的,是同薪同酬,都是由华为的HR直接定的薪资,看的是我们技术能力。华为是大企业,能到华为上班也是有能力的,每个部门都有好多职位,是金子,在哪都会发光。 阅读详情

1、汽水瓶

  • 有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?
#include<stdio.h>
main()
{
    int n;
    while(scanf("%d",&n))
    {
        if(n!=0)printf("%d\n",n/2);
        else return 0;
    }
    return 0;
}

2、明明的随机数

  • 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据(用于不同的调查),希望大家能正确处理)。

  • 注:测试用例保证输入参数的正确性,答题者无需验证。测试用例不止一组。当没有新的输入时,说明输入结束。

#include<stdio.h>
main()
{
    int num[1001]={0},i,j,N,k;
    while(scanf("%d",&N)!=EOF)
    {
        for(i=0;i<N;i++)
        {
            scanf("%d",&k);
            num[k]=1;
        }
        for(j=1;j<1001;j++)
        {
            if(num[j]!=0)
            {
                printf("%d\n",j);
                num[j]=0;
            }
        }
    }
    return 0;
}

3、进制转换

  • 写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。
#include<bits/stdc++.h>
using namespace std;
int main()
{
    string str;
    while(cin>>str)
    {
        int len=str.size();
        int res=0;
        for(int i=2;i<len;i++)
        {
            int tmp=0;
            if(str[i]>='0'&&str[i]<='9')
            {
                tmp=str[i]-'0';
            }
            else
            {
                tmp=str[i]-55;
            }
            res=res*16+tmp;
        }
        cout<<res<<endl;
    }
}

4、删数

  • 有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被删除。
    #include<iostream>
    using namespace std;
    
    int main()
    {
        int N;
    
        while (cin >> N) {
            int num = 0;
            for (int i = 1; i < N; i++) {
                num = (num + 3) % (i + 1);
            }
            cout << num << endl;
        }
    
        return 0;
    }

5、字符集合

  • 输入一个字符串,求出该字符串包含的字符集合
#include <stdio.h>
int main()
{
	char str[101];
	while (scanf("%s", &str) != EOF)
	{
		int a[256] = { 0 };
		for (int i = 0; str[i] != '\0'; i++)
		{		
			a[str[i]] ++;
			if (a[str[i]] == 1)
				printf("%c", str[i]);
		}
		printf("\n");
	}
	return 0;
}

6、数独

  • 数独是一个我们都非常熟悉的经典游戏,运用计算机我们可以很快地解开数独难题,现在有一些简单的数独题目,请编写一个程序求解。
    如有多解,输出一个解
    #include <iostream>
    #include <cstring>
    #include <set>
    using namespace std;
    
    bool solveQues(int question[9][9])
    {
        set<int> numpos;
    
        for (int i = 0; i < 9; i++) {
            for (int j = 0; j < 9; j++) {
                if (question[i][j] == 0) {
                    for (int k = 0; k < 9; k++) {
                        numpos.insert(question[i][k]);
                        numpos.insert(question[k][j]);
                    }
    
                    for (int m = 0; m < 3; m++) {
                        for (int n = 0; n < 3; n++) {
                            numpos.insert(question[i/3*3+m][j/3*3+n]);
                        }
                    }
    
                    if (numpos.size() == 10) {
                        return false;
                    }
    
                    for (int k = 1; k < 10; k++) {
                        if (numpos.find(k) == numpos.end()) {
                            question[i][j] = k;
                            if (solveQues(question)) {
                                return true;
                            }
                        }
                    }
                    question[i][j] = 0;
                    return false;
                }
            }
        }
        return true;
    }
    
    int main()
    {
        int a;
    
        while (cin >> a) {
            int question[9][9];
            question[0][0] = a;
    
            for (int i = 0; i < 9; i++) {
                for (int j = 0; j < 9; j++) {
                    if (i == 0 && j == 0) {
                        continue;
                    }
                    cin >> question[i][j];
                }
            }
    
            if (solveQues(question) ){
                for (int i = 0; i < 9; i++) {
                    cout << question[i][0];
                    for (int j =1; j < 9; j++) {
                        cout << " "<< question[i][j];
                    }
                    cout << endl;
                }
            }
        }
        return 0;
    }
什么是华为od,od 薪资待遇,od机试题清单,为什么会去华为 OD?华为od怎么刷题?华为OD已经入职的人的真实感受?(最新华为od机试E卷更新中) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2024e卷,od机试,2024E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2024华为od,如何备战华为od,华为od算法,华为od手撕代码,华为OD机试2024年最新题库,一文带你读懂华为OD,华为机试e卷 阅读详情

相关推荐

什么是华为od,od 薪资待遇,od机试题清单,为什么会去华为 OD?华为od怎么刷题?(2024最新华为od机试E卷刷题建议,目前已收录590道)

什么是华为od,od 薪资待遇,od机试题清单,为什么会去华为 OD?华为od怎么刷题?(2024最新华为od机试E卷刷题建议,目前已收录590道) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2024e卷,od机试,2024E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od

KJ.JK 2万+

华为OD机试(含B卷)真题2023 精简版,50道100分题目。如果距离机考时间不多了,就看这个吧

关于华为od题库的说明(2023-06-23 更新本文) 关于订阅华为OD机试题库的后续问题 华为OD机试 真题,新题库,50到100分题 华为OD机试 6 大宝典,包含题库完整真题 关于华为OD的更多疑问,可查看下述专栏

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 3万+

2023最新华为OD机试,独家整理总结上岸技巧,答读者问华为OD 华为OD机试备考攻略

华为OD员工并非华为公司员工,而是由外包公司德科派驻到华为工作。德科是OD员工的雇主,负责签订合同和管理劳务关系,并发放工资和福利。华为推行同工同酬,所以OD的薪资与正式员工差不多。TIPS:每年都有OD员工转为正式员工。华为OD的入职考核相当严格,特别是在信息安全和日常考核方面,行业内也有很多评论。试用期转正相对容易,主要看个人是否适应公司文化和业务能力是否达标。虽然公司提倡狼性文化,但试用期不通过的情况比较少。入职后还会进行背景调查,应该实事求是,不要犯傻。

2301_79210836的博客 1439

华为OD机试(B、C卷)、机考,200分的题目整理如下,冲满分必备

关于华为 od 题库的说明(2023-05-12 更新本文) 关于订阅华为 OD 机试题库的后续问题 华为 OD 机试 真题,新题库,50 道 200 分题 华为 od 岗的薪资待遇 华为 OD 应聘流程 华为 OD100 分题目,参考下述地址 华为 od 转正 华为 OD 说的目标院校都有哪些?

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 3万+

机试真题目录

**2024年8月份,华为官方已经将华为OD机考:OD统一考试(D卷)切换到 OD统一考试(E卷)** 。从参加过华为OD笔试的朋友来看,**E卷的新题非常少,大部分是A,B,C,D卷的合并题库。** 另一方面据考生反应需要双机位,也就是在牛客小程序中一直点确认,最后一步需要调试并开启您的摄像头。

m0_73659489的博客 5万+

华为OD机试(B+C+D卷)、机考必刷 200 分的题目整理如下,冲满分评级必备

华为机试有三道题,前 2 道 100 分,第 3 道 200 分,总分是 400 分。年度奖金计算为:A =4 个月工资,B+ =3 个月工资,B=2 个月工资。,在国外有补助,在华为干的越久,年底奖金和分红越多,这和其他公司一样。哪些是最新题,哪些该优先刷,哪些题简单,哪些题难,题目的分数是多少。每个题解都由 6 大常见编码语言实现,订阅之后,可以私信我催更。如果你距离 OD 机考时间不多了,那就刷这个精简版本的题库吧。还可以一对一进行 OD 辅导,如果机考分数不理想,订阅可以询问 OD 任何知识点。

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 2万+

华为od机试E卷刷题建议

华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2024e卷,od机试,2024E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2024华为od,如何备战华为od,华为od算法,华为od手撕代码,华为OD机试2024年最新题库,一文带你读懂华为OD,华为机试e卷

KJ.JK 2万+

2025华为OD机试题库目录【E卷+A卷+B卷+C卷+D卷】(JAVA、Python、C++、JS)

1:进入机考网页之后,如果链接上写着【2023.Q1 A卷】,就表示是2023年的Q1题库(4:订阅专栏后,后面更新的答案都可以查看。以后更新的题目也会放到这个专栏里。,如果时间紧迫,建议直接刷2023年新题。5:如果对题解有问题,私信我解答。2:2022年的题库。

AlgorithmHero的博客 2万+

最新华为od机试E卷刷题建议

华为OD是Outsourcing Dispacth模式,是华为和外企德科联合招聘的简称。目前华为大多数是OD招聘。OD模式也是华为提出的一种新的用工形式,每年都会从OD项目挑优秀员工转为正编。所有OD和正式员工一样对待,没有差别,部门平时开会、评审等活动都是一起参加的,是同薪同酬,都是由华为的HR直接定的薪资,看的是我们技术能力。华为是大企业,能到华为上班也是有能力的,每个部门都有好多职位,是金子,在哪都会发光。

KJ.JK 6万+

华为OD机试D卷——2024真题目录+在线练习地址(华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华为OD机试华)

本章为C、D卷题库目录。华为机试有三道题目,第一道和第二道属于简单或中等题,分值为100分,第三道为中等或困难题,分值为200分。总分为400分,150分钟考试时间。OD的工资待遇还是很可观的15K-30K*14-16,希望大家努力。本专栏完全免费,收费是为了防止被爬,订阅专栏后添加客服联系退款(平台抽取部分以及扣税部分不可退),由于平台冻结资金一个月,所以只能次月退款,如4月份可退3月份的订阅,5月份可退4月份订阅。大家收到退款之后可以在评论区发送 “已退款” 支持一下哦!

m0_66793065的博客 1万+

华为OD机试真题2022(JavaScript)

本栏有100+道算法题,并提供正确解法和解题思路。保证都是牛客上的华为机试真题,大概率会考到原题。大家有什么问题可以留言探讨和交流

weixin_40767375的博客 1万+

2024最新华为od机试E卷刷题建议

华为OD是Outsourcing Dispacth模式,是华为和外企德科联合招聘的简称。华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2024e卷,od机试,2024E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2024华为od,如何备战华为od,华为od算法,华为od手撕代码,华为

KJ.JK 2万+

10分钟上手YOLOv11:最强姿态估计模型来了,代码开源,效果炸裂!

【10分钟玩转YOLOv11实时姿态估计】🚀 YOLOv11作为YOLO家族最新成员,在速度、精度和易用性上全面升级,尤其适用于姿态估计等复杂视觉任务。本文带您快速掌握: 1️⃣ 核心概念:姿态估计即识别人体17个关键点(如关节部位)并连接成数字骨架,是智能健身、体感游戏等应用的基础。 2️⃣ 技术优势: 超轻量级(最小仅2.9M参数) 极速推理(GPU仅1.7ms) 高精度(COCO mAP@50-95达50%) 3️⃣ 三步实操: ① 安装:pip install ultralytics ② 准备人物

weixin_41246802的博客 1783

华为OD机试真题2023(JAVA)

在华为od岗的薪资问题,并没有比市场上多多少,具体根据个人职级和绩效而定,初入职场的应届生薪资大概在20K-30K左右,相对于其他行业来说,华为的起薪是比较高的。华为OD机试通常由多个题目组成,包括算法设计、编程、调试等多个环节,考察候选人的基础知识、实际能力和算法编写能力等多个方面,是华为招聘流程中非常重要的一环。大家有什么不懂的,想看的,都可以留言,或者私信哪吒。总的来说,OD岗位的晋升空间相对较广,但是需要候选人不断提升自身能力,积极参与公司的内部培训和发展计划,才能在职业生涯中获得更好的发展机会。

学Java,找哪吒 1万+

Cursor3.0新界面使用说明

本文摘要:Cursor 3.x版本更新后,提供了两套主界面:Editor(类似VSCode的代码编辑器)和AgentsWindow(以AI智能体为中心的新界面)。Editor适合日常编码,AgentsWindow则支持并行运行多个AI任务、云端协作和多仓库管理。通过Ctrl+E可快速切换布局。文章详细介绍了AI聊天面板的操作技巧、四种工作模式(Agent/Plan/Ask/Debug)的区别,以及AgentsWindow的多任务管理功能。同时提供了Windows快捷键速查、中文化设置方法,并对比了新旧版本的

2501_90421497的博客 723

汽车TARA分析实战:从威胁建模到安全需求落地的完整指南

在汽车电子电气系统开发中,威胁分析与风险评估(TARA)是确保功能安全与网络安全的核心方法论。其原理在于通过结构化的流程,系统性地识别资产、分析威胁场景并评估风险,旨在将安全理念前置,从设计源头规避风险。这一过程的技术价值在于将模糊的安全担忧转化为可量化、可追溯的工程需求,从而指导资源精准投放,是符合ISO 26262和ISO/SAE 21434标准要求的关键实践。其应用场景贯穿智能汽车从概念设计到系统开发的各个阶段,尤其对于涉及自动驾驶、智能座舱、车云通信等复杂功能的域控制器开发至关重要。本文聚焦于TAR

weixin_42706667的博客 302

华为OD机试记录

上周参加了华为OD的机试,两个半小时三道题目,现进行复盘和记录。 第一题: 给你一个m*n(0< m,n < 1024,)的数组array,成员初始全为0,给你两个坐标{x1,y2},{x2,y2},且使得array[x1][y1] = 1array[x2][y2] = 1,数组成员为1的成员具有扩散性,也即是,每经过1秒,坐标{x1,y2},{x2,y2}的上、下、左、右四个方向的数组成员都会被扩散感染为1. **请问,经过多少秒后数组array的成员全部为1 ** 示例图 ​ 刚读完题我就

dengwodaer的博客 1万+

智能车竞赛模糊PID代码与使用方法

本文给出了模糊PID的代码,以及模糊PID的程序使用方法、参数调整方法

piginthesouth的博客 9122

2025A卷最新华为OD机试,独家整理总结上岸技巧,华为OD机试备考攻略

2025A卷最新华为OD机试,独家整理总结上岸技巧,华为OD机试备考攻略 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2025华为od,如何备战华为od,华为od算法,华为od手撕代码,华为OD机试202

KJ.JK 2456

Protege本体建模实战:从零构建电影知识图谱并导入Neo4j

本体建模是知识图谱构建的基石,通过类、属性、实例和约束系统描述领域知识,为数据提供可复用的语义骨架。OWL作为本体描述语言的标准,配合Protege工具可实现可视化建模,并借助推理机验证逻辑一致性,提升模型可靠性。在工程落地中,本体模型常需导入图数据库如Neo4j,以支持高效的关联查询与业务应用。本文以影视领域为背景,完整演示Protege中定义类层级、创建对象/数据属性、填充实例,以及导出OWL文件并通过Python脚本转换为Neo4j节点与关系的全过程,同时梳理命名空间、匿名节点、编码等易踩坑点,帮助读

weixin_29047545的博客 279

ArcFace vs 传统算法:实测MTCNN+ArcFace在PyCharm中的识别准确率(含完整对比数据)

本文通过PyCharm开发环境实测MTCNN+ArcFace组合在人脸识别中的性能表现,并与传统算法进行多维度对比。实验数据显示,ArcFace在LFW数据集上达到99.83%的准确率,显著优于传统方法。文章还提供了完整的代码实现和工程优化建议,为开发者提供实用的技术参考。

醉三国 233

2025最新华为OD机试,华为OD机试备考攻略,独家整理总结上岸技巧

很多人想重试本地部署DeepSeek,对接DeepSeek api,对于大多数小伙伴而言,门槛还是过高,即使部署成功,也会因为电脑配置等原因,只能部署 7B、8B 的版本,不是满血版的 671B 的 deepseek,体验不佳。4、 编码工具删除行 ctrl+d依旧可以使用,ctrl+c,+v ,+z 等均可正常使用,其他快捷键建议尽量莫用,尤其是有保存习惯的同学,不要用ctrl+s,否则会打开页面保存键,算弹出当前页面一次。如果需要上厕所,请在考试前提前准备好,避免考试中途离开座位,出现离开监控的情况。

学Java,找哪吒 7891

OpenWrt虚拟机磁盘扩容实战:从SquashFS到ext4的完整避坑指南

本文详细介绍了OpenWrt虚拟机磁盘扩容的完整流程,重点对比了SquashFS和ext4文件系统在扩容操作上的关键差异。通过五步安全迁移法和直接分区调整方案,帮助用户有效解决磁盘空间不足问题,同时提供高级技巧和故障排除指南,确保扩容过程顺利无坑。

weixin_29251131的博客 229

如何过华为机试

大师兄教你如何过华为机试  宝典1—内功心法  大华为这个大数据时代土豪金海量式的招聘又要开始了!!!  近期听说大华为的校招机试马上就要开始了,由于华为软件岗位的招聘只有技术面跟机试是与技术有关的内容,所以机试的地位非常重要。对于机试,除了长期积累的软件基本功以外,还有很多可以短期训练的东西,类似于考试之前的突击,可以迅速提高机试成绩,就像在我西电大杨老师考前最后一堂课一定要去,那

focus leepple 5672

一张图讲透银行个人外汇业务逻辑和实操

个人外汇业务主要分为结售汇和外币兑换两类,前者满足日常跨境需求,后者因投机属性多数银行已暂停。业务核心是利用汇率波动实现货币兑换,满足支付或投资需求。交易涉及客户分类、主流币种、多种渠道和汇率计算规则,需区分直接/间接标价法判断汇率走势。银行通过"货币兑换"科目核算损益,采用期末折算确认盈亏。监管要求包括5万美元年度额度、合法渠道、真实性原则及大额申报等。随着跨境金融数字化发展,掌握基础逻辑和合规要求是安全参与外汇业务的关键。

银行信息系统应用架构详解 288

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

什么是华为OD?华为OD机试通过率怎么样?华为OD机试怎么刷题?

2024年,华为目前已经启用D卷,目前D卷和C卷的题目一样一次订阅永久阅读,支持在线刷题,持续更新,有问题随时解答,本专栏题目数量已收录到484道。每篇文章的思路分析都非常详细,题目新增图解思路,问题解疑,多样例测试,超过百字的思路参考解析。

KJ.JK 6653

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

上一篇: TensorFlow2开发基本步骤
下一篇: 牛客网题库-简单题
FIEforever
博客等级 码龄19年 1粉丝 11原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值