A Learning System for Decision Support in Telecommunications

20
A Learning System for Decision Support in Telecommunications Filip Železný, Olga Štěpánková (Czech Technical University in Prague) Jiří Zídek (Atlantis Telecom)

description

A Learning System for Decision Support in Telecommunications. Filip Železný, Olga Štěpánková (Czech Technical University in Prague) Jiří Zídek (Atlantis Telecom). Where we come from. Czech Technical University in Prague Faculty of Electrical Engineering Dept. of Cybernetics - PowerPoint PPT Presentation

Transcript of A Learning System for Decision Support in Telecommunications

Page 1: A Learning System for Decision Support in Telecommunications

A Learning System for Decision Support in Telecommunications

Filip Železný, Olga Štěpánková(Czech Technical University in Prague)

Jiří Zídek(Atlantis Telecom)

Page 2: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Where we come fromCzech Technical University in Prague

Faculty of Electrical Engineering Dept. of Cybernetics

The Gerstner Laboratory for Intelligent Decision Making and Control

Machine Learning Group

http://cyber.felk.cvut.cz/gerstner/machine-learning

Page 3: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

The ML Group Research on ML principles

Instance-based learning, Relational learning, Randomization in search, etc.

Application projects Mainly data mining in areas such as Medical (heart surgery mortality predictions,

subgroup discovery in Spa-patients), Industrial (Intelligent pump diagnosis), etc.

Telecommunications

Page 4: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

The telecommunication project

“Intelligent Telephone Assistant” Equipe a private branch exchange (PBX,

switchboard) with intelligent behaviour Helps callers automatically

E.g. Find the correct person to connect to the caller upon recognition of the caller’s number

Learns from previous events I.e. from calls assisted by humans Stored in a logging file of the exchange

Page 5: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

What we should learn from… Logging (history) file of the PBX

operationdate initime dirnum evtime calltypestatusinforelcausesetupmodeenafeatfeatinfonature2recno_call called answer_trucompanydept id. . . . . . . . .. . . . . . . . .000802 085151 32 085151 E LI D EX 405353377 005001 FE FE 17664000802 085158 10 085201 E LI D LO 32 0 4 17665000802 085201 10 085205 E LI D DR 32 LO 32 0 4 17666000802 085207 31 085207 E LI D EX 85131111 005009 FE FE 17669000802 085151 32 085205 E LB TR D DR 6 EX 405353377 005001 FE FE 17667000802 085158 32 085205 S LB TR D LO 10 10 10 0 0 17668000802 085218 11 085218 E LI D LO 31 0 3 17670000802 085218 11 085223 E LI D DR 31 LO 31 0 3 17671000802 085207 31 085223 E LB TR D DR 72 EX 85131111 005009 FE FE 17672000802 085214 31 085223 S LB TR D LO 11 11 11 0 0 17673000802 085223 11 085339 E LB A DR 31 EX 85131111 005009 FE FE 17674000802 085205 10 085424 E LB A DR 32 EX 405353377 005001 FE FE 17675. . . . . . . . .. . . . . . . . .. . . . . . . . .

Page 6: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

… is not so obvious

date initime dirnum evtime calltypestatusinforelcausesetupmodeenafeatfeatinfonature2recno_call called answer_trucompanydept id. . . . . . . . .. . . . . . . . .000802 085151 32 085151 E LI D EX 405353377 005001 FE FE 17664000802 085158 10 085201 E LI D LO 32 0 4 17665000802 085201 10 085205 E LI D DR 32 LO 32 0 4 17666000802 085207 31 085207 E LI D EX 85131111 005009 FE FE 17669000802 085151 32 085205 E LB TR D DR 6 EX 405353377 005001 FE FE 17667000802 085158 32 085205 S LB TR D LO 10 10 10 0 0 17668000802 085218 11 085218 E LI D LO 31 0 3 17670000802 085218 11 085223 E LI D DR 31 LO 31 0 3 17671000802 085207 31 085223 E LB TR D DR 72 EX 85131111 005009 FE FE 17672000802 085214 31 085223 S LB TR D LO 11 11 11 0 0 17673000802 085223 11 085339 E LB A DR 31 EX 85131111 005009 FE FE 17674000802 085205 10 085424 E LB A DR 32 EX 405353377 005001 FE FE 17675. . . . . . . . .. . . . . . . . .. . . . . . . . .

One event (transferred call)

Another simultaneous event (transferred call)

Related records spread

Page 7: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

One time axisOne event (transferred call)

Another event (transferred call)

