CMSR Data Miner and Rule-Engine Software Suite – free academic use

CMSR - Cramer Modeling, Segmentation and Rules - is data miner and rule-engine suite having rule-engines as a unique feature. Rule-engines provide rule-based predictive model evaluation.



By Cho Ok-Hyeong, Rosella Software.

CMSR is data miner & rule-engine suite, specially designed for business applications with database focus. It supports various algorithms useful for business databases such as SOM-based neural clustering, neural network, hotspot drill-down analysis, cross table with deviation analysis, visualization charts, and so on.

CMSR-1
























CMSR stands for Cramer Modeling, Segmentation and Rules. Cramer comes from the fact that CMSR decision tree uses Cramer coefficients as splitting criteria. Unique feature of CMSR is rule-engines. Rule-engines provide rule-based predictive model evaluation. Two types of rule-engines are supported. One is sequential rule engine. The other is Rete-like rule-engine. This works based on forward chaining and rule activation. Both supports CMSR models such as neural clustering, neural network, decision tree, and regression models. Rules use subset of SQL-99 database query language. This makes it easier for SQL-users to learn.

CMSR-2
























A simple example can give a glance how rule-engines work. It is for the sequential rule engine. Assume the following predictive models;

  • clustering1 : neural clustering model
  • rgression1: regression model
  • nnet1: neural network model
  • nnet2: another neural network


The following is an example code of the sequential rule engine. Firstly, INPUT and OUTPUT fields are defined. INPUT variables are used in binding model parameters. Different models can use different set of INPUT parameters.

--- START OF CODE ---

// define input fields from database tables

DEFINE INPUT
COLUMN 1 GENDER STRING
COLUMN 2 RACE   STRING
COLUMN 3 MARITALSTATUS STRING
COLUMN 4 AGE    INTEGER
COLUMN 5 SALARY INTEGER
END;

// define out value types

DEFINE OUTPUT
COLUMN 1 RESPONSEFACTOR REAL
END;

// RME rules for determining output values

IF MODEL(clustering1) = 'Tagged' Then
RETURN MODEL(nnet1)
END;
RETURN AVG(MODEL(regression1), MAX(MODEL(nnet2), MODEL(nnet3)));

--- END OF CODE ---

If "clustering1" returns the value 'Tagged' then "nnet1" is evaluated and its value is returned. Otherwise it returns the average of between "regression1" and maximum of "nnet2" and "nnet3".

Rule-engines incorporating predictive models provide very powerful application platforms. It's easier to develop sophisticated rule-based models. However sophisticated killer applications are yet to be found!

More information about CMSR Data Miner & Rule-Engine Suite is available from the following page: http://www.roselladb.com/starprobe.htm
(Academic use of CMSR is free. Serious users only.)

Dr. Ok-Hyeong, Cho from Rosella Software can be contacted through cho@roselladb.com