本发明涉及计算机技术领域,特别涉及一种基于时间序列的汉字输入法预测方法。
背景技术:
目前,随着信息技术的不断发展,电脑、手机及平板电脑等电子设备应用越来越广泛。人们需要借助软硬键盘对汉字进行输入功能,以便实现工作、娱乐和交流等目的。对于计算机而言,输入输出是最基本的功能。而近年来对于汉字录入电子设备需求量也越来越大。很多输入法都提供对汉字的录入功能。但是由于汉字的特殊性,输入一个拼音往往对应多个汉字,从而造成输入速度慢、准确率低等问题,极大的降低了输入法的使用效率。
技术实现要素:
发明目的:本发明的目的是提出一种基于时间序列的汉字输入法预测方法,可以针对不同用户的输入习惯为用户做出特定推荐,提高文字的输入效率及准确度。
技术方案:本发明所述的基于时间序列的汉字输入法预测方法,包括如下步骤:
步骤100:选取用户历史输入作为训练集,训练用户的时间序列模型;
步骤200:利用时间序列模型预测各汉字在键入时间出现的次数生成预测结果;
步骤300:根据用户已经键入的汉字或拼音,结合语义从预测结果中选择出现次数较高的汉字作为推荐汉字显示。
进一步的,所述步骤300后还包括步骤400:采用损失函数衡量预测结果的精确程度。
进一步的,所述步骤400中的损失函数为二次损失函数。
进一步的,所述步骤100包括:
步骤110:选取用户历史输入作为训练集,建立用户汉字时间序列;
步骤120:验证用户汉字时间序列的平稳性,若用户汉字时间序列平稳则进入步骤130;
步骤130:判断用户汉字时间序列是否为白噪声序列,若用户汉字时间序列为非白噪声序列,则计算训练集的自相关系数和偏相关系数并获得训练集的自相关图和偏自相关图;
步骤140:根据自相关图和偏自相关图识别用户汉字时间序列类型,并根据序列类型建立模型方程;
步骤150:对模型方程进行定阶;
步骤160:利用观测数据估计模型方程的参数,获得时间序列模型。
进一步的,所述步骤120还包括:
步骤121:若用户汉字时间序列不平稳,则对用户汉字时间序列进行差分处理并返回步骤120。
进一步的,所述步骤120中采用单位根验证法验证用户汉字时间序列的平稳性。
进一步的,所述步骤150中采用最大似然法估计模型方程的参数。
进一步的,所述步骤160中采用赤池信息准则对模型方程进行定阶。
有益效果:与现有技术相比,本发明具有如下优点:通过时间序列模型预测用户在输入时间时需要输入的汉字,结合用户输入习惯,提高用户的输入速度及准确度。
附图说明
图1为本发明的第一实施例的预测方法的流程图;
图2为本发明的第二实施例的预测方法的流程图;
图3为本发明的第三实施例的预测方法的流程图;
图4为本发明的用户汉字时间序列的acf图;
图5为本发明的用户汉字时间序列的pacf图;
图6为本发明的实施效果图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
参照图1,根据本发明实施例的基于时间序列的汉字输入法预测方法,包括如下步骤:
步骤100:选取用户历史输入作为训练集,训练用户的时间序列模型;
步骤200:利用时间序列模型预测各汉字在键入时间出现的次数生成预测结果;
步骤300:根据用户已经键入的汉字或拼音,结合语义从预测结果中选择出现次数较高的汉字作为推荐汉字显示。
根据上述技术方案的基于时间序列的汉字输入法预测方法,通过根据用户历史输入建立时间序列模型,来预测用户未来一段时间内的汉字出现频率,并结合输入的时间以及已经输入的汉字的语义或者已经输入的拼音,从词库中先匹配可以与在先输入的汉字组成的词语的汉字或者与已经输入的拼音对应的所有汉字,再结合时间序列模型对这些汉字的出现频率的预测值的高低生成推荐列表,如图6所示,用户可以从列表中直接选择需要的汉字。时间序列模型根据用户历史输入建立,与用户的输入习惯匹配,可以提高用户的输入速度及准确度。
参照图2,在一些实施例中,步骤300后还包括步骤400:采用损失函数衡量预测结果的精确程度。损失函数将随机时间或其有关随机变量的取值映射为非负实数以表示该随机时间的“风险”或“损失”的函数,通常作为学习准则与优化问题相联系,即通过最小化损失函数求解和评估模型。通过损失函数对预测结果的精确程度评估,可以为后续优化时间序列模型提供数据依据。在本实施例中,采用二次损失函数来衡量预测结果的精确程度,即
参照图3,在一些实施例中,步骤100包括:
步骤110:选取用户历史输入作为训练集,建立用户汉字时间序列;可以理解的是,用户汉字时间序列可以通过将训练集中的汉字按时间顺序及时间段内出现的次数绘制成用户汉字时间序列曲线图的形式来体现。
步骤120:验证用户汉字时间序列的平稳性,若用户汉字时间序列平稳则进入步骤130;
步骤130:判断用户汉字时间序列是否为白噪声序列,若用户汉字时间序列为非白噪声序列,则计算训练集的自相关系数和偏相关系数并获得训练集的自相关图和偏自相关图。由于白噪声序列前后不存在相关性,即使有历史观测序列信息也对预测无意义,所以若此时判断用户汉字时间序列为白噪声序列则建模结束,需要重新选择另一段时间的用户历史输入作为训练集重新开始时间序列模型的训练。自相关函数是将有序的随机变量与其自身比较,反映了同一序列在不同时序的取值之间的相关性。偏相关函数计算的是严格的两个变量之间的相关性,是剔除了中间变量的干扰之后所得到的两个变量之间的相关程度。计算出用户汉字时间序列的自相关系数和偏相关系数并绘制出自相关图(acf图)和偏自相关图(pacf图),如图4和图5所示。
其中在相关系数
步骤140:根据自相关图和偏自相关图识别用户汉字时间序列类型,并根据序列类型建立模型方程;
步骤150:对模型方程进行定阶;
步骤160:利用观测数据估计模型方程的参数,获得时间序列模型。
参照图2,在一些实施例中,步骤120还包括:
步骤121:若用户汉字时间序列不平稳,则对用户汉字时间序列进行差分处理并返回步骤120。
一个时间序列的平稳性要求它的均值、方差和协方差一定是常数。可以理解的是,平稳性检验可以通过时序图判断法、样本自相关系数检验法、单位根检验法等方法来检验。通过时序图判断法来判断序列的平稳性具有一定的主观性,所以在本实施例中,采用单位根检验法检验用户汉字时间序列的平稳性,即若该序列的所有特征根均在单位圆内,则该序列是平稳的;若该序列有特征根在单位圆上或者在单位圆外,则该序列是非平稳的。如果用户汉字时间序列是不平稳的,则需要对用户汉字时间序列进行差分处理,并对差分处理后的序列再进行平稳性检验,直到获得一个平稳的用户汉字时间序列。
在本实施例中,采用q统计量方法检验用户汉字时间序列是否为白噪声序列。已知q统计量近似服从自由度为m的卡方分布,即
在步骤140中,通过自相关图和偏相关图是拖尾还是截尾判定预测模型。如果自相关图为拖尾,偏相关图是p阶截尾,则为自回归模型,即ar(p)模型。自回归模型描述当前值与历史值之间的关系,用变量自身的历史时间数据对自身进行预测。自回归模型必须满足平稳性的要求。自回归模型首先需要确定一个阶数p,表示用几期的历史值来预测当前值。p阶自回归模型的公式定义为:
若自相关图为q阶截尾,偏相关图为拖尾,则为移动平均模型,即ma(q)模型。移动平均模型关注的是自回归模型中的误差项的累加,q阶自回归的公式定义为:
若自相关图是拖尾,偏相关图也是拖尾,则为自回归移动平均模型,即arma(p,q)模型。自回归移动平均模型是自回归模型和移动平均模型的结合,其公式定义为:
由于多数情况下,用户汉字时间序列为非平稳序列,因此不能直接用自回归移动平均模型去刻画,所以需要在步骤121中对用户汉字时间序列经过d阶差分处理后获得平稳的新的用户汉字时间序列。通过自回归移动平均模型去刻画经过d阶差分后的用户汉字时间序列,即是差分整合移动平均自回归模型,即arima(p,q,d)模型。并且通过拖尾和截尾对得到的预测模型进行定阶的方法具有很强的主观性,通过自相关图和偏相关图得到的arima(p,q,d)模型未必是最优的。除此之外,步骤140中模型识别可能得到不止一个模型,所以需要比较选择出最合适的模型,或者对模型方程进行定阶,以获得最优的时间序列模型。
在本实施例中,步骤150中采用赤池信息准则(aic准则)对模型方程进行定阶。其中,
在步骤160中,利用最大似然法估计确定的模型方程的参数。在最大似然准则下,认为样本来自使用该样本出现概率最大的总体。因此,未知参数的最大似然估计就是使似然函数达到最大的参数值。最大似然估计充分应用了每一个观测值所提供的信息,具有估计精度高的优点。最大似然函数为