一种基于多影响因子的排序方法及移动终端与流程

文档序号:12469151阅读:170来源:国知局
一种基于多影响因子的排序方法及移动终端与流程
本发明涉及移动终端
技术领域
,尤其涉及一种基于多影响因子的排序方法及移动终端。
背景技术
:随着信息技术的发展,会产生大量的包含多个影响因子的待排序数据,由于各个待排序数据对应多个影响因子,因此,在数据分析过程中,会根据各个待排序数据对应的多个影响因子对全部待排序数据进行排序。例如:对于销售的商品,可以先统计各个待排序商品对应的全部指标值,如:销售金额和销售数量;然后根据各个待排序商品的销售金额和销售数量对全部待排序商品进行排序。再例如:对于学生的考试成绩,可以先统计各个学生对应的各科考试成绩,如:语文、数学和英语;然后根据各个学生的各科成绩对全部学生进行排序。例如,全部待排序数据可以如下述表1所示:销售金额销售数量商品一10080商品二9060商品三12070表1在现有的排序方法中,可以预先设置“销售金额”和“销售数量”对应的权重值,例如,“销售金额”对应的权重值为0.6;“销售数量”对应的权重值为0.4,因此,可以计算得到如下述表2所示的各个商品。表2在现有的排序方法中,在获取到如上述表2所示的各个商品后,可以根据“总和”的数据对全部商品进行排序。即:全部商品从大到小的顺序依次为:商品三、商品一和商品二。在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:在现有的排序方法中,由于预先设置的各个权重值的大小是固定不变的,因此采用现有的排序方法,无法精确地反映出各个影响因子对排序结果的影响。技术实现要素:有鉴于此,本发明实施例提供了一种基于神经网络的排序方法及移动终端,可以更加准确地反映出各个影响因子对排序结果的影响。本发明实施例的技术方案是这样实现的:本发明实施例提出了一种基于多影响因子的排序方法,所述方法包括:当全部数据对不为空时,在全部数据对中选择一个数据对作为当前数据对;根据预先确定的全部数据对对应的影响因子的数量和所述当前数据对中全部待排序数据的关系类型的数量建立神经网络;通过所述神经网络对所述当前数据对中的全部待排序数据进行排序;当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。在上述实施例中,所述根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,包括:根据全部数据对对应的影响因子的数量确定所述神经网络中输入层的神经元的个数;根据所述当前数据对中全部待排序数据的关系类型的数量确定所述神经网络中输出层的神经元的个数;根据所述输入层的神经元的个数和所述输出层的神经元的个数建立所述神经网络。在上述实施例中,根据以下公式计算所述输出层的神经元的个数:其中,C为所述当前数据对中全部待排序数据的关系类型的数量;N为所述输出层的神经元的个数。在上述实施例中,所述通过所述神经网络对所述当前数据对中的全部待排序数据进行排序,包括:计算所述当前数据对对应的输入量;将各个输入量输入到所述输入层的神经元中;在输出层的神经元中获取所述当前数据对对应的输出量;根据所述输出量对所述当前数据对中的全部待排序数据进行排序。在上述实施例中,在所述在全部数据对中选择一个数据对作为当前数据对之前,所述方法还包括:将全部待排序数据中的每两个待排序数据组合为一个当前数据对;将各个当前数据对添加到全部数据对中。本发明实施例还提出了一种移动终端,所述移动终端包括:选择单元、建立单元和排序单元;其中,所述选择单元,用于当全部数据对不为空时,在全部数据对中选择一个数据对作为当前数据对;所述建立单元,用于根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络;所述排序单元,用于通过所述神经网络对所述当前数据对中的全部待排序数据进行排序;当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。在上述实施例中,所述建立单元包括:确定子单元和建立子单元;其中,所述确定子单元,用于根据全部数据对对应的影响因子的数量确定所述神经网络中输入层的神经元的个数;根据所述当前数据对中全部待排序数据的关系类型的数量确定所述神经网络中输出层的神经元的个数;所述建立子单元,用于根据所述输入层的神经元的个数和所述输出层的神经元的个数建立所述神经网络。在上述实施例中,所述建立子单元,具体用于根据以下公式计算所述输出层的神经元的个数:其中,C为所述当前数据对中全部待排序数据的关系类型的数量;N为所述输出层的神经元的个数。在上述实施例中,所述排序单元包括:计算子单元、输入子单元、输出子单元和排序子单元;其中,所述计算子单元,用于计算所述当前数据对对应的输入量;所述输入子单元,用于将各个输入量输入到所述输入层的神经元中;所述输出子单元,用于在输出层的神经元中获取所述当前数据对对应的输出量;所述排序子单元,用于根据所述输出量对所述当前数据对中的全部待排序数据进行排序。在上述实施例中,所述选择单元,还用于将全部待排序数据中的每两个待排序数据组合为一个当前数据对;将各个当前数据对添加到全部数据对中。由此可见,本发明实施例的技术方案中,当全部数据对不为空时,先在全部数据对中选择一个数据对作为当前数据对,然后根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,再通过神经网络对当前数据对中的全部待排序数据进行排序,当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。也就是说,在本发明的具体实施例中,可以根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,然后通过神经网络对当前数据对中的全部待排序数据进行排序。而不是像现有技术中,根据各个影响因子对应的权重值对全部待排序数据进行排序。因此,和现有技术相比,本发明实施例提出的基于多影响因子的排序方法及移动终端,可以更加准确地反映出各个影响因子对排序结果的影响;并且,实现起来简单方便,便于普及,适用范围更广。附图说明图1为实现本发明各个实施例的一个可选的移动终端100的硬件结构示意图;图2为如图1所示的移动终端100的无线通信系统示意图;图3为本发明实施例中基于多影响因子的排序方法的实现流程示意图;图4为本发明实施例中建立神经网络的实现方法流程示意图;图5为本发明实施例中神经网络的组成结构示意图;图6为本发明实施例中对当前数据对中的全部待排序数据进行排序的实现方法流程示意图;图7为本发明实施例中移动终端的第一组成结构示意图;图8为本发明实施例中移动终端的第二组成结构示意图。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明的技术方案,并不用于限定本发明的保护范围。现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)、便携式多媒体播放器(PMP)、导航装置等的移动终端。图1为实现本发明各个实施例的移动终端100的硬件结构示意,如图1所示,移动终端100可以包括:无线通信单元110、用户输入单元120、感测单元130、输出单元140、存储器150、接口单元160、控制器170和电源单元180等。图1示出了具有各种组件的移动终端100,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端100的元件。无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统或网络之间的无线电通信。例如,无线通信单元110可以包括:移动通信模块111、无线互联网模块112和短程通信模块113中的至少一个。移动通信模块111将无线电信号发送到基站(例如,接入点、节点B等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。无线互联网模块112支持移动终端100的无线互联网接入。无线互联网模块112可以内部或外部地耦接到终端。无线互联网模块112所涉及的无线互联网接入技术可以包括无线局域网(WLAN)、无线相容性认证(Wi-Fi)、无线宽带(Wibro)、全球微波互联接入(Wimax)、高速下行链路分组接入(HSDPA)等。短程通信模块113是用于支持短程通信的模块。短程通信技术的一些示例包括蓝牙TM、射频识别(RFID)、红外数据协会(IrDA)、超宽带(UWB)、紫蜂TM等。用户输入单元120可以根据用户输入的命令生成键输入数据以控制移动终端100的各种操作。用户输入单元120允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等的变化的触敏组件)、滚轮、摇杆等。特别地,当触摸板以层的形式叠加在显示单元141上时,可以形成触摸屏。感测单元130检测移动终端100的当前状态,(例如,移动终端100的打开或关闭状态)、移动终端100的位置、用户对于移动终端100的接触(即,触摸输入)的有无、移动终端100的取向、移动终端100的加速或减速移动和方向等,并且生成用于控制移动终端100的操作的命令或信号。例如,当移动终端100实施为滑动型移动电话时,感测单元130可以感测该滑动型电话是打开还是关闭。另外,感测单元130能够检测电源单元180是否提供电力或者接口单元160是否与外部装置耦接。接口单元160用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口(典型示例是通用串行总线USB端口)、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等。接口单元160可以用于接收来自外部装置的输入(例如,数据信息、电力等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。另外,当移动终端100与外部底座连接时,接口单元160可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端100的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端100是否准确地安装在底座上的信号。输出单元140被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等)。输出单元140可以包括显示单元141和音频输出模块142等。显示单元141可以显示在移动终端100中处理的信息。例如,当移动终端100处于电话通话模式时,显示单元141可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元141可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等。同时,当显示单元141和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元141可以用作输入装置和输出装置。显示单元141可以包括液晶显示器(LCD)、薄膜晶体管LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、三维(3D)显示器等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为TOLED(透明有机发光二极管)显示器等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端100可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。音频输出模块142可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等模式下时,将无线通信单元110接收的或者在存储器150中存储的音频数据转换音频信号并且输出为声音。而且,音频输出模块142可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等)。音频输出模块142可以包括扬声器、蜂鸣器等。存储器150可以存储由控制器170执行的处理和控制操作的软件程序等,或者可以暂时地存储已经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等)。而且,存储器150可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。存储器150可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。而且,移动终端100可以与通过网络连接执行存储器150的存储功能的网络存储装置协作。控制器170通常控制移动终端100的总体操作。例如,控制器170执行与语音通话、数据通信、视频通话等相关的控制和处理。另外,控制器170可以包括用于再现或回放多媒体数据的多媒体模块171,多媒体模块171可以构造在控制器170内,或者可以构造为与控制器170分离。控制器170可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。电源单元180在控制器170的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器170中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器150中并且由控制器170执行。至此,已经按照其功能描述了移动终端100。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端100等的各种类型的移动终端100中的滑动型移动终端100作为示例。因此,本发明能够应用于任何类型的移动终端100,并且不限于滑动型移动终端100。如图1中所示的移动终端100可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信系统以及基于卫星的通信系统来操作。现在将参考图2描述其中根据本发明的移动终端100能够操作的通信系统。这样的通信系统可以使用不同的空中接口和/或物理层。例如,由通信系统使用的空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信系统(UMTS)(特别地,长期演进(LTE))、全球移动通信系统(GSM)等。作为非限制性示例,下面的描述涉及CDMA通信系统,但是这样的教导同样适用于其它类型的系统。参考图2,CDMA无线通信系统可以包括多个移动终端100、多个基站(BS)270、基站控制器(BSC)275和移动交换中心(MSC)280。MSC280被构造为与公共电话交换网络(PSTN)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM、IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC275。每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等)。分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子系统(BTS)或者其它等效术语。在这样的情况下,术语“基站”可以用于笼统地表示单个BSC275和至少一个BS270。基站也可以被称为“蜂窝站”。或者,特定BS270的各分区可以被称为多个蜂窝站。作为无线通信系统的一个典型操作,BS270接收来自各种移动终端100的反向链路信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定BS270接收的每个反向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号发送到移动终端100。移动终端中无线通信单元110的移动通信模块112基于移动终端内置的接入移动通信网络(如2G/3G/4G等移动通信网络)的必要数据(包括用户识别信息和鉴权信息)接入移动通信网络为移动终端用户的网页浏览、网络多媒体播放等业务传输移动通信数据(包括上行的移动通信数据和下行的移动通信数据)。无线通信单元110的无线互联网模块113通过运行无线热点的相关协议功能而实现无线热点的功能,无线热点支持多个移动终端(移动终端之外的任意移动终端)接入,通过复用移动通信模块112与移动通信网络之间的移动通信连接为移动终端用户的网页浏览、网络多媒体播放等业务传输移动通信数据(包括上行的移动通信数据和下行的移动通信数据),由于移动终端实质上是复用移动终端与通信网络之间的移动通信连接传输移动通信数据的,因此移动终端消耗的移动通信数据的流量由通信网络侧的计费实体计入移动终端的通信资费,从而消耗移动终端签约使用的通信资费中包括的移动通信数据的数据流量。基于上述移动终端100硬件结构以及通信系统,提出本发明方法各个实施例。图3为本发明实施例中基于多影响因子的排序方法的实现流程示意图。如图3所示,基于多影响因子的排序方法可以包括以下步骤:步骤301、当全部数据对不为空时,在全部数据对中选择一个数据对作为当前数据对。在本发明的具体实施例中,当全部数据对不为空时,移动终端可以在全部数据对中选择一个数据对作为当前数据对。假设全部数据对为{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq};当全部数据对不为空时,移动终端可以在全部数据对中选择数据对{Yi,Yj}为当前数据对。较佳地,在本发明的具体实施例中,移动终端在全部数据对中选择一个数据对作为当前数据之前,移动终端可以将全部待排序数据中的每两个待排序数据组合为一个当前数据对;然后将各个当前数据对添加到全部数据对中。例如,假设预先确定的待排序数据为:Yi、Yj、Yp和Yq。移动终端可以将全部待排序数据中的每两个待排序数据组合为一个当前数据对,分别为:{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq};然后将各个当前数据对添加到全部数据对中。步骤302、根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络。人工神经网络(ArtificialNeuralNetworks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(ConnectionModel),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。在本发明的具体实施例中,移动终端可以根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络。图4为本发明实施例中建立神经网络的实现方法流程示意图。如图4所示,根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络的方法可以包括以下步骤:步骤401、根据全部数据对对应的影响因子的数量确定神经网络中输入层的神经元的个数。在本发明的具体实施例中,移动终端可以根据全部数据对对应的影响因子的数量确定神经网络中输入层的神经元的个数。例如,假设全部数据对对应的影响因子的数量为n,在本步骤中,移动终端可以确定神经网络中输入层的神经元的个数为n;其中,n为大于等于2的自然数。步骤402、根据当前数据对中全部待排序数据的关系类型的数量确定神经网络中输出层的神经元的个数。在本发明的具体实施例中,移动终端可以根据当前数据对中全部待排序数据的关系类型的数量确定神经网络中输出层的神经元的个数。具体地,移动终端可以根据以下公式计算输出层的神经元的个数:其中,C为当前数据对中全部待排序数据的关系类型的数量;N为输出层的神经元的个数。在本发明的具体实施例中,全部待排序数据的关系类型的数量可以包括以下三种:大于、等于和小于。即:全部待排序数据的关系类型的数量为3,因此,根据以上公式可以计算出输出层的神经元的个数为2。步骤403、根据输入层的神经元的个数和输出层的神经元的个数建立神经网络。在本发明的具体实施例中,移动终端可以根据输入层的神经元的个数和输出层的神经元的个数建立神经网络。图5为本发明实施例中神经网络的组成结构示意图。如图5所示,输入层的神经元的个数为n;输出层的神经元的个数为2;此外,神经网络中隐藏层的个数可以根据经验值预先确定,例如,可以将神经网络中隐藏层的个数设置为2或者3。步骤303、通过神经网络对当前数据对中的全部待排序数据进行排序。在本发明的具体实施例中,移动终端在建立完成神经网络之后,可以通过神经网络对当前数据对中的全部待排序数据进行排序。图6为本发明实施例中对当前数据对中的全部待排序数据进行排序的实现方法流程示意图。如图6所示,通过神经网络对当前数据对中的全部待排序数据进行排序的方法可以包括以下步骤:步骤601、计算当前数据对对应的输入量。在本年发明的具体实施例中,移动终端可以先计算当前数据对对应的输入量。例如,假设当前数据对为{Yi,Yj},其中,Yi的影响因子分别为:Xi1、Xi2、…、Xin;Yj的影响因子分别为:Xj1、Xj2、…、Xjn;因此,移动终端可以计算当前数据对对应的输入量分别为:{Xi1-Xj1,Xi2-Xj2,…,Xin-Xjn}。步骤602、将各个输入量输入到输入层的神经元中。在本年发明的具体实施例中,移动终端可以将各个输入量输入到输入层的神经元中。具体地,移动终端可以将输入量Xi1-Xj1输入到第一个I1中;将输入量Xi2-Xj2输入到第二个I2中;…;将输入量Xin-Xjn输入到第n个In中。步骤603、在输出层的神经元中获取当前数据对对应的输出量。在本年发明的具体实施例中,移动终端可以在输出层的神经元中获取当前数据对对应的输出量。例如,移动终端在输出层的神经元中获取到当前数据对对应的输出量为[O1,O2];当[O1,O2]=[0,0]时,表示:Yi=Yj;当[O1,O2]=[0,1]时,表示:Yi<Yj;当[O1,O2]=[1,0]时,表示:Yi>Yj;当[O1,O2]=[1,1]时,表示:排序结果无效。步骤604、根据输出量对当前数据对中的全部待排序数据进行排序。在本年发明的具体实施例中,移动终端可以根据输出量对当前数据对中的全部待排序数据进行排序。例如,移动终端在输出层的神经元中获取到当前数据对对应的输出量为[O1,O2];当[O1,O2]=[0,0]时,表示:Yi=Yj;当[O1,O2]=[0,1]时,表示:Yi<Yj;当[O1,O2]=[1,0]时,表示:Yi>Yj;当[O1,O2]=[1,1]时,表示:排序结果无效。通过上述的分析可知,根据上述的步骤601~604,可以实现通过神经网络对当前数据对中的全部待排序数据进行排序,从而可以根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。步骤304、当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。在本发明的具体实施例中,当全部数据对为空时,移动终端可以根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。例如,假设全部数据对分别为:{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq}。其中,{Yi,Yj}的排序结果为:Yi>Yj;{Yi,Yp}的排序结果为:Yi>Yp;{Yi,Yq}的排序结果为:Yi<Yq;{Yj,Yp}的排序结果为:Yj<Yp;{Yj,Yq}的排序结果为:Yj<Yq;{Yp,Yq的排序结果为:Yp<Yq。因此,待排序数据Yi、Yj、Yp和Yq的排序结果为:Yj<Yp<Yi<Yq。本发明实施例提出的基于多影响因子的排序方法,当全部数据对不为空时,先在全部数据对中选择一个数据对作为当前数据对,然后根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,再通过神经网络对当前数据对中的全部待排序数据进行排序,当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。也就是说,在本发明的具体实施例中,可以根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,然后通过神经网络对当前数据对中的全部待排序数据进行排序。而不是像现有技术中,根据各个影响因子对应的权重值对全部待排序数据进行排序。因此,和现有技术相比,本发明实施例提出的基于多影响因子的排序方法,可以更加准确地反映出各个影响因子对排序结果的影响;并且,实现起来简单方便,便于普及,适用范围更广。图7为本发明实施例中移动终端的第一组成结构示意图。如图7所示,所述移动终端包括:选择单元701、建立单元702和排序单元703;其中,选择单元701,用于当全部数据对不为空时,在全部数据对中选择一个数据对作为当前数据对。在本发明的具体实施例中,当全部数据对不为空时,选择单元701可以在全部数据对中选择一个数据对作为当前数据对。假设全部数据对为{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq};当全部数据对不为空时,选择单元701可以在全部数据对中选择数据对{Yi,Yj}为当前数据对。建立单元702,用于根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络。在本发明的具体实施例中,建立单元702可以根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的数量建立如图5所示的神经网络。排序单元703,用于通过神经网络对当前数据对中的全部待排序数据进行排序;当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。在本发明的具体实施例中,建立单元702在建立完成神经网络之后,排序单元703可以通过神经网络对当前数据对中的全部待排序数据进行排序。当全部数据对为空时,移动终端可以根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。例如,假设全部数据对分别为:{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq}。其中,{Yi,Yj}的排序结果为:Yi>Yj;{Yi,Yp}的排序结果为:Yi>Yp;{Yi,Yq}的排序结果为:Yi<Yq;{Yj,Yp}的排序结果为:Yj<Yp;{Yj,Yq}的排序结果为:Yj<Yq;{Yp,Yq的排序结果为:Yp<Yq。因此,待排序数据Yi、Yj、Yp和Yq的排序结果为:Yj<Yp<Yi<Yq。图8为本发明实施例中移动终端的第二组成结构示意图。如图8所示,建立单元702包括:确定子单元7021和建立子单元7022;其中,确定子单元7021,用于根据全部数据对对应的影响因子的数量确定神经网络中输入层的神经元的个数;根据当前数据对中全部待排序数据的关系类型的数量确定神经网络中输出层的神经元的个数。在本发明的具体实施例中,建立子单元7022,用于根据输入层的神经元的个数和输出层的神经元的个数建立神经网络。在本发明的具体实施例中,建立子单元7022可以根据全部数据对对应的影响因子的数量确定神经网络中输入层的神经元的个数。例如,假设全部数据对对应的影响因子的数量为n,在本步骤中,建立子单元7022可以确定神经网络中输入层的神经元的个数为n;其中,n为大于等于2的自然数。此外,建立子单元7022可以根据当前数据对中全部待排序数据的关系类型的数量确定神经网络中输出层的神经元的个数。进一步的,建立子单元7022,具体用于根据以下公式计算所述输出层的神经元的个数:其中,C为当前数据对中全部待排序数据的关系类型的数量;N为输出层的神经元的个数。在本发明的具体实施例中,全部待排序数据的关系类型的数量可以包括以下三种:大于、等于和小于。即:全部待排序数据的关系类型的数量为3,因此,根据以上公式可以计算出输出层的神经元的个数为2。进一步的,排序单元703包括:计算子单元7031、输入子单元7032、输出子单元7033和排序子单元7034;其中,计算子单元7031,用于计算当前数据对对应的输入量。在本发明的具体实施例中,计算子单元7031可以先计算当前数据对对应的输入量。例如,假设当前数据对为{Yi,Yj},其中,Yi的影响因子分别为:Xi1、Xi2、…、Xin;Yj的影响因子分别为:Xj1、Xj2、…、Xjn;因此,计算子单元7031可以计算当前数据对对应的输入量分别为:{Xi1-Xj1,Xi2-Xj2,…,Xin-Xjn}。输入子单元7032,用于将各个输入量输入到输入层的神经元中。在本发明的具体实施例中,输入子单元7032可以将各个输入量输入到输入层的神经元中。具体地,移动终端可以将输入量Xi1-Xj1输入到第一个I1中;将输入量Xi2-Xj2输入到第二个I2中;…;将输入量Xin-Xjn输入到第n个In中。输出子单元7033,用于在输出层的神经元中获取当前数据对对应的输出量。在本发明的具体实施例中,输出子单元7033可以在输出层的神经元中获取当前数据对对应的输出量。例如,输出子单元7033在输出层的神经元中获取到当前数据对对应的输出量为[O1,O2];当[O1,O2]=[0,0]时,表示:Yi=Yj;当[O1,O2]=[0,1]时,表示:Yi<Yj;当[O1,O2]=[1,0]时,表示:Yi>Yj;当[O1,O2]=[1,1]时,表示:排序结果无效。排序子单元7034,用于根据输出量对当前数据对中的全部待排序数据进行排序。在本发明的具体实施例中,排序子单元7034可以根据输出量对当前数据对中的全部待排序数据进行排序。例如,输出子单元7033在输出层的神经元中获取到当前数据对对应的输出量为[O1,O2];排序子单元7034可以根据[O1,O2]对Yi和Yj进行排序。例如,当[O1,O2]=[0,0]时,表示:Yi=Yj;当[O1,O2]=[0,1]时,表示:Yi<Yj;当[O1,O2]=[1,0]时,表示:Yi>Yj;当[O1,O2]=[1,1]时,表示:排序结果无效。进一步的,选择单元701,还用于将全部待排序数据中的每两个待排序数据组合为一个当前数据对;将各个当前数据对添加到全部数据对中。在本发明的具体实施例中,选择单元701在全部数据对中选择一个数据对作为当前数据之前,选择单元701还可以将全部待排序数据中的每两个待排序数据组合为一个当前数据对;然后将各个当前数据对添加到全部数据对中。例如,假设预先确定的待排序数据为:Yi、Yj、Yp和Yq。选择单元701可以将全部待排序数据中的每两个待排序数据组合为一个当前数据对,分别为:{Yi,Yj}、{Yi,Yp}、{Yi,Yq}、{Yj,Yp}、{Yj,Yq}和{Yp,Yq};然后将各个当前数据对添加到全部数据对中。本发明实施例提出的移动终端,当全部数据对不为空时,先在全部数据对中选择一个数据对作为当前数据对,然后根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,再通过神经网络对当前数据对中的全部待排序数据进行排序,当全部数据对为空时,根据全部数据对的排序结果对全部数据对中的待排序数据进行排序。也就是说,在本发明的具体实施例中,可以根据预先确定的全部数据对对应的影响因子的数量和当前数据对中全部待排序数据的关系类型的数量建立神经网络,然后通过神经网络对当前数据对中的全部待排序数据进行排序。而不是像现有技术中,根据各个影响因子对应的权重值对全部待排序数据进行排序。因此,和现有技术相比,本发明实施例提出的移动终端,可以更加准确地反映出各个影响因子对排序结果的影响;并且,实现起来简单方便,便于普及,适用范围更广。本发明实施例提供的移动终端中的选择单元701、建立单元702和排序单元703都可以通过移动终端中的处理器来实现;当然也可通过具体的逻辑电路实现;在具体实施例的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ReadOnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1