用以將命令顯現(xiàn)在生產(chǎn)力應(yīng)用用戶界面內(nèi)的個性化社區(qū)模型的制作方法
【專利說明】用從將命令顯現(xiàn)在生產(chǎn)力應(yīng)用用戶界面內(nèi)的個性化社區(qū)模 型 ww]背景
[0002] 生產(chǎn)力應(yīng)用在人的指尖提供了創(chuàng)建并修改內(nèi)容的重要能力。隨著運些程序擴展W 包括更多特征和功能,用戶可執(zhí)行的可用命令的數(shù)量增長。甚至某些最有見識的用戶也僅 可利用可用命令的一小部分。生產(chǎn)力應(yīng)用的用戶界面通常包括允許用戶訪問應(yīng)用的特征和 功能W執(zhí)行命令的菜單和工具欄。然而,找到用戶需要用來執(zhí)行特定任務(wù)的特征可能是有 挑戰(zhàn)的一且用戶可能沒意識到某些命令存在。用戶花費時間在各菜單中捜索命令不是不常 見的,運降低了生產(chǎn)力且增加了挫折感。 柳的]避述
[0004] 掲示了用于促進和支持將預(yù)測的命令顯現(xiàn)到所顯示的用戶界面上的技術(shù)。根據(jù)某 些實施例,基于個性化社區(qū)模型的用戶模型被使用來支持命令的預(yù)測。
[0005] 還掲示了可執(zhí)行所描述的技術(shù)使得生產(chǎn)力應(yīng)用的用戶界面可在用戶需要命令時 顯現(xiàn)用戶可能想要使用的命令的系統(tǒng)。為了將促進預(yù)測的命令顯現(xiàn)到所顯示的用戶界面 上,提供預(yù)測引擎。
[0006] 預(yù)測引擎監(jiān)視活躍用戶的當(dāng)前動作并選擇用戶接下來可能想要的一個或多個最 可能的命令。預(yù)測引擎可通過將聚集的用戶數(shù)據(jù)與活躍用戶的歷史和/或上下文合成來生 成個性化社區(qū)模型。接著,基于活躍用戶的當(dāng)前動作(或無動作),預(yù)測引擎選擇可能的接 下來的動作??商峁┲眯哦乳熤祦泶龠M哪些命令被顯示。在一個實施例中,置信度可W是 多個命令的置信度值的和。
[0007] 提供該概述W便W簡化形式介紹概念的選集,所述概念在W下詳細描述中被進一 步描述。本概述并不旨在標(biāo)識所要求保護主題的關(guān)鍵特征或必要特征,也不旨在用于限制 所要求保護主題的范圍。
[0008] 附圖簡沐
[0009] 圖1示出了其中可實現(xiàn)發(fā)明的各實施例的示例操作環(huán)境。
[0010] 圖2示出了根據(jù)本發(fā)明的一實施例的用于在用戶界面內(nèi)顯現(xiàn)命令的系統(tǒng)的圖示。
[0011] 圖3A和3B示出了可由本發(fā)明的各實施例實現(xiàn)的示例場景。
[0012] 圖4是示出了根據(jù)本發(fā)明的一個實施例的用于將命令顯現(xiàn)在生產(chǎn)力應(yīng)用的用戶 界面內(nèi)的方法的過程流程圖。
[0013] 圖5示出了根據(jù)本發(fā)明的一個實施例的其中預(yù)測的命令被顯現(xiàn)的用戶界面。
[0014] 圖6示出了根據(jù)本發(fā)明的一個實施例的其中預(yù)測的命令被顯現(xiàn)的示例過程。
[0015] 圖7是可在其上實現(xiàn)發(fā)明的各實施例的用戶設(shè)備的說明性體系結(jié)構(gòu)。
[0016] 圖8示出了解說在一些實施例中使用的計算設(shè)備的各組件的框圖。
[0017] 詳細描沐
[0018] 描述了W用戶模型結(jié)合個性化社區(qū)模型支持生產(chǎn)力應(yīng)用的用戶界面的系統(tǒng)和技 術(shù),被設(shè)計來顯現(xiàn)用戶在他們需要時可能想要使用的命令。
[0019] 生產(chǎn)力應(yīng)用包括用于創(chuàng)建并編輯文檔、演示、電子表格、數(shù)據(jù)庫、圖表和圖形、圖 像、視頻、音頻等的創(chuàng)作工具。運些應(yīng)用可w采取字處理軟件、電子表格軟件、個人信息管 理(PIM)和電子郵件通信軟件、演示程序、記筆記/故事講述軟件、圖和流程圖繪制軟件等 的形式。生產(chǎn)力應(yīng)用的各示例可包括來自微軟公司的MICROSOFTOFFICE應(yīng)用套件,諸如 MICROSOFTW0畑、MICROSOFTEXCELMICROSOFT0NEN0TE均注冊了微軟公司商標(biāo)。生產(chǎn)力 應(yīng)用還可包括計算機輔助設(shè)計(CAD)應(yīng)用。
[0020] 在生產(chǎn)力應(yīng)用內(nèi),命令通常是指執(zhí)行與生產(chǎn)力應(yīng)用中可用的特征相關(guān)的特定任務(wù) 的指示,并且通過用戶點擊圖標(biāo)或代表特定特征的符號或通過(經(jīng)由觸摸或聲音)執(zhí)行某 個其它動作來選擇該命令來應(yīng)用。生產(chǎn)力應(yīng)用內(nèi)的命令的示例包括,但不限于,復(fù)制、粘貼、 加下劃線、剪切、高亮、增大/減小字體大小、填充、插入、和分類。
[0021] 在生產(chǎn)力應(yīng)用的用戶界面扣I)中可能有各種各樣的命令。在某些情況中上千命 令可能是可用的。那些命令中的許多已經(jīng)被設(shè)計來增加用戶生產(chǎn)力并幫助用戶完成各種任 務(wù);然而,尋找特定命令和/或知曉UI中提供的命令何時可為用戶的利益而被使用可能是 有挑戰(zhàn)的。
[0022] 根據(jù)某些實施例,構(gòu)建在社區(qū)模型上的個性化用戶模型被提供用于動態(tài)地將命令 顯現(xiàn)在生產(chǎn)力應(yīng)用內(nèi)。
[0023] 圖1示出了其中可實現(xiàn)發(fā)明的各實施例的示例操作環(huán)境。參考圖1,用戶105可與 運行應(yīng)用112 (諸如生產(chǎn)力應(yīng)用)的用戶計算設(shè)備110通過顯示在與計算設(shè)備110相關(guān)聯(lián) 的顯示器116上的UI114進行交互。
[0024] 計算設(shè)備(例如,用戶計算設(shè)備110)被配置來通過例如鍵盤、鼠標(biāo)、觸控板、觸摸 板、觸摸屏、麥克風(fēng)或其它輸入設(shè)備接收來自用戶(例如用戶105)的輸入。用戶計算設(shè)備 110的顯示器116被配置來向用戶105顯示一個或多個用戶界面(包括UI114)。在一些實 施例中,顯示器116可W包括觸摸屏,使得用戶計算設(shè)備110可通過顯示器接收用戶輸入。 [00巧]UI114允許用戶與各個應(yīng)用(諸如運行在用戶計算設(shè)備110上或通過用戶計算設(shè) 備110顯示的生產(chǎn)力應(yīng)用)進行交互。例如,UI114可W包括上下文菜單、菜單欄內(nèi)的菜 單、選自條帶用戶界面的菜單項、圖形菜單等等的使用。菜單可傳統(tǒng)條型或W帶狀條型 或作為調(diào)色板或命令的其它呈現(xiàn)。一般而言,UI114運樣配置,使得用戶可W容易地與應(yīng) 用的功能交互。例如,用戶可簡單地(通過例如,觸摸、點擊、手勢或聲音)選擇UI114內(nèi) 的選項W執(zhí)行諸如格式化正在應(yīng)用112中創(chuàng)作或編輯的內(nèi)容的操作。 陽0%] 用戶105可通過UI114執(zhí)行大量命令W便執(zhí)行與應(yīng)用112中可用的特征相關(guān)的 特定任務(wù)。在某些情況中,用戶105可能具有運行類似程序的多個設(shè)備,且用戶105可跨多 個用戶計算設(shè)備(諸如第二設(shè)備118-1和/或第Ξ設(shè)備118-2)編輯相同或不同文檔(或 其它內(nèi)容)。
[0027]用戶計算設(shè)備110 (W及第二設(shè)備118-1和第Ξ設(shè)備118-2)可操作在網(wǎng)絡(luò)120上 或與網(wǎng)絡(luò)120進行通信,并且可W通過網(wǎng)絡(luò)120與一個或多個服務(wù)器130進行通信。
[002引網(wǎng)絡(luò)120可W是但不限于蜂窩網(wǎng)絡(luò)(例如無線電話)、點對點撥號連接、衛(wèi)星網(wǎng)絡(luò)、 因特網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、WiFi網(wǎng)絡(luò)、自組織網(wǎng)絡(luò)或其組合。運樣的網(wǎng)絡(luò)可被 廣泛地應(yīng)用來連接各種類型的網(wǎng)絡(luò)元素,諸如集線器、橋接器、路由器、交換機,服務(wù)器和網(wǎng) 關(guān)。網(wǎng)絡(luò)120可包括一個或多個連接的網(wǎng)絡(luò)(例如,多網(wǎng)絡(luò)環(huán)境),包括諸如因特網(wǎng)之類的 公共網(wǎng)絡(luò),和/或諸如安全企業(yè)專用網(wǎng)絡(luò)之類的專用網(wǎng)絡(luò)。可W通過一個或多個有線或無 線接入網(wǎng)絡(luò)來提供對網(wǎng)絡(luò)120的接入,如本領(lǐng)域的技術(shù)人員將理解的。
[0029]本領(lǐng)域技術(shù)人員還將理解,通信網(wǎng)絡(luò)可采取各種不同形式并可使用幾種不同通信 協(xié)議。本發(fā)明的特定實施例可在任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備執(zhí)行的分布式計 算環(huán)境中實施。在分布式計算環(huán)境中,程序模塊可W位于本地和遠程計算機可讀存儲介質(zhì) 中。
[0030] 用戶計算設(shè)備110可W是,但不限于個人計算機(例如臺式計算機)、膝上型計算 機、個人數(shù)字助理(PDA)、視頻游戲設(shè)備、移動電話(或智能電話)、圖形輸入板、平板、終端 等等。明顯,用戶計算設(shè)備110可W是向其用戶提供加載并執(zhí)行軟件程序的能力及訪問諸 如網(wǎng)絡(luò)120的網(wǎng)絡(luò)的能力的任何類型的計算機系統(tǒng)。第二設(shè)備118-1和第Ξ設(shè)備118-2可 包括與用戶計算設(shè)備110相同類型的設(shè)備(或系統(tǒng))并且它們可W是或可W不是同一形 式。例如,用戶105可具有膝上電腦、平板電腦、化及智能電話,作為Ξ個設(shè)備。
[0031] 應(yīng)用112可被存儲在用戶計算設(shè)備110 (例如客戶端側(cè)應(yīng)用)上。在另一個實施 例中,用戶105可使用web瀏覽器(例如標(biāo)準因特網(wǎng)瀏覽器)訪問基于web的應(yīng)用132(例 如,在服務(wù)器130上運行的或主存在云上),且應(yīng)用的界面可在web瀏覽器內(nèi)向用戶105顯 示。因此,應(yīng)用可W是客戶端側(cè)的應(yīng)用和/或非客戶端側(cè)(基于web)的應(yīng)用。
[0032]根據(jù)本發(fā)明的某些實施例,當(dāng)用戶正在執(zhí)行UI114中的命令時,可為每個會話存 儲使用日志。例如,當(dāng)用戶執(zhí)行生產(chǎn)力應(yīng)用中的命令時,命令可被記入日志??稍谟脩粲嬎?設(shè)備110本地地和/或在與服務(wù)器(諸如服務(wù)器130)或云服務(wù)相關(guān)聯(lián)的數(shù)據(jù)庫140處執(zhí) 行命令的日志記錄。通過命令的日志記錄,用戶在使用生產(chǎn)力應(yīng)用時已經(jīng)進行過的過去動 作的記錄可被存儲??蓪?跒橛脩?05存儲命令使用。例如,命令日志可被創(chuàng)建為特定用 戶的使用歷史。
[0033]在用戶許可下,命令使用還可被存儲在社區(qū)日志中。社區(qū)日志可包含與用戶的社 區(qū)的命令使用相關(guān)的信息的聚集。例如,來自其它計算設(shè)備(諸如第二用戶計算設(shè)備150和 第Ξ用戶計算設(shè)備152)的用戶的使用信息可通過網(wǎng)絡(luò)120被傳遞并存儲在數(shù)據(jù)庫140中。 社區(qū)日志可被服務(wù)器或與應(yīng)用相關(guān)聯(lián)的服務(wù)來管理。
[0034] 根據(jù)各實施例,可被系統(tǒng)(或者作為本地存儲/存儲器的一部分或者與服務(wù)器或 云服務(wù)相關(guān)聯(lián)的數(shù)據(jù)庫)存儲在例如社區(qū)日志中的信息包括,但不限于,包括用戶的計算 設(shè)備(例如,用戶計算設(shè)備110)的硬件、操作系統(tǒng)(0巧、和軟件的配置信息;包括響應(yīng)時間 和連接速度的性能和可靠性信息;W及諸如執(zhí)行的命令的程序使用信息。個人數(shù)據(jù)一除非 主動提供或授權(quán)一不被收集用于社區(qū)日志,并且由系統(tǒng)存儲的供不同于該活躍用戶的其它 任何人使用的任何數(shù)據(jù)可W是匿名的?;钴S用戶指預(yù)測的命令要為其定制并向其顯示的用 戶。
[0035]在一個實施例中,用戶專用命令日志可按命令被使用的次序來存儲。在許多實施 例中,命令日志存儲命令被使用的時間。例如,代碼和/或命令名可被存儲W表示被使用的 命令連同指示命令何時被使用的時戳。時戳可被用來確定從命令被執(zhí)行到現(xiàn)在的時間量, 并促進在顯現(xiàn)預(yù)測命令中使用的其它時間計算。在某些實施例中,命令日志可存儲包含用 戶標(biāo)識符(id)、命令id(或名稱),和時戳的元組。其它數(shù)據(jù)也可被存儲。
[0036] 表1示出了來自單個用戶會話(一個用戶1234567在會話1111111111期間)的 十個排序的命令的示例蹤跡。 |;0〇37]表 1
[0038]
[OOW] 用戶專用命^日志或社區(qū)日志可包括表1φ提供的信息。'在此示例中,用戶可能 已經(jīng)執(zhí)行了命令粘貼接著是Ξ個格式化字體命令,接著高亮、剪切、粘貼、兩個插入圖像