Windows Server 2012 R2超级虚拟化之五 利用Shared VHDX创建虚拟机群集

35、Windows Server 2012及R2的实时迁移与资源优化技术 本文深入探讨了Windows Server 2012及R2中的实时迁移与资源优化技术,涵盖了无共享实时迁移的工作原理、配置要求和操作步骤,同时解析了动态优化、电源优化及自定义属性在资源管理中的应用。此外,文章还介绍了故障排除方法、Kerberos认证配置、PowerShell并行迁移的实现,以及相关技术在企业虚拟化环境中的综合应用,为企业提升虚拟化环境的灵活性、可用性和资源利用率提供了全面的技术指导。 阅读详情


                               Windows Server 2012 R2超级虚拟化之五 利用Shared VHDX创建虚拟机群集

 

  在Windows Server 2012 R2中可以通过使用共享的虚拟硬盘VHDX文件的方法来模拟IP SAN,来为虚拟机创建群集提供共享存储。这样为虚拟机创建群集时就不用再像以前一样通过使用软件模拟ISCSI 磁盘的方式来提供共享存储了。Shared VHDX功能是用来建立一个高可用性基础设施,并为私有云部署和管理大型工作负载的云托管环境,这一点尤为重要。共享虚拟硬盘使多个虚拟机访问同一个虚拟硬盘VHDX文件,它提供了使用Windows故障转移群集的共享存储.共享的虚拟硬盘文件可以驻留在群集共享卷(CSV)或服务器消息块(SMB)的向外扩展文件服务器的文件共享。

注意:此功能只支持Windows Server2012 R2。在以前版本的Windows Server虚拟机群集中使用一个共享的虚拟硬盘不可能的。

  共享一个虚拟硬盘文件(VHDX)意味着你可以创建和管理来宾故障转移群集,以保护你的虚拟机内运行的应用服务。在Windows Server 2012 R2之前,如果你想创建Hyper-V来宾故障转移群集,你需要使您的存储虚拟机的拓扑结构。在WindowsServer 2012 R2开始,您可以部署Hyper-V的客户不再绑定到您的存储拓扑的故障转移群集。通过使用一个共享的虚拟硬盘,光纤通道,服务器消息块(SMB),存储空间,或iSCSI存储选项,您可以实现一个来宾故障转移群集。共享虚拟硬盘仅可在WindowsServer 2012 R2的 Hyper-V上使用,多个虚拟机之间共享一个虚拟硬盘上的文件。共享一个虚拟硬盘文件(VHDX)是必要的Hyper-V来宾故障转移群集的共享存储。
使用共享的虚拟硬盘的理想选择以下几种情况:

  1.  SQL Server数据库文件。

  2.  文件服务器在虚拟机中运行的服务。、

  3.  数据库文件驻留在共享磁盘上。

 

 

要配置来宾故障转移群集使用共享的虚拟硬盘,你需要以下几点:

  1. 至少有两个节点的Hyper-V故障转移群集。

  2. 服务器都必须运行WindowsServer 2012 R2。

  3. 服务器必须属于同一个Active Directory域。

  4. 配置的共享存储资源的可用性,例如,块存储(作为集群存储空间等)或向外扩展文件存储基于SMB3.0的文件服务器集群上(运行Windows Server 2012 R2)。足够的内存,磁盘和处理器能力范围内支持多个虚拟机,实现为客户的故障转移群集故障转移群集。

  5. 来宾故障转移群集共享的虚拟硬盘必须采用VHDX文件格式,而且虚拟硬盘只能是数据盘不能是操作系统硬盘

  6. 第一代和第二代的虚拟机都支持在来宾故障转移群集,使用一个共享的虚拟硬盘。

  7. 支持使用一个共享的虚拟硬盘的来宾(虚拟机)操作系统包括WindowsServer 2012R2和Windows Server 2012,并且来宾(虚拟机)操作系统必须安装集成服务。

  8. 来宾故障转移群集的共享虚拟硬盘可以部署在:
    •群集共享卷(CSV的)块存储(包括集群存储空间)。
    •向外扩展文件存储基于SMB3.0的文件服务器上。

 

 

 