Page 8: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Therefore, the plan is to:1. Reconstruct stored events

• Associate related records• Those related to one event (incoming call)• We know how (expert knowledge)

• Recognize the sequence of actions in events• E.g. transfers or attempts to transfer the caller

btw. internal lines• We do not know how (materials do not say

how actions map to sequences of records)

2. Learn decision support rules from the event descriptions

Page 9: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Or, in boxes:

TelephoneExchange

LoggingData

EventDescriptions

EventReconstruction

Prediction

Rules

Telecomm.Traffic

Page 10: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Learning action patterns

t(time(19,43,48),[1,2],time(19,43,48),e,li,empty,d,empty,empty,ex, [0,6,0,2,3,3,0,5,3,3],empty,anstr([0,0,5,0,0,0]),fe,fe,id(4)).t(time(19,43,48),[1,2],time(19,43,50),e,lb,e(relcause),d,dr,06,ex [0,6,0,0,0,0,0,0,0,0],empty,anstr([0,0,5,0,0,0]),fe,fe,id(5)).ex_ans([0,6,0,2,3,3,0,5,3,3],[1,2]).hangsup([0,6,0,2,3,3,0,5,3,3]).

This was stored

Generate event examples

(manual generation)

Nature of examples Consist of variable number of records Contain structured data types Use multiple relations

This “happened”(our description)

Page 11: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Descriptive ILP setting ILP = Inductive Logic Programming Find first-order clauses true in all

given interpretations Our examples ~ interpretations May also use a background theory to prove

clauses Clauses must comply to a given

grammar E.g. heads (conclusions) consist of names of

actions

Page 12: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Rules One of the rules

“same_num/2” defined in the background theory

ex_ans(EX1,DN1):-

t(D1,IT1,DN1,ET1,e,li,empty,d,EF1,FI1,ex,EX1,empty,ANTR1,CO1,DE1,ID1),

t(D2,IT2,DN2,ET2,e,lb,RC2,d,EF2,FI2,ex,EX2,empty,ANTR2,CO2,DE2,ID2)

IT2=ET1,

ANTR2=ANTR1,

same_num(EX1,EX2).

Action “external answered call” occurred if…

... these records were stored,

connected in time,

with the same answering port

With the “same” caller’s id. (May have different suffices)

Page 13: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Using the rules…?-recognize([id(60216),id(60218),id(60224),id(60228),

id(60232),id(60239)])

EVENT STARTS.648256849 rings on 32 - call accepted,32 attempts to transfer 0648256849 to 16 with

notification, but 16 refused,32 notifies 12 and transfers 0648256849 to 12,12 attempts to transfer 0648256849 to 28 with

notification, but 28 does not respond,12 notifies 26 and transfers 0648256849 to 26,call terminated.EVENT STOPS.

Page 14: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Event recognition performance Proportion of recognized events

0

500

1000

1500

2000

2500

3000

3500

4000

4500

1 2 3 4 5 6 7 8 9 10

Event length

No

. o

f even

ts

Extracted

Recognized

Page 15: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Recognition allowed for visualisation Frequency of internal transfers of external incoming calls Some interesting

observations!

Page 16: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Predicting within events (1) Ongoing work Training data

Structural representation of eventsincoming

( date(8,28),time(15,29,19),[0,3,1,5,4,5,9,6,7,5],

[3,2], transfer([[2,9],[2,8]],

transfer([[2,6]],unavailable

) )).

Page 17: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Predicting within events (2) Background knowledge relations

Predicates that Map dates to weekdays

(client habits may depend of particular weekdays)

Extract prefix of incoming numbers Binds callers from the same company, region etc.

Etc. We try to collect more relevant background

knowledge E.g. regular absence of employees, etc.

Page 18: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Predictive ILP setting Input:

Positive example set P (Prolog facts) Negative example set N (Prolog facts) Background knowledge B (Prolog theory)

Output Hypothesis H (Prolog theory) Such that H & B logically entails

all p P no n N

Page 19: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Predictive rules Example of a rule found:

“if a number starting with 0250- calls the receptionist on Monday, it is always transferred to line 10.”

Such rules allow for Decision support Automation

Problem: Small “coverage” of found rules Need more relevant background knowledge

Page 20: A Learning System for Decision Support in Telecommunications

Železný, Štěpánková, Zídek: A Learning System for Decision Support in Telecommunications

Conclusions Inductive Logic Programming serves

very well for induction from structural and multirelational telecommunication data

Successful reconstruction of events from switchboard logging file

Some signs of predictive induction, but we must collect more relevant background knowledge