專利名稱:自動發(fā)現(xiàn)任務(wù)的上下文相關(guān)的項目的制作方法
自動發(fā)現(xiàn)任務(wù)的上下文相關(guān)的項目背景技術(shù)
用戶在工作時頻繁地切換上下文。這可能是由于中斷,以及需要撇開對于特定的任務(wù)的正在執(zhí)行的工作,以便切換到另一任務(wù)。在返回到原始任務(wù)時,用戶可能在回想他們處理的所有項(例如,文件、應(yīng)用程序、位置、人、通信等等)以便恢復(fù)原始任務(wù)時會遇到問題。
如果用戶嚴格地對特定工作上下文中涉及的每件事和每個人作記錄,則與上下文切換有關(guān)的問題可能被減輕。然而,創(chuàng)建特定工作上下文中所使用的所有項的完整的記錄可能就與執(zhí)行實際工作本身的工作量同樣多。另外,不能輕松地記錄某些項。例如,可能難以保存或引用電子郵件消息、即時消息談話、或諸如計算器之類的不產(chǎn)生文件的應(yīng)用程序。
在實踐中,用戶通常依賴于記憶回想,以重定位和重建工作上下文。然而,這會是耗時的且易于出錯的策略。用戶也可以依賴于接受用于定位相關(guān)網(wǎng)頁及其他項的關(guān)鍵字查詢的傳統(tǒng)的搜索引擎。利用搜索引擎,輸入特定短語或參數(shù),以便定位相關(guān)項。盡管搜索引擎產(chǎn)生結(jié)果,但是,引擎常常產(chǎn)生大量不相關(guān)的結(jié)果,因此,在回想與特定任務(wù)有關(guān)的特定組的項時,沒有幫助。
另外,關(guān)鍵字搜索結(jié)果只呈現(xiàn)包含相關(guān)項的項列表。即使從關(guān)鍵字搜索中獲取相關(guān)結(jié)果的目標列表,搜索也可能通常只檢索文檔,而不是應(yīng)用程序狀態(tài)。執(zhí)行搜索會是耗時的,幾乎不能保證可以重構(gòu)以前的工作上下文項的準確的列表。發(fā)明內(nèi)容
下面提供了簡明的概述,以便提供對此處所描述的一些新穎實施方式的基本理解。本發(fā)明內(nèi)容不是詳盡的概覽,并且它不旨在標識關(guān)鍵/重要元素或描繪本發(fā)明的范圍。 其唯一的目的是以簡化形式呈現(xiàn)一些概念,作為稍后呈現(xiàn)的更具體實施方式
的序言。
公開了用于標識與用戶在其中工作過的工作上下文有關(guān)的、諸如文檔及其他類型的信息人工制品的項,并在離開原始上下文之后能檢索(例如,手動,自動)項以有效地且高效地重新構(gòu)建工作上下文的體系結(jié)構(gòu)。
可以組合多個信息流,以自動推斷給定任務(wù)的上下文關(guān)系。例如,可以監(jiān)測和記錄諸如在文檔之間切換和復(fù)制/粘貼操作之類的用戶活動。對用戶活動執(zhí)行詞匯分析,還使用參考項(reference item)來推斷由用戶處理的項之間的關(guān)系?;趨⒖柬棧蛴脩舫尸F(xiàn)上下文相關(guān)的項,從而產(chǎn)生表示由用戶在前面處理的特定用戶任務(wù)的相關(guān)項目的結(jié)果,而并非從典型的基于關(guān)鍵字搜索中獲取的廣泛的、一般化的結(jié)果。
為了為實現(xiàn)上述及相關(guān)目的,本文結(jié)合下面的描述和附圖來描述某些說明性方面。這些方面指示了可以實施本文所公開的原理的各種方式,所有方面及其等效方面旨在落入所要求保護的主題的范圍內(nèi)。結(jié)合附圖閱讀下面的具體實施方式
,其他優(yōu)點和新穎特征將變得顯而易見。
圖1示出了根據(jù)所公開的體系結(jié)構(gòu)的計算機實現(xiàn)的上下文系統(tǒng)。
圖2示出了包括用于后臺監(jiān)測和分析的額外的實體的上下文系統(tǒng)的替換實施例。
圖3示出了與上下文系統(tǒng)一起使用的各類型的用戶交互。
圖4示出了包括用于后臺收集、查詢和存儲的額外的實體的上下文系統(tǒng)的替換實施例。
圖5示出了上下文系統(tǒng)的替換實施例。
圖6示出了與上下文系統(tǒng)一起使用的各類型的信息人工制品。
圖7示出了包括用于計分、加權(quán)和手動顯示的額外的實體的上下文系統(tǒng)的替換實施例。
圖8示出了根據(jù)所公開的體系結(jié)構(gòu)的用于推斷上下文關(guān)系的實現(xiàn)。
圖9示出了推斷上下文關(guān)系的方法。
圖10示出了推斷上下文關(guān)系的方法的額外的方面。
圖11示出了根據(jù)所公開的體系結(jié)構(gòu)的可用于提供上下文關(guān)系的推斷的計算系統(tǒng)的框圖。
具體實施方式
所公開的體系結(jié)構(gòu)允許當重新構(gòu)建特定工作上下文時自動恢復(fù)與該工作上下文相關(guān)聯(lián)的文檔和信息人工制品,以及恢復(fù)相關(guān)聯(lián)的文檔及其他信息人工制品。該體系結(jié)構(gòu)允許監(jiān)測和記錄與關(guān)于特定工作上下文的信息人工制品的用戶交互有關(guān)的活動信息。用戶可以選擇具有與工作上下文有關(guān)的詞(term)或其他類型的參考項的文檔??梢詫⒖柬椇蛯哂信c參考項有關(guān)的活動信息執(zhí)行(例如,詞匯的)分析以標識相似處?;趶姆治鰧?dǎo)出的相似處,從信息人工制品來推斷候選項(例如,相關(guān)的文檔)列表。向用戶呈現(xiàn)與工作上下文有關(guān)的候選項,然后,用戶可以選擇,例如,特定的項來重新構(gòu)建工作上下文。
現(xiàn)在將參考附圖,全部附圖中相同的參考編號用于表示相同的元件。在下面的描述中,為了進行說明,闡述了很多具體細節(jié)以便提供對本發(fā)明的全面理解。然而,顯而易見, 可以沒有這些具體細節(jié)的情況下實施各新穎實施方式。在其他情況下,以框圖形式示出了各個公知的結(jié)構(gòu)和設(shè)備以便于描述本發(fā)明。本發(fā)明將涵蓋落入所要求保護的主題的精神和范圍內(nèi)的所有修改、等效方案和替換方案。
圖1示出了根據(jù)所公開的體系結(jié)構(gòu)的計算機實現(xiàn)的上下文系統(tǒng)100。提供了監(jiān)測和記錄與和工作上下文108相關(guān)聯(lián)的項106的用戶交互有關(guān)的活動信息104的活動組件 102。項106可以是文檔或其他類型的信息人工制品,如下面所詳細描述的。分析組件110 對參考項112和與活動信息104相關(guān)聯(lián)的項106執(zhí)行(例如,詞匯的)分析。當重新構(gòu)建工作上下文108時,推斷組件114基于活動信息104和分析的結(jié)果118來推斷候選項116。
如此處所使用的,“上下文”可以是指由用戶所查看、讀取(例如,在各應(yīng)用程序之間或在應(yīng)用程序和數(shù)據(jù)之間的讀取)和/或創(chuàng)建的內(nèi)容,其中,內(nèi)容可以是基于文本的文檔和/或其他信息人工制品。上下文也可以是指與內(nèi)容相關(guān)聯(lián)的通信,如電子郵件或即時消息。另外,上下文還可以是指其中內(nèi)容被讀取或使用的一個或多個位置,其可包括網(wǎng)站、網(wǎng)絡(luò)或本地文件夾、協(xié)作站點等等。此外,上下文還可以是指涉及內(nèi)容的環(huán)境,如其中用戶正處理內(nèi)容或與內(nèi)容進行交互時的設(shè)置。環(huán)境可以是例如涉及某些參與者的會議中的個人桌面。上下文也可以是指與通信、位置以及環(huán)境等等相關(guān)聯(lián)的其他個人(例如,協(xié)作者和/或參與者)。
如圖1所示,分析組件110對參考項112執(zhí)行詞匯分析,參考項112可以是由用戶先前打開的文檔或其他類型的信息人工制品。然而,可以理解,可以代替詞匯分析或與詞匯分析相結(jié)合來使用其他類型的分析。比較活動信息104,以確定對項106的其他項共同的活動。共同的活動可以是例如,文檔之間的切換(導(dǎo)航)。如果對項106的子集共同的活動被記錄,則對該子集執(zhí)行詞匯分析,以確定項106和參考項112之間是否有詞匯的交叉。作為結(jié)果118,輸出這些詞匯的交叉。將結(jié)果118與活動信息104(例如,文檔之間的切換數(shù)量) 進行比較,以建議候選項116。
如圖1所示,和依賴于用戶輸入關(guān)鍵字以產(chǎn)生匹配關(guān)鍵字的結(jié)果的搜索引擎相反,上下文系統(tǒng)100是基于參考項112產(chǎn)生結(jié)果的。例如,用戶可以通過以當前打開的演示文檔開始,返回到計劃現(xiàn)場考察(site visit)的工作上下文。演示文檔是參考項112,并作為“查詢”而并非搜索中的關(guān)鍵字來起作用。上下文系統(tǒng)100通過標識用戶活動與對該活動的詞匯分析的交叉來產(chǎn)生候選項116。一方面,可以基于用戶活動來標識項106,然后,使用詞匯分析來區(qū)分項106,這會產(chǎn)生候選項116的非常準確的列表。
沒有詞匯匹配的純用戶活動的實例可以產(chǎn)生不相關(guān)的結(jié)果,如在對文檔進行處理時檢查不相關(guān)的電子郵件或在不相關(guān)的網(wǎng)頁上沖浪。沒有用戶活動的純詞匯匹配的實例可以產(chǎn)生碰巧共享相同字的不相關(guān)的項(例如,關(guān)于site visit(現(xiàn)場考察)以及 website (網(wǎng)站)或drop site (投票站點)的電子郵件中的“site (站點)”)。如此,具有詞匯匹配和活動匹配兩者的實例表示用戶正在試圖重建的給定工作上下文的高精度的結(jié)^ ο
圖2示出了包括用于后臺監(jiān)測和分析的額外的實體的上下文系統(tǒng)的替換實施例 200?;顒咏M件102可包括作為對用戶透明且沒有用戶交互的操作來監(jiān)測用戶活動的后臺組件202。以此方式,活動信息104可以在后臺獲取,而無需中斷用戶或需要任何用戶反饋。
如圖2所示,詞匯分析的結(jié)果118可包括處理在參考項112和候選項116中找到的共同的詞204。詞匯分析可以檢查與信息人工制品相關(guān)聯(lián)的內(nèi)容和元數(shù)據(jù),以基于參考項 112中的內(nèi)容的起始點,來將相關(guān)的內(nèi)容聚類到一起。共同的詞204可包括電子郵件中的共同的發(fā)件人和/或收件人,主題行中的共同的名詞短語,以及用戶如何組織內(nèi)容的指示,諸如,例如,文件夾、類別,以及標記。
共同的詞204也可以具體地包括內(nèi)容或元數(shù)據(jù)中發(fā)現(xiàn)的共同的名詞、名詞短語、 作者姓名以及參與者。名詞可以是從電子郵件主題行和文檔標題中作為詞性提取的,也可以是提取的內(nèi)容、位置/路徑、電子郵件發(fā)件人/收件人等等。在用戶介紹關(guān)于內(nèi)容的附加信息的級別的情況下,可以使用任何其他合適的方案。
圖3示出了可以與上下文系統(tǒng)一起使用的各類型的用戶交互300。用戶交互300 可包括程序或數(shù)據(jù)之間的切換操作302。切換操作302指出共同訪問的文檔,它可以指出暗示文檔之間的關(guān)系的模式和活動。切換操作302指出在當參考項112處于用戶的焦點上時的時間附近被用戶訪問的程序、數(shù)據(jù)、文檔和/或其他信息人工制品。切換操作302可以被用作用于確定與被用作參考項112的初始文檔或電子郵件的可能的關(guān)聯(lián)的起始點。
如圖3所示,用戶交互300也可以包括程序或數(shù)據(jù)之間的復(fù)制/粘貼操作304。其他用戶交互300可包括例如,將程序或數(shù)據(jù)插入到附件、電子郵件或其他類型的消息中的插入操作306。切換頻率測量308可以被用來測量文檔之間的切換的實例的數(shù)量,該數(shù)量可以被用來查明工作上下文108的共同的關(guān)系。時間戳操作310可以被用來確定在參考項 112附近的合適的時間段內(nèi)是否創(chuàng)建、編輯或保存了候選項116。設(shè)置書簽操作312可以被用來確定資源是否被記錄以供將來參考。鏈接操作314可以暗示共同的工作上下文108,因為鏈接操作提供文檔之間的訪問。將項作為副本保存在另一位置中的保存操作316可以被用來暗示共同的工作上下文108。在信息人工制品上花費的停留時間318(例如,總的活動時間)可以被用來暗示工作上下文108。例如,停留時間318可以是花費在處理草案上的總時間量,或花費在審閱草案的時間,并可以作為例如鍵盤和/或鼠標活動來測量。
如圖3所示,提供了這樣的示例切換操作302可以被分析組件110和推斷組件 114用作活動信息104,以確定共同訪問的文檔是否共享共同的上下文。在文檔之間的切換可以被記錄為指出以下內(nèi)容文檔在切換操作302中是源文檔還是目標文檔,在切換到目標文檔之前源文檔是否被關(guān)閉,目標是否被用戶置于焦點上(前臺)持續(xù)一預(yù)定的最小時間間隔(例如,小于3秒),目標是否在后臺被打開(例如,在沒有處于焦點中的Web瀏覽器選項卡中打開),源文檔是否是在目標文檔被打開之后從其切換的第一文檔,以及目標文檔是否是源文檔被關(guān)閉之前被切換到的最后一個文檔。另外,可以記錄用戶在特定文檔之間切換的次數(shù)。
如前所述的用戶交互300(以及其組合)可以由分析組件110以及推斷組件114 評估以在過濾不會指出(以比較高的概率)帶有共享的上下文的文檔的文檔共同訪問實例時尋找相關(guān)性。其他相關(guān)的元數(shù)據(jù)可以隨后被記錄,以在過濾結(jié)果時尋找相關(guān)性。
圖4示出了包括用于后臺收集、查詢和存儲的額外的實體的上下文系統(tǒng)的替換實施例400??梢蕴峁┯糜陲@式地查詢與參考項112有關(guān)的候選項116的查詢組件402。查詢組件402顯式地檢查參考項112,并查詢系統(tǒng)400中的相關(guān)項以推斷候選項116。參考項 112可以是由用戶所提供的包括線索作為起始點的選定的文檔。
可任選地,可以提供用于收集一組候選項116并隱式地查詢與參考項112有關(guān)的候選項116的集合的收集組件404。以此方式,收集組件404隱式地推斷參考項112,并自動將項收集到一起以向用戶呈現(xiàn),以標識相關(guān)項目而無需用戶預(yù)先提供線索。
如圖4所示,可以提供用于本地和/或遠程存儲活動信息104的存儲組件406。存儲組件406可以是用于本地存儲的任何合適的數(shù)據(jù)存儲系統(tǒng),如計算機內(nèi)置或外置硬盤驅(qū)動器、可寫入CD或DVD或諸如閃存驅(qū)動器之類的任何可移動存儲器組件。存儲組件406可以可另選地是用于遠程存儲的任何合適的數(shù)據(jù)存儲組件,如網(wǎng)絡(luò)服務(wù)器或驅(qū)動器、磁帶備份或現(xiàn)場以外的存儲設(shè)施。
一方面,上下文系統(tǒng)(例如,系統(tǒng)100,200,400)不存儲用戶內(nèi)容,而是存儲與用戶相關(guān)聯(lián)的活動信息104。例如,如果一個文檔被打開并且在文檔和電子郵件消息之間執(zhí)行了多個切換操作,該切換操作作為用時間戳來指代文檔和電子郵件的標識(ID)號被記錄到服務(wù)器。ID號不表示文檔內(nèi)容??梢允褂帽镜刈烂嫠阉魉饕蛯?yīng)的應(yīng)用程序編程接口(API)來解析ID號,以執(zhí)行詞匯分析。如此,上下文系統(tǒng)可以使用存儲在本地桌面搜索索引中的本地數(shù)據(jù)來對文檔執(zhí)行詞匯分析,并可以從服務(wù)器中獲取活動信息104。
圖5示出了上下文系統(tǒng)的替換實施例500?;顒咏M件102監(jiān)測和記錄與和工作上下文108中的信息人工制品502的用戶交互有關(guān)的活動信息104。如上文所描述的,信息人工制品502可以是文檔或其他類型的數(shù)據(jù),如下面所詳細描述的。參考人工制品504包括與工作上下文有關(guān)的參考項112中的一個或多個。分析組件110對活動信息104和參考項112執(zhí)行詞匯分析,以標識詞匯相似處506。推斷組件114基于詞匯相似處506來推斷從信息人工制品502中選擇的候選項116。提供了用于呈現(xiàn)與工作上下文108有關(guān)的候選項 116的呈現(xiàn)組件508。
圖6示出了可以與上下文系統(tǒng)一起使用的各類型的信息人工制品502。信息人工制品502可包括一種或多種類型的用戶可識別和可使用的數(shù)據(jù)實體600。數(shù)據(jù)實體600可包括與任何類型的應(yīng)用程序相關(guān)聯(lián)的文件602。數(shù)據(jù)實體600也可以包括諸如攜帶可以被訪問的信息的任何活動進程之類的數(shù)據(jù)流604。數(shù)據(jù)實體600還可以包括網(wǎng)頁606,該網(wǎng)頁 606包括可被web瀏覽器或其他合適的讀取器消費的數(shù)據(jù)對象。
數(shù)據(jù)實體600另外還可以是電子表格608、電子郵件消息610、IM談話612、日歷約會614、便簽616或包含在如前所述的類型的數(shù)據(jù)實體600中的任何一種中的嵌入式元數(shù)據(jù),或任何其他類型的信息人工制品502。嵌入式元數(shù)據(jù)618可以被包括在,例如,繪圖文檔中或其他非基于文本的文檔中??梢岳斫猓畔⑷斯ぶ破?02可包括任何類型或格式的文檔或其中用戶參與到創(chuàng)建或消費的其他數(shù)據(jù)結(jié)構(gòu)。
活動信息104可以跨不會產(chǎn)生信息人工制品502的應(yīng)用程序而擴展。如果活動信息104可以維持可以用于重新構(gòu)建工作上下文108的應(yīng)用程序狀態(tài),則它可以是有用的。例如,如果用戶正在使用電子表格并在電子表格和計算器應(yīng)用程序之間切換,則活動信息104 的切換可以對推斷工作上下文108有用。
圖7示出了包括用于計分、加權(quán)和手動顯示上下文信息的額外的實體的上下文系統(tǒng)的替換實施例700。呈現(xiàn)組件508可包括用于分層次地排序候選項116的分數(shù)分配702。 分數(shù)分配702允許候選項116基于諸如被分配用戶交互300或信息人工制品502中的特定一個的較高或較低的值之類的附加信息而被排序。
例如,分數(shù)分配702可以是基于詞頻和逆文檔頻率(TFIDF)的乘積的詞匯分數(shù)
TFIDF = Σ (詞頻*逆文檔頻率)
其中,對于每一個匹配名詞,
詞頻(歸一化)=文檔中的匹配名詞的出現(xiàn)次數(shù)/文檔中的名詞總數(shù),以及
逆文檔頻率=h(T/L)(即,(文檔的總數(shù)/包含該名詞的文檔數(shù)量)的自然對數(shù))。
在另一示例中,分數(shù)分配702可以是基于切換頻率和逆文檔頻率(SFIDF)的乘積的共同訪問分數(shù)
SFIDF =切換頻率*逆文檔頻率,
其中,
切換頻率(歸一化)=與參考文檔的切換數(shù)量/與文檔相關(guān)聯(lián)的切換的總數(shù)
逆文檔頻率=In(T/L)(即,(文檔的總數(shù)/帶有與參考文檔的至少一個切換的文檔數(shù)量)的自然對數(shù))。
另外,詞匯分數(shù)和共同訪問分數(shù)可以被合并成單個分數(shù)。較大數(shù)量的參考點可以指示相關(guān)匹配的較大的似然率。兩個重疊的交叉與單個交叉相比可以指示較大的相關(guān)性,兩個重疊交叉,如文檔和電子郵件兩者都具有與網(wǎng)頁的詞匯和活動交叉,提高了網(wǎng)頁的排名,因為有兩個對工作上下文的參考,而并非一個。
如圖7所示,加權(quán)組件704可以被用來分配指出至少一個預(yù)定的活動信息項的相關(guān)性的加權(quán)因數(shù)。加權(quán)組件704可以被用來向與特定文檔或活動的相關(guān)性分配較大的權(quán)重或較小的權(quán)重。加權(quán)可以與各類型的用戶交互300和信息人工制品502相關(guān)聯(lián),以便分配較大或較小的值。
在推斷工作上下文108時,可以給復(fù)制/粘貼操作304分配高值,因為內(nèi)容正在文檔之間被復(fù)制?;诨顒拥谋举|(zhì),作為附件向電子郵件中插入文檔或?qū)⒁粋€鏈接插入到文檔中可以被視為比在文檔之間切換更高度相關(guān)。另外,還可以基于切換之間的時間來考慮加權(quán),其中,例如,快速的一系列切換可暗示較小的相關(guān)性。
如圖7所示,提供了用于在用戶界面中手動顯示候選項116的可操作的菜單元件 706。菜單元件706可以是在用戶界面中位于文檔應(yīng)用程序中的特定位置處的按鈕??梢渣c擊按鈕,此后,向用戶呈現(xiàn)與文檔的工作上下文108相關(guān)聯(lián)的候選項116的集合。候選項 116可包括其他文檔、相關(guān)的電子郵件包含與文檔一起打開的相關(guān)詞的網(wǎng)頁等。菜單元件 706也可以是具有與同文檔有關(guān)的特定任務(wù)或項目相關(guān)聯(lián)的相關(guān)項的自動生成的列表的邊欄。可另選地,菜單元件也可以是桌面項,其中,一組文檔被視為參考項,而并非單個參考項 112。
圖8示出了根據(jù)所公開的體系結(jié)構(gòu)的用于推斷上下文關(guān)系的實現(xiàn)800。實現(xiàn)800 是描繪了正在被上下文系統(tǒng)記錄的五個項的示例性概念圖。參考項802表示用戶試圖恢復(fù)的工作上下文的一部分(例如,“site visit agenda(現(xiàn)場考察議程)”文檔)。有四個候選項可用。候選項1804是表示“plan(計劃)”的文檔,并具有此文檔和參考項之間的某一記錄的切換活動。然而,在候選項1 804和參考項802之間沒有詞匯相似處。
候選項2 806涉及“plan for site visit (現(xiàn)場考察的計劃)”并具有記錄的切換活動和與參考項的詞匯相似處(“site visit (現(xiàn)場考察)”)兩者。候選項3 808包括詞“visit this web site (訪問此網(wǎng)站)”,但是只有與參考項的詞匯相似處(“visit (訪問)”,“site (站點)”)。候選項4 810具有記錄的復(fù)制/粘貼活動和與參考項的詞匯相似處(“agenda(議程)”)。結(jié)果是,只有候選項2 806和候選項4 810被作為與參考項802 上下文相關(guān)的而被返回。
下面是示例性情況以演示此處所公開的上下文體系結(jié)構(gòu)的操作。用戶1,一個營銷團隊的成員,專注于一公司的平面廣告和web廣告。當接收到IM指示用戶1找出哪些外國雜志適合于做專業(yè)齒輪的廣告時,用戶1正在處理一項目。用戶1過去已經(jīng)瀏覽了關(guān)于此主題的某些網(wǎng)站,但是,沒有正式地調(diào)查此事。
用戶1為此任務(wù)創(chuàng)建新空間(例如,工作空間或文件夾),將接收到的IM添加到該空間中,定位包括與此任務(wù)有關(guān)的以前的研究的演示文檔并將其添加到該空間中。上下文系統(tǒng)自動將與已經(jīng)在空間中的內(nèi)容的創(chuàng)建或傳播有關(guān)的內(nèi)容添加到空間中,如用戶1從中復(fù)制和粘貼以創(chuàng)建演示文檔的源,以及所發(fā)送的包括相關(guān)內(nèi)容的電子郵件。上下文系統(tǒng)通過剖析(profiling)由用戶1查看和處理的信息人工制品,包括與信息人工制品有關(guān)的活動,來自動建議與空間中的內(nèi)容有關(guān)的信息人工制品,以幫助重新構(gòu)建工作上下文。建議可以基于已經(jīng)在空間中的內(nèi)容,匹配關(guān)鍵字、作者和協(xié)作者以及大約與空間中的內(nèi)容同時打開的其他信息人工制品。
此處所包括的是一組表示用于執(zhí)行所公開的體系結(jié)構(gòu)的新穎方面的示例性方法的流程圖。盡管出于解釋簡明的目的,此處例如以流程圖形式示出的一個或多個方法被示出并且描述為一系列動作,但是可以理解,各方法不受動作的次序的限制,因為根據(jù)本發(fā)明,某些動作可以按與此處所示并描述的不同的次序和/或與其他動作同時發(fā)生。例如,本領(lǐng)域的技術(shù)人員將明白并理解,方法可被替換地表示為一系列相互相關(guān)聯(lián)的狀態(tài)或事件, 諸如以狀態(tài)圖的形式。此外,并非方法中所示出的所有動作都是新穎實現(xiàn)所必需的。
圖9示出了推斷上下文關(guān)系的方法。在900,對于與和工作上下文中的信息人工制品的用戶交互有關(guān)的活動信息執(zhí)行監(jiān)測和記錄。在902,對活動信息和與工作上下文有關(guān)的參考項執(zhí)行詞匯分析,以標識詞匯相似處。在904,推斷候選項,其中,候選項是基于由分析所產(chǎn)生的活動信息和參考項之間的詞匯相似處來從信息人工制品中選出來的。在906,呈現(xiàn)與工作上下文有關(guān)的候選項。
圖10示出了圖9的推斷上下文關(guān)系的方法的額外的方面。在1000,通過處理候選項,來重新構(gòu)建工作上下文。在1002,從選定的候選項推斷相應(yīng)的相關(guān)聯(lián)的候選項,以獲取更準確的候選項的集合。以此方式,特定候選項可以變?yōu)槠渥约旱暮蜻x項集合的參考項,可以將后一集合與初始集合進行比較,以產(chǎn)生只超出從原始參考項推斷的候選項的擴展的候選項集合。
如圖10所示,在1004,根據(jù)活動信息和參考項之間詞匯相似處的頻率,分層次地排序候選項。在1006,根據(jù)信息人工制品和包含參考項的參考文檔之間的切換的頻率,分層次地排序候選項。在1008,作為后臺進程,自動監(jiān)測用戶交互。
如此處所公開的,上下文系統(tǒng)和方法通過使活動信息與同該活動信息有關(guān)的項的詞匯分析相交,來推斷由用戶處理的項之間的關(guān)系。上下文系統(tǒng)和方法通過查詢推斷的關(guān)系并由此產(chǎn)生高精度的結(jié)果,基于參考項,向用戶呈現(xiàn)上下文相關(guān)的項。上下文系統(tǒng)和方法組合兩個信息流(即,用戶活動和詞匯分析),以自動推斷與特定任務(wù)或工作上下文相關(guān)聯(lián)的上下文關(guān)系。上下文系統(tǒng)和方法提供對特定用戶活動(包括如上文所提及的文檔切換、 復(fù)制粘貼操作、插入附件或鏈接,和/或設(shè)置書簽)的監(jiān)測,從該監(jiān)測可以得出推斷。以此方式,上下文系統(tǒng)和方法產(chǎn)生表示特定用戶任務(wù)或工作上下文的相關(guān)項的高精度的結(jié)果。
代替簡單地提供一般基于關(guān)鍵字的搜索的結(jié)果,上下文系統(tǒng)和方法基于與用戶先前看見并處理的信息人工制品的交互,發(fā)現(xiàn)與給定工作上下文或任務(wù)有關(guān)的項。以此方式, 上下文系統(tǒng)和方法可以幫助用戶比以別的方式更快地返回到給定任務(wù)的相關(guān)內(nèi)容。上下文系統(tǒng)和方法可以幫助用戶展示可能原本已經(jīng)被忘記的與特定任務(wù)有關(guān)的內(nèi)容。如此,上下文系統(tǒng)和方法可以允許用戶看一眼便可直觀地感覺到候選項是否具有高價值。上下文系統(tǒng)和方法在與橫跨多個工作會話、相隔超過一兩天、以及多個應(yīng)用程序的工作上下文相關(guān)聯(lián)的任務(wù)中,以及在用戶沒有存檔或記錄看到或完成的作為任務(wù)的一部分的一切的情況下特別有用。
如在本申請中所使用的,術(shù)語“組件”和“系統(tǒng)”旨在表示計算機相關(guān)的實體,其可以是硬件、硬件和軟件的組合、軟件、或者執(zhí)行中的軟件。例如,組件可以是,但不僅限于,在處理器上運行的進程、處理器、硬盤驅(qū)動器、多個存儲驅(qū)動器(光學(xué),固態(tài)和/或磁存儲介質(zhì))、對象、可執(zhí)行程序、運行的線程、程序、和/或計算機。作為說明,在服務(wù)器上運行的應(yīng)用和該服務(wù)器兩者都可以是組件。一個或多個組件可以駐留在進程和/或執(zhí)行的線程內(nèi), 且組件可以位于一個計算機上和/或分布在兩個或更多的計算機之間。在此可使用詞語 “示例性”意指用作示例、實例或說明。本文中被描述為“示例性”的任何方面或設(shè)計不一定被解釋為優(yōu)選于或更優(yōu)于其他方面或設(shè)計。
現(xiàn)在參考圖11,所示是根據(jù)所公開的體系結(jié)構(gòu)的可用于執(zhí)行上下文關(guān)系的推斷的計算系統(tǒng)1100的框圖。為了提供用于其各方面的附加上下文,圖11及以下討論旨在提供對其中可實現(xiàn)各方面的合適的計算系統(tǒng)1100的簡要概括描述。盡管以上描述是在可在一個或多個計算機上運行的計算機可執(zhí)行指令的一般上下文中進行的,但是本領(lǐng)域的技術(shù)人員將認識到,新穎實施例也可結(jié)合其它程序模塊和/或作為硬件和軟件的組合來實現(xiàn)。
用于實現(xiàn)各方面的計算系統(tǒng)1100包括計算機1102,其具有處理單元1104、系統(tǒng)存儲器1106、以及系統(tǒng)總線1108。處理單元1104可以是各種市場上可買到的處理器中的任一種,諸如單處理器、多處理器、單核單元以及多核單元。此外,本領(lǐng)域的技術(shù)人員可以理解,各新穎方法可用其它計算機系統(tǒng)配置來實施,包括小型機、大型計算機、以及個人計算機(例如,臺式、膝上型等)、手持式計算設(shè)備、基于微處理器的或可編程的消費電子產(chǎn)品等,其每一個都可在操作上耦合到一個或多個相關(guān)聯(lián)的設(shè)備。
系統(tǒng)存儲器1106可包括易失性(VOL)存儲器1110 (例如,隨機存取存儲器(RAM)) 和非易失性存儲器(NON-VOL) 1112(如R0M、EPR0M、EEPR0M等)?;据斎?輸出系統(tǒng)(BIOS) 可被存儲在非易失性存儲器1112中,并且包括諸如在啟動期間便于在計算機1102內(nèi)的組件之間傳遞數(shù)據(jù)和信號的基本例程。易失性存儲器1110還可包括諸如靜態(tài)RAM等高速RAM 來用于高速緩存數(shù)據(jù)。
系統(tǒng)總線1108提供了用于包括,但不限于存儲器子系統(tǒng)1106的系統(tǒng)組件對處理單元1104的接口。系統(tǒng)總線1108可以是若干種總線結(jié)構(gòu)中的任一種,這些總線結(jié)構(gòu)還可使用各類可購買到的總線體系結(jié)構(gòu)中的任一種互連到存儲器總線(帶有或沒有存儲器控制器)以及外圍總線(例如,PCI、PCIe、AGP、LPC等)。
計算機1102還包括存儲子系統(tǒng)1114以及將存儲子系統(tǒng)1116接口到系統(tǒng)總線 1114和其他所需計算機組件的存儲接口 1108。存儲子系統(tǒng)1114可包括例如硬盤驅(qū)動器 (HDD)、磁軟盤驅(qū)動器(FDD)和/或光盤存儲驅(qū)動器(例如,⑶-ROM驅(qū)動器、DVD驅(qū)動器)中的一個或多個。存儲接口 1116可包括諸如,例如EIDE、ATA、SATA和IEEE 1394等接口技術(shù)。
—個或多個程序和數(shù)據(jù)可被存儲在存儲器子系統(tǒng)1106、可移動存儲器子系統(tǒng) 1118(例如,閃存驅(qū)動器形狀因子技術(shù))和/或存儲子系統(tǒng)1114(例如,光、磁、固態(tài))中,包括操作系統(tǒng)1120、一個或多個應(yīng)用程序1122、其他程序模塊IlM以及程序數(shù)據(jù)11沈。
一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、方法、數(shù)據(jù)結(jié)構(gòu)、其他軟件組件等等。操作系統(tǒng)1120、應(yīng)用1122、模塊IlM和/或數(shù)據(jù)11 的全部或部分也可被高速緩存在諸如易失性存儲器1110等存儲器中。應(yīng)該明白,所公開的體系結(jié)構(gòu)可以用各種市場上可購得的操作系統(tǒng)或操作系統(tǒng)的組合(例如,作為虛擬機)來實施。
如前所述的應(yīng)用程序1122、程序模塊IlM以及程序數(shù)據(jù)11 可包括圖1的計算機實現(xiàn)的系統(tǒng)100、活動組件102、活動信息104、項106、工作上下文108、分析組件110、參考項112、推斷組件114、候選項116以及結(jié)果118,圖2的系統(tǒng)200,該系統(tǒng)200包括進一步的額外的組件,如后臺組件202和共同的詞204,圖3的用戶交互300,包括切換操作302、復(fù)制粘貼操作304、插入操作306、切換頻率測量308、時間戳操作310、設(shè)置書簽操作312、鏈接操作314、保存操作316,以及停留時間318,圖4的系統(tǒng)400,該系統(tǒng)400包括進一步的額外的組件,如查詢組件402、收集組件404以及存儲組件406。
如前所述的應(yīng)用程序1122、程序模塊IlM以及程序數(shù)據(jù)11 還可以包括,例如, 系統(tǒng)500,該系統(tǒng)500包括額外的組件,如圖5的信息人工制品502、參考人工制品504、詞匯相似處506以及呈現(xiàn)組件508,圖6的用戶可識別和可使用的數(shù)據(jù)實體600、文件602、數(shù)據(jù)流604、網(wǎng)頁606、電子表格608、電子郵件消息610、即時消息談話612、日歷約會614、便簽 616以及嵌入式元數(shù)據(jù)618,圖7的系統(tǒng)700,該系統(tǒng)700包括進一步的額外的組件,如分數(shù)分配702、加權(quán)組件704以及可操作的菜單元件706,以及圖8的實現(xiàn)800,該實現(xiàn)800包括參考項802、候選項1 804、候選項2 806、候選項3 808以及候選項4 810,以及圖9_10的方法。
存儲子系統(tǒng)1114和存儲器子系統(tǒng)(1106和1118)用作用于數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)、計算機可執(zhí)行指令等的易失性和非易失性存儲的計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是可以被計算機1102訪問的任何可用的介質(zhì),并包括易失性和非易失性介質(zhì)、可移動的和不可移動的介質(zhì)。對于計算機1102,介質(zhì)容納以任何合適的數(shù)字格式對數(shù)據(jù)的存儲。本領(lǐng)域的技術(shù)人員應(yīng)當理解,可使用其他類型的計算機可讀介質(zhì),如zip驅(qū)動器、磁帶、閃存卡、磁帶盒等來存儲用于執(zhí)行所公開的體系結(jié)構(gòu)的新穎方法的計算機可執(zhí)行指令。
用戶可以使用諸如鍵盤和鼠標等外部用戶輸入設(shè)備11 來與計算機1102、程序和數(shù)據(jù)交互。其他外部用戶輸入設(shè)備11 可包括話筒、IR(紅外)遙控器、操縱桿、游戲手柄、照相機識別系統(tǒng)、指示筆、觸摸屏、姿勢系統(tǒng)(例如,眼移動、頭移動等)和/或類似物。 在計算機1102是例如便攜式計算機的情況下,用戶可以使用諸如觸摸墊、話筒、鍵盤等板載用戶輸入設(shè)備1130來與計算機1102、程序和數(shù)據(jù)交互。這些及其他輸入設(shè)備常常通過系統(tǒng)總線1104并通過輸入/輸出(I/O)設(shè)備接口 1132連接到處理單元1108,但是,也可以通過其他接口,如并行端口、IEEE 1394串行端口、游戲端口、USB端口、頂接口等等來進行連接。I/O設(shè)備接口 1132還便于使用輸出外圍設(shè)備1134,如打印機、音頻設(shè)備、照相機設(shè)備等,如聲卡和/或板載音頻處理能力。
一個或多個圖形接口 1136(通常也稱為圖形處理單元(GPU))提供計算機1102和外部顯示器1138(例如,LCD、等離子)和/或板載顯示器1140(例如,對于便攜式計算機) 之間的圖形和視頻信號。圖形接口 1136也可作為計算機系統(tǒng)板的一部分來制造。
計算機1102可以使用經(jīng)由有線/無線通信子系統(tǒng)1142到一個或多個網(wǎng)絡(luò)和/或其他計算機的邏輯連接在聯(lián)網(wǎng)環(huán)境(例如,基于IP的)中操作。其他計算機可包括工作站、 服務(wù)器、路由器、個人計算機、基于微處理器的娛樂設(shè)備、對等設(shè)備或其他常見的網(wǎng)絡(luò)節(jié)點, 并且通常包括以上相對于計算機1102描述的許多或所有元件。邏輯連接可包括到局域網(wǎng) (LAN)、廣域網(wǎng)(WAN)熱點等的有線/無線連接。LAN和WAN聯(lián)網(wǎng)環(huán)境常見于辦公室和公司, 并且方便了諸如內(nèi)聯(lián)網(wǎng)等企業(yè)范圍計算機網(wǎng)絡(luò),所有這些都可連接到例如因特網(wǎng)等全球通信網(wǎng)絡(luò)。
當在聯(lián)網(wǎng)環(huán)境中使用時,計算機1102經(jīng)由有線/無線通信子系統(tǒng)1142(例如,網(wǎng)絡(luò)接口適配器、板載收發(fā)機子系統(tǒng)等)連接到網(wǎng)絡(luò)來與有線/無線網(wǎng)絡(luò)、有線/無線打印機、有線/無線輸入設(shè)備1144等通信。計算機1102可包括用于通過網(wǎng)絡(luò)建立通信的調(diào)制解調(diào)器或其他裝置。在聯(lián)網(wǎng)環(huán)境中,相對于計算機1102的程序和數(shù)據(jù)可被存儲在遠程存儲器/存儲設(shè)備中,如與分布式系統(tǒng)相關(guān)聯(lián)。應(yīng)該理解,所示網(wǎng)絡(luò)連接是示例性的,并且可以使用在計算機之間建立通信鏈路的其他手段。
計算機1102可用于使用諸如IEEE802. xx標準家族等無線電技術(shù)來與有線/無線設(shè)備或?qū)嶓w通信,例如在操作上安置在與例如打印機、掃描儀、臺式和/或便攜式計算機、 個人數(shù)字助理(PDA)、通信衛(wèi)星、任何一件與無線可檢測標簽相關(guān)聯(lián)的設(shè)備或位置(例如, 電話亭、報亭、休息室)以及電話的無線通信(例如,IEEE802.il空中調(diào)制技術(shù))中的無線設(shè)備。這至少包括對于熱點的Wi-Fi (或無線保真)、WiMax,以及BluetoothTM無線技術(shù)。 由此,通信可以是如對于常規(guī)網(wǎng)絡(luò)那樣的預(yù)定義結(jié)構(gòu),或者僅僅是至少兩個設(shè)備之間的自組織(ad hoc)通信。Wi-Fi網(wǎng)絡(luò)使用稱為IEEE802. llx(a、b、g等)的無線電技術(shù)來提供安全、可靠、快速的無線連接。Wi-Fi網(wǎng)絡(luò)可用于將計算機彼此連接、連接到因特網(wǎng)以及連接到有線網(wǎng)絡(luò)(使用IEEE802. 3相關(guān)介質(zhì)和功能)。
所示各方面也可以在其中某些任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備來執(zhí)行的分布式計算環(huán)境中實踐。在分布式計算環(huán)境中,程序模塊可以位于本地和/或遠程存儲器和/或存儲設(shè)備中。
上面描述的包括所公開的體系結(jié)構(gòu)的各示例。當然,描述每一個可以想到的組件和/或方法的組合是不可能的,但本領(lǐng)域內(nèi)的普通技術(shù)人員應(yīng)該認識到,許多其他組合和排列都是可能的。因此,該新穎體系結(jié)構(gòu)旨在涵蓋所有這些落入所附權(quán)利要求書的精神和范圍內(nèi)的更改、修改和變化。此外,就在說明書或者權(quán)利要求書中使用的術(shù)語“包括”而言, 這一術(shù)語旨在以與術(shù)語“包括”在用作權(quán)利要求書中的過渡詞時所解釋的相似的方式是包含性的。
權(quán)利要求
1.一種計算機實現(xiàn)的上下文系統(tǒng)(100),包括監(jiān)測和記錄與和工作上下文相關(guān)聯(lián)的項的用戶交互有關(guān)的活動信息的活動組件 (102);對參考項和與所述活動信息相關(guān)聯(lián)的項執(zhí)行詞匯分析的分析組件(110);以及當重新構(gòu)建所述工作上下文時,基于所述活動信息和所述詞匯分析的結(jié)果來推斷候選項的推斷組件(114)。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述活動組件還包括作為無需用戶交互的后臺功能來監(jiān)測用戶活動的后臺組件。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述詞匯分析的結(jié)果包括在所述參考項和所述候選項中發(fā)現(xiàn)的共同的詞。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述用戶交互還包括以下各項操作中的至少一個程序或數(shù)據(jù)之間的切換操作、程序或數(shù)據(jù)之間的復(fù)制粘貼操作、將程序或數(shù)據(jù)插入到附件中的插入操作、切換頻率測量、時間戳操作、設(shè)置書簽操作、鏈接操作、將項作為副本保存在另一位置中的保存操作或停留時間。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于顯式地查詢與所述參考項有關(guān)的候選項的查詢組件。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于收集一候選項集合并隱式地查詢所述集合以尋找與所述參考項有關(guān)的候選項的收集組件。
7.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于本地或遠程中的至少一項地存儲所述活動信息的存儲組件。
8.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括包括與所述工作上下文有關(guān)的至少一個參考項的參考人工制品;以及用于呈現(xiàn)與所述工作上下文有關(guān)的候選項的呈現(xiàn)組件。
9.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于向至少一個預(yù)定的活動信息項的相關(guān)性分配加權(quán)因數(shù)的加權(quán)組件。
10.一種計算機實現(xiàn)的上下文方法,包括監(jiān)測和記錄與和工作上下文中的信息人工制品的用戶交互有關(guān)的活動信息(900);對所述活動信息和與所述工作上下文有關(guān)的參考項執(zhí)行詞匯分析,以標識詞匯相似處 (902);基于由所述分析所產(chǎn)生的所述活動信息和所述參考項之間的所述詞匯相似處,推斷從所述信息人工制品中選擇的候選項(904);以及呈現(xiàn)與所述工作上下文有關(guān)的候選項(906)。
11.如權(quán)利要求10所述的方法,其特征在于,還包括通過處理所述候選項來重新構(gòu)建所述工作上下文。
12.如權(quán)利要求10所述的方法,其特征在于,還包括從選定的候選項中推斷相應(yīng)的相關(guān)聯(lián)的候選項,以獲取更準確的候選項的集合。
13.如權(quán)利要求10所述的方法,其特征在于,還包括根據(jù)所述活動信息和所述參考項之間的詞匯相似處的頻率,分層次地排序所述候選項。
14.如權(quán)利要求10所述的方法,其特征在于,還包括根據(jù)所述信息人工制品和包含所述參考項的參考文檔之間的切換的頻率,分層次地排序所述候選項。
15.如權(quán)利要求10所述的方法,其特征在于,還包括作為后臺進程自動地監(jiān)測所述用戶交互。
全文摘要
用于使用戶能自動恢復(fù)與工作上下文相關(guān)聯(lián)的文檔及其他信息以及恢復(fù)與特定項目相關(guān)聯(lián)的文檔及其他信息人工制品的體系結(jié)構(gòu)。該體系結(jié)構(gòu)允許監(jiān)測和記錄與關(guān)于特定工作上下文的信息人工制品的用戶交互有關(guān)的活動信息。用戶可以選擇具有與工作上下文有關(guān)的工作內(nèi)容的一部分(例如,文檔中的詞或其他類型的參考項)的文檔。對活動信息和參考項執(zhí)行詞匯分析,以標識詞匯相似處?;谠~匯相似處,從信息人工制品中推斷候選項(例如,相關(guān)的文檔)列表。向用戶呈現(xiàn)與工作上下文有關(guān)的候選項,用戶可以選擇特定的項來重新建立工作上下文。
文檔編號G06F9/44GK102498464SQ201080041162
公開日2012年6月13日 申請日期2010年9月15日 優(yōu)先權(quán)日2009年9月16日
發(fā)明者G·佩朗塔托斯, J·S·瓦納, K·卡納瓦特 申請人:微軟公司