说明:

环境基于实验四

 

 

  1. 首先准备一台微软的ActiveDirectory活动目录服务器名为DC,创建域kkfloat.com,在实验四已经创建完成

 

 

  1. 然后准备一台物理主机提供Hyper-v群集服务器的共享存储

  1. 安装Windows Server 2012 R2 操作系统,命名为vsan,IP:214.214.51.63/24。

  2. 然后添加ISCSI目标服务角色

  3. 设置ISCSI磁盘,创建一个仲裁盘Q为10G和一个数据磁盘S为200G,目标名称为hyper-v,授予所有发起程序可以访问

 

 

  1. 以域管理员身份登陆HV-1服务器,此服务器作为Hyper-v群集的第一节点 (HV-1服务器在实验四已经创建完成)

  1. 连接vsan服务器创建的两个ISCSI虚拟磁盘Q和S,并初始化

  2. 添加Hyper-v角色(实验四已安装)和故障转移群集服务,然重启计算机

     

     

  1. 再准备一台物理主机作为Hyper-v群集的第二节点

  1. 安装Windows Server 2012 R2 操作系统,命名为HV-2,IP:214.214.51.62/24,然后加入域kkfloat.com。

  2. 连接vsan服务器创建的连个ISCSI虚拟磁盘Q和S

  3. 添加Hyper-v角色和故障转移群集服务,然重启计算机

 

 

  1. 以域管理员身份登陆HV-1服务器 ,开始创建Hyper-v虚拟化主机群集

  1. 打开故障转移群集管理器,验证配置

  2. 添加群集节点,加入HV-1和HV-2两台虚拟化主机

  3. 运行所有能测试,直到验证完成,检查群集条件是否有错误提示

  4. 进入群集创建向导,设置群集名称为hyper-v,IP:214.214.51.64/24

  5. 完成群集创建,检查群集状态

  6. 此时仲裁盘为10G的Q盘;然后将200G的S盘开启群集共享卷功能,用于存放虚拟机文件和磁盘。并且在DC服务器的DNS上为群集名称创建主机记录

     

     

  1. 当完成以上操作后,创建shared vhdx虚拟机群集的基本条件已经都准备好了。接下来就要准备Shared VHDX虚拟机群集节点了,在一台Hyper-v主机上创建两台虚拟机并且都安装Windows Server 2012 R2操作系统,并分别名为FileSrv1(IP:214.214.51.71/24)和FileSrv2/(IP:214.214.51.72/24),最后将它们加入现有域kkfloat.com中

  1. 从Hyper-V的故障转移群集节点之一,创建两个或多个高度可用的虚拟机。当你创建虚拟机时,在指定名称和位置“页中,选择存储虚拟机在不同的位置”复选框,单击“浏览”,然后浏览到共享存储位置。

  2. 如果共享存储是一个CSV磁盘,导航到:C:\ ClusterStorage\VOLUMEX,其中C:\表示系统驱动器,X代表的卷数。如果共享存储是SMB文件共享中,导航到\\服务器\共享名,其中ServerName表示向外扩展文件服务器客户端访问点,共享名代表SMB文件共享的名称。

  3. 在指定生成页面,选择第1代或第2代。这两种类型的虚拟机都支持。不过,如果你想使用现有的虚拟硬盘。vhd文件格式,您必须使用第1代的虚拟机。注意操作系统虚拟硬盘可以使用VHD或VHDX文件格式的。

  4. 在连接虚拟硬盘“页中,创建一个虚拟硬盘,或者使用现有的虚拟硬盘,必须驻留在共享存储。 (如果你使用现有的虚拟硬盘,来宾操作系统必须是Windows Server 2012或Windows Server 2012 R2预览)在“位置”框中,指定一个CSV路径或SMB文件共享路径。

  5. 如果你选择创建一个虚拟硬盘,每个虚拟机上安装操作系统。您必须使用Windows Server2012或Windows Server 2012 R2。如果你安装了Windows Server 2012作为来宾操作系统升级为Windows Server 2012 R2的Hyper-V集成服务。

  6. 确保正在运行的两个虚拟机,他们加入到同一个Active Directory域。

 

 

  1. 创建并启用共享的VHDX虚拟硬盘

  1. 故障转移群集管理器中,展开群集名称,然后单击“角色” 。

  2. 在角色窗格中,用鼠标右键单击虚拟机,你想添加一个共享的虚拟硬盘,然后单击“设置” 。

  3. 在虚拟机的硬件设置中,单击SCSI控制器。

  4. 在细节窗格中,单击”硬盘驱动器“ ,然后单击”添加“ 。

  5. 硬盘驱动器详细信息窗格中,单击“新建”下,虚拟硬盘。新建虚拟硬盘向导“打开。

  6. 在开始之前“页上,单击”下一步“ 。设驻校“选择磁盘格式”页上,接受VHDX的默认格式,然后单击“下一步” 。注意共享虚拟硬盘格式必须是VHDX 。

  7. 在选择磁盘类型“页上,选择”固定大小或动态扩展,然后单击“下一步” 。注意差异磁盘不支持一个共享的虚拟硬盘。

  8. 指定名称和位置“页中,执行以下操作:了。在“名称”框中,输入共享虚拟硬盘的名称。在“位置”框中,输入共享存储位置的路径。对于共享存储是一个群集共享CSV磁盘,进入路径:C: \ ClusterStorage的\ VOLUMEX ,其中C : \表示系统驱动器, X代表所需的CSV卷号。对于共享存储是SMB文件共享,指定路径: \ \服务器\共享名,其中ServerName表示向外扩展( scale - out )文件服务器客户端访问点,共享名代表SMB文件共享的名称。然后单击”下一步“ 。

  9. 在配置磁盘“页面中,接受默认选项创建一个新的空白虚拟硬盘,指定所需的大小,然后单击”下一步“ 。

  10. 在完成新建虚拟硬盘向导“页上,查看配置,然后单击”完成“ 。注意如果虚拟机运行时,不要点击应用在虚拟机设置,然后再继续到下一个步骤。如果点击了申请一个正在运行的虚拟机上,你会需要停止或删除虚拟机,然后单击“应用”无添加虚拟硬盘。

  11. 虚拟机设置,根据SCSI控制器,扩展的硬盘驱动器,你在前面的过程中创建的。
    单击高级功能。选择“启用虚拟硬盘共享”复选框。注意如果该复选框显示为灰色不可用,你可以做下列操作之一:

  1. 取出,然后添加到正在运行的虚拟机的虚拟硬盘。当你这样做的时候,确保

  2. 不新建虚拟硬盘向导完成时,单击“应用”。相反,应立即在高级功能配置共享。

  3. 停止虚拟机,然后选择启用虚拟硬盘共享“复选框。点击Apply,然后单击“确定”

  1. 在FileSrv1和FileSrv2两台虚拟机里初始化共享磁盘。打开服务器管理器中或“磁盘管理” ,确认共享的VHDX文件是作为一个磁盘可见。使磁盘联机,初始化磁盘,然后创建并格式化该卷。

 

 

  1. 创建虚拟机群集,验证共享VHDX文件作为共享存储。

  1. 分别在FileSrv1和FileSrv2两台虚拟机内添加故障转移群集服务功能

  2. 创建来宾群集添加虚拟机作为集群节点。当您创建集群,添加所有合资格存储。 (共享VHDX文件将被添加可用存储空间。 )

  3. 完成虚拟机群集创建




