📜  数据挖掘-查询语言

📅  最后修改于: 2021-01-11 06:28:58             🧑  作者: Mango


数据挖掘查询语言(DMQL)由Han,Fu,Wang等人提出。用于DBMiner数据挖掘系统。数据挖掘查询语言实际上是基于结构化查询语言(SQL)的。数据挖掘查询语言可以设计为支持即席和交互式数据挖掘。该DMQL提供用于指定原语的命令。 DMQL也可以与数据库和数据仓库一起使用。 DMQL可用于定义数据挖掘任务。特别是,我们研究了如何在DMQL中定义数据仓库和数据集市。

与任务相关的数据规范的语法

这是DMQL的语法,用于指定与任务相关的数据-

use database database_name

or 

use data warehouse data_warehouse_name
in relevance to att_or_dim_list
from relation(s)/cube(s) [where condition]
order by order_list
group by grouping_list

指定知识种类的语法

在这里,我们将讨论表征,区分,关联,分类和预测的语法。

表征

表征的语法是-

mine characteristics [as pattern_name]
   analyze  {measure(s) }

分析子句指定汇总度量,例如计数,总和或计数%。

例如-

Description describing customer purchasing habits.
mine characteristics as customerPurchasing
analyze count%

歧视

歧视的语法是-

mine comparison [as {pattern_name]}
For {target_class } where  {t arget_condition } 
{versus  {contrast_class_i }
where {contrast_condition_i}}  
analyze  {measure(s) }

例如,用户可以将大笔消费定义为购买平均花费在100美元或以上的商品的客户;和预算支出者,即平均购买价格低于$ 100的商品的客户。可以在DMQL中将这些类别中的每一个类别的客户的歧视性描述的挖掘指定为-

mine comparison as purchaseGroups
for bigSpenders where avg(I.price) ≥$100
versus budgetSpenders where avg(I.price)< $100
analyze count

协会

关联的语法是-

mine associations [ as {pattern_name} ]
{matching {metapattern} }

例如-

mine associations as buyingHabits
matching P(X:customer,W) ^ Q(X,Y) ≥ buys(X,Z)

X是客户关系的关键; P和Q是谓词变量; W,Y和Z是对象变量。

分类

分类的语法是-

mine classification [as pattern_name]
analyze classifying_attribute_or_dimension

例如,对于挖掘模式,可对客户信用等级进行分类,其中,类别由属性credit_rating确定,而挖掘类别则确定为classifyCustomerCreditRating。

analyze credit_rating

预测

预测的语法是-

mine prediction [as pattern_name]
analyze prediction_attribute_or_dimension
{set {attribute_or_dimension_i= value_i}}

概念层次结构规范的语法

要指定概念层次结构,请使用以下语法-

use hierarchy  for 

我们使用不同的语法来定义不同类型的层次结构,例如-

-schema hierarchies
define hierarchy time_hierarchy on date as [date,month quarter,year]
-
set-grouping hierarchies
define hierarchy age_hierarchy for age on customer as
level1: {young, middle_aged, senior} < level0: all
level2: {20, ..., 39} < level1: young
level3: {40, ..., 59} < level1: middle_aged
level4: {60, ..., 89} < level1: senior

-operation-derived hierarchies
define hierarchy age_hierarchy  for age  on customer  as
{age_category(1), ..., age_category(5)} 
:= cluster(default, age, 5) < all(age)

-rule-based hierarchies
define hierarchy profit_margin_hierarchy  on item  as
level_1: low_profit_margin < level_0:  all

if (price - cost)< $50
   level_1:  medium-profit_margin < level_0:  all
   
if ((price - cost) > $50)  and ((price - cost) ≤ $250)) 
   level_1:  high_profit_margin < level_0:  all

兴趣度量规范的语法

用户可以通过以下语句指定兴趣度和阈值:

with   threshold = threshold_value

例如-

with support threshold = 0.05
with confidence threshold = 0.7

模式表示和可视化规范的语法

我们有一种语法,该语法允许用户以一种或多种形式指定所发现模式的显示。

display as 

例如-

display as table

DMQL的完整规格

作为公司的市场经理,您要描述可以购买价格不少于100美元的商品的客户的购买习惯;关于客户的年龄,购买的商品类型以及购买地点。您想知道具有该特征的客户百分比。特别是,您只对在加拿大购买并使用美国运通信用卡付款的商品感兴趣。您想以表格形式查看结果描述。

use database AllElectronics_db
use hierarchy location_hierarchy for B.address
mine characteristics as customerPurchasing
analyze count%
in relevance to C.age,I.type,I.place_made
from customer C, item I, purchase P, items_sold S,  branch B
where I.item_ID = S.item_ID and P.cust_ID = C.cust_ID and
P.method_paid = "AmEx" and B.address = "Canada" and I.price ≥ 100
with noise threshold = 5%
display as table

数据挖掘语言标准化

标准化数据挖掘语言将达到以下目的-

  • 帮助系统开发数据挖掘解决方案。

  • 改善多个数据挖掘系统和功能之间的互操作性。

  • 促进教育和快速学习。

  • 促进在工业和社会中使用数据挖掘系统。