在自動模型產生期間檢測和創(chuàng)建合適行概念的方法和系統(tǒng)的制作方法
【專利摘要】一種將概念分配到這些組的值的系統(tǒng)和方法。接收數(shù)據,其中所述數(shù)據被組織作為多個命名字段以及作為與所述命名字段相關聯(lián)的兩組或更多組的值,其中每個命名字段被分配給一類別。對于每個類別,確定是否存在用于該類別的至少一個標識符字段,其中每個標識符字段是用作該類別的標識符的命名字段,并且對于在每個組的值的該類別的標識符字段中具有唯一值的每個類別,標識這些標識符字段,如果有的話。然后選擇類別中的一個作為表示各組的值的概念。在一些實施例中,該數(shù)據被組織作為表,其中這些命名字段是列,并且這些組的值是行。
【專利說明】
在自動模型產生期間檢測和創(chuàng)建合適行概念的方法和系統(tǒng)
技術領域
[0001] 本發(fā)明涉及自然語言分析,并且更具體地涉及在數(shù)據組中的數(shù)據的分類。
【背景技術】
[0002] 將表格式的數(shù)據準確地轉換為有用的查詢模型可能是困難的。通常,需要對數(shù)據 的專業(yè)建模,并且轉換所需要的分析工具通常需要在商務用戶之中的不太普遍的培訓和專 業(yè)性。
[0003] 當然,創(chuàng)建這樣的工具存在許多挑戰(zhàn)。如果自動建模不反映其表示的數(shù)據或知識, 則其可能產生的查詢未必有用于回答用戶的問題。如果用戶的問題不能夠被系統(tǒng)解析和理 解,則系統(tǒng)不能夠準確地產生查詢以回答他們的問題。在過去的50年中,準確的自然語言解 析已經成為計算機科學的分支,并且其仍被認為是在初級發(fā)展階段。
[0004]在傳統(tǒng)的分析系統(tǒng)中,存在建模階段,其中有經驗的建模者通常將通過增加得到 的屬性,來具體地將各行(如果它們在數(shù)據中有意義)暴露為模型中的元素。但是這通過理 解他們正在建模的數(shù)據的人來實現(xiàn),并且花費時間。類似Watson分析的系統(tǒng)具體地去掉建 模步驟,或者至少使其為可選的,以改進用于用戶的時間-價值比(time to value)。
[0005] 其它系統(tǒng)通過具體地去掉建模步驟,或者至少使其為可選的,來對建模和自然語 言挑戰(zhàn)兩者采取更加務實的方法,以便于改善用戶的時間-價值比。在一些這樣的系統(tǒng)之 下,自然語言分析包括將字與模型中的元素、或分析類型匹配,并且忽略語句中的其它字。 建模也是非常輕型的,產生匹配用戶的原始數(shù)據的單個表(通常在列式的數(shù)據庫中),但是 有額外的元數(shù)據描述系統(tǒng)認為各個列表示什么。這對于每一列來實現(xiàn),由于各列包含在分 類系統(tǒng)中的方便查找的標記,以及通常表示列的概念的一組數(shù)據值。如此,列自身變?yōu)榭梢?匹配到用戶的問題以便于產生答案的查詢元素。
【發(fā)明內容】
[0006] 根據本發(fā)明的實施例,一種方法包括接收數(shù)據,其中所述數(shù)據被組織作為多個命 名字段以及作為與所述命名字段相關聯(lián)的兩組或更多組的值,其中每個命名字段被分配給 一類別;對于每個類別確定是否存在用于該類別的至少一個標識符字段,其中每個標識符 字段是用作該類別的標識符的命名字段;對于每個類別標識用于所述類別的標識符字段, 如果有的話,所述標識符字段在每組的值的所述類別的標識符字段中具有唯一值;以及選 擇所述類別中的一個作為表示各組的值的概念。在一些實施例中,所述數(shù)據被組織作為表, 其中所述命名字段是列,并且所述組的值是行。該方法的優(yōu)點在于對行或其它這樣的組的 值的分類可以由系統(tǒng)自動地完成,并且不需要建模者或其它終端用戶的干預,從而為用戶 產生更好的零建模體驗。
[0007] 根據本發(fā)明的一個實施例,描述了一種用于商務智能(BI)的比較對等(peer)分析 的計算機程序產品。計算機程序產品包括具有通過其實現(xiàn)的程序代碼的計算機可讀貯存介 質,所述程序代碼可由至少一個處理裝置執(zhí)行以接收數(shù)據,其中所述數(shù)據被組織作為多個 命名字段以及作為與所述命名字段相關聯(lián)的兩組或更多組的值,其中每個命名字段被分配 給一類別,對于每個類別確定是否存在用于該類別的至少一個標識符字段,其中每個標識 符字段是用作該類別的標識符的命名字段,對于每個類別標識用于所述類別的標識符字 段,如果有的話,所述標識符字段在每組的值的所述類別的標識符字段中具有唯一值,并且 選擇所述類別中的一個作為表示各組的值的概念。在一些實施例中,選擇包括:選擇類別, 所述類別包括在每個組的值的該類別的所述標識符字段中具有唯一值的標識符字段。如上 所述,該方法的優(yōu)點在于對行或其它這樣的組的值的分類可以由系統(tǒng)自動地完成,并且不 需要建模者或其它終端用戶的干預,從而為用戶產生更好的零建模體驗。
[0008] 根據本發(fā)明的另一方面,描述了一種系統(tǒng),所述系統(tǒng)包括網絡、商務智能系統(tǒng)和通 過網絡連接到商務智能系統(tǒng)的一個或多個計算裝置。商務智能系統(tǒng)接收數(shù)據,其中所述數(shù) 據被組織作為多個命名字段以及作為與所述命名字段相關聯(lián)的兩組或更多組的值,其中每 個命名字段被分配給一類別。商務智能系統(tǒng)包括數(shù)據組分析工具,其中所述數(shù)據組分析工 具接收所述數(shù)據,對于每個類別確定是否存在用于該類別的至少一個標識符字段,其中每 個標識符字段是用作該類別的標識符的命名字段,對于每個類別標識用于所述類別的標識 符字段,如果有的話,所述標識符字段在每組的值的所述類別的標識符字段中具有唯一值, 并且選擇所述類別中的一個作為表示各組的值的概念。該方法的優(yōu)點在于所述系統(tǒng)可以自 動地分類行或其它這樣的組的值,并且不需要建模者或其它終端用戶的干預,從而為用戶 產生更好的零建模體驗。
[0009] 根據本發(fā)明的又一方面,數(shù)據被組織作為表,其中所述命名字段是列,并且所述組 的值是行,并且選擇包括:選擇類別,所述類別包括在每個組的值的該類別的所述標識符字 段中具有唯一值的標識符字段。該方法是有益的,因為其允許以表格式的數(shù)據使用本發(fā)明 的一方面。
[0010] 在本發(fā)明的另一方面中,選擇包括:選擇兩個或更多字段,所述兩個或更多字段當 被組合時、在每個組的值的所述兩個或更多字段上具有唯一值。該方法是有益的因為其允 許使用本發(fā)明的一方面以基于命名的列的組合來標識行概念。
[0011] 在另一方面中,選擇包括:選擇兩個或更多類別,其中所述類別包括在每個組的值 的每個類別的標識符字段中具有唯一值的標識符字段,分組所選擇的類別,并且將所分組 的類別用作表示各組的值的概念。該方法是有益的因為其允許使用本發(fā)明的一方面以實現(xiàn) 更具代表性的概念與所述組的值相關聯(lián)。
【附圖說明】
[0012]圖1是示例企業(yè)商務智能系統(tǒng);
[0013 ]圖2是在圖1的系統(tǒng)中標識行概念的示例方法;
[0014]圖3A和3B是示例數(shù)據組;
[0015] 圖4是標識在圖1的系統(tǒng)中的行概念的另一示例方法;
[0016] 圖5是另一示例數(shù)據組;以及 [0017]圖6示出了示例計算系統(tǒng)。
【具體實施方式】
[0018] 如上所述,到目前為止的系統(tǒng)具有有限的能力來將表轉化為能夠被用于回應查詢 的形式。取代從客戶的數(shù)據產生多個表的數(shù)據貯存,而是產生匹配用戶的原始數(shù)據的單個 表(通常在列式的數(shù)據庫中),但是有額外的元數(shù)據描述系統(tǒng)認為各個列表示什么。
[0019] 在一些實施例中,這對每一列來實現(xiàn),由于所述列包含在分類系統(tǒng)中方便查找的 標記、以及通常表示列的概念的一組數(shù)據值。如此,列自身變?yōu)榭梢云ヅ涞接脩舻膯栴}以便 于產生答案的查詢元素。
[0020] 可惜,列不是數(shù)據組中具有意義的唯一元素。而是,列通常表示某物的屬性(諸如 年齡、性別或工資),行表示該物的實例(諸如人1或人2)。盡管人類通常直觀地理解該行對 于給定數(shù)據組表示什么,但是軟件系統(tǒng)難以將其分類并且將其暴露為查詢元素。這部分上 是因為所述行不包含可以在分類工具中查找的任何標記或標識符。此外,行表示描述所述 實例的(對每一列的)值的集合,但是在行中的每個值通常是完全不同的類型。如此,由于系 統(tǒng)不能準確地分類它們,所以行不被分類為自動產生的模型中的可查詢的元素的部分。如 果用戶確實需要它們,他們必須通過增加行標識符作為單獨的列來編輯原始數(shù)據組,然后 重新導入數(shù)據組,這導致較不理想的體驗。
[0021] 圖1示出了企業(yè)商務智能系統(tǒng)14的一個示例實施例,該企業(yè)商務智能系統(tǒng)14接收 表格式的數(shù)據并且確定表示表格式的數(shù)據的行的概念。在一個這樣的實施例中,表格式的 數(shù)據被表達為具有行和列的表,其中列定義表中的數(shù)據,并且行表示特定的數(shù)據項的記錄。 在一個這樣的實施例中,所述列已經被分配給類別。
[0022] 在傳統(tǒng)的分析系統(tǒng)中,存在建模階段,其中有經驗的建模者通常將通過增加導出 的(derived)屬性來具體地將所述行(如果它們在數(shù)據中有意義)暴露為模型中的元素。但 是,這通過理解他們正在建模的數(shù)據的人來實現(xiàn)。該建模步驟花費時間。類似圖1中示出的 系統(tǒng)的系統(tǒng)14去掉建模步驟,或者至少使其為可選的,以改進用于用戶的時間-價值比。
[0023] 在一個實施例中,系統(tǒng)14接收表格式的數(shù)據,并且標識唯一地標識的類別。唯一地 標識的類別包括唯一地標識該類別的一個或多個屬性。然后,系統(tǒng)14消除對類別中的每一 行不具有唯一值的任何唯一地標識的類別,并且選擇剩余的唯一地標識的類別中的一個作 為表示所述行的概念。
[0024] 在一個示例實施例中,分析由系統(tǒng)14接收的表格式的數(shù)據,并且在瀏覽這些類別 以確定表示該表的行的概念之前將這些列放置到類別中。
[0025] 圖1是示出具有其中多個用戶12A-12N(共同稱為"用戶12")可能與企業(yè)商務智能 (BI)系統(tǒng)14交互的計算環(huán)境10的示例企業(yè)4的框圖。在圖1示出的系統(tǒng)中,企業(yè)商務智能系 統(tǒng)14通過企業(yè)網絡18可通信地耦接到多個客戶端計算裝置16A-16N(共同稱為"客戶端計算 裝置16"或"計算裝置16")。用戶12與它們各自的計算裝置交互以訪問企業(yè)商務智能系統(tǒng) 14。在不同的示例中,用戶12、計算裝置16A-16N、企業(yè)網絡18和企業(yè)商務智能系統(tǒng)14可能全 部在單個設施中或者廣泛地分布在世界上任何的兩個或更多單獨的位置中。
[0026] 為了示例性的目的,本公開的技術的各種示例可以容易地應用到各種軟件系統(tǒng), 該軟件系統(tǒng)包括企業(yè)商務智能系統(tǒng)或其它大型企業(yè)軟件系統(tǒng)。企業(yè)軟件系統(tǒng)的示例包括企 業(yè)財務或預算規(guī)劃系統(tǒng)、訂單管理系統(tǒng)、庫存管理系統(tǒng)、銷售人員管理系統(tǒng)、商務智能工具、 企業(yè)報告工具、項目和資源管理系統(tǒng)和其它企業(yè)軟件系統(tǒng)。
[0027]在該示例中,企業(yè)BI系統(tǒng)14包括運行BI儀表盤web應用的服務器,并且可以提供商 務分析軟件。用戶12可以使用在客戶端計算裝置16上的BI端口以通過他們各自的計算裝置 16查看并操作信息,該信息諸如商務智能報告("BI報告")和其它數(shù)據的集合和可視化 (visualization)。這可以包括來自多種多樣的來源的任一個的數(shù)據,包括來自企業(yè)4中的 多維數(shù)據結構和相關數(shù)據庫,以及來自通過共用網絡15可訪問的多個外部來源的數(shù)據。 [0028]用戶12可以使用多種不同類型的計算裝置16以與企業(yè)商務智能系統(tǒng)14交互,并且 通過企業(yè)網絡18訪問數(shù)據可視化工具和其它資源。例如,企業(yè)用戶12可以使用膝上型計算 機、桌上型計算機等與企業(yè)商務智能系統(tǒng)14交互,并且運行商務智能(BI)端口(例如,商務 智能儀表盤等),該膝上型計算機、桌上型計算機等可以運行web瀏覽器?;蛘撸髽I(yè)用戶可 以使用智能電話、平板計算機或類似裝置,在web瀏覽器中或在用于與企業(yè)商務智能系統(tǒng)14 交互的專用的移動應用中運行商務智能儀表盤。
[0029] 企業(yè)網絡18和共用網絡15可以表示任何通信網絡,并且可以包括諸如私用企業(yè)內 部網的基于分組的數(shù)字網絡或類似因特網的共用網絡。以此方式,計算環(huán)境10可以容易地 放大到適合于大型企業(yè)。企業(yè)用戶12可以通過局域網直接地訪問企業(yè)商務智能系統(tǒng)14,或 可以通過虛擬專用網、遠程撥號或類似的遠程訪問通信機制遠程地訪問企業(yè)商務智能系統(tǒng) 14〇
[0030] 根據本公開的方面,企業(yè)商務智能系統(tǒng)14可以接收自然語言查詢。商務智能系統(tǒng) 14可以基于自然語言查詢確定一組檢索條件。商務智能系統(tǒng)14可以至少部分基于該組檢索 條件和多個數(shù)據組的屬性之間的匹配,從貯存在一個或多個貯存器裝置中的多個數(shù)據組確 定與自然語言查詢有關的一個或多個數(shù)據組。
[0031 ]圖2示出了在圖1的系統(tǒng)中標識行概念的示例方法。在圖2的示例實施例中,系統(tǒng)14 試圖基于在數(shù)據組中的列的現(xiàn)有分類來辨別數(shù)據組的行的特性(nature)。然后,系統(tǒng)14用 一組產生的行id將新得到的列增加到數(shù)據組,但是將其與其找到的代表行的概念相關聯(lián)。 僅增加額外的列是容易的,但是如果不能適當?shù)胤诸愒摿惺沟闷淠軌蚵?lián)系到適當問題,則 該列是無用的。該方法的價值在于,其允許分類由系統(tǒng)自動地完成,并且不需要建模者或其 它終端用戶干預,從而為用戶產生更好的零建模體驗。
[0032] 在一個實施例中,工具被用于基于它們的標記,并且在一些情況中,基于在列中的 該數(shù)據的采樣來分類這些列。在一些這樣的實施例中,這些工具也會通過標識基礎層級和 類別-屬性關聯(lián)來進行列的非常輕型的分組。一個這樣的工具在于2013年3月15日提交的美 國專利申請No. 13/844,612中被描述,該專利申請描述將具有標頭的數(shù)據項分類為類別的 方法,包括標識與數(shù)據項標頭相關聯(lián)的詞匯線索,并且基于商務本體論將數(shù)據項標頭映射 到概念。這些描述通過引用結合于此。
[0033] 但是,這樣的工具僅在數(shù)據組中分類列,并且不推斷數(shù)據組的行的意義。相反,系 統(tǒng)14確定在表格式的數(shù)據組中的每一行的屬性。在一些實施例中,這涉及將另一列增加到 數(shù)據組以捕捉得到的屬性。在一些這樣的實施例中,這進一步不僅涉及標識歸屬于該行的 意義,并且還涉及確定是否增加列以捕捉得到的屬性,使得得到的屬性則可以與問題術語 匹配,或者在產品的界面中被有意義地標記。
[0034] 在下面示出的示例中,數(shù)據組被示出為具有命名的列和未命名的行的表格式的數(shù) 據。應該清楚的是,還構思其它數(shù)據組?;旧?,系統(tǒng)14可以分析包括數(shù)據的任何數(shù)據組,該 數(shù)據被組織作為多個命名字段(這里,列)以及與命名字段相關聯(lián)的兩組或更多組的值(這 里,行)。在一些實施例中,數(shù)據組包括詳述每個命名字段被如何分配到一類別的信息。
[0035]在一個示例實施例中,如在圖2中所示,在30處,系統(tǒng)14對于每個類別確定是否存 在用于該類別的至少一個標識符字段,其中每個標識符字段是用作該類別的標識符的命名 字段。如果沒有,控制移動到36,并且系統(tǒng)14選擇類別中的一個以用作表示各組的值的概 念。否則,控制移動到32。
[0036]在32處,系統(tǒng)14對于每個類別標識用于該類別的標識符字段,如果有的話,該標識 符字段在每組的值的該類別的標識符字段中具有唯一值。如果是,控制移動到34,并且在34 處,系統(tǒng)14選擇具有唯一的標識符字段的類別中的一個或多個作為表示各組的值的概念。 否則,控制移動到36。
[0037]在圖3A中示出了示例數(shù)據組。在圖3A中示出的示例中,數(shù)據組40是美國人時間使 用調查(American Time Use Survey)的子集。它包含關于人們通常如何使用他們的時間的 信息。術語"人"或"人們"沒有出現(xiàn)在數(shù)據組中。但是,由于人直觀地知道如果是關于人們如 何使用他們的時間的數(shù)據組,他們將知道每一行表示對該調查的一個回應者(或一人)。 [0038]在一個實驗中,外部方提交了被指向數(shù)據組的一組問題。大約20 %的問題包含字 "人"或"人們",因為問這樣的問題是自然的。但是,為了通過計算機正確地回答這樣的問 題,需要額外的信息。在一個實施例中,如在圖3B中示出的,系統(tǒng)14在數(shù)據組模型中增加行 級別元素,該行級別元素正確地將該組的值標為表示人。然后,它可以將該元素鏈接回該問 題,并且產生答案。在將值的列與描述性概念相關聯(lián)之前,系統(tǒng)14不能夠回答有人或人們的 任何問題,因為該項就是不在模型中。因此,系統(tǒng)14就是不能夠產生其可用以回答該問題的 查詢元素的任何合理的組合。
[0039]如在圖3B中示出的,系統(tǒng)14修改數(shù)據組40以增加表示"人"的概念的新得到的列 44。新數(shù)據組42包括列44(一組產生的行ID),并且將其與其找到的表示行的概念相關聯(lián)。僅 增加額外的列是容易的,但是如果不能適當?shù)胤诸愒摿惺沟闷淠軌蚵?lián)系到適當問題,則該 列是無用的。上述方法的價值在于其允許分類由系統(tǒng)14自動地完成,并且不需要建模者或 其它終端用戶干預。結果是用戶的更好的體驗。
[0040] 在圖4中示出用從命名字段得到的信息來標記諸如行的各組的值的方法的更詳細 的示例實施例。在圖4的示例實施例中,在30處標識類別。在一些實施例中,通過諸如在于 2013年3月15日提交的美國專利申請No. 13/844,612中描述的工具來對列進行歸類。
[0041] 在50處,系統(tǒng)14將命名字段與類別相關聯(lián)。在一個實施例中,當在數(shù)據組中的各個 列確實表示分類的概念的屬性,系統(tǒng)14將在數(shù)據組中的列分類并且根據其本體論來標識詞 匯線索(lexical clue)。
[0042] 在圖3A示出的數(shù)據組中,命名字段包括:
[0043] 年齡
[0044] 性別
[0045] 雇傭狀態(tài)
[0046] 教育水平
[0047] 年
[0048] 月
[0049] 城市
[0050] 每周工作的小時
[0051 ] 每周睡覺的小時
[0052] 每周吃飯的小時
[0053]每周鍛煉的小時 [0054] 每周娛樂的小時
[0055]在一個示例實施例中,如在圖4中的50處所示,系統(tǒng)14將命名字段分類并且分組 為:
[0056]人(類別-cPerson)
[0057]年齡(屬性-cAge)
[0058]性別(屬性-cGender)
[0059]雇傭狀態(tài)(屬性 cEmployment)
[0060]教育水平(屬性-cEducation)
[0061]日期(類別-cDate)
[0062] 年(屬性-cYear)
[0063] 月(屬性-cMonth)
[0064] 日(屬性-cDay)
[0065] 城市(屬性-cLocation)
[0066] 每周工作的小時(度量-cDuration)
[0067] 每周睡覺的小時(度量-cDuration)
[0068] 每周吃飯的小時(度量-cDuration)
[0069] 每周鍛煉的小時(度量-cDura t i on)
[0070] 每周娛樂的小時(度量-cDuration)
[0071] 如上所示,系統(tǒng)14將人的屬性分組,確認這些都是人的代表(使用其本體論),并且 在模型中增加分類的分組以將那些屬性分組在一起。重要的是要注意,盡管這些被分組在 人之下,但是人不能夠被用在查詢中,因為在數(shù)據組中沒有相關聯(lián)的列以用來運行查詢(除 非系統(tǒng)14可以將項之一標識為屬性"人"的標識符,其在此處不是這樣的情況)。
[0072] 在該示例實施例中,該分組機制僅幫助系統(tǒng)14理解在其下的屬性是相關聯(lián)的。此 外,系統(tǒng)14能夠對年、月和日(并且可能從它們創(chuàng)建層級)做相同的處理。事實上,可以在典 型的數(shù)據組的該組列中標識許多這樣的分組。(該示例是極為簡單的)。
[0073]但是,如果有人查看以上模型,還是無法看出行表示什么。數(shù)據組仍只是一組屬 性,該數(shù)據組的少數(shù)已經被分組為類別和某種測度(measure)。
[0074] 在52處,系統(tǒng)12開始施加一組消除步驟,以移除噪聲并且集中在用于標識行的底 層概念的重要屬性上。首先,在52處,系統(tǒng)14在每個類別中標識是否存在唯一地標識該類別 的屬性(或組合)。在一些示例實施例(諸如Wat son分析)中,本體論知識基礎(在該情況中, 在SMD中)具有該知識并且可以被使用。例如,在該情況中人(Per son)在數(shù)據組40中不具有 這樣的屬性,因為其相關聯(lián)的每一個屬性不能夠唯一地標識人。但是,屬性年/月/日唯一地 標識日期類別。
[0075] 接著,在54處,消除具有唯一的標識符、但是對于每一個不具有唯一值的任何類 另IJ。在圖3A的示例數(shù)據組中,屬性"城市"在其自己的類別中并且被消除,因為在數(shù)據組40中 不存在對于每一行的唯一值。如果沒有類別保留,轉到60。系統(tǒng)14現(xiàn)在應該僅留下了對于每 一行具有唯一值的類別和單個屬性。
[0076]在一些示例實施例中,在52處的檢查消除具有唯一的標識符屬性(或屬性組)、但 是對于每一個(或組合)不具有唯一值的任何類別。在該情況中,年/月/日組合將不是唯一 的,因此日期以及年/月/日被消除考慮。
[0077]在圖3a中示出的示例中,但是,在52處的檢查處,留下了一個剩余的類別一一 "人"??刂埔苿拥?4,在54處作出檢查,以確定是否剩余了具有唯一地標識該類別的屬性并 且對于該組值中的每個條目具有唯一值的多于一個的類別。如果不是(如在該示例中),控 制移動到56,并且類別"人"被檢查其的標識符字段(在該示例中不存在標識符字段)。然后, 控制移動到64,其中創(chuàng)建唯一的標識符字段(如在圖3B中示出的在數(shù)據組42中的人標識符 44)并且然后在58處使用。
[0078] 如果,在56處,存在剩余的具有唯一地標識該類別的屬性并且對于該組值中的每 個條目具有唯一值的多于一個的類別,控制移動到62,并且檢查剩余的類別以查看它們是 否可以被分組或應該組合到更高級別的概念中。在一個這樣的實施例中,使用剩余的類別, 系統(tǒng)14迭代地向上移動到本體論以查看是否其可以進一步將這些分組到共同的分組中。 (該示例不存在該情況,因為所剩余的只有cPer S〇n(C人),但是參見下面的該圖5的電影數(shù) 據組的該情況的示例)。這樣的方法可以允許我們找到更加一般的概念,該更加一般的概念 包括被留下的可以被用作行級別概念的所有或大部分的概念,然后可以使用該行級別概 念。然后,控制移動到64,其中對該分組或更高級別的概念創(chuàng)建唯一的標識符,并且然后在 58處使用。
[0079] 在60處,作出檢查以確定是否存在類別的子集,該類別的子集當被結合在一起時 對于每個組的值是唯一的。在圖3a中示出的示例中,日期和城市的組合提供這樣的唯一的 一組值。在52處沒有類別幸存的事件中,在圖3A的示例實施例中的日期和城市的組合可以 用作為可能的概念。控制然后移動到62,其中檢查類別的組合以查看其是否可以被分組或 者應該被組合到更高級別的概念中??刂迫缓笠苿拥?4,其中創(chuàng)建唯一的標識符以用于該 分組或更高級別的概念,并且然后在58處使用。
[0080] 如果,在56或62處,系統(tǒng)14留下了單個概念,則其已經找到表示行的概念。如果沒 有找到概念,則行不可能是表示在當數(shù)據組包含的聚合的數(shù)據時成立的任何事物,或者可 以表示概念的組合(例如用于天氣數(shù)據的城市和日期)。這是沒有問題的,因為針對這些數(shù) 據組問行級別問題是沒有意義的。
[0081 ]但是,如果系統(tǒng)14已經標識出可以與行相關聯(lián)的唯一的概念,則系統(tǒng)14可以有意 義地將行與包含該概念的問題相關聯(lián)。因此,在56處作出檢查以查看與該類別(或如在62處 的一組類別)相關聯(lián)的一個屬性是否表示用于該類別的標識符。如果是的,系統(tǒng)14不需要再 繼續(xù)進行,因為它已經找到表示該行的適當列。它可以簡單地將所找到的概念與在模型中 的該標識符列相關聯(lián)。
[0082]如在上面的圖4的討論中提及的,如果當在56處檢查時,系統(tǒng)14沒有標識符列,則 它可以創(chuàng)建一個,將其與模型中的適當類別相關聯(lián),并且附上適當概念?,F(xiàn)在,其將可用作 系統(tǒng)中的可選擇的查詢項,以及可用于匹配到自然語言問題兩者。系統(tǒng)14可以安全地這樣 做,因為它已經確定該類別表示這些行,所以唯一的標識符將表示該類別的唯一的行標識 符實例。一般來說這樣做是不安全的,因為不表示行的類別不可能在各行上是唯一的,并且 將唯一的行級別標識符增加到該類別將產生對問題的錯誤回答。例如,在上面的情況中,有 多少人應該返回與多少行相同的數(shù)量的結果,但是城市數(shù)則不然,因為每一行不表示唯一 的城市。因為此,需要成功地確定在數(shù)據組系統(tǒng)14中的哪個類別可以創(chuàng)建唯一的id。
[0083] 如在圖3B中所示的,在圖3A的該實例數(shù)據組中產生的模型將是:
[0084] 人(類別-cPerson)
[0085]年齡(屬性-cAge)
[0086]性別(屬性-cGender)
[0087]雇傭狀態(tài)(屬性-cEmployment)
[0088] 教育水平(屬性-cEducation)
[0089] 人(屬性-cldentif ier)
[0090]日期(類別-cDate)
[0091 ]年(屬性-cYear)
[0092] 月(屬性-cMonth)
[0093] 日(屬性-cDay)
[0094] 城市(屬性-cLocation)
[0095] 每周工作的小時(度量-cDuration)
[0096] 每周睡覺的小時(度量-cDuration)
[0097] 每周吃飯的小時(度量-cDuration)
[0098] 每周鍛煉的小時(度量-cDura t i on)
[0099] 每周娛樂的小時(度量-cDuration)
[0?00] 注意增加的模型項,其標識人(cldentifer-cPerson)并且將對于數(shù)據組的每一行 來說是唯一的。
[0101]正是上述這些步驟允許我們以巧妙的方式確定向模型增加什么以使得可以適當 地并且用適當概念來使用行。在該情況中,在人的列中的實際數(shù)據將可能是隨機的唯一的 關鍵字,或者如在圖3B中示出的,僅是行Id( r〇wId)索引。但是,它仍可以被有意義地投射在 可視化中,因為它將允許我們對每個人繪制單獨的數(shù)據點,并且正確地標記可視化的軸。
[0102] 在一個實施例中,在52處進行檢查之前,移除測量。因為測量表示屬性的數(shù)值測 量,它們測量行的一些方面,但是不標識該行是什么。分類的屬性將該行歸類,并且從而更 加有用于標識該行是什么。因此,系統(tǒng)14消除對測量的考慮。
[0103] 隨著大數(shù)據的革新,從數(shù)據組中得到概念的能力是最重要的,以使人們能夠成功 地分析。目前,數(shù)據分析的供應商正在艱難應對翻譯不同數(shù)據組以允許即時分析。在許多情 況中,必須增加一些手動的/人為的步驟以包括例如額外的列。這花費時間,并且通過上述 方法,系統(tǒng)14能夠從數(shù)據組中得到人為概念。
[0104] 該方法的優(yōu)點在于,得到了在數(shù)據組中沒有明確地示出的語義的概念,并且將其 增加到數(shù)據組,所以其它機制可以使用該信息以分析數(shù)據組,而沒有或者顯著地減少人為 的干預的量。
[0105] 在圖5中示出另一實例數(shù)據組。在圖5的示例數(shù)據組70中,系統(tǒng)14標識概念,該概念 包括名稱(title)、年、季、制片廠(Studio)、風格、以及票房平均、預算、利潤。為了幫助減少 在一般化處理中的潛在匹配,將首先排除任何通用的概念。在以上實例中,年、季以及預算 和利潤將不是選擇的部分。注意,在一些實施例中,該選擇和一般化處理是迭代的,并且可 以應用多次以便于細化結果。在該處理的第一次迭代中,系統(tǒng)14也將排除任何度量概念,因 為類別概念對于在數(shù)據組中的詳細行數(shù)據通常更具代表性的。度量概念在之后的迭代中將 被用作細化概念。
[0106] 因此,概念的第一選擇是名稱、制片廠和風格。在第二一般化步驟期間,這些概念 將被用于在外部本體論數(shù)據庫中搜索以尋找所有這些標識的概念與其相關聯(lián)的更高級別 的概念。作為簡單的實例,外部本體論數(shù)據庫可以由于以下的關系,來返回視頻游戲概念作 為潛在的候選:
[0107] 視頻游戲具有名稱。
[0108] 視頻游戲由制片廠發(fā)布。
[0109] 視頻游戲具有風格。
[0110] 具有類似關系的其它潛在的候選可以包括影片和電視節(jié)目。由于目標是標識一個 代表性的概念以描述具體的行級別數(shù)據,這些候選需要被進一步縮小。作為迭代的處理,從 數(shù)據組標識的更多的概念可以被用于細化該搜索結果。諸如預算和利潤的通用概念對于不 同類型的數(shù)據是共同的,所以系統(tǒng)14在下一個細化迭代中選擇更加具體的概念。在該情況 中,差評(Rotten Tomatoes,爛番前評分)%和票房平均被選中以進一步細化概念。在三個 候選之中,僅有概念影片(Film)與這些兩個額外的概念具有額外的關系。作為最終的結果, 影片概念可以被用于描述用于該數(shù)據組的詳細行級別數(shù)據。
[0111] 在以上示例中,使用額外的概念足以將概念細化到單個。在額外的概念不足以縮 小結果的情況中,可以從原始數(shù)據組中拿出采樣數(shù)據,并且采樣數(shù)據用于從這些候選概念 的實例中查找。例如,來自名稱列的采樣值可以被用于與來自視頻游戲、影片和電視節(jié)目的 實例交叉引用。如果任何這些概念包含這樣的實例,則其可以被用作細化該結果的證據。
[0112] 此外,如果以上兩個細化處理仍不能夠給出單個相對有信心的概念以描述數(shù)據 組,我們可以使用來自本體論的家世(世系)信息以尋找所有候選概念的共同根源。在以上 實例中,影片、電視節(jié)目和視頻游戲的共同根源可以是通用概念一一藝術作品。
[0113]該處理的最后的步驟是對原始數(shù)據組驗證,并且最終化該結果。在以上給出的實 例中,該處理將影片標識為表示數(shù)據組的行的最佳概念。但是,該數(shù)據組的主關鍵字、名稱 列也是影片概念的主要屬性。在該情況中,系統(tǒng)14可以選擇名稱列來表示影片概念。為了防 止數(shù)據組不包含可以被用于表示標識的概念的主關鍵字的列的情況,可以人為地創(chuàng)建并且 使用行ID列。其它驗證可以包括將來自外部本體論的概念的實例與在原始數(shù)據組中存在的 交叉引用以進一步確認結果。
[0114] 在一個實例實施例中,在沒有類別包含標識符字段的事件中,系統(tǒng)14選擇兩個或 更多字段,其中字段的組合是這些組的值的唯一表示。
[0115] 在一個實例實施例中,在一個類別包含標識符字段、并且該標識符字段中的一個 對每個組的值具有唯一值的事件中,系統(tǒng)14使用該類別作為概念。
[0116] 在一個實例實施例中,在類別具有兩個或更多標識符字段、并且沒有一個標識符 字段對每個組的值具有唯一值、但是當被組合時在該類別中的兩個或更多的標識符字段在 所有組的值上具有唯一值的事件中,系統(tǒng)14使用該類別作為概念。
[0117] 在一個實例實施例中,在兩個或更多類別(例如,類別B)具有標識符字段并且僅有 一個標識符字段對每個組的值具有唯一值的事件中:使用類別B作為概念。
[0118] 在一個實例實施例中,在兩個或更多類別(例如,類別B和C)具有標識符字段并且 兩個或更多標識符字段對每個組的值具有唯一值的事件中:組合包含具有唯一值的標識符 字段的所有類別(例如,B和C)并且用作概念。(情況4是5的子集)
[0119] 在一個實例實施例中,在兩個或更多類別具有標識符字段、沒有標識符字段在所 有組的值上具有唯一值,但是當組合被時在不同的類別(例如,類別A和C)中的兩個或更多 標識符字段在所有組的值上具有唯一值的事件中:使用組合的A和C作為概念。
[0120] 在一個實例實施例中,在一個或多個類別沒有標識符字段、而兩個或更多類別具 有標識符字段、但是沒有標識符字段在所有組的值上具有唯一值、并且當被組合時兩個或 更多標識符字段中沒有一個在所有組的值上具有唯一值的事件中:使用不具有標識符字段 的一個或多個類別作為概念。
[0121] 圖6是根據示意性示例的可以被用于執(zhí)行數(shù)據組分析工具22的計算裝置80的框 圖。計算裝置80例如可以是服務器。計算裝置80也可以是用于提供企業(yè)商務智能應用的任 何服務器,包括虛擬服務器,該服務器可以從任何數(shù)量的計算裝置運行或者結合任何數(shù)量 的計算裝置。計算裝置可以作為實際的或虛擬服務器的全部或者部分而操作,并且可以是 或者可以結合工作站、服務器、大型主機計算機、筆記本型或膝上型計算機、桌上型計算機、 平板、智能電話、功能電話或其它任何類型的可編程數(shù)據處理設備。計算裝置80的其它實現(xiàn) 方式可以包括具有除了或者超越這里所述的功能或者格式的計算機。
[0122] 在圖6的示意性實例中,計算裝置80包括通信結構82,該通信結構82提供處理器單 元84、存儲器86、持久性數(shù)據貯存器88、通信單元90和輸入/輸出(I/O)單元92之間的通信。 通信結構82可以包括專用系統(tǒng)總線、通用系統(tǒng)總線、布置為分級形式的多個總線、任何其它 類型的總線、總線網絡、交換結構或其它互聯(lián)技術。通信結構82支持在計算裝置80的子系統(tǒng) 之間的數(shù)據、命令和其它信息的轉移。
[0123] 處理器單元84可以是被配置為執(zhí)行貯存在存儲器86中的編程的指令的可編程中 央處理器(CPU)。在另外的示意性實例中,處理器單元84可以使用其中主處理器與次級處理 器出現(xiàn)在單個芯片上的一個或多個異構的處理器系統(tǒng)來實現(xiàn)。在又一示意性實例中,處理 器單元84可以是包含多個相同類型的處理器的對稱的多處理器系統(tǒng)。
[0124] 處理器單元84可以是精簡指令集計算(RISC)微處理器一一諸如來自IBM?.公司 的PowerPC?處理器、χ86可兼容處理器--諸如來自Intel?公司的Pentium?處理器、 來自超微半導體?公司的Ath|011?處理器或任何其它合適的處理器。在各種實例中,處理 器單元84例如可以包括多核處理器一一諸如雙核或四核處理器。例如,處理器單元84可以 包括在一個裸芯上的多處理芯片、和/或在一個封裝或襯底上的多個裸芯。處理器單元84例 如還可以包括一個或多個級的集成的緩存存儲器。在各種實例中,處理器單元84可以包括 分布在一個或多個位置上的一個或多個CPU。
[0125] 數(shù)據貯存器96包括存儲器86和持久性數(shù)據貯存器88,其通過通信結構82與處理器 單元84通信。存儲器86可以包括用于貯存應用數(shù)據的隨機存取半導體存儲器(RAM),該應用 數(shù)據即用于處理的計算機程序數(shù)據。盡管存儲器86被概念性地描述為單個單片實體,但是, 在各種實例中,存儲器86可以被布置在緩存的層級中和其他存儲器裝置中、在單個物理位 置中或者以各種形式分布在多個物理系統(tǒng)上。盡管存儲器86被物理地描述為與處理器單元 84和計算裝置80的其它元素分離,存儲器86可以等同地指代在遍歷計算裝置80的任何位置 處的任何中間或緩存存儲器,包括靠近處理器單元84或者處理器單元84的獨立的核的、或 與處理器單元84或者處理器單元84的獨立的核集成的緩存存儲器。
[0126] 持久性數(shù)據貯存器88可以包括一個或多個硬盤驅動、固態(tài)驅動、閃速驅動、可重寫 的光盤驅動、磁盤驅動或者這些或其它數(shù)據貯存器介質的任何組合。持久性數(shù)據貯存器88 可以貯存用于操作系統(tǒng)的計算機可執(zhí)行的指令或計算機可讀程序代碼、包含程序代碼的應 用文件、數(shù)據結構或數(shù)據文件和任何其它類型的數(shù)據。這些計算機可執(zhí)行的指令可以從持 久性數(shù)據貯存器88被加載到存儲器86中以將由處理器單元84或其它處理器讀取和執(zhí)行。數(shù) 據貯存器96還可以包括能夠貯存信息的臨時的和/或永久的任何其它硬件元素,諸如,例如 并且不是限制性的,數(shù)據、功能性形式的程序代碼和/或其它合適的信息。
[0127] 持久性數(shù)據貯存器88和存儲器86是物理的、有形的非瞬時性計算機可讀數(shù)據貯存 器裝置的實例。數(shù)據貯存器96可以包括可能需要被周期性地電刷新以在存儲器中保持數(shù)據 的任何各種形式的易失性存儲器,而本領域技術人員應認識到,這也構成物理的、有形的非 瞬時性計算機可讀數(shù)據貯存器裝置的實例。當程序代碼在非瞬時性物理介質或裝置上被加 載、貯存、中繼、緩沖或緩存時,可執(zhí)行的指令可以貯存在非瞬時性介質上,包括僅當只有短 持續(xù)時間或者只以易失性存儲器形式的情況。
[0128] 如在之前詳細描述的,處理器單元84還可以被適當?shù)鼐幊桃宰x取、加載和執(zhí)行用 于數(shù)據組分析工具22的計算機可執(zhí)行的指令或計算機可讀程序代碼。該程序代碼可以貯存 在存儲器86、持久性數(shù)據貯存器88或計算裝置80中的其它地方上。該程序代碼也可以采用 貯存在包含在計算機程序產品100中的計算機可讀介質102上的程序代碼104的形式,并且 可以通過任何的多種本地或遠程的方式被從計算機程序產品100轉移或通信到計算裝置 80,以能夠由處理器單元84執(zhí)行,如在下面進一步解釋的。
[0129] 操作系統(tǒng)可以提供功能一一諸如裝置接口管理、存儲器管理和多任務管理。操作 系統(tǒng)可以是基于Unix的操作系統(tǒng)一一諸如來自IBM?公司的AIX?操作系統(tǒng)、基于非 Un i X的操作系統(tǒng)--諸如來自微軟?公司的Windows.?系列的操作系統(tǒng)、網絡操作系 統(tǒng)一一諸如來自甲骨文⑩公司的JavaOS?、或者任何其它合適的操作系統(tǒng)。處理器單元84 可以被適當?shù)鼐幊桃宰x取、加載和執(zhí)行操作系統(tǒng)的指令。
[0130]在該實例中,通信單元90,提供與其它計算或通信系統(tǒng)或裝置的通信。通信單元90 可以通過使用物理和/或無線通信鏈接提供通信。通信單元90可以包括用于與LAN 16接口 的網絡接口卡、以太網適配器、令牌環(huán)(Token Ring)適配器、用于連接到諸如電話線的傳輸 系統(tǒng)的調制解調器或任何其它類型的通信接口。通信單元90可以被用于可操作地將許多類 型的外圍計算裝置連接到計算裝置80,該外圍設備諸如打印機、總線適配器和其它計算機。 通信單元90例如可以被實現(xiàn)為擴展卡或被建造在主板中。
[0131]輸入/輸出單元92可以用可以連接到計算裝置80的其它裝置來支持適合于輸入和 輸出數(shù)據的裝置,諸如鍵盤、鼠標或其它指示器、觸摸屏接口、用于打印機或任何其它外圍 裝置的接口、可拆卸磁或光盤驅動(包括CD_R〇M、DVD-ROM或Blu-Ray )、通用串行總線(USB) 插座或任何其它類型的輸入和/或輸出裝置。在各種示例中,輸入/輸出單元92還可以包括 用于以任何類型的視頻輸出協(xié)議和任何類型的顯示器或其它視頻顯示技術視頻輸出的任 何類型的接口。應理解的是,這些示例的一些可能相互重疊,或者與通信單元90或數(shù)據貯存 器96的示例組件重疊。輸入/輸出單元92還可以包括用于任何類型的外部裝置的適當裝置 驅動器,或者這樣的裝置驅動器可以適當位于計算裝置80上的其它地方。
[0132] 在該示意性實例中,計算裝置80還包括顯示適配器94,其提供用于諸如顯示裝置 98的一個或多個顯示裝置的一個或多個連接,該顯示裝置98可以包括任何多種類型的顯示 裝置。應理解的是,這些示例的一些可以與通信單元90或輸入/輸出單元92的示例組件重 疊。輸入/輸出單元92還可以包括用于任何類型的外部裝置的適當裝置驅動器,或者這樣的 裝置驅動器可以適當位于計算裝置80上的其它地方。在各種實例中,顯示適配器94可以包 括一個或多個視頻卡、一個或多個圖形處理單元(GPU)、一個或多個可視頻的連接端口或能 夠通信視頻數(shù)據的任何其它類型的數(shù)據連接器。在各種實例中,顯示裝置98可以是任何類 型的視頻顯示裝置,諸如顯示器、電視或投影儀。
[0133] 輸入/輸出單元92可以包括用于接收計算機程序產品100的驅動、插口或輸出口, 該計算機程序產品100包括具有貯存在其上的計算機程序代碼104的計算機可讀介質102。 例如,作為示意性實例,計算機程序產品100可以是CD_R〇M、DVD-ROM、藍光盤、磁盤、USB條、 閃速驅動或外部硬盤驅動或任何其它合適的數(shù)據貯存器技術。
[0134] 計算機可讀介質102可以包括任何類型的光的、磁的或其它物理介質,該介質在存 儲器的每個單元中將程序代碼104物理地編碼為不同的物理狀態(tài)的二進制序列,當由計算 裝置80讀取該序列時,該二進制序列引入由對應于貯存介質102的基礎數(shù)據貯存器元素的 物理狀態(tài)的處理器84讀取的物理信號,并且引入處理器單元84的物理狀態(tài)的相應改變。該 物理程序代碼信號可以以任何的各種程度的抽象而被模型化或概念化為計算機可讀指令, 諸如高級編程語言、匯編語言或機器語言,但是最終組成物理地引起處理器單元84的物理 狀態(tài)改變的一系列物理的電和/或磁交互,從而以使得計算裝置80物理地承擔在通過加載 包含在程序代碼104中的可執(zhí)行的指令改變其物理狀態(tài)之前所沒有的新功能的方式,物理 地導致或者配置處理器單元84產生對應于計算機可執(zhí)行的指令的物理輸出。
[0135] 在一些示意性實例中,可以在網絡上將程序代碼104從計算裝置80中使用的另外 裝置或計算機系統(tǒng)下載到數(shù)據貯存器96。包含計算機可執(zhí)行的指令的程序代碼104可以通 過鏈接到通信單元90的低損耗電纜或無線通信、和/或到輸入/輸出單元92的連接而從計算 機可讀介質102通信到或轉移到計算裝置80。包含程序代碼104的計算機可讀介質102可以 位于與計算裝置分離的或遠程的位置,并且可以位于任何地方,包括世界上任何地方的任 何遠程地理位置處,并且可以通過諸如因特網和/或其它分組數(shù)據網絡的任何類型的一個 或多個通信鏈接將程序代碼104中繼到計算裝置80。程序代碼104例如可以通過無線因特網 連接或通過短程直接無線連接(諸如無線LAN、藍牙?、Wi-Fi?或紅外連接)發(fā)送。任何其它 無線或遠程通信協(xié)議也可以在其它實現(xiàn)方式中使用。
[0136] 在各種示意性實例中,通信鏈接和/或連接可以包括有線和/或無線連接,并且程 序代碼104可以在非有形的介質上從源計算機可讀介質102被發(fā)送,該非有形的介質諸如包 含程序代碼104的通信鏈接或無線傳輸。程序代碼104可以或多或少地暫時地或者經久地貯 存在任何數(shù)量的中間有形的、物理計算機可讀裝置和介質上,該裝置和介質諸如任何數(shù)量 的物理緩沖器、緩存器、主存儲器、或服務器、網關、網絡節(jié)點、移動性管理實體的數(shù)據貯存 器組件、或從其原始源介質到計算裝置80的途中的其它網絡資產。
[0137] 本發(fā)明可以是一種系統(tǒng)、方法和/或計算機程序產品。計算機程序產品可以包括計 算機可讀貯存介質,其上載有用于使處理器實現(xiàn)本發(fā)明的各個方面的計算機可讀程序指 令。
[0138] 計算機可讀貯存介質可以是可以保持和存儲由指令執(zhí)行設備使用的指令的有形 設備。計算機可讀貯存介質例如可以是一一但不限于一一電存儲設備、磁存儲設備、光存儲 設備、電磁存儲設備、半導體存儲設備或者上述的任意合適的組合。計算機可讀貯存介質的 更具體的例子(非窮舉的列表)包括:便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存 儲器(ROM)、可擦式可編程只讀存儲器(EPROM或閃存)、靜態(tài)隨機存取存儲器(SRAM)、便攜式 壓縮盤只讀存儲器(CD-ROM)、數(shù)字多功能盤(DVD)、記憶棒、軟盤、機械編碼設備、例如其上 存儲有指令的打孔卡或凹槽內凸起結構、以及上述的任意合適的組合。這里所使用的計算 機可讀貯存介質不被解釋為瞬時信號本身,諸如無線電波或者其他自由傳播的電磁波、通 過波導或其他傳輸媒介傳播的電磁波(例如,通過光纖電纜的光脈沖)、或者通過電線傳輸 的電信號。
[0139] 這里所描述的計算機可讀程序指令可以從計算機可讀貯存介質下載到各個計算/ 處理設備,或者通過網絡、例如因特網、局域網、廣域網和/或無線網下載到外部計算機或外 部存儲設備。網絡可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火墻、交換機、網關 計算機和/或邊緣服務器。每個計算/處理設備中的網絡適配卡或者網絡接口從網絡接收計 算機可讀程序指令,并轉發(fā)該計算機可讀程序指令,以供存儲在各個計算/處理設備中的計 算機可讀貯存介質中。
[0140] 用于執(zhí)行本發(fā)明操作的計算機程序指令可以是匯編指令、指令集架構(ISA)指令、 機器指令、機器相關指令、微代碼、固件指令、狀態(tài)設置數(shù)據、或者以一種或多種編程語言的 任意組合編寫的源代碼或目標代碼,該編程語言包括面向對象的編程語言一諸如 Smalltalk、C++等,以及常規(guī)的過程式編程語言一諸如"C"語言或類似的編程語言。計算機 可讀程序指令可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨 立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機 或服務器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網絡一包 括局域網(LAN)或廣域網(WAN)-連接到用戶計算機,或者,可以連接到外部計算機(例如利 用因特網服務提供商來通過因特網連接)。在一些實施例中,通過利用計算機可讀程序指令 的狀態(tài)信息來個性化定制電子電路,例如可編程邏輯電路、現(xiàn)場可編程門陣列(FPGA)或可 編程邏輯陣列(PLA),該電子電路可以執(zhí)行計算機可讀程序指令,從而實現(xiàn)本發(fā)明的各個方 面。
[0141] 這里參照根據本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產品的流程圖和/ 或框圖描述了本發(fā)明的各個方面。應當理解,流程圖和/或框圖的每個方框以及流程圖和/ 或框圖中各方框的組合,都可以由計算機可讀程序指令實現(xiàn)。
[0142] 這些計算機可讀程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據 處理裝置的處理器,從而生產出一種機器,使得這些指令在通過計算機或其它可編程數(shù)據 處理裝置的處理器執(zhí)行時,產生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功 能/動作的裝置。也可以把這些計算機可讀程序指令存儲在計算機可讀貯存介質中,這些指 令使得計算機、可編程數(shù)據處理裝置和/或其他設備以特定方式工作,從而,存儲有指令的 計算機可讀介質則包括一個制造品,其包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中 規(guī)定的功能/動作的各個方面的指令。
[0143] 也可以把計算機可讀程序指令加載到計算機、其它可編程數(shù)據處理裝置、或其它 設備上,使得在計算機、其它可編程數(shù)據處理裝置或其它設備上執(zhí)行一系列操作步驟,以產 生計算機實現(xiàn)的過程,從而使得在計算機、其它可編程數(shù)據處理裝置、或其它設備上執(zhí)行的 指令實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作。
[0144] 附圖中的流程圖和框圖顯示了根據本發(fā)明的多個實施例的系統(tǒng)、方法和計算機程 序產品的可能實現(xiàn)的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代 表一個模塊、程序段或指令的一部分,該模塊、程序段或指令的一部分包含一個或多個用于 實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實現(xiàn)中,方框中所標注的功能也可 以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框實際上可以基本并行地執(zhí)行, 它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流 程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作 的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)
[0145] 為了說明的目的已經呈現(xiàn)了對本發(fā)明的各種實施例的說明,但是不意欲是窮舉性 的或者限制所公開的實施例。對本領域普通技術人員來說,在不脫離該實施例的范圍和精 神的情況下,許多修改和變化是顯而易見的。這里所使用的術語被選中以最佳地解釋實施 例的原理、實際應用或相比于在市場上能夠找到的技術的技術性的改善或者使得本領域的 其它技術人員理解這里所公開的實施例。
【主權項】
1. 一種方法,包括: 接收數(shù)據,其中所述數(shù)據被組織作為多個命名字段以及作為與所述命名字段相關聯(lián)的 兩組或更多組的值,其中每個命名字段被分配給一類別; 對于每個類別確定是否存在用于該類別的至少一個標識符字段,其中每個標識符字段 是用作該類別的標識符的命名字段; 對于每個類別標識用于所述類別的標識符字段,如果有的話,所述標識符字段在每組 的值的所述類別的標識符字段中具有唯一值;以及 選擇所述類別中的一個作為表示各組的值的概念。2. 如權利要求1所述的方法,其中所述數(shù)據被組織作為表,其中所述命名字段是列,并 且所述組的值是行。3. 如權利要求1所述的方法,其中選擇包括:選擇兩個或更多字段,所述兩個或更多字 段當被組合時、在每個組的值的所述兩個或更多字段上具有唯一值。4. 如權利要求1所述的方法,其中選擇包括:選擇類別,所述類別包括在每個組的值的 該類別的所述標識符字段中具有唯一值的標識符字段。5. 如權利要求1所述的方法,其中選擇包括:選擇包括兩個或更多標識符字段的類別, 所述兩個或更多標識符字段當被組合時、在每個組的值的該類別的所述兩個或更多標識符 字段上具有唯一值。6. 如權利要求1所述的方法,其中選擇包括: 選擇兩個或更多類別,其中所述類別包括在每個組的值的每個類別的標識符字段中具 有唯一值的標識符字段; 分組所選擇的類別;以及 將分組的選擇的類別用作表示各組的值的概念。7. 如權利要求1所述的方法,其中選擇包括: 在兩個或更多類別的每一個中選擇標識符字段,所述兩個或更多類別當被組合時在每 個組的值的所述兩個或更多標識符字段上具有唯一值;以及 將所述兩個或更多類別與所選擇的標識符字段組合作為表示各組的值的概念。8. 如權利要求7所述的方法,其中組合所述兩個或更多類別增加與所標識的概念相關 聯(lián)的新命名字段、并且將唯一值插入到每一組的值的該字段中。9. 如權利要求1所述的方法,其中選擇包括:選擇不包括標識符字段的類別作為概念、 并且創(chuàng)建表示該概念的新標識符字段。10. 如權利要求1所述的方法,其中選擇包括:增加新命名字段、并且將唯一值插入到每 一組的值的該字段中。11. 如權利要求1所述的方法,其中選擇所述類別中的一個包括:標識所述類別,增加與 所標識的類別相關聯(lián)的新命名字段、并且將唯一值插入到每一組的值的該字段中。12. -種系統(tǒng),包括: 網絡; 商務智能系統(tǒng);以及 一個或多個計算裝置,通過所述網絡連接到所述商務智能系統(tǒng); 其中所述商務智能系統(tǒng)接收數(shù)據,其中所述數(shù)據被組織作為多個命名字段以及作為與 所述命名字段相關聯(lián)的兩組或更多組的值,其中每個命名字段被分配給一類別;以及 其中所述商務智能系統(tǒng)包括數(shù)據組分析工具,其中所述數(shù)據組分析工具: 接收所述數(shù)據; 對于每個類別確定是否存在用于該類別的至少一個標識符字段,其中每個標識符字段 是用作該類別的標識符的命名字段; 對于每個類別標識用于所述類別的標識符字段,如果有的話,所述標識符字段在每組 的值的所述類別的標識符字段中具有唯一值;以及 選擇所述類別中的一個作為表示各組的值的概念。13. 如權利要求12所述的系統(tǒng),其中所述數(shù)據被組織作為表,其中所述命名字段是列, 并且所述組的值是行;以及 其中選擇包括:選擇類別,所述類別包括在每個組的值的該類別的所述標識符字段中 具有唯一值的標識符字段。14. 如權利要求12所述的系統(tǒng),其中選擇包括:選擇兩個或更多字段,所述兩個或更多 字段當被組合時、在每個組的值的所述兩個或更多字段上具有唯一值。15. 如權利要求12所述的系統(tǒng),其中選擇包括: 選擇兩個或更多類別,其中所述類別包括在每個組的值的每個類別的標識符字段中具 有唯一值的標識符字段;以及 分組所選擇的類別;以及 將所分組的類別用作表示各組的值的概念。
【文檔編號】G06F17/27GK105843793SQ201610058931
【公開日】2016年8月10日
【申請日】2016年1月28日
【發(fā)明人】M.雷斯-加塞姆, G.A.沃茨, Q.魏
【申請人】國際商業(yè)機器公司