视频分享:http://pan.baidu.com/share/link?shareid=3787391691&uk=1025659618

24、深入解析Windows Server存储配置:共享VHDX、数据去重与QoS策略 本文深入解析了Windows Server中的关键存储配置技术,包括共享VHDX与VHD集的应用、数据去重机制以及存储服务质量(QoS)策略。详细介绍了各项功能的技术要求、配置步骤、限制与改进,并通过对比不同存储方案和提供最佳实践建议,帮助用户在虚拟化环境中高效利用存储资源。结合流程图与PowerShell示例,全面指导读者实现高性能、高可靠性的存储架构。 阅读详情

相关推荐

深入解析Windows Server 2012 R2 Hyper-V虚拟化方案_2012_HYPER-V虚拟化方案

在当前的IT基础设施中,服务器虚拟化技术已经成为降低硬件成本、提升资源利用率和简化IT管理的重要手段。Windows Server 2012 R2中的Hyper-V组件是微软推出的服务器虚拟化平台,它允许用户在一个物理硬件上运行多个虚拟机(VMs),从而能够更高效地使用硬件资源,提供灵活的灾难恢复和负载平衡方案。Hyper-V具备高度的可扩展性和灵活性,支持广泛的硬件平台和操作系统。它不仅包括基础的虚拟化技术,还提供高级特性如实时迁移、动态内存分配、虚拟机备份和恢复等。

