ChooseMatchingProtocolandformatCM:PFepareForConnectionAVTInstancedCM:PrepareForConneption(AVT,RCSInstancelDsAVT:SetAVTransportURIOAvT::PlaAnyAVTflowcontroloperationasneededte.g.stop,pause,seekOutOf.BandContenttransferRCS.:Setvolume0AnyRCSrenderingcontroloperation(e.g.vollute,brightness,contrastContentTransfermplete-t---RepeatasNeededCM:ConnectionComdleteO)CM:onnectionComplete(Figure4GeneralInteractionDiagramofthe3-Boxmodel3-Boⅹ模型是最综合的UPnP交互模型,它也可能把控制点和服务联合在一起,形成一综合性设各。这种情况被2-Bσⅹ模型解释如下。3.31.2-BoX模型:控制点与译码器standardUPnPActionsMediaserverControlpoint(UIApplicationContentDirectoryOut-ofBandDecoderConnectionManagertransferprotocolTransferServerTransferclientSourceIsochronousorAsychronousSinkPushorpullFigure5ControlpointwithDecoder如图5所示,内容回放场景涉及到两个截然不同的UPnP组件:一个MediaServer,和个带有译码器的UPnP控制点。这两个组件(每个都是定义好的角色)一起工作米完成任务,在这种情况下,MediaServer中包含(娱乐)用户想要在设备上渲染的内容。用户与控制点通过U交互来定位和选择想要的在Mediaserver上的内容,并且使用自己的译码器播放它。这个控制点系统的状态不会被其他控制点追踪,因为“带外”传输不会在服务器注册或者播放器设备由于缺少AVTransportservice。这种情况解释为最简单的UPnPAy交互模型。注:这种情况下,控制点只与MediaServer进行父互。注:“Sink"在这种情况卜是MediaRenderer的背板,甚至不是UPnP设备.332.2-Box模型:控制点有内容StandardActionsControlPointMediaRendererWithContent(UIApplication)Cutof-BarRenderingControlContentprotocolConnectionManagerTransferserverAVTransportTransferclientSourceIsochronousorAsychronousSinkPushorpullFigure6ControlpointWithContent-IMDN开发者社群-imdn.cn"> ChooseMatchingProtocolandformatCM:PFepareForConnectionAVTInstancedCM:PrepareForConneption(AVT,RCSInstancelDsAVT:SetAVTransportURIOAvT::PlaAnyAVTflowcontroloperationasneededte.g.stop,pause,seekOutOf.BandContenttransferRCS.:Setvolume0AnyRCSrenderingcontroloperation(e.g.vollute,brightness,contrastContentTransfermplete-t---RepeatasNeededCM:ConnectionComdleteO)CM:onnectionComplete(Figure4GeneralInteractionDiagramofthe3-Boxmodel3-Boⅹ模型是最综合的UPnP交互模型,它也可能把控制点和服务联合在一起,形成一综合性设各。这种情况被2-Bσⅹ模型解释如下。3.31.2-BoX模型:控制点与译码器standardUPnPActionsMediaserverControlpoint(UIApplicationContentDirectoryOut-ofBandDecoderConnectionManagertransferprotocolTransferServerTransferclientSourceIsochronousorAsychronousSinkPushorpullFigure5ControlpointwithDecoder如图5所示,内容回放场景涉及到两个截然不同的UPnP组件:一个MediaServer,和个带有译码器的UPnP控制点。这两个组件(每个都是定义好的角色)一起工作米完成任务,在这种情况下,MediaServer中包含(娱乐)用户想要在设备上渲染的内容。用户与控制点通过U交互来定位和选择想要的在Mediaserver上的内容,并且使用自己的译码器播放它。这个控制点系统的状态不会被其他控制点追踪,因为“带外”传输不会在服务器注册或者播放器设备由于缺少AVTransportservice。这种情况解释为最简单的UPnPAy交互模型。注:这种情况下,控制点只与MediaServer进行父互。注:“Sink"在这种情况卜是MediaRenderer的背板,甚至不是UPnP设备.332.2-Box模型:控制点有内容StandardActionsControlPointMediaRendererWithContent(UIApplication)Cutof-BarRenderingControlContentprotocolConnectionManagerTransferserverAVTransportTransferclientSourceIsochronousorAsychronousSinkPushorpullFigure6ControlpointWithContent - IMDN开发者社群-imdn.cn">
登录
首页 » Others » UPnP-av-AVArchitecture-v1-中文

UPnP-av-AVArchitecture-v1-中文

于 2020-11-30 发布
0 405
下载积分: 1 下载次数: 0

代码说明:

1.概述和范围1.1.介绍本文档介绍了整体的 UPnP AV 的架构,为 UPnP AV 设备和服务的模板的基础。AV 架构定义 了通用的交互在 UPnP 控制点和 UPnP AV 设备之间。它是独立于任何特定的设备类型、内容格式和传输协议。它支持各种设备(如电视机、录像机、 CD/DVD 播放器/自动唱片点唱机、 机顶盒、音响系统、MP3 播放器、静态图像照相机、摄像机、电子相框 (EPFs),和PC) 。 AV 体系结构允许设备支持的格式的不同类型的娱乐内容 (如 MPEG2、MPEG4、 JPEG、MP3、Windows Media Architecture (WMA),位Control pointUPnP ActionsDevice 1Device 2Figure 1: Typical UPnP Device Interaction ModelAVControl pointAVUPnP ActionsDevice 1Device 2(Source)(Sink)Out-of- BandTranster ProtocolFigure 2: UPnP av Device Interaction Model大多数N∨方案涉及的内容(娱乐)流(即电影、歌曲、图片等)从一个到另一个设备。如图2所示,一个AV控制点与两个或更多作为源和汇的UPnP设备分别进行交互。虽然控制点使这两种设备的行为是协调的和同步的,但是设备本身使用非UPnP("的带外")的通信协议来彼此交互。控制点使用UPnP初始化和配置两个设备日的是想所需的内容从一个设备传送到弓一个设备。然而,由于内容使用"带外"传输协议传输,控制点是不直接参与实际内容传输的命令。控制点根据需要配置这些设备、触发内容流,然后退出这个过程。因此,传输开始后,控制点可以断开而不会扰乱内容流。换句话说,核心仟务(即传输内容)继续即使没有本控制点的参与正如上面的场景中所述,涉及三个不同的实体:控制点,媒体内容的来源(称为"Mediaserver")和接收器(叫做" Mediarenderer")。的内容。整个文裆的其余部分,所有三个实体的描述好像他们是独立在网络上的设备。虽然此配置可能很常见(即远程控制部录像机,和电视),但是AV体系结构支持这些实以仟意的组合,集成在单个物理设备内例如,一台电视可以视为呈现设备(如显示器)。然而,由于大多数电视包含内置调谐器,电视也可以作为服务尜改备因为它可以调到一个特定的渠道和发送该內容到达一个MediaRenderer[MR](即他的本地播放或者一些远端设备,如非调谐播放器)。同样地,许多MediaServers和/或 Media renderers还可能包括控制点功能。例如,MP3渲染器可能会在某些U控件(如一个小的显小屏和几个按钮),允许用户控制音乐的播放。3.播放体系架构StandardControl PointUPnPActions(UI Application)MediaServerMediaRendererDecoderContentDirectoryRendering ControlConnection ManagerOut-of-BandConnectionManagerAVTransporttransferprotocolTRAnsportTransfer ServerTransfer ClientSourceIsochronous or AsychronousSinkPush or pull图3般设备架构aka3-Box型最终用户最通常的任务就是把想要呈现的个人内容或者项目在一个指定的设备上呈现。如图3所示,内容回放情景包括三个不同的UPnP组件:一个 MediaServer[MS],一个Mediarenderer,和一个 UPnP Control point,这三个部分(每个都有明确定义的角色)一起工作完成任务。在这个过程中, MediaServer包含(娱乐)内容,这些内容是用户想要在Mediarenderer上渲染的(例如播放和听)。用户与控制点U|在本地交互,在 Media Server上选择想要的内容,和选择目标 Media RendererMediaServer上包含或者有接口对于各种各样的娱乐内容,这些内容存储在木地,或者是 MediaServer容易获取到的其他设备上。 MediaServer能够访问它的内容并且传输这些内谷到其他设各上通过使用某种网络传输协议。被 MediaServer公开的内容可能包含各种类型包括视频、音频、和/或静态图像。这些内容通过网络协议传输,数据形式也可以被Mediaserver和 Media Renderer所识別。 MediaServers可能支持一种或多种网络传输协议同时也有对应数据格式或者也能够将一种格式的数据转换成另一种给定的格式。例如一个Mediaserver包含一个vCR,CD/DVD播放器/自动点唱机,照相机,摄像机,PC机顶盒,卫星接收机,音频磁带播放机等等MediaRenderer通过网终从 MediaServer上获得内容。例如 MediaRenderer包含TV,立体,网终启用扬声器,MP3播放器,电子图片框架(EPF),控制音乐喷泉,等. Media rendere可以接收的薮据类型取决与他支持的传输协议与数据格式.·些 Mediarenderers可能只支持种内容(比如声音或者静止图片),这方面,其他 MediaRenderers可能支持更宽泛的内容类型包括视频、音频、静止图像控制点协调和管理着 Media Server和 Media renderer的操作,用户可以直接操作(如播放,停止,暂停)日的是完成想要的任务(如播放最喜欢的音乐)另外,控制点提供U(如果有)以便与用户交互,目的是控制和架作设备(选择想要的内容)控制点U的布局和暴漏他的功能是依赖于实现和控制点制造商的决定的。一些控制点的例」可能包拈一个有传统遙控器的电视,一个带有显示器的无线掌上电脑等注:以上描述谈及的设备“收/发数据都是基于家庭网络的”在AV架构上下文中,包含点对点连接如被用来连接ⅤCR和电视的RCA电缆。N架构视这种迕接为家庭网络的一小部分(如段)。参照 Connection Manager Service[CM]获取更详细的信息根据以上描述,AV体系架构由三个不同的执行定义好工作的部件组成。某些情况下,这些组件将会作为分开的,特别的设备存在。不管怎样,这不需要是特例。设备制造商可以自由的使用这些逻辑实体仼意组合,并装进个简单的物理设备中。这种情况下,组合设备中的单个组件可以使用标准UPnP控制协议(如基于HTTP的SOAP协议)或者使用一些私人通信机制进行交互。任何情况下,每个逻辑实体的功能保持不变。然而,在后面的这种(私人情况)情况,因为逻辑实体之冋的交互是私自的,独立的组件将不能够与其他没有安装私人协议的 UPnP AV设备交互。在图3中,控制点是唯的组件去启动UPnP动作。控制点请求配置 MediaServer和MediaRenderer目的是使想要的内容从 MediaServer传输到 MediaRenderer(使用一种Media Server和 MediaRenderer都支持的传输协议和数据格式, Media Server和 Media Renderer向控制点调用一些UPnP动作。不管怎样,如果需要 MediaServer和/或 Media Renderer可以向控制点发送事件通知目的是通知控制点 Media Server和/或 Media Renderer的内部状态发生了改变。Mediaserver和 Mediarenderer不会通过UPnP动作相互控制.然而,为∫传输数据Mediaserver和 Mediarenderer使用一种“带外”(如非UPnP)数据传输协议直接的传输內谷。控制点不涉及实际的数据传输他仅仅是根据需要配置Medⅰ a server和Medⅰ rEnderer启动传输数据的过稈。一旦传输开始,控制点就彻底退出数据传输过稈.不管怎样如果用户需要,控制点能够控制数据的流动通过调用各种各样的 TRAnsport动作,如停止、暂停、FF、重放、过、浏览等。另外,控制点也能控制显示端的各种渲染效果,如亮度、对比度、音量、平衡等31媒体服务Mediaserver被用于查找有效通过家庭网络的数据。 MediaServers包含非常广泛的设各种类,包括录像机、DVD播放器、卫星/电报接受器、电视调谐器、无线电调谐器CD播放器、音频磁带播放器、个人电脑、MP3播放器等。一个 MediaServer的主要目的是允许控制点去枚举(如浏览和查找)可以被用户用来去渲染的数据。 Mediaserver包含 Content DirectoryService[CDS], a ConnectionManager Service[CM],和个可选择的 AVTransport Service[AT(依赖与于支持的传输协议些 Mediaserver能够同时传输多个数据芇点的,如一个基于硬磁盘音频自动存储塔能够同时传输多个音频文件到网络.为了支持这种类型的Mediaserver, Connection Manager为每一个链接(即每个流)分配记录一个唯一的ConnectionS。这个 Connections允许一个第三方控制点去获取 Media Server的活动链接信息3. 1.1. Content Directory Service这个服务提供了组动作,这些动作允许控制点去枚举服务器提供到家庭网络上的数据。这个服务的主要动作是 Content Directory: Browse(.这个动作允许控制点去获取细节信息关于服务器可以提供的每一个数据节点。这个信息(即元数据)包含属性,如名字,作者,创建时间,尺寸等。另外,返回的元数据鉴定」服务器支持的传输协议与数据格式。控制点使用这些信息决定,给定的 Media renderer是否能够渲染这些格式数据。3.1.2. ConnectionManager Service这个服务被用来管理关联着一个特定设备的连接,这个服务 Media Server上下文)的主要动作是 Connection Manager: Prepare ForConnection(.当运行的时候,这个动作被控制点调用,给服务器个信息,让服务器为处理即将到来的传输准备自己。依赖于指定的传输协议和数据格式。这个动作可以返回一个 AVTransport服务的 Instanced,控制点可以使用去控制数据流(如停止,暂停,快进等)。下面描述,这个 Instanced被用来区别多个 AVTransport服务对象,每个⑩D都关联着一个特定的连接通向渲染端。多个(虚拟)的 AVTransport对象允许 MediaServer冋时支持多个渲染器。当控制点想要退出这个连接,他应该调用 Media Server的动作 Connection Manager: Connection Complete((如果运行着)来释放连接如果 ConnectionManager: Prepare For Connection(动作没有运行,控制点只能在给定的时间内支持一个简单的渲染器。这种情况下,控制点应该使用 Instanced=03.1.3. AVTransport Service这个(可选的)服务被控制点用来回放关联着指定 AVTransport的内容。这包含停止,暂停,搜索的能力等。依赖于所支持传输协议和/或数据格式,个 MediaServer会或不会运行这个服务。如果支持, MediaServer可以区别多个服务对象通过使用 Instanced,这个ID包含在每个的音视频传输动作中。新的音视频传输对象的创建通过 ConnectionManager的Connection Manager: Prepare For Connection(动作.,每个新的服务对象都会被分配一个新的对象|D3.2. MediaRendererMediaRenderer被用来渲染(如显小和播放声音)从家庭网络中获取的内容。这包含多和类型的设备,包括电视机、音响、音箱、便携式音频播放器,音乐控制饮水机等。它主要的特点是它允许控制点控制内容渲染的效果(如亮度、对比度、卷、静音、等等)。另外,依赖于被用来在网络上获取数据的传输协议, MediaRenderer也会允许用户控制数据流(如停止,暂停,搜索等)。 Media Renderer包括一个 Rendering Control Service[RCSConnection Manager Service,和一个可选的 AVTransport服务(依赖于支持那种传输协议)。为了支持渲染设备可以在同一时刻操作多个内容节点(如音频混音器如卡拉Ok设备)渲染控制和服务都包含多个这些服务的独立(逻辑)对象。这个服务的每个(逻辑)对象都绑定在一个传入连接上。这允许控制点独立于其他人控制传入内容。这些服务的多个逻辑对象通过唯一的 Instanced米区分。控制点的每个动作调用包含这个辨识正确对象的ID。3.2. 1 Rendering ControlService这个服务提供·列动作,允许控制点控制渲柒器如何的去显示一块块的内容。这包含显示特性,包括亮度、对比度、音量,静音等。 Rendering ControlServic支持并发的,动态的服务对象,这就允许一个"混合在一起"的一个或多个内容项的渲染器(如面中画窗口电视或音频混音器设备)。新的服务对象实例由 Connection Manager; Prepare ForConnection()动作创建。如果 Connection Manager;: PrepareForConnection()动作没有执行, Instanced的缺省值是0。3.2.2. Connection Manager service这个服务被用来管理关联设备的连接。在 Media Renderer的上下文中,这个服务的主要动作是 Connection Manager: GetProtocolInfo()。这个动作允许控制点去枚举 MediaRenderer支持的传输协议和数据类型。这个信息被用来预先确定·个 Media Renderer是否可以去渲染个指定的内容项。个 MediaRenderer也会执行可选的动作ConnectionManager;: Prepare ForConnection()。这个动作由控制点调用去给渲染器一个指示让他准备自己为」即将到来的传输。另外,这个动作分配一个唯一的 Connection|D,这可以使第三方控制点获取到 Media Renderer正在使用的连接的信息。而且,依赖于被使用的传输办议和数据格式,这个动作会返回一个唯一的 AVTransport InstanceID,控制点可以使用这个去控制内容流(如停止,暂停,搜索等)。(详细信息请参阅下面的 AVTransport章节)。最后,ConnectionManager: PrepareForConnection()动作也返回一个唯一的渲染控制实例1D,控制点可以通过这个1D控制关联的内谷的渲染效果如前面所述。当控制点想要退出连接,他应该调用渲染器的 Connection Manager: Connection Complete(动作(如果开启了)去释放连接。如果没开启,则 InstanceID应被设置成0。3.2.3. AVTransport Service这个可选择的服务被控制点用来控制相关内容。这包括播放、停止、暂停、搜索等的能力依赖于所支持的传输协议和/或数据格式,渲染器可能会也可能不会运行这个服务。为了支持 MediaRenderer可以同时控制多个设备项。 AVTransport service会支持这个服务的多个逻辑实例。如上文所述, AVTransport InstanceID由 ConnectionManager: Prepare ForConnection()动作分配,来区分多个服务实例。3, 3. Control point控制点协调着 Media server和 Mediarenderer的操作,通常通过控制点U与用户进行交互。一个控制点不是UPnP设各,即他作为一个网络上的设备,它不是明显的,因为它不提供任何UPnP服务。相反的,控制点调用其它UPnP设备上的服务目的是触发一些想要的行为,发生在远端设备上。以下描述了一般控制点的泛型规则,用于与多种运行中的 MediaServer和MediaRenderer进行交互。1.发现N∨改备: MediaServers和 Media Renderers使用UPnP发现机制在家庭网络中被现,2.找到所需的内容:使用服务器的 ContentDirectory: Browse()或 Content Directory: Search操作,所需的内容项就定位了。由 ContentDirectory: Browse(/ Search(返回的信息中,包含传输协议和效据格式,这就支持 MediaServer在家庭网络中传输数据3.获取渲染器的支持协议/格式:使用 MediaRenderer的Connection Manager; GetProtocollnfo(所支持的传输协议和数据格式都由 Media Renderer的返回值返回给控制点4.比较/匹配协议/格式:由 ContentDirectory返回的关于想要的内容项的协议/格式信息,与由 MediaRenderer的 Connection Manager: Get Protocollnfo()返回的协议/式信息相匹配控制点选择一个被 Media server和 Mediarenderer都支持的传输协议和数据格式5.配置服务器/渲染器:设备的 Connection Manager: Prepare For Connection()动作(如果启用)通知 MediaServer和 Mediarenderer一个退出/加入的连接即将被迫使用指定的传输协议和数据格式,这是之前选好的。依赖于选择的传输协议, MediaServer或者 MediaRenderer将会返回 AVTransport InstanceID。这个被用来与 AVTransport Service相结合(设备返回的 AVTransport InstanceID)去控制内容流(如 TRAnsport:Pay(), TRAnsport:stopAVTransport: Pause(), AVTransport:seek()等),另外,渲染器将会返回一个渲染控制实例1D,这个被控制点用来控制渲染效果。注:因为 Connection Manager;: PrepareForConnection是一个可选动作,这可能会有一种情况是 MediaServer和/或 Media Renderer都没运行 Connection Manager: PrepareForconnection()这种情况发生时 MediaServer和 Mediarenderer都没有返回一个 AVTransport InstanceID,控制点就使用 InstanceID=0去控制内容的流。详细信息参考 ConnectionManager和 TRAnsportService「AVT]l。6.选择需要的内容:使用 AVTransport服务(服务1D由 Server或者 Renderer返回)调用AVTransport: SetAVTransportUR)动作去确认需要被传输的内容项。7.启用传输内容:使用 AVTransport服务,用户调用一种想要的传输控制动作(如AVTransport: Play(), AVTransport: Stop(), AVTransport: Seek(*)8.调整呈现特性:使用 Media Renderer的 Rendering Control service[RCS],用户调用任何想要的控制动作(如调整亮度,对比度,声音,静音等)9.重复:近择下·内容:使用 TRAnsport: etAvtransportURI(或者 AVTransport:SetNextAVTRansportUR)动作,确认下一个内容项要被传送从同一个服务器传送到同个渲染器,根据需要重复。10.清理服务器/渲染器:当该公话终止和 Media Server和 Mediarenderer不再需要交互内容,Mediaserver和 Mediarenderer的 ConnectionManager: Connection Complete()动作被调用来关闭 Media Server的连接基于上面的交互顺序,下面的图表按时间顺序举例说明」控制点, MediaServer、MediaRenderer之间典垩的交互序列。Play back General Interaction DiagramMediaControMediaServerPointRendererCDS: Browse/ SearchContent ObjectsCM: GetProtocolInfo(pProtocol/Format List D>Choose MatchingProtocol and formatCM: PFepareF or ConnectionAVT InstancedCM:PrepareForConneption(AVT, RCS InstancelDsAVT: SetAVTransportURIOAvT:: PlaAny AVT flow controloperation as neededte. g. stop, pause, seekOutOf. BandContent transferRCS.: Setvolume0Any RCS renderingcontrol operation(e. g. vollute,brightness, contrastContent Transfermplete-t--- Repeat as NeededCM: ConnectionComdleteO)CM: onnection Complete(Figure 4 General Interaction Diagram of the 3-Box model3-Boⅹ模型是最综合的UPnP交互模型,它也可能把控制点和服务联合在一起,形成一综合性设各。这种情况被2-Bσⅹ模型解释如下。3.31.2-BoX模型:控制点与译码器standardUPnPActionsMedia serverControl point(UI ApplicationContent DirectoryOut-ofBandDecoderConnectionManagertransferprotocolTransfer ServerTransfer clientSourceIsochronous or AsychronousSinkPush or pullFigure 5 Control point with Decoder如图5所示,内容回放场景涉及到两个截然不同的UPnP组件:一个 Media Server,和个带有译码器的UPnP控制点。这两个组件(每个都是定义好的角色)一起工作米完成任务,在这种情况下, MediaServer中包含(娱乐)用户想要在设备上渲染的内容。用户与控制点通过U交互来定位和选择想要的在 Mediaserver上的内容,并且使用自己的译码器播放它。这个控制点系统的状态不会被其他控制点追踪,因为“带外”传输不会在服务器注册或者播放器设备由于缺少 AVTransport service。这种情况解释为最简单的 UPnP Ay交互模型。注:这种情况下,控制点只与 Media Server进行父互。注:“Sink"在这种情况卜是 MediaRenderer的背板,甚至不是UPnP设备.332.2-Box模型:控制点有内容StandardActionsControl PointMediaRendererWith Content(UI Application)Cutof-BarRenderingControlContentprotocolConnectionManagerTransfer serverAVTransportTransfer clientSourceIsochronous or AsychronousSinkPush or pullFigure 6 Control point With Content

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 基于JSP的学生宿舍管理系统(ACCESS数据库)
    这是一个简单的学生宿舍管理系统,运用了ACCESS数据库,开发基于JSP技术里面有文档说明书,还有源代码和数据库,图片资料等
    2020-12-12下载
    积分:1
  • 异步电动机的SVPWM的变压变频调速的Simlink仿真波形
    异步电动机的SVPWM的变压变频调速的Simlink仿真波形,里面有各种模块,看懂改改参数,参考有利!!!!
    2020-11-28下载
    积分:1
  • RAID基本原理动画介绍演示
    RAID动画演示,RAID基本原理动画介绍简单细致,有读取,擦除,和恢复的动画,形象的描述了raid0、1、5、10的存储过程
    2020-12-03下载
    积分:1
  • EM算法详细例子及推导
    EM算法详细例子及推导数θ),那么对于上面的实验,我们可以计算出他们出现我们观察到的结果即0=(5,9,.8,4,7,20=(B,A,A,B,4)的概率函数P(X=x10),2z)⑨)就叫做θ的似然函数。我们将它对θ求偏导并令偏导数为0,就可以得到如的结果P(X=x0,=20))=(;P(z=A)3(1-P(z=A)2C10(1-64)10A(1-6C104(1-0(1-6B)C106n(1-6我们将这个问题稍微改变一下,我们将我们所观察到的结果修改一…下我们现在只知道每次试验有几次投掷出正面,但是不知道每次试验投掷的是哪个硬币,也就是说我们只知道表中第一列和第三列。这个时候我们就称Z为隐藏变量( Hidden variable),X称为观察变量( Observed variable)。这个时候再来估计参数θ4和θB,就没有那么多数据可供使用了,这个时侯的估计叫做不完整数据的参数估计。如果我们这个时候冇某种方法(比如,正确的猜到每次投掷硬币是A还是B),这样的话我们就可以将这个不完整的数据估计变为完整数据估计当然我们如果没有方法来获得更多的数据的话,那么下面提供了一种在这种不完整数据的情况下来估计参数θ的方法。我们用迭代的方式来进行:(1)我们先赋给θ一个初始值,这个值不管是经验也好猜的也好,反正我们给它一个初始值。在实际使用中往往这个初始值是有其他算法的结果给岀的,当然随机给他分配一个符合定义域的值也可以。这里我们就给定64=0.7,6B=0.4(2)然后我们根据这个来判断或者猜测每次投掷更像是哪枚硬币投掷的结果。比如对于试验1,如果投掷的是Δ,那么出现5个止面的概率为C10×0.75×(1-07)5≈0.1029:;如果投掷的是B,出现5个正面的概率为C105×0.43×(1-0.4)5≈0.2007;基于试验1的试验结果,可以判断这个试验投掷的是使币A的概率为0.10290.10290.2007)-0.389是B的概率为02007(0.1029+0.2007)06611。因此这个结果更可能是投掷B出现的结果(3)假设上一步猜测的结果为B,A,A,B,A,那么恨据这个猜测,可以像完整数据的参数仙计一样(公式2重新计算的值这样一次一次的迭代2-3步骤直到收敛,我们就得到了θ的估计。现在你可能有疑问,这个方法靠谱么?事实证明,它确实是靠谱的。期望最大化算法就是在这个想法上改进的。它在估计每次投掷的硬币的吋候,并不要确定住这次就是硬币A或者B,它计算岀来这次投掷的硬币是A的概率和是B的概率;然后在用这个概率(或者叫做Z的分布)来计算似然函数。期望最大化算法步骤总结如下:F步骤先利用旧的参数值〃计算隐藏变量Z的(条件)分布P(万=2|Xn2),然后计算logP(,X=m)的期望B(o(2,X=x)=∑∑P(Z=别X=)P(Z=X=x)其中θ是当前的值,而θ是上一次迭代得到的值。公式中已经只剩下θ一个变量了,θ是一个确定的值,这个公式或者函数常常叫做Q函数,用Q(6,6)来表示。M步骤极大化Q,往往这一步是求导,得到由旧的θ值′米计算新的θ值的公式aQ总结一下,期望最大化算法就是先根据参数初值估计隐藏变量的分布,然后根据隐藏变量的分布来计算观察变量的似然函数,估计参数的值。前者通常称为E步骤,后者称为M步骤3数学基础首先来明确一下我们的目标:我们的目标是在观察变量X和给定观察样本:1,x2,…,rn的情況下,极大化对数似然函数(=>nP(X2=x;)(5)其中只包含观察变量的概率密度函数P(X2=2)=∑P(X=n,=)这里因为参数θ的写法与条件概率的写法相同,因此将参数θ写到下标以更明确的表述其中Z为隐藏随机变量,{}是Z的所有可能的取值。那么6)=∑h∑P(X=x,z=2)∑h∑。Px=x这里我们引入了一组参数(不要怕多,我们后面会处理掉它的)a,它满足可能的;,0;∈(0,1和∑;a=1到这里,先介绍一个凸函数的性质,或者叫做凸函数的定义。∫(x)为凸函数,=1,2,…,m,A∈[0,1∑1A对∫(x)定义域中的任意n个m1,x2,…,xn有f(∑Aa)≤∑mf(xr)i=1对于严格凸函数,上面的等号只有在x1=2xn的时候成立。关于凸函数的其他性质不再赘述。对数函数是一个严格凸数。因而我们可以有下面这个结果0)=∑hn∑≥∑∑ah(X=2n,2=C现在我们根据等号成立的条件来确定a;即P(X=x,Z=2)C(10)其中c是一个与j无关的常数。因为∑,=1,稍作变换就可以得到P(X;=x;)现在来解释下我们得到了什么。c;就是Z=2;在X=x;下的条件概率戌者后验概率。求α就是求隐藏随机变量Z的条件分布。总结一下目前得到的公式就是)-∑∑P(Xi=i,Z(12)直接就极大值比较难求,EM算法就是按照下面这个过程来的。它就是大名鼎鼎的琴生( Jensen)不等式(1)根据上一步的θ来计算α,即隐藏变量的条件分布(2)极大化似然函数来得到当前的的估计3.1极大似然估计好吧,我觉得还是再说说极大似然估计吧。给定一个概率分布D,假设其概率密度函数为f,其中f带有一组参数6。为了估计这组参数6,我们可以从这个分布中抽出一个具有n个采样值的X1,X2,…,Yn,那么这个就是n个(假设独立)同分布随机变量,他们分别有取值x1,x2…,xn,那么我们就可以计算出出现这样一组观察值的概率密度为lI f(ai)(13)对于f是离散的情况,就计算出现这组观察值的概率10)注意,这个函数中是含有参数0的。0的极大似然估计就是求让上面似然函数取极大值的时候的参数O值。般来说,会将上面那个似然函数取自然对数,这样往往可以简化计算。记住,这样仅仅是为了简化计算。取了自然对数之后的函数叫做对数似然函数。ln()=∑lnf(n)因为对数是一个严格单调递增的凹函数,所以对似然函数取极人值与对对数似然函数取极大值是等价的。3取了对数之后还可以跟信息熵等概念联系起来4关于凸函数有很多种说法,上凸函数和下凸函数,凸函数和凹函数等等,这里指的是二阶导数大」(等」)0的一类函数,而凹函数是其相反数为凸数的一类函数32期望最大化算法收敛性如何保证算法收敛呢?我们只用证明l(04+1)≥1(00)就可以了l(0(t11)∑∑(+1)1PX=x;2=2)(+(t+1∑∑nf(X=x;,z=z;)(+1)(t)o(tn /(r=i,Z=2(t)≥∑∑ahn(t)7(0其中第一个人于等于号是因为只有当a取值合适(琴生不等式等号成立条件)的时候才有等号成立,第二个人于等于号正是M步骤的操作所致。这样我们就知道l(θ)是随着迭代次数的增加越来越人的,收敛条件是值不再变化或者变化幅度很小。4应用举例4.1参数估计很直接的应用就是参数估计,上面举的例子就是参数估计42聚类但是如果估计的参数可以表明类别的话,比如某个参数表示某个样本是否属于某个集合。这样的话其实聚类问题也就可以归结为参数估计问题。References[]最大似然估计[oNline].Availablehttp://zh.wikipediaorg/wiki.%E6%9c%80%E5%A4%A7%E4%BC%BC%E7%84%B6%E4%BC%B0%E8%AE%A1[2] Ceppellini, r, Siniscalco, M.& Smith, C.A. Ann. Hum. Genet. 20, 97-115(1955)3 Hartley, H. Biometrics 14, 174-194(1958)4 Baum, L.E., Petric, T, Soulcs, G.& Weiss, N. Ann. Math. Stat 41, 164-171(1970)[ 5] Dempster, A P, Laird, N.M., Rubin, D B.(1977). "Maximum Likelihoodfrom Incomplete Data via the em algorithm. Journal of the royal statis-tical Society Series B(Methodological)39(1): 1-38. JSTOR 2984875 MR0501537[6]Whatistheexpectationmaximizationalgorithm[oNline].Avaiable:http//ai. stanford. edu/-chuongdo/papers/em tutorial pdf[7TheEmAlgorithmOnline.Availablehttp://www.cnblogs.com,jerrylead/ archive/2011/04/06/2006936html
    2020-12-07下载
    积分:1
  • STM32接收C#上位机命令控制电机,和根据红外线判断电机位置
    使用STM32通过串口接收来自C#上位机的命令,下位机通过PWM控制电机的速度,控制方向和距离,通过红外线判断电机位置,这样可以保护好电机。
    2020-12-09下载
    积分:1
  • 疯子改端技术整合
    疯子改端技术整合 修改服务端方法。 冒险岛改端
    2020-12-09下载
    积分:1
  • 3个点云模型文件
    三个点云模型文件;海豚,猫咪,兔子;文本格式;打开都是一堆三维数据;可用记事本打开;可用于测试程序;
    2020-12-07下载
    积分:1
  • 逆变器侧电流反馈的LCL并网逆变器电网电压前馈控制策略
    逆变器侧电流反馈的LCL并网逆变器电网电压前馈控制策略
    2020-12-07下载
    积分:1
  • 云模型发生器MATLAB代码
    根据李德毅院士提出的云模型,由3个云参数:期望、熵、超熵生成可视化的云图。【MATLAB代码】
    2020-12-01下载
    积分:1
  • 车联网网络架构分析
    利用车联网获取车辆运行参数和道路等交通基础设施使用状况,感知实时道路交通路况,能有效减少交通拥堵,实现绿色出行,并提供丰富的智能交通信息服务.车联网将促进汽车、交通和信息技术产业向更加现代化、网络化和智能化的方向发展.对车联网的现状进行了较为全面的研究,包括车联网的概念、技术优势、信息服务以及网络架构等.
    2020-12-02下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载