本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)展示方法及裝置。
背景技術(shù):
大數(shù)據(jù)量的數(shù)據(jù)可視化,指的是上GB級(jí)以及上TB級(jí)乃至上PB級(jí)數(shù)據(jù)的可視化。用戶通常對(duì)多維度展現(xiàn)這些數(shù)據(jù)有著強(qiáng)烈的需求,希望實(shí)現(xiàn)數(shù)據(jù)的視覺(jué)化展示,以便獲取數(shù)據(jù)之間的內(nèi)在聯(lián)系以及相關(guān)性等可用指標(biāo),乃至發(fā)現(xiàn)數(shù)據(jù)中未知的信息。
然而,目前的計(jì)算機(jī)系統(tǒng),尤其受到瀏覽器的處理能力的限制,經(jīng)常無(wú)法展示上GB級(jí)及以上的數(shù)據(jù),甚至于幾百兆的數(shù)據(jù)都無(wú)法正常展現(xiàn),從而造成瀏覽器卡死甚至系統(tǒng)卡死的問(wèn)題,最終導(dǎo)致基于數(shù)據(jù)展示的相關(guān)服務(wù)無(wú)法正常使用。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例的主要目的在于提供一種數(shù)據(jù)展示方法及裝置,能夠保證大數(shù)據(jù)量的正常展示。
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)展示方法,包括:
判斷當(dāng)前頁(yè)面是否展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù);
如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
可選的,所述方法還包括:
響應(yīng)于用戶請(qǐng)求撤銷加載的操作,展示當(dāng)前頁(yè)面的上一頁(yè)面,所述上一頁(yè)面為當(dāng)前頁(yè)面被更新之前的頁(yè)面。
可選的,所述方法還包括:
將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集;
采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集,其中,所述樹(shù)狀結(jié)構(gòu)的每一節(jié)點(diǎn)對(duì)應(yīng)一個(gè)數(shù)據(jù)塊、且每一節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊包含在自己父節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中;
則,所述從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),包括:
從每一數(shù)據(jù)子集的根節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中分別抽取至少一個(gè)數(shù)據(jù);
所述從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),包括:
確定最近加載數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)層級(jí),將所確定的層級(jí)稱為當(dāng)前層級(jí);
確定每一數(shù)據(jù)子集的所述當(dāng)前層級(jí)的下一層級(jí),并從所述下一層級(jí)中每一節(jié)點(diǎn)對(duì)應(yīng)的各個(gè)數(shù)據(jù)塊中,分別抽取至少一個(gè)未被展示的數(shù)據(jù)。
可選的,所述將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集,包括:
如果所述目標(biāo)數(shù)據(jù)集服從一高斯分布,則計(jì)算所述高斯分布的均值μ1和標(biāo)準(zhǔn)差σ1;
將數(shù)據(jù)區(qū)間[Min=μ1-3σ1,Max=μ1+3σ1]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
可選的,所述將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集,包括:
如果所述目標(biāo)數(shù)據(jù)集不服從一高斯分布,則根據(jù)所述目標(biāo)數(shù)據(jù)集構(gòu)建高斯混合模型,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2;
將每一單高斯模型對(duì)應(yīng)的數(shù)據(jù)區(qū)間[Min=μ2-3σ2,Max=μ2+3σ2]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
可選的,所述得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2,包括:
采用最大期望EM算法,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2。
可選的,所述方法還包括:
確定最近加載的數(shù)據(jù)在所述樹(shù)狀結(jié)構(gòu)中所屬的目標(biāo)層級(jí);
檢測(cè)用戶請(qǐng)求從局部數(shù)據(jù)塊中加載數(shù)據(jù)的操作,所述局部數(shù)據(jù)塊為所述目標(biāo)層級(jí)中的至少一個(gè)節(jié)點(diǎn)分別對(duì)應(yīng)的數(shù)據(jù)塊;
當(dāng)檢測(cè)到所述操作后,從所述局部數(shù)據(jù)塊中的每一數(shù)據(jù)塊中抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù)。
可選的,所述從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),包括:
按照預(yù)設(shè)采樣方式,從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),所述預(yù)設(shè)采樣方式為取模采樣方式、或隨機(jī)采樣方式、或均勻采樣方式;
所述從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),包括:
按照所述預(yù)設(shè)采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)。
本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)展示裝置,包括:
頁(yè)面判斷單元,用于判斷當(dāng)前頁(yè)面是否展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù);
加載展示單元,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
可選的,所述裝置還包括:
展示回退單元,用于響應(yīng)于用戶請(qǐng)求撤銷加載的操作,展示當(dāng)前頁(yè)面的上一頁(yè)面,所述上一頁(yè)面為當(dāng)前頁(yè)面被更新之前的頁(yè)面。
可選的,所述裝置還包括:
集合劃分單元,用于將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集;
樹(shù)狀構(gòu)建單元,用于采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集,其中,所述樹(shù)狀結(jié)構(gòu)的每一節(jié)點(diǎn)對(duì)應(yīng)一個(gè)數(shù)據(jù)塊、且每一節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊包含在自己父節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中;
則,所述加載展示單元包括:
第一展示子單元,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從每一數(shù)據(jù)子集的根節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中分別抽取至少一個(gè)數(shù)據(jù),并展示被抽取的數(shù)據(jù);
第二展示子單元,用于如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則確定最近加載數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)層級(jí),將所確定的層級(jí)稱為當(dāng)前層級(jí);確定每一數(shù)據(jù)子集的所述當(dāng)前層級(jí)的下一層級(jí),并從所述下一層級(jí)中每一節(jié)點(diǎn)對(duì)應(yīng)的各個(gè)數(shù)據(jù)塊中,分別抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
可選的,所述集合劃分單元包括:
第一參數(shù)計(jì)算子單元,用于如果所述目標(biāo)數(shù)據(jù)集服從一高斯分布,則計(jì)算所述高斯分布的均值μ1和標(biāo)準(zhǔn)差σ1;
第一子集形成子單元,用于將數(shù)據(jù)區(qū)間[Min=μ1-3σ1,Max=μ1+3σ1]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
可選的,所述集合劃分單元包括:
第二參數(shù)計(jì)算子單元,用于如果所述目標(biāo)數(shù)據(jù)集不服從一高斯分布,則根據(jù)所述目標(biāo)數(shù)據(jù)集構(gòu)建高斯混合模型,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2;
第二子集形成子單元,用于將每一單高斯模型對(duì)應(yīng)的數(shù)據(jù)區(qū)間[Min=μ2-3σ2,Max=μ2+3σ2]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
可選的,所述第二參數(shù)計(jì)算子單元,具體用于采用最大期望EM算法,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2。
可選的,所述裝置還包括:
目標(biāo)層級(jí)確定單元,用于確定最近加載的數(shù)據(jù)在所述樹(shù)狀結(jié)構(gòu)中所屬的目標(biāo)層級(jí);
請(qǐng)求操作檢測(cè)單元,用于檢測(cè)用戶請(qǐng)求從局部數(shù)據(jù)塊中加載數(shù)據(jù)的操作,所述局部數(shù)據(jù)塊為所述目標(biāo)層級(jí)中的至少一個(gè)節(jié)點(diǎn)分別對(duì)應(yīng)的數(shù)據(jù)塊;
局部數(shù)據(jù)抽取單元,用于當(dāng)檢測(cè)到所述操作后,從所述局部數(shù)據(jù)塊中的每一數(shù)據(jù)塊中抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù)。
可選的,所述加載展示單元包括:
第三展示子單元,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則按照預(yù)設(shè)采樣方式從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù),其中,所述預(yù)設(shè)采樣方式為取模采樣方式、或隨機(jī)采樣方式、或均勻采樣方式;
第四展示子單元,用于如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則按照所述預(yù)設(shè)采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
本發(fā)明實(shí)施例提供的數(shù)據(jù)展示方法及裝置,如果當(dāng)前頁(yè)面未展示目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),則從目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),從而得到更新后的頁(yè)面??梢?jiàn),本發(fā)明可以實(shí)現(xiàn)大數(shù)據(jù)的可視化分級(jí)展示,即,當(dāng)目標(biāo)數(shù)據(jù)集的數(shù)據(jù)量較大、且需要展示目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)時(shí),對(duì)其中的數(shù)據(jù)進(jìn)行異步加載,這樣,每次只加載部分?jǐn)?shù)據(jù)可以降低對(duì)網(wǎng)絡(luò)傳輸?shù)囊蕾?,同時(shí),瀏覽器每次也只展示加載的部分?jǐn)?shù)據(jù),可以降低瀏覽器的負(fù)擔(dān),最終保證了大數(shù)據(jù)量的正常展示。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1A為本發(fā)明提供的數(shù)據(jù)展示方法的流程示意圖之一;
圖1B為本發(fā)明提供的數(shù)據(jù)展示方法的流程示意圖之二;
圖2為本發(fā)明提供的數(shù)據(jù)關(guān)系建立方法的流程示意圖;
圖3為本發(fā)明提供的高斯分布示意圖;
圖4為本發(fā)明提供的混合高斯分布示意圖;
圖5為本發(fā)明提供的樹(shù)狀結(jié)構(gòu)示意圖;
圖6A為本發(fā)明提供的數(shù)據(jù)展示裝置的組成示意圖之一;
圖6B為本發(fā)明提供的數(shù)據(jù)展示裝置的組成示意圖之二。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例提供的數(shù)據(jù)展示方法,實(shí)現(xiàn)了大數(shù)據(jù)量的數(shù)據(jù)可視化展示,保證了大數(shù)據(jù)量數(shù)據(jù)可以在瀏覽器中正常顯示以及顯示效率大幅提升,避免了出現(xiàn)瀏覽器僵死甚至出現(xiàn)系統(tǒng)死機(jī)等問(wèn)題。
參見(jiàn)圖1A,為本發(fā)明實(shí)施例提供的數(shù)據(jù)展示方法的流程示意圖,該方法包括步驟S101-S102:
S101:判斷當(dāng)前頁(yè)面是否展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)。
在本實(shí)施例中,是采用逐次加載數(shù)據(jù)以逐次增加展示數(shù)據(jù)的方式,完成大數(shù)據(jù)量的展示,即,對(duì)于用戶觸發(fā)的或數(shù)據(jù)展示程序自動(dòng)觸發(fā)的每一次加載請(qǐng)求,只加載目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù)。因此,對(duì)于當(dāng)前觸發(fā)的加載請(qǐng)求,如果是第一次加載請(qǐng)求,用戶所瀏覽的當(dāng)前頁(yè)面將沒(méi)有數(shù)據(jù)展示;如果是第二、第三次等加載請(qǐng)求,用戶所瀏覽的當(dāng)前頁(yè)面將展示之前已經(jīng)加載的數(shù)據(jù)。
在每次的加載請(qǐng)求被觸發(fā)后,瀏覽器會(huì)將該請(qǐng)求發(fā)送至服務(wù)器,服務(wù)器接收到該請(qǐng)求后,需要定位目標(biāo)數(shù)據(jù)集的存儲(chǔ)位置并從中抽取部分?jǐn)?shù)據(jù),然后返回至瀏覽器側(cè),這樣瀏覽器便準(zhǔn)備好了即將展示的新數(shù)據(jù)。具體的,所述目標(biāo)數(shù)據(jù)集可以采用分布式存儲(chǔ)方式并存儲(chǔ)在內(nèi)存中,服務(wù)器在獲取基于該存儲(chǔ)方式的目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)時(shí),尤其是在獲取較大數(shù)據(jù)量時(shí),獲取效率要比一般的關(guān)系型數(shù)據(jù)庫(kù)以及基于磁盤(pán)存儲(chǔ)的數(shù)據(jù)集獲取效率高出10多倍。
S102:如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
在本實(shí)施例中,瀏覽器準(zhǔn)備好了即將展示的新數(shù)據(jù)后,便可以在已經(jīng)展出的數(shù)據(jù)的基礎(chǔ)上增加展示所述新數(shù)據(jù),從而得到一個(gè)包括之前已展示數(shù)據(jù)和所述新數(shù)據(jù)的更新頁(yè)面。通過(guò)多次加載目標(biāo)數(shù)據(jù)集中的部分未加載數(shù)據(jù),最終可以展示出目標(biāo)數(shù)據(jù)集中的全部數(shù)據(jù)。
在進(jìn)行數(shù)據(jù)展示時(shí),可以根據(jù)目標(biāo)數(shù)據(jù)集的數(shù)量級(jí)確定即將被展示的圖表樣式,比如,散點(diǎn)圖、柱狀圖等圖表樣式。瀏覽器可以動(dòng)態(tài)創(chuàng)建數(shù)據(jù)集展現(xiàn)模型,用于對(duì)目標(biāo)數(shù)據(jù)集進(jìn)行相關(guān)的預(yù)處理和數(shù)據(jù)標(biāo)記,以及對(duì)圖表樣式進(jìn)行相關(guān)的優(yōu)化,以保證目標(biāo)數(shù)據(jù)集以相應(yīng)的圖表樣式參數(shù)進(jìn)行最優(yōu)的匹配。
本發(fā)明實(shí)施例提供的數(shù)據(jù)展示方法,如果當(dāng)前頁(yè)面未展示目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),則從目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),從而得到更新后的頁(yè)面。可見(jiàn),本發(fā)明可以實(shí)現(xiàn)大數(shù)據(jù)的可視化分級(jí)展示,即,當(dāng)目標(biāo)數(shù)據(jù)集的數(shù)據(jù)量較大、且需要展示目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)時(shí),對(duì)其中的數(shù)據(jù)進(jìn)行異步加載,這樣,每次只加載部分?jǐn)?shù)據(jù)可以降低對(duì)網(wǎng)絡(luò)傳輸?shù)囊蕾嚕瑫r(shí),瀏覽器每次也只展示加載的部分?jǐn)?shù)據(jù),可以降低瀏覽器的負(fù)擔(dān),最終保證了大數(shù)據(jù)量的正常展示。
進(jìn)一步地,在一些實(shí)施方式中,本發(fā)明還具有展示回退功能,參見(jiàn)圖1B,本方法還可以包括步驟S103:
S103:響應(yīng)于用戶請(qǐng)求撤銷加載的操作,展示當(dāng)前頁(yè)面的上一頁(yè)面,所述上一頁(yè)面為當(dāng)前頁(yè)面被更新之前的頁(yè)面。
例如,在步驟S102中,假設(shè)當(dāng)前頁(yè)面稱為頁(yè)面A,增加新抽取數(shù)據(jù)后的更新頁(yè)面稱為頁(yè)面B。在步驟S103中,如果當(dāng)前頁(yè)面是頁(yè)面B,如果用戶請(qǐng)求撤銷加載,則展示頁(yè)面B的上一頁(yè)面,即展示頁(yè)面A。
需要說(shuō)明的是,對(duì)于第一次加載請(qǐng)求以外的加載請(qǐng)求,如果用戶使用的客戶端設(shè)備采用了觸摸屏,比如智能手機(jī),用戶可以在屏幕上利用手指進(jìn)行放大操作來(lái)觸發(fā)加載請(qǐng)求,當(dāng)然,還可以利用手指進(jìn)行縮小操作來(lái)觸發(fā)撤銷加載的請(qǐng)求;如果用戶使用的客戶端設(shè)備是具有鍵盤(pán)和/或鼠標(biāo)等外接部件的設(shè)備,比如臺(tái)式電腦或筆記本電腦,用戶可以通過(guò)鍵盤(pán)或鼠標(biāo)來(lái)觸發(fā)加載或撤銷加載的請(qǐng)求。對(duì)于采用何種方式觸發(fā)請(qǐng)求,本發(fā)明不作限制。
還需要說(shuō)明的是,本發(fā)明實(shí)施例不限制步驟S101-S102與步驟S103的執(zhí)行順序和次數(shù),比如,可以執(zhí)行一次或多次S101-S102后再執(zhí)行一次或多次S103,只要可以進(jìn)行頁(yè)面的回退顯示,還可以執(zhí)行一次或多次S103后再執(zhí)行一次或多次S101-S102,等等。
下面對(duì)步驟S102的具體實(shí)現(xiàn)過(guò)程進(jìn)行介紹。
參見(jiàn)圖2所示的數(shù)據(jù)關(guān)系建立方法的流程示意圖,為了實(shí)現(xiàn)S102,可以預(yù)先將目標(biāo)數(shù)據(jù)集劃分成多個(gè)數(shù)據(jù)塊,并按照數(shù)據(jù)塊之間的歸屬關(guān)系構(gòu)建樹(shù)狀圖,對(duì)此,具體包括以下步驟S201-S202:
S201:將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集;
S202:采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集,其中,所述樹(shù)狀結(jié)構(gòu)的每一節(jié)點(diǎn)對(duì)應(yīng)一個(gè)數(shù)據(jù)塊、且每一節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊包含在自己父節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中。
在本實(shí)施例中,可以采用以下兩種實(shí)施方式之一來(lái)實(shí)現(xiàn)步驟S201。
在第一種實(shí)施方式中,步驟S201,即“將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集”,可以包括步驟A1-A2:
A1:如果所述目標(biāo)數(shù)據(jù)集服從一高斯分布,則計(jì)算所述高斯分布的均值μ1和標(biāo)準(zhǔn)差σ1。
“小概率事件”通常指發(fā)生的概率小于5%的事件,即認(rèn)為在一次試驗(yàn)中該事件是幾乎不可能發(fā)生的。對(duì)于服從高斯分布(即正態(tài)分布)的隨機(jī)變量,隨機(jī)變量落在(μ-3σ,μ+3σ)以外的概率小于千分之三,在實(shí)際問(wèn)題中,通常認(rèn)為相應(yīng)的事件是不會(huì)發(fā)生的,基本上可以把區(qū)間(μ-3σ,μ+3σ)看作是隨機(jī)變量實(shí)際可能的取值區(qū)間,這稱之為正態(tài)分布的“3σ”原則。
因此,當(dāng)目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)X服從某高斯分布時(shí),可以計(jì)算該高斯分布的均值μ1和標(biāo)準(zhǔn)差σ1,得到數(shù)據(jù)X的取值區(qū)間(μ1-3σ1,μ1+3σ1)。
A2:將數(shù)據(jù)區(qū)間[Min=μ1-3σ1,Max=μ1+3σ1]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
參見(jiàn)圖3所示的高斯分布示意圖,橫軸區(qū)間[μ1-3σ1,μ1+3σ1]內(nèi)的面積為99.730020%,即,P{|X-μ1|<3σ1}=2Φ(3)-1=0.9974,幾乎覆蓋了目標(biāo)事件的所有取值。
假設(shè)目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)X為人(男或女)的身高,μ1即為平均身高,μ1附近的數(shù)據(jù)代表接近平均身高的身高值,其數(shù)量相對(duì)較大,屬于大概率事件;μ1-3σ1左側(cè)以及μ1+3σ1右側(cè)的身高數(shù)據(jù)代表較小或較大的身高值,其數(shù)量相對(duì)較小,相對(duì)于大概率事件來(lái)說(shuō),屬于小概率事件。
基于高斯分布的特點(diǎn),本實(shí)施例可以將[μ1-3σ1,μ1+3σ1]劃分成n份,可以均勻劃分,也可以不均勻劃分,從而得到n個(gè)子區(qū)間,這樣,屬于每一子區(qū)間的數(shù)據(jù)X便形成了一個(gè)數(shù)據(jù)子集。例如,假設(shè)[μ1-3σ1,μ1+3σ1]=[140,190],將該區(qū)間均勻劃分成n=5份,則得到5個(gè)數(shù)據(jù)子集[140,150]、(150,160]、(160,170]、(170,180]、(180,190],其中,(160,170]范圍內(nèi)的數(shù)據(jù)量較大,(150,160]與(170,180]范圍內(nèi)的數(shù)據(jù)量較少,[140,150]與(180,190]范圍內(nèi)的數(shù)據(jù)量更少些。
當(dāng)采用上述方式形成n個(gè)數(shù)據(jù)子集后,再執(zhí)行步驟S202,即采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集。具體來(lái)講,當(dāng)將[μ1-3σ1,μ1+3σ1]劃分成n份,得到子區(qū)間1、子區(qū)間2、……子區(qū)間n后,再將每個(gè)子區(qū)間劃分為n'份,其中,每個(gè)子區(qū)間劃分的份數(shù)n'可以相同也可以不同、可以均勻劃分也可以不均勻劃分;對(duì)于子區(qū)間1,將其劃分成n'份,得到子區(qū)間11、子區(qū)間12、……子區(qū)間1n',然后,建立子區(qū)間1與這n'個(gè)子區(qū)間之間的索引關(guān)系(即父子關(guān)系),使得子區(qū)間1的索引值對(duì)應(yīng)根節(jié)點(diǎn),子區(qū)間11、子區(qū)間12、……子區(qū)間1n'的各個(gè)索引值對(duì)應(yīng)根節(jié)點(diǎn)的子節(jié)點(diǎn),可見(jiàn),子區(qū)間1對(duì)應(yīng)的數(shù)據(jù)塊即為這n'個(gè)子區(qū)間對(duì)應(yīng)的數(shù)據(jù)塊總和;此外,其它子區(qū)間,即子區(qū)間2、……子區(qū)間n也按照上述方式建立節(jié)點(diǎn)關(guān)系,在此不再贅述,這樣,n個(gè)根節(jié)點(diǎn)便是第一層級(jí)的節(jié)點(diǎn),每個(gè)根節(jié)點(diǎn)的n'個(gè)子節(jié)點(diǎn)便是第二層級(jí)的節(jié)點(diǎn);然后,按照上述方式繼續(xù)對(duì)第二層級(jí)中各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)子區(qū)間進(jìn)行劃分,可以劃分成多個(gè)層級(jí),具體的層級(jí)數(shù)量可以根據(jù)目標(biāo)數(shù)據(jù)集的數(shù)據(jù)量預(yù)先設(shè)定,最終采用樹(shù)狀結(jié)構(gòu)表示目標(biāo)數(shù)據(jù)集的每一數(shù)據(jù)子集。
在第二種實(shí)施方式中,步驟S201,即“將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集”,可以包括步驟B1-B2:
B1:如果所述目標(biāo)數(shù)據(jù)集不服從一高斯分布,則根據(jù)所述目標(biāo)數(shù)據(jù)集構(gòu)建高斯混合模型,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2。
具體的,可以采用最大期望(Expectation Maximum,簡(jiǎn)稱EM)算法,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2,具體實(shí)現(xiàn)如下。
對(duì)于多波峰以及不規(guī)則的數(shù)據(jù)分布,可以采用Mixtures of Gaussians(高斯混合模型)來(lái)處理,高斯混合模型是單一高斯概率密度函數(shù)的延伸。假設(shè)目標(biāo)數(shù)據(jù)集為X={x1,x2,......xn},數(shù)據(jù)個(gè)數(shù)為n,如果這些數(shù)據(jù)在d維空間中的分布不是橢球狀,那么就不適合以一個(gè)單一的高斯密度函數(shù)來(lái)描述這些數(shù)據(jù)點(diǎn)的概率密度函數(shù),此時(shí)可以采用一個(gè)變通方案,假設(shè)目標(biāo)數(shù)據(jù)集X中的每個(gè)數(shù)據(jù)均由一個(gè)單高斯分布生成,而這一批數(shù)據(jù)X共由M個(gè)單高斯模型生成,具體某個(gè)數(shù)據(jù)xi屬于哪個(gè)單高斯模型是未知的,且每個(gè)單高斯模型在高斯混合模型中占的比例αj也是未知的,將所有來(lái)自不同單高斯分布的數(shù)據(jù)點(diǎn)混在一起,該分布稱為高斯混合分布。比如,圖4所示的混合高斯分布示意圖,其涉及兩個(gè)單高斯分布。
從數(shù)學(xué)上講,認(rèn)為目標(biāo)數(shù)據(jù)集中的每個(gè)數(shù)據(jù)xi的概率分布密度函數(shù)可以通過(guò)加權(quán)函數(shù)表示:
其中,Nj(xi:μj,Cj)表示第j個(gè)單高斯模型(Single Gaussians Model,簡(jiǎn)稱SGM)的概率密度函數(shù)(probability density function,簡(jiǎn)稱PDF),μj表示第j個(gè)單高斯模型的均值,Cj表示第j個(gè)單高斯模型的協(xié)方差,αj表示第j個(gè)單高斯模型在高斯混合模型中占的比例。
Nj(xi:μj,Cj)的計(jì)算公式如下:
其中,n為目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)個(gè)數(shù)。
高斯混合模型(GMM),就是數(shù)據(jù)可以看作是根據(jù)多個(gè)單高斯分布生成的,因此,GMM本身其實(shí)也是可以變得任意復(fù)雜的,也就是說(shuō),通過(guò)增加單高斯模型的個(gè)數(shù),可以任意地逼近任何連續(xù)的概率密度分布。
具體的,令一個(gè)單高斯模型SGM的參數(shù)為由于高斯混合模型GMM共有M個(gè)SGM,則GMM的參數(shù)為需要通過(guò)目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)X來(lái)估計(jì)GMM的所有參數(shù)Φ,數(shù)據(jù)X的概率公式為:
其中,n為目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)個(gè)數(shù)。
下面對(duì)GMM參數(shù)進(jìn)行估計(jì):
(1)、初始化
方案1:第j個(gè)單高斯模型的均值μj0設(shè)為隨機(jī)數(shù);第j個(gè)單高斯模型的協(xié)方差矩陣Cj0設(shè)為單位矩陣;第j個(gè)單高斯模型在混合高斯模型中占的比例,取其先驗(yàn)概率αj0=1/M。
方案2:由K均值(k-means)聚類算法對(duì)目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行聚類,得到M類數(shù)據(jù),利用第j類數(shù)據(jù)的均值作為第j個(gè)單高斯模型的均值μj0;計(jì)算第j個(gè)單高斯模型的協(xié)方差矩陣Cj0;第j個(gè)單高斯模型在混合高斯模型中占的比例αj0,為第j類數(shù)據(jù)占目標(biāo)數(shù)據(jù)集總數(shù)的比例。
(2)、估計(jì)步驟
令αj的后驗(yàn)概率為:
其中,n為目標(biāo)數(shù)據(jù)集的數(shù)據(jù)個(gè)數(shù)。
(3)、最大化步驟
更新權(quán)值(比例):
更新均值:
更新協(xié)方差矩陣:
(4)、收斂條件
不斷地迭代步驟(2)和(3),重復(fù)更新(3)中的三個(gè)值,直到|P(X|Φ)-P(X|Φ)'|<ε,其中,P(X|Φ)為更新參數(shù)前計(jì)算的值,P(X|Φ)'為更新參數(shù)后計(jì)算的值,即前后兩次迭代得到的結(jié)果變化小于一定程度則終止迭代,通常ε=10-5。
通過(guò)以上計(jì)算,便得到了混合高斯模型中每一單高斯模型的參數(shù)了。
從上述內(nèi)容可知,在對(duì)數(shù)據(jù)X進(jìn)行分類時(shí),采用的是k-means的硬指定方式,下面介紹一種軟指定方式,并基于這種軟指定方式介紹GMM參數(shù)的獲取方法。
假設(shè)目標(biāo)數(shù)據(jù)集為X={x(1),x(2),......x(m)},數(shù)據(jù)個(gè)數(shù)為m,可以將數(shù)據(jù)x(i)可能的類別用隱含類別變量z(i)表示。與k-means的硬指定不同,首先認(rèn)為z(i)是滿足一定的概率分布的,這里認(rèn)為滿足多項(xiàng)式分布,即z(i)~Multinomial(φ),其中,P(z(i)=j(luò))=φj,φj≥0,有k個(gè)類別{1,…,k}可以選取(每個(gè)值對(duì)應(yīng)一個(gè)單高斯分布)。而且認(rèn)為在給定z(i)后,x(i)滿足多值高斯分布,即(x(i)|z(i)=j(luò))~N(μj,Cj),由此可以得到聯(lián)合概率分布P(x(i),z(i))=P(x(i)|z(i))P(z(i))。
整個(gè)高斯混合模型簡(jiǎn)單描述為,對(duì)于每個(gè)數(shù)據(jù)x(i),先從k個(gè)類別中按多項(xiàng)式分布抽取一個(gè)z(i),然后根據(jù)所對(duì)應(yīng)的k個(gè)多值高斯分布中的一個(gè)生成樣例x(i),整個(gè)過(guò)程形成了高斯混合模型。需要注意的是,這里的z(i)仍然是隱含隨機(jī)變量,模型中還有三個(gè)變量φ、μ和C。最大似然估計(jì)為P(x,z),對(duì)數(shù)化后如下:
其中,m為目標(biāo)數(shù)據(jù)集中的數(shù)據(jù)個(gè)數(shù)。
這個(gè)式子的最大值是不能通過(guò)求導(dǎo)數(shù)為0的方法解決的,因?yàn)榍蟮慕Y(jié)果不是閉型close form。但是,如果假設(shè)知道了每個(gè)數(shù)據(jù)x(i)所屬的類別z(i),那么上式可以簡(jiǎn)化為:
這時(shí)候再對(duì)φ、μ和C進(jìn)行求導(dǎo),得到:
φj是數(shù)據(jù)類別中z(i)=j(luò)的比率,即第j個(gè)單高斯模型在混合高斯模型中占的比例;μj是類別為j的所有數(shù)據(jù)x(i)的均值,即第j個(gè)單高斯模型的均值;Cj是類別為j的所有數(shù)據(jù)x(i)的協(xié)方差矩陣,即第j個(gè)單高斯模型的協(xié)方差。
實(shí)際上,當(dāng)知道z(i)后,最大似然估計(jì)就近似于高斯判別分析模型(Gaussian discriminant analysis model)了。所不同的是,GDA中類別y服從伯努利分布,而這里的z(i)服從多項(xiàng)式分布,還有這里的每個(gè)數(shù)據(jù)x(i)都有不同的協(xié)方差矩陣,而GDA中認(rèn)為只有一個(gè)。
由于之前假設(shè)給定了z(i),實(shí)際上z(i)是未知的,此時(shí)考慮之前提到的EM算法的思想,第一步是猜測(cè)隱含類別變量z,第二步是更新其他參數(shù),以獲得最大的最大似然估計(jì)。具體如下:
循環(huán)下面步驟,直到收斂:{
(E步)、對(duì)于每一個(gè)i和j,計(jì)算:
其中,的具體計(jì)算公式如下:
(M步)、更新參數(shù)
}
在E步中,將其他參數(shù)φ,μ,C看作常量,計(jì)算z(i)的后驗(yàn)概率,也就是估計(jì)隱含類別變量z(i)。估計(jì)好后,利用M步中的公式重新計(jì)算其他參數(shù),利用這些參數(shù)再計(jì)算時(shí),如果本次計(jì)算結(jié)果與之前的計(jì)算結(jié)果差別很大,則需要重新計(jì)算,周而復(fù)始不斷地迭代E步和M步,直至收斂。
可見(jiàn),與K-means硬指定的方式不同,這里采用了“軟”指定方式來(lái)指定數(shù)據(jù)的類別,因此,為每個(gè)x(i)分配的類別是有一定的概率的,同時(shí)計(jì)算量也變大了,需要為每個(gè)x(i)都要計(jì)算屬于每一個(gè)類別j的概率。與K-means相同的是,結(jié)果仍然是局部最優(yōu)解。
通過(guò)以上計(jì)算,便得到高斯混合模型中的K個(gè)單高斯模型分別對(duì)應(yīng)的參數(shù)了。
接下來(lái),對(duì)于每一單高斯模型,利用其參數(shù)便可以計(jì)算得到該單高斯模型的標(biāo)準(zhǔn)差σj,這樣便得到每一單高斯模型的均值μ2=μj和方差σ2=σj了。
B2:將每一單高斯模型對(duì)應(yīng)的數(shù)據(jù)區(qū)間[Min=μ2-3σ2,Max=μ2+3σ2]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
對(duì)于每一單高斯模型,其數(shù)據(jù)子集的形成可以參照上述第一種實(shí)施方式中對(duì)步驟A2的相關(guān)介紹,以及步驟S202(即采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集)的相關(guān)介紹也可以參見(jiàn)第一種實(shí)施方式中的相關(guān)內(nèi)容,在此不再贅述。
基于上述兩種實(shí)施方式之一,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)”,可以包括:從每一數(shù)據(jù)子集的根節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中分別抽取至少一個(gè)數(shù)據(jù)。例如,參見(jiàn)圖5所示的樹(shù)狀結(jié)構(gòu)示意圖,如果有3個(gè)數(shù)據(jù)子集,這3個(gè)數(shù)據(jù)子集分別對(duì)應(yīng)一個(gè)樹(shù)狀結(jié)構(gòu),分別從每一樹(shù)狀結(jié)構(gòu)的根節(jié)點(diǎn)中取出數(shù)據(jù),即從根節(jié)點(diǎn)1、根節(jié)點(diǎn)2、根節(jié)點(diǎn)3對(duì)應(yīng)的數(shù)據(jù)塊中取一個(gè)或多個(gè)數(shù)據(jù),可以隨機(jī)抽取數(shù)據(jù)或是按照其它方式抽取數(shù)據(jù),每次加載請(qǐng)求時(shí),從各個(gè)數(shù)據(jù)塊抽取的數(shù)據(jù)個(gè)數(shù)可以相同也可以不同,本發(fā)明對(duì)此不作限定。
同樣的,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)”,可以包括:確定最近加載數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)層級(jí),將所確定的層級(jí)稱為當(dāng)前層級(jí);確定每一數(shù)據(jù)子集的所述當(dāng)前層級(jí)的下一層級(jí),并從所述下一層級(jí)中每一節(jié)點(diǎn)對(duì)應(yīng)的各個(gè)數(shù)據(jù)塊中,分別抽取至少一個(gè)未被展示的數(shù)據(jù)。具體的,由于每次加載數(shù)據(jù)時(shí),均加載每一數(shù)據(jù)子集中屬于同一層級(jí)的數(shù)據(jù),例如,當(dāng)加載并展示完屬于第1層節(jié)點(diǎn)(根節(jié)點(diǎn))的數(shù)據(jù)時(shí),如果又接收到用戶觸發(fā)的加載請(qǐng)求,則從第2層節(jié)點(diǎn)中取數(shù)據(jù),即從子節(jié)點(diǎn)11、子節(jié)點(diǎn)12、子節(jié)點(diǎn)13、子節(jié)點(diǎn)21、子節(jié)點(diǎn)22、子節(jié)點(diǎn)23、子節(jié)點(diǎn)31、子節(jié)點(diǎn)32、子節(jié)點(diǎn)33分別對(duì)應(yīng)的數(shù)據(jù)塊中取一個(gè)或多個(gè)數(shù)據(jù),可以隨機(jī)抽取數(shù)據(jù)或是按照其它方式抽取數(shù)據(jù),每次加載請(qǐng)求時(shí),從各個(gè)數(shù)據(jù)塊抽取的數(shù)據(jù)個(gè)數(shù)可以相同也可以不同,本發(fā)明對(duì)此不作限定。
需要說(shuō)明的是,目前傳統(tǒng)的視圖展示采樣方法,無(wú)法滿足小概率的數(shù)據(jù)集被合理采樣到,而上述方式解決了該技術(shù)問(wèn)題,即,對(duì)于上述第一種實(shí)施方式中滿足單高斯分布的目標(biāo)數(shù)據(jù)集、以及上述第二種實(shí)施方式中滿足混合高斯分布(存在多個(gè)單高斯分布)的目標(biāo)數(shù)據(jù)集,通過(guò)將單高斯分布圖中左右兩側(cè)的小概率數(shù)據(jù)集形成了一個(gè)或多個(gè)數(shù)據(jù)子集,通過(guò)對(duì)每一數(shù)據(jù)子集建立樹(shù)狀圖并從中抽取數(shù)據(jù),均可以抽取出小概率數(shù)據(jù)并被展示出來(lái),使得展示出的數(shù)據(jù)基本覆蓋了不同發(fā)生概率下的數(shù)據(jù)。
此外,步驟S102除了可以采用上述方式實(shí)現(xiàn)之外,還可以采用以下三種實(shí)施方式之一實(shí)現(xiàn)。
在第一種實(shí)施方式中,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)”可以包括:按照取模采樣方式,從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)。同樣的,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)”可以包括:按照取模采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)。
例如,假設(shè)目標(biāo)數(shù)據(jù)集的數(shù)據(jù)范圍為10~100,則計(jì)算100-10=90,并進(jìn)行取模運(yùn)算,即90%p=0,比如,p=5,則取模采樣結(jié)果為10+5n,其中,n=0、1、……。當(dāng)模數(shù)足夠大時(shí),可以將采樣數(shù)大幅減少,減少客戶端開(kāi)銷,實(shí)現(xiàn)順利出圖。
在第二種實(shí)施方式中,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)”可以包括:按照隨機(jī)采樣方式,從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)。同樣的,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)”可以包括:按照隨機(jī)采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)。
在第三種實(shí)施方式中,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)”可以包括:按照均勻采樣方式,從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù)。同樣的,在步驟S102中,即“從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)”可以包括:按照均勻采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù)。
需要說(shuō)明的是,對(duì)于上述三種采樣方式,小概率數(shù)據(jù)集可能取不到,而上述基于高斯分布的采樣方式,可以有效增加小概率數(shù)據(jù)集被采集到的概率,從而提高了數(shù)據(jù)展示的完整性。
進(jìn)一步地,在本發(fā)明的一個(gè)實(shí)施例中,還可以根據(jù)用戶需求,在已展示數(shù)據(jù)的基礎(chǔ)上增加展示用戶感興趣的未展示數(shù)據(jù),具體可以包括步驟C1-C3:
C1:確定最近加載的數(shù)據(jù)在所述樹(shù)狀結(jié)構(gòu)中所屬的目標(biāo)層級(jí)。
在本實(shí)施例中,需要確定最近加載數(shù)據(jù)所屬的層級(jí),例如,假設(shè)最近加載數(shù)據(jù)所屬層級(jí)為圖5所示樹(shù)狀結(jié)構(gòu)的第二層級(jí),該第二層級(jí)即為所述目標(biāo)層級(jí),其中,最近加載的數(shù)據(jù)即為:從子區(qū)間11、子區(qū)間12、子區(qū)間13、子區(qū)間21、子區(qū)間22、子區(qū)間23、子區(qū)間31、子區(qū)間32、子區(qū)間33(共9個(gè)子區(qū)間)各自對(duì)應(yīng)的數(shù)據(jù)塊中分別抽取的未展示數(shù)據(jù)。
C2:檢測(cè)用戶請(qǐng)求從局部數(shù)據(jù)塊中加載數(shù)據(jù)的操作,所述局部數(shù)據(jù)塊為所述目標(biāo)層級(jí)中的至少一個(gè)節(jié)點(diǎn)分別對(duì)應(yīng)的數(shù)據(jù)塊。
在本實(shí)施例中,用戶請(qǐng)求加載數(shù)據(jù)的操作可以是用戶輸入一個(gè)數(shù)值或一個(gè)數(shù)據(jù)區(qū)間?;谏鲜隼?,當(dāng)用戶輸入一個(gè)數(shù)值a時(shí),確定該數(shù)值a屬于上述9個(gè)子區(qū)間中的哪個(gè)子區(qū)間,確定出的子區(qū)間即為所述局部數(shù)據(jù)塊;當(dāng)用戶輸入一個(gè)數(shù)據(jù)區(qū)間[a、b]時(shí),確定數(shù)值a、b分別屬于上述9個(gè)子區(qū)間中的哪個(gè)子區(qū)間,a和b所屬的同一個(gè)子區(qū)間或所屬的不同的兩個(gè)子區(qū)間即為所述局部數(shù)據(jù)塊。
在本實(shí)施例中,用戶請(qǐng)求加載數(shù)據(jù)的操作,還可以是用戶利用鼠標(biāo)或是其它方式點(diǎn)擊數(shù)據(jù)圖表展示區(qū)域,當(dāng)檢測(cè)到這個(gè)點(diǎn)擊操作后,計(jì)算被點(diǎn)擊位置對(duì)應(yīng)的數(shù)據(jù)值c,然后確定該數(shù)值c屬于上述9個(gè)子區(qū)間中的哪個(gè)子區(qū)間,確定出的子區(qū)間即為所述局部數(shù)據(jù)塊。
需要說(shuō)明的是,關(guān)于步驟C1中的用戶請(qǐng)求操作的具體方式,本實(shí)施例不限于上述列舉方式。
C3:當(dāng)檢測(cè)到所述操作后,從所述局部數(shù)據(jù)塊中的每一數(shù)據(jù)塊中抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù)。
基于上述例子,假設(shè)所述局部數(shù)據(jù)塊包括子區(qū)間11和子區(qū)間12,則從子區(qū)間11和子區(qū)間12中分別抽取一個(gè)或多個(gè)未被展示的數(shù)據(jù),并在展示圖表中的已展示數(shù)據(jù)的基礎(chǔ)上,增加展示從所述局部數(shù)據(jù)塊中抽取的數(shù)據(jù)。
需要說(shuō)明的是,在從數(shù)據(jù)塊中抽取數(shù)據(jù)時(shí),可以隨機(jī)抽取數(shù)據(jù)或是按照其它方式抽取數(shù)據(jù),每次加載請(qǐng)求時(shí),從各個(gè)數(shù)據(jù)塊抽取的數(shù)據(jù)個(gè)數(shù)可以相同也可以不同,本實(shí)施例對(duì)此不做限制。
可見(jiàn),通過(guò)上述方式,可以根據(jù)用戶需求,在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上,增加展示特定數(shù)據(jù)段內(nèi)的數(shù)據(jù)。
參見(jiàn)圖6A所示的數(shù)據(jù)展示裝置的組成示意圖之一,該裝置可以是客戶端設(shè)備,所述裝置包括:
頁(yè)面判斷單元601,用于判斷當(dāng)前頁(yè)面是否展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù);
加載展示單元602,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù);如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),則從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
進(jìn)一步地,參見(jiàn)圖6B所示的數(shù)據(jù)展示裝置的組成示意圖之二,所述裝置還可以包括:
展示回退單元603,用于響應(yīng)于用戶請(qǐng)求撤銷加載的操作,展示當(dāng)前頁(yè)面的上一頁(yè)面,所述上一頁(yè)面為當(dāng)前頁(yè)面被更新之前的頁(yè)面。
進(jìn)一步地,所述裝置還可以包括:
集合劃分單元,用于將所述目標(biāo)數(shù)據(jù)集劃分為至少兩個(gè)數(shù)據(jù)子集;
樹(shù)狀構(gòu)建單元,用于采用樹(shù)狀結(jié)構(gòu)表示每一數(shù)據(jù)子集,其中,所述樹(shù)狀結(jié)構(gòu)的每一節(jié)點(diǎn)對(duì)應(yīng)一個(gè)數(shù)據(jù)塊、且每一節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊包含在自己父節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中;
則,在一些實(shí)施方式中,所述加載展示單元602可以包括:
第一展示子單元,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則從每一數(shù)據(jù)子集的根節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)塊中分別抽取至少一個(gè)數(shù)據(jù),并展示被抽取的數(shù)據(jù);
第二展示子單元,用于如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則確定最近加載數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)層級(jí),將所確定的層級(jí)稱為當(dāng)前層級(jí);確定每一數(shù)據(jù)子集的所述當(dāng)前層級(jí)的下一層級(jí),并從所述下一層級(jí)中每一節(jié)點(diǎn)對(duì)應(yīng)的各個(gè)數(shù)據(jù)塊中,分別抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
在一些實(shí)施方式中,所述集合劃分單元可以包括:
第一參數(shù)計(jì)算子單元,用于如果所述目標(biāo)數(shù)據(jù)集服從一高斯分布,則計(jì)算所述高斯分布的均值μ1和標(biāo)準(zhǔn)差σ1;
第一子集形成子單元,用于將數(shù)據(jù)區(qū)間[Min=μ1-3σ1,Max=μ1+3σ1]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
在一些實(shí)施方式中,所述集合劃分單元可以包括:
第二參數(shù)計(jì)算子單元,用于如果所述目標(biāo)數(shù)據(jù)集不服從一高斯分布,則根據(jù)所述目標(biāo)數(shù)據(jù)集構(gòu)建高斯混合模型,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2;
第二子集形成子單元,用于將每一單高斯模型對(duì)應(yīng)的數(shù)據(jù)區(qū)間[Min=μ2-3σ2,Max=μ2+3σ2]劃分成至少兩個(gè)子區(qū)間,使屬于每一子區(qū)間的數(shù)據(jù)形成一個(gè)數(shù)據(jù)子集。
在一些實(shí)施方式中,所述第二參數(shù)計(jì)算子單元,具體用于采用最大期望EM算法,得到形成所述高斯混合模型的每一單高斯模型的均值μ2和標(biāo)準(zhǔn)差σ2。
在一些實(shí)施方式中,所述裝置還可以包括:
目標(biāo)層級(jí)確定單元,用于確定最近加載的數(shù)據(jù)在所述樹(shù)狀結(jié)構(gòu)中所屬的目標(biāo)層級(jí);
請(qǐng)求操作檢測(cè)單元,用于檢測(cè)用戶請(qǐng)求從局部數(shù)據(jù)塊中加載數(shù)據(jù)的操作,所述局部數(shù)據(jù)塊為所述目標(biāo)層級(jí)中的至少一個(gè)節(jié)點(diǎn)分別對(duì)應(yīng)的數(shù)據(jù)塊;
局部數(shù)據(jù)抽取單元,用于當(dāng)檢測(cè)到所述操作后,從所述局部數(shù)據(jù)塊中的每一數(shù)據(jù)塊中抽取至少一個(gè)未被展示的數(shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù)。
在一些實(shí)施方式中,所述加載展示單元602可以包括:
第三展示子單元,用于如果當(dāng)前頁(yè)面未展示所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則按照預(yù)設(shè)采樣方式從所述目標(biāo)數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),并展示被抽取的數(shù)據(jù),其中,所述預(yù)設(shè)采樣方式為取模采樣方式、或隨機(jī)采樣方式、或均勻采樣方式;
第四展示子單元,用于如果當(dāng)前頁(yè)面展示了所述目標(biāo)數(shù)據(jù)集中的數(shù)據(jù),則按照所述預(yù)設(shè)采樣方式,從所述目標(biāo)數(shù)據(jù)集中未被展示的數(shù)據(jù)中抽取部分?jǐn)?shù)據(jù),并在當(dāng)前已展示數(shù)據(jù)的基礎(chǔ)上展示被抽取的數(shù)據(jù),得到更新后的頁(yè)面。
通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法中的全部或部分步驟可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者諸如媒體網(wǎng)關(guān)等網(wǎng)絡(luò)通信設(shè)備,等等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
需要說(shuō)明的是,本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。對(duì)于實(shí)施例公開(kāi)的裝置而言,由于其與實(shí)施例公開(kāi)的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法部分說(shuō)明即可。
還需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。