weixin_32999557的博客 1095

Hyper-V Server共享VHDX

在 Windows Server 2012 R2 中,可以在多个虚拟机之间共享虚拟磁盘文件(仅限 .vhdx 格式的磁盘文件)。管理员可以使用这些 .vhdx 文件作为虚拟机故障转移群集或来宾群集的共享存储。例如为数据磁盘和见证磁盘创建共享的 .vhdx 文件(但不应将共享的 .vhdx 文件用作操作系统的虚拟磁盘文件)。这一变化可简化来宾群集配置的部署。相比虚拟光纤通道或 ...

weixin_34258078的博客 604

新版StarWindConverter支持直接转VHDX

新版StarWindConverter支持直接转VHDX ,可以实现IMG,VHD,XHDX等互转。是虚拟机必备工具。

Copy file cross Hyper-v Server and VMs 实现虚拟机和主机的文件分享

Microsoft Hyper-v与VMware不同, 不能实现主机和虚拟机之间文件的拖拽,但是Hyper-v的好处就在于其余Microsoft之间的兼容性. 虽然不能实现直接的拖拽,但是我们可以利用Windows自带的VHD功能来实现与虚拟机之间的文件拷贝。 首先在你的Hyper-v主机上创建一个VHD虚拟硬盘. Right Click Computer > Manage fil

xulimessage的专栏 1068

Windows Server 2012 为数据中心 Module 1 Hyper-V 核心

Windows Server 2012 为数据中心 Module 1 Hyper-V 核心

【ESP32】1.编译、烧录、创建工程

本文介绍了在VSCode中搭建ESP32开发环境并烧录"Hello World"工程的过程。首先通过串口工具成功下载固件后,解决了OpenOCD报错问题。针对头文件无法识别的问题,修改了c_cpp_properties.json配置文件,调整了编译器路径和IntelliSense模式。文章还详细说明了创建新工程的步骤,包括选择芯片型号和项目模板,并验证了串口打印功能。最后提醒在项目构建时要等待完成,避免文件缺失。整个流程涵盖了环境搭建、代码烧录、调试及新项目创建等关键环节。

梁山1号 1485

在Hyper-v中使用网络共享路径存储 VHD文件

最近在一个windows2008 sp2 上用Hyper-v搭建一个测试环境,在建虚拟机时尝试将VHD文件放在网络共享盘避免本地磁盘不足的问题。 建立一个共享文件夹将作为VHD文件的存储路径。在创建vhd文件时,发现这台Hyper-V服务器的机器账号没有共享文件夹的访问权限,如下图所示。编辑目标文件夹NTFS权限,按照上图提示给机器帐号赋予读写权限,...

