Windows 2003的流媒体服务

基于Nginx+rtmp搭建支持hls协议的点播流媒体服务器(windows/Linux) 基于Nginx+rtmp搭建支持hls协议的点播流媒体服务器(支持avi//mkv/wmv/mp4/mov/flv),包括全套工具,已完成自验证 阅读详情
http://www.sina.com.cn 2004年05月25日 11:23 天极网  文/务实
  随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网上看电影、听音乐。而视频点播和音频点播功能的实现,则必须依靠流媒体服务技术。就目前来看,最流行的流媒体点播服务器只有两种,即Windows Media服务和Real Server。下面我们在这里主要讨论在Windows 2003 Server环境下如何搭建视频点播服务器。我们大家知道,Windows Media服务采用流媒体的方式来传输数据。通常格式的文件必须完全下载到本地硬盘后,才能够正常打开和运行。
而由于多媒体文件通常都比较大,所以完全下载到本地往往需要较长时间的等待。而流媒体格式文件只需先下载一部分在本地,然后可以一边下载一边播放。Windows Media服务支持ASF和WMV格式的视频文件,以及WMA和MP3格式的音频文件。
  一、Windows Media服务的安装
  Windows Media服务虽然是Windows Server 2003系统的组件之一,但是在默认情况下并不会自动安装,而是需要用户来手动添加。而在Windows Server 2003操作系统中,除了可以使用“Windows组件向导”安装Windows Media服务之外,还可以通过“配置您的服务器向导”来实现。
  (1)在刚刚安装好Windows Server 2003操作系统并进入Windows时,系统会自动运行“管理您的服务器”窗口。单击其中的“添加或删除角色”超级链接,将显示“配置您的服务器向导”对话框。
  (2)单击该对话框中的“下一步”按钮,计算机将开始自动检测所有的设备、操作系统,并检测所有的网络设置。在检测完成后将显示“配置选项”对话框,选择“自定义配置”选项,以自定义安装自己所需要的网络服务。
  (3)单击“下一步”按钮,将显示“服务器角色”对话框,在“服务器角色”列表框中列出了所有可以安装的服务器。系统中大部分服务的安装和卸载都可以在该对话框中进行选择。
  (4)选择列表框中的“流式媒体服务器”选项,然后单击“下一步”按钮,将显示“选择总结”对话框,用来查看并确认所选择的选项。  
  (5)单击“下一步”按钮,将显示“正在配置组件”对话框,并根据提示将Windows Server 2003安装光盘放入光驱。
  (6)放入安装光盘后单击“确定”按钮,系统便开始从光盘中复制文件并安装Windows Media服务,并用进度条代表当前的安装进度。
  (7)安装完成以后将显示对话框,这表示已经成功地将此服务器设置为流式媒体服务器。
  (8)单击“完成”按钮关闭该向导,返回到“管理您的服务器”窗口,将显示流式媒体服务器已成功安装。
  另外,Windows Media服务也可以在“控制面板”中,采用传统的“添加/删除程序”方式来添加安装。在“Windows组件向导”对话框中,选中Windows Media Services复选框,并根据系统提示插入Windows安装光盘即可成功安装。
  Windows Media服务安装完成后,将返回到“管理您的服务器”窗口。单击其中的“流式媒体服务器”右侧的“管理此流式媒体服务器”超级链接,或依次单击“开始”->“控制面板”->“管理工具”->Windows Media Services选项,将显示Windows Media Services窗口。有关Windows Media服务的所有管理工作均可在该窗口中完成。
  该窗口中介绍了关于流媒体的一些基础知识,以作为入门者对它的了解。在“入门”选项卡中,单击左侧基础知识中的某个选项,即可在右侧显示出关于该项的解释说明。
二、制作流式文件
  Web服务可用来发布HTML文件,而视频点播服务自然可用来发布流媒体文件。使用Windows Media编码器,可以将文件扩展名为.wma、.wmv、.asf、.avi、.wav、.mpg、.mp3、.bmp和.jpg等文件转换成为Windows Media服务使用的流文件。.asf、.wma和.wmv文件扩展名代表标准的Windows Media文件格式。其中的.asf文件扩展名通常用于使用Windows Media Tools 4.0创建的基于Microsoft Media的内容。而.wma和.wmv文件扩展名是作为Windows Media编码器的标准命名约定引入的,目的是使用户能够容易区别纯音频(.wma)文件和视频(.wmv)文件,这三种扩展名可以交换使用。
  1、安装Windows Media编码器
  Windows Server 2003中并没有自带Windows Media编码器,需要到Microsoft官方网站上下载Windows Media编码器的简体中文版,然后再执行安装过程。需要注意的是,编码器既可以安装在Windows Media服务器上,同时也可以安装在其他计算机上。也就是说,编码器只需安装在执行编码(即转换文件格式)工作的计算机上。
  (1)双击运行下载的Windows Media编码器安装文件,将显示安装向导对话框,在本安装向导中显示了可以安装的组件。
  (2)单击“下一步”按钮,将显示“许可协议”对话框,要求用户阅读最终用户许可协议,可访问用户是否接受许可协议中的条款,然后单击“我接受许可协议中的条款”单选项。
  (3)选择完之后单击“下一步”按钮,将显示“安装文件夹”对话框,在“安装文件夹”文本框中显示了Windows Media编码器将要安装的位置。当然,也可以键入其他的安装路径。单击“浏览”按钮以选择其他的安装路径。
  (4)单击“下一步”按钮,即可显示“准备安装”对话框,此时表示现在可以开始安装Windows Media服务了。
  (5)单击“安装”按钮,安装文件就会向硬盘中开始复制文件,并进行Windows Media 服务安装。在安装完成后就会显示安装完成对话框,提示已经成功地完成Windows Media编码器9系列安装向导。
  (6)单击“完成”按钮以完成安装,并根据系统提示重新启动计算机。
  依次单击“开始”->“程序”->Windows Media->“Windows Media编码器”选项,将会运行Windows Media编码器,并显示“Windows Media编码器”窗口。
  2、转换文件格式
  转换文件格式的标准描述应当是“对存储信息源编码”,其实也就是将保存在硬盘或光盘上的多媒体文件转换为Windows Media服务可使用的流媒体文件格式,这个文件格式转换过程叫做编码。Windows Media编码器可以将MPG和AVI格式的多媒体文件编码为WMV格式。
  (1)依次单击“开始”->“所有程序”->“Windows Media”->“Windows Media编码器”选项,将显示“新建会话”对话框。选择其中的“转换文件”图标,以准备转换视频文件。
  (2)单击“确定”按钮,将显示“新建会话向导”窗口。直接在“源文件”文本框中键入要转换文件所在的文件夹和文件名,或者直接单击“浏览”按钮,以查找要转换的文件。默认状态下,输出文件与源文件均保存在同一文件夹。当然,也可以重新指定保存的文件夹。
  (3)单击“下一步”按钮,将显示“内容分发”对话框,以指定分发内容的方式。由于是为Windows Media服务制作节目,所以在这里应该要选择“Windows Media服务器(流式处理)”选项。
  (4)单击“下一步”按钮,将显示“编码选项”对话框,在这里可以指定音频和视频编码方式。如果该视频文件只被用于局域网或宽带传输,可选择高质量的视频和音频,并指定较高帧速率,从而获得清晰的图像和逼真的声音。当然,此时所占用的网络带宽也偏高,文件存储空间也就大。在这里每选中一个比特率就会生成一个相应的WMV文件,因此通常情况下只需选中一个比特率即可。
  (5)单击“下一步”按钮,将显示“显示信息”对话框,分别可以在相应的文本框中键入该视频文件的相关信息。
  (6)单击“下一步”按钮,将显示“设置检查”对话框,在这里可以显示并检查该视频文件的相关信息。如果有任何错误,可以单击“上一步”按钮以返回至相关页面重新进行相关的设置。
  (7)单击“完成”按钮,系统将开始文件格式的转换。这可能要花一段时间,需耐心等待。
  (8)文件的格式转换完成后,将显示“编码结果”对话框,单击“关闭”按钮,以结束格式转换过程。若要继续转换下一个视频文件,可单击其中的“新建会话”按钮。若要检查刚转换的视频文件,可单击“播放输出文件”按钮。
3、对实况进行编码
  对实况信息源进行编码运算,就是指通过将音频或视频设备录入的音频、视频或图片等源信息进行编码运算,以将它们转换为流或流文件的过程。对实况源进行编码的过程与对已存储信息源的编码过程特别相似。
  (1)启动Windows Media编码器后,在“新建会话”对话框上的“向导”选项卡中,选择“捕获音频或视频”图标,然后单击“确定”按钮,以运行“新建会话向导”窗口。首先显示“设备选项”对话框,在这里显示用户可以使用的视频和音频设备。
  (2)单击“下一步”按钮,将显示“输出文件”对话框,由于要将所创建的文件保存,需要在“文件名”文本框中键入保存路径,并自定义一个文件名,当然也可以单击“浏览”按钮来选择保存文件的文件夹。
  (3)单击“下一步’按钮,将显示“内容分发”对话框,在“要如何分发内容”列表框中列出可以使用的分发方式。由于是对实况源进行流式处理,所以在这里应该选择“Windows Media服务器”选项。
  (4)单击“下一步”按钮,将显示“编码选项”对话框。在这里显示了所选择的分发方式的编码设置,其中包括视频、音频和比特率等。如果用户不想使用这些默认设置,也可以进行修改。
  (5)单击‘完成”按钮,’打开严Windows Media编码器”进行编码,也可以单击“下一步”按钮,将显示“显示信息”对话框。在这里可以为该编码文件添加显示信息,这些信息将在使用Windows Media Player播放,并且只存在启动了字幕时才可以看到。
  (6)单击“完成”按钮后,会打开WindowsMedia编码器直接进行编码,也可以单击“下一步”按钮对刚才的设置信息进行检查,将显示“设置检查”对话框。
  (7)如果确认所进行的设置无误后,就可以单击“完成”按钮完成。在这里要注意的是,如果选中“单击‘完成’后开始捕获”复选项,在单击“完成”按钮后会立即捕获信息并进行编码。否则不会立即进行捕获,将显示窗口。
浅述HLS视频服务器EasyDarwin视频直播点播平台如何快速搭建一个视频点播系统 1、点播服务,在EasyDarwin中,我们可以使用点播服务功能上传本地视频,点播上传支持的文件类型包括mp3、wav、mp4、mpg、mpeg、wmv、avi等,上传完成后,视频将进行解码,解码完成后,就可以观看视频了,并且还可以生成分享链接和二维码进行视频分享。EasyDarwin视频直播点播平台能实现视频流媒体的上传、转码、存储、录像、推拉流、直播、点播等功能,可兼容Windows、Android、iOS、Mac等操作系统,系统支持HTTP、HLS、RTMP等播出协议,具备较强的可拓展性与灵活性。 阅读详情

相关推荐

window平台下基于Nginx+rtmp搭建支持rtmp/hls协议的直播/点播流媒体服务器

Nginx+rtmp搭建支持rtmp/hls协议的直播/点播流媒体服务器

idoits的博客 3856

win10下用nginx搭建一个点播服务器支持各类视频格式

win10下用nginx搭建一个点播服务器支持各类视频格式为url播放

qq_39983638的博客 2829

Windows Media Server搭建流媒体服务器

随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网上看电影、听音乐。而视频点播和音频点播功能的实现,则必须   <!-- -->

在喧嚣中寻找一份学习的宁静---ruotian 5457

Win2003中搭建视频服务器

  随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网上看电影、听音乐。而视频点播和音频点播功能的实现,则必须依靠流媒体服务技术。就目前来看,最流行的流媒体点播服务器只有两种,即Windows Media服务和Real Server。下面我们在这里主要讨论在Windows 2003 Server环境下如何搭

drw's Blog 1331

Windows Server 2003流媒体服务器部署与管理实验指南

Windows Server 2003是微软公司在2003年发布的一款服务器操作系统,它基于Windows XP架构,拥有企业级的稳定性和扩展性。版本包括Standard Edition(标准版)、Enterprise Edition(企业版)、Datacenter Edition(数据中心版)等,每种版本针对不同规模的企业环境有着不同的功能支持和性能优化。标准版主要面向小型企业和部门级应用,它支持文件和打印服务,集成了互联网信息服务(IIS)。

weixin_42576410的博客 1182

nginx-windows 支持视频点播 直播服务

简单的配置即可实现 音视频服务器的搭建,此为windows版本,linux版 较新的版本也支持,最好以yun方式安装,即可自带,省去自行编译 自行安装各种依赖模块的麻烦

服务器2003不支持流媒体,用Windows2003搭建流媒体服务器

在windows2003中,微软内置了流媒体服务器组件,可以实时广播符合微软要求的流媒体文件了。下面我们图解如何来设置它。首先,安装好摄像头和声卡的驱动程序,保证其能支持运行。然后安装微软的media encoder 9(免费软件),下载地址:http://www.microsoft.com/windows/windowsmedia/9series/encoder/default.aspx。然后在...

weixin_36156538的博客 439

在Windows 2003中快速搭建超酷视频服务器

在Windows 2003中快速搭建超酷视频服务器 随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网上看电影、听音乐。而视频点播和音频点播功能的实现,则必须依靠流媒体服务技术。就目前来看,最流行的流媒体点播服务器只有两种,即Windows Media服务和Real Server。下面我们在这里主要讨论在Windows 2003 Server环境下如何搭建视频点播服务器。我们大家知道,Windows Media服务采用流媒体的方式来传输数据。通常格式的文件必须完全下载到本地硬盘后,才能够正常打开和运行。而由于多媒体文件通常都比较大,所以完全下载到本地往往需要较长时间的等待。而流媒体格式文件只需先下载一部分在本地,然后可以一边下载一边播放。Windows Media服务支持ASF和WMV格式的视频文件,以及WMA和MP3格式的音频文件。

怎样在windows2003中搭建流媒体服务器

转自:http://vincentmyname.bokee.com/tb.b?diaryId=13115213     目前来看,最流行的流媒体点播服务器只有两种,即Windows Media服务和Real Server.下面将讨论在windows2003中搭建流媒体服务器.首先,象安装IIS一样的过程.在控制面板中找到"添加/删除程序”,然后“Windows组件向导”对话框中,选中Win

KingReturns DOTNET & COMPACT MOBILE 4566

PADS安装教程(超详细)

声明:个人实践 一、工具准备 pads9.5完整破解版百度网盘提取码【wjx9】 链接:https://pan.baidu.com/s/1pIP6BJO435ssmF7Hjwyz8A 提取码:wjx9 安装环境:win10 64位 二、开始解压安装 关闭杀毒,exe以管理员身份运行 点击【skip】,不然又得licese 点击【agree】 点击【modify】 设置安装的工具、路径及工程路径 设置完成后,开始【install】 在之后注册。 将Crack复制到PADS安装目录

qq_42057393的博客 5万+

Synopsys安装教程Ubuntu22.04版本

在Ubuntu22版本上安装Synopsys等系列工具,安装DC,VCS等等

qq_59529218的博客 5723

HDMI带宽计算原理:从像素时钟到TMDS速率的完整链路

HDMI带宽并非抽象参数,而是由分辨率、刷新率、色彩深度和显示时序共同决定的物理约束。其核心在于像素时钟——即图像生成的节拍器,它通过VESA标准定义的总像素数(含行场消隐)精确计算得出。该时钟经8b/10b编码、通道分配与倍频转换,最终映射为TMDS数据速率,并受HDMI版本、线材认证及EDID协商能力制约。理解这一链条,是解决无信号、拖影、音频丢失等常见问题的技术根基,也是选型线材、调试SoC(如RK3576)、验证显示链路稳定性的工程前提。本文聚焦像素时钟与带宽这两个关键热词,提供可实测、可验证、可落

weixin_33812433的博客 552

国产安路FPGA(二)-TD软件时序约束与硬件调试实战

本文深入探讨了国产安路FPGA开发中TD软件时序约束的实战应用。文章详细解析了SDC文件的核心语法,包括基础时钟、生成时钟及输入输出延迟约束的编写方法,并针对硬件调试中常见的时序问题提供了解决方案。通过一个图像处理流水线的优化案例,阐述了如何结合代码修改与约束设置,实现设计从“能跑”到“跑得稳”的关键提升,是掌握FPGA可靠设计的实用指南。

weixin_29183637的博客 376

Windows Server2003流媒体服务器搭建

Windows Server2003流媒体服务器搭建 保证网络的畅通 选择管理你的服务器 选择添加或删除角色,单击下一步 选择流式媒体服务器单击下一步,自动安装这个服务器,完成后,打开流媒体服务器 右击发布点,然后选择添加发布点向导 单击下一步,名称的地方随便填了。 下一步后,出现选择的地方,这里选择第二...

weixin_33854644的博客 672

RPMsg:协议简介

两台计算机可以通过TCP/IP进行通信,那么同一颗芯片上的两个核心怎么通信呢?

SunnyZhou-1024的博客 1万+

BCIC IV 2a数据集:从下载到实战应用全解析

本文全面解析了BCI Competition IV 2a(BCIC IV 2a)数据集的应用流程。从官方渠道下载数据、解析其结构,到在MATLAB和Python环境中进行数据导入、预处理(包括处理特殊受试者A04T),并详细演示了从特征提取(如CSP)到分类(如LDA、SVM)的完整实战步骤,为脑机接口研究者提供了从入门到实践的清晰指南。

weixin_28235513的博客 972

用windows2003免费搭建外网流媒体服务器

服务器环境:4M ADSL,windows server 2003 Enterprise Edition,TP-LINK宽带路由,服务器IP:192.168.1.29,主机名是stdio2003。这个方案只能用于测试学习之用。第一部分   安装服务器,并使服务器对外网一、用IIS6.0搭建WEB、FTP服务器1、        安装IIS6.0:      先后选择:运行—控制面板—添加或删除程序

2803

椭圆 —— 从理论推导到最小二乘法拟合

前言 椭圆在高中数学里就开始提到,都是从标准方程开始如: x2a2+y2b2=1(a>b>0) \frac{x^2}{a^2}+\frac{y^2}{b^2}=1(a>b>0) a2x2​+b2y2​=1(a>b>0) 其中 aaa 为椭圆的长轴,bbb 为椭圆短轴。如长轴为 111 ,短轴为 0.50.50.5 的椭圆可以这样画出 ezplot('x^2/1^2 + y^2/0.5^2 = 1',[-1.5 1.5 -1 1]) grid on; 标准方程可以很方便

学徒浩子 2万+

服务器2003不支持流媒体,Windows Server 2003搭建流媒体服务器

有关流媒体的解释:1、流媒体是实况或预录制的音频或视频内容,通过网络或Intenret传递到客户端计算机;2、与下载的文件不同,当内容传输结束之后,不会在用户硬盘中保存任何数据。windows Server 2003自带有流媒体服务器组件,可以提供流媒体服务。在学校的教育教学中,会经常用到视频资源,比如课堂教学辅助视频,科学类、教学教法类等视频资料很多。如何有效地管理与使用这些视频资源呢?是每一个...

weixin_35092037的博客 390

【C++PTA】6-1 Point类的运算 (10 分)

定义Point类,有坐标x,y两个私有成员变量;对Point类重载“+”(相加)、“-”(相减)和“==”(相等)运算符,实现对坐标的改变,要求用友元函数和成员函数两种方法实现。对Point类重载<<运算符,以使得代码 Point p; cout<<p<<endl;可以输出该点对象的坐标。 函数接口定义: 实现Point类。 裁判测试程序样例: /* 请在这里填写答案 */ int main(int argc, char const *argv[]) { P

libertye的博客 2367

按照CANoe模板制作seed&&key.dll

在canoe进行诊断测试的时候,在0x27服务中需要制作一个dll文件。可在canoe的诊断中进行加载,也可用于diva的自动化测试。 本文按照canoe提供的KeyGenDll_GenerateKeyEx模板制作。 KEYGENALGO_API VKeyGenResultEx GenerateKeyEx( const unsigned char* iSeedArray, /* Array for the seed [in] */ unsigned int

天赐好车的博客 6520

Windows Server 2003流媒体服务器多播

要想使用多播地址看节目,不能直接访问多播点mms://wiin/sa 这种方式还是使用点到点通信 要访问多播地址的文件Sample_Broadcast.nsc 才能使用多播地址接收视频 转载于:https://blog.51cto.com/91xueit/555525...

weixin_33923148的博客 77

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

WINDOWS SERVER 2003从入门到精通之Windows Media Server流媒体服务器架建

今天我们来做一个windows media server流媒体格式文件的流媒体服务器。   现在市面上能够买到的一些电影文件有rm格式和wmv格式。还有一些是DivX技术的avi格式,要想让你的服务器对他们通吃,不是没有办法,现在realsystem的最新流媒体服务端软件Helix Server已经支持windows media了不过,到现在为止,还没有人破解它的授权算...

weixin_33858336的博客 214

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

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

上一篇: Linux必学的网络操作命令
下一篇: 忘记windows 2000管理员密码的解决方案
mfjun007
博客等级 码龄23年 6粉丝 23原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值