weixin_33881753的博客 1086

【生物识别模组介绍】静脉识别模组

静脉识别技术是依据流动的静脉血液中的血红蛋白对近红外光有所吸收,通过近红外光照射手指、手掌、面部、腕部呈现的分布图像,再使用特定的算法对图像进行特征提取、分析比对,从而进行身份认证识别。静脉结构相同几率为34亿分之一,每个人的静脉结构具有独特性,而且静脉特征图像自成年后终身不变,不受外部环境、疾病等影响,是人体最稳定的生物特征之一。商务合作联系:newmagicmission@gmail.com图1.0。

upupDay's blog 902

Hyper-V 高可用性 (存储配置篇)

Windows 2008默认情况下就对iSCSI有着很好的支持,下面我们先将两台虚拟服务器链接到iSCSI存储上。 1、 打开“管理工具”、“iSCSI发起程序” 2、 然后会弹出对话框,告诉你将要启动“iSCSI服务” 3、 点击“是”以后,会弹出对话框,告知将打开防火墙端口 4、 点击“是”。接下来就出现了iSCSI的配置窗口

supperzhou2008的博客 1130

博途AI助手演示,完成简单且重复的梯形图代码,并导入到博途

自写个博途AI助手,下面演示AI帮我生成完善多个模拟量输入转换的代码,

gsjkwg的博客 1529

手把手教你解决COLMAP编译中的Ceres CUDA支持问题(附详细配置步骤)

本文详细解析了COLMAP编译中Ceres CUDA支持问题的完整解决方案,包括环境准备、Ceres Solver的CUDA编译配置、COLMAP的CUDA集成配置等关键步骤。通过优化CMake参数和解决常见错误,帮助技术人员充分利用GPU加速优势,提升三维重建效率。

vodka的博客 862

win8.1共享计算机,Win8/Win8.1玩转虚拟机六:Hyper-V文件共享篇

本周,IT之家为Win8、Win8.1用户带来玩转Hyper-V虚拟机一系列教程。对于爱好者来说,如何交换物理机与Hyper-V虚拟机之间文件,成为一个难题。这次,IT之家整理如何使用Hyper-V虚拟磁盘实现文件共享功能。如果你的虚拟机支持连接至外部网络时,可以借助网盘工具。但是如果处于内网环境时,这时我们可以借助Hyper-V虚拟磁盘完成文件共享功能。相比VMware、VirtualBox工具...

weixin_33445134的博客 822

保姆级教程:在SIwave 2024 R2中搞定TDR仿真,手把手教你分析USB 3.0差分线阻抗

本文提供了一份详细的SIwave 2024 R2 TDR仿真教程,重点讲解如何分析USB 3.0差分线阻抗。从项目准备、参数配置到结果分析,逐步指导工程师完成完整的仿真流程,并分享实战经验和高级技巧,帮助提升信号完整性分析能力。

weixin_33670786的博客 498

Windows Server 2012 R2 新增功能 虚拟化和组网技术(续)

1.5 虚拟化 虚拟化允许将多个计算机操作系统放在同一台物理机器上。过去,你需要为域控制器,Exchange服务器、DNS服务器和DHCP服务器使用4台服务器。现在,你可以在一个物理实体内容纳4台虚拟服务器。这样比较省钱(节省硬件开销),也省空间(过去需要4台服务器,现在只要1台服务器)。Windows Server 2012 R2中的虚拟化功能仍然在继续改进之中。 1.5.1 Hyp...

manyoftenvictory的博客 757

SystemC实战:用C++搞芯片建模的5个典型场景(含代码示例)

本文通过五个典型实战场景,详细介绍了如何使用SystemC这一基于C++的硬件建模库进行芯片设计与系统级建模。内容涵盖从基础并发模块构建、事务级总线建模、跨时钟域验证,到与ModelSim协同仿真及多核系统性能探索,并提供了完整的代码示例,帮助软件工程师利用熟悉的C++工具链高效参与硬件架构设计与验证。

weixin_29191761的博客 316

华为OD机试真题 新系统 9月27号 【数据中心最佳维护窗口】

华为OD机试真题 新系统【数据中心最佳维护窗口】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【数据中心最佳维护窗口】多语言题解。

qq_45776114的博客 1168

Windows Server 2012 R2超级虚拟化之八 数据中心架构SCVMM 2012 R2

Windows Server 2012 R2超级虚拟化之八数据中心架构之SCVMM 2012 R2   虚拟机管理器(SCVMM)是虚拟化数据中心管理解决方案,使您能够配置和管理您的虚拟主机,网络和存储资源,以创建和部署虚拟机和您已经创建了私有云服务。 以下是SCVMM2012 R2的增强和

kkfloat博客 9821

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

视频教程-安装和配置 Windows Server 2012 R2 Hyper-V-Windows

Windows Server 2012 R2 Hyper-V 管理 Tech...

weixin_29551669的博客 381

深度学习工具包 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")

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

虚拟机安装2012服务器系统配置,Windows Server 2012 操作系统部署和服务器虚拟化Hype-V部署配置.pdf...

Windows Server 2012 操作系统部署和服务器虚拟化Hype-V部署配置Microsoft OEM ROK Windows Server 2012 操作系统部署和服务器虚拟化专题实验手册Microsoft OEM ROKWindows Server 2012 操作系统部署和服务器虚拟化专题实验手册序:实验拓扑图(物理和虚拟机)及实验工具检查Lab 01 :在物理机上安装 Window...

weixin_42447265的博客 809

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SCVMM之Windows Server2012 R2新功能

  在Windows Server 2012 R2中可以通过使用共享的虚拟硬盘VHDX文件的方法来模拟IP SAN,来为虚拟机创建群集提供共享存储。这样为虚拟机创建群集时就不用再像以前一样通过使用软件模拟ISCSI 磁盘的方式来提供共享存储了。Shared VHDX功能是用来建立一个高可用性基础设施,并为私有云部署和管理大型工作负载的云托管环境,这一点尤为重要。共享虚拟硬盘使多个虚拟机访问同一个虚...

weixin_33827965的博客 123

Server 2012 Hyper-v新功能之四:存储迁移

Server 2012 Hyper-v新功能之四:存储迁移 Windows Server 2012 之Hyper-v初识 Server 2012 Hyper-v新功能之一:客户端 Hyper-V Server 2012 Hyper-v新功能之二:自动化支持技术 Server 2012 Hyper-v新功能之三:Hy...

有伊说一 217

Windows Server 2012 R2 新特性 - 二代虚拟机

Hyper-V作为云操作系统的重要核心部分,从Windows Server 2008开始不断得到增强。 一年以前,在Windows Server 2012发布时,Hyper-V 3.0成了闪耀的亮点。除了服务的性能和许多特性外,在虚拟机这个层面上,出现了新的虚拟磁盘文件格式VHDX。 一年过去了,针对虚拟机又有什么变化呢? ...

weixin_34228662的博客 144

虚拟架构就绪 | 谈谈Windows Server 2012 R2迁移这件小事

我们所说的“新选择”包括操作系统升级——告别Windows Server 2003或2008,选择用什么样的姿势进行升级呢? 新年伊始,正是企业对自身IT基础设施进行评估的最佳时期。在多项评估项目里面,服务器操作系统迁移是必不可少的一项。 自2003年Windows Server 2003版本发布以来,IT行业发生了两个巨大的转变。一是从物理服务器迁移到虚拟服务器,且到目前,虚拟化已经发展成熟,是...

weixin_30363817的博客 145
上一篇: Windows Server 2012 R2超级虚拟化之四 兼容低版本的能力
下一篇: Windows Server 2012 R2超级虚拟化之六 Hyper-v Replica 2.0和Live migrations
kkfloat
博客等级 码龄17年 923粉丝 201原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值