Sunteți pe pagina 1din 20

Revista Romn de Interaciune Om-Calculator 6 (4) 2013, 357-376 MatrixRom

Criminal Detection O aplicaie pentru


identificarea infractorilor
Ana-Teodora Petrea, Adrian Iftene
Universitatea Alexandru Ioan Cuza din Iai, Facultatea de Informatic
General Berthelot 16, 700483, Iai
E-mail: {ana.petrea, adiftene}@info.uaic.ro
Rezumat. Prezenta lucrare i propune s vin n ajutorul celor ce doresc s identifice rapid
un posibil infractor, pe baza informaiilor, pe care le avem disponibile la un moment dat.
Sistemul construit folosete ca intrare informaie nestructurat n format text, ce poate
proveni din surse precum ziare, procese verbale de la locul faptei, declaraii ale martorilor,
etc.. Aceste texte sunt prelucrate folosind tehnici specifice lingvisticii computaionale,
pentru a extrage informaii relevante, pentru identificarea infractorului. Procesrile textuale
prezentate n cadrul acestei lucrri, permit (1) extragerea entitilor de tip nume (astfel se
poate obine un grup de suspeci sau locaia unde s-a ntmplat infraciunea), (2)
identificarea relaiilor ntre cuvinte, pentru extragerea de informaii utile (aa se pot obine
caracteristici fizice ale infractorilor sau tipul infraciunii sau arma folosit) i pentru
identificarea rolurilor (astfel se pot identifica victimele, rufctorii sau martorii). Aplicaia
permite n plus crearea unui portret robot pentru infractor, asocierea de poze sau portrete
robot la persoanele pe care le gestionm n aplicaie i afiarea pe o hart a locului
evenimentului. Considerm c, aplicaia ar putea fi utilizat ntr-un mediu real, n cadrul
diferitelor instituii, n care procesarea acestor tipuri de texte este realizat manual n
prezent, n primul rnd de ctre angajai.
Cuvinte cheie: Lingvistic computaional, Supraveghere pe Internet, Lingvistic
judiciar.
1. Introducere
Inteligena artificial este ramura informaticii ce are ca scop crearea de
maini inteligente, dup cum a definit-o unul dintre fondatorii ei, John
McCarthy. Punctul de pornire n crearea acestui domeniu a fost ipoteza
conform creia inteligena uman the sapience of Homo Sapiens are un
mecanism care poate fi descris n detaliu pentru ca, ulterior, sa fie simulat
de o main (McCarthy et al., 1995). Printre scopurile inteligenei artificiale
se numr crearea de maini capabile de judecat, cunoatere, nvare,
percepie i care s aib performane comparabile cu cele ale unui individ
uman.
358 Ana-Teodora Petrea, Adrian Iftene

Capacitatea de nelegere a mesajelor scrise este una dintre
caracteristicile distinctive ale inteligenei umane (Cristea et al., 2007). n
consecin, subdomenii ale Inteligenei artificiale se dedic ntocmai
procesrii limbajului natural. Lingvistica computaional este unul dintre ele
i are ca principal obiectiv modelarea computaional, statistic sau bazat
pe reguli, a limbajului natural. Ingineria lingvistic este domeniul
complementar lingvisticii computaionale, care fructific rezultatele acestuia
prin crearea de aplicaii care s serveasc sferelor industriale, de comer,
sociale, etc..
Lingvistica computaional a luat natere n jurul anului 1950, n SUA,
odat cu primele tentative de traducere automat (Hutchins, 1999). Dei,
iniial, acest domeniu a strnit interes i a atras numeroase investiii, dup
civa ani popularitatea sa a sczut dramatic, rezultatele fiind
nesatisfctoare. Cercetrile au continuat la o scar mult mai mic. Pn la
mijlocul anilor 1970, rezultatele au nceput s apar: sistemul Systran
(http://www.systransoft.com/) a nceput s fie folosit de instituii importante
precum Comisia Comunitilor Europene i Forele Aeriene ale SUA. ntre
anii 1980-1990, studiul traducerii automate a luat amploare peste tot n lume
i, totodat, au aprut noi direcii n cercetare: metodele statistice i
traducerea pe baz de exemple.
2. Elemente utilizate n lucrare
2.1 Extragerea de informaii
Acest domeniu unific obiective precum extragerea automat a unor
informaii dintr-un text nestructurat sau semi-structurat, adnotarea automat
i extragerea de coninuturi din documente multimedia (audio, video, foto).
Din cauza nivelului de dificultate ridicat al acestei sarcini, abordrile -
curente se concentreaz asupra extragerii unor anumite tipuri de informaii
din texte, care aparin unor domenii specifice (Peng i McCallum, 2006),
(Shimizu, 2006) sau se concentreaz pe extragerea de informaii din cadrul
reelelor sociale (Tulbure-Dombi et al., 2010). De asemenea, este acordat o
atenie deosebit extragerii de informaii de pe web (Chang et al., 2006).
Extragerea informaiilor necesit rezolvarea unei alte probleme
simplificarea textului, pentru a obine o structurare a informaiei prezente n
text. Printre subsarcinile acestui domeniu se numr:
Criminal Detection O aplicaie pentru identificarea infractorilor 359


1. Extragerea entitilor de tip nume, care poate include:
Recunoaterea entitilor de tip nume identificarea numelor de
persoane, organizaii, locaii, date, expresii numerice, etc. Tipurile
alese spre a fi identificate vor depinde de necesitile sistemului de
cutare documentar (Information Retrieval (IE) n englez);
Rezoluia anaforei: detecia de legturi corefereniale i anaforice,
pentru entitile descoperite;
Identificarea de relaii ntre entiti de tipuri diferite sau de acelai
tip.
2. Extragerea de informaii semi-structurate (tabele, comentarii) din
documente;
3. Analiza limbii i a vocabularului, pentru crearea de reguli care s determine
identificarea informaiilor dorite;
4. Colectarea unui vocabular de termeni relevani domeniului.
Prezenta lucrare prezint modul n care ne-am propus s extragem
informaii relevante dintr-un text, care descrie o infraciune i respect
anumite proprieti. Pentru acest lucru, s-a apelat la cteva dintre
subsarcinile menionate mai sus: identificarea entitilor de tip nume,
rezoluia coreferinei i altele precum analiza dependenelor sintactice ntre
cuvinte. n paginile care urmeaz, vom descrie pe fiecare dintre ele, pentru
ca n partea a doua a lucrrii s descriem modalitile folosite pentru
atingerea scopului iniial.
2.2 Identificarea entitilor de tip nume
Extragerea entitilor de tip nume este o cerin a lingvisticii
computaionale, care i propune s localizeze i s clasifice cuvintele sau
grupurile de cuvinte care apar ntr-un text i reprezint nume proprii
(Nadeau i Sekine, 2007). Acestea pot desemna persoane, organizaii,
locaii, expresii de timp, cantiti, valori monetare, procente, etc..
Termenul definit prin sintagma entitate de tip nume, acum
binecunoscut i larg utilizat n procesarea limbajului natural, a fost introdus
cu ocazia celei de-a asea ediii a Message Understanding Conference
(MUC-6) (Grishman i Sundheim, 1996). Scopul principal al conferinei
era, n acea perioad, extragerea de informaii structurate despre activitatea
companiilor sau cea a instituiilor importante, pe baza articolelor din ziare
sau din alte publicaii. Pentru realizarea acestei sarcini a fost semnalat
360 Ana-Teodora Petrea, Adrian Iftene

necesitatea unui modul responsabil cu identificarea unitilor de informaie
reprezentnd nume de persoane, organizaii, locaii i a expresiilor numerice
reprezentnd date calendaristice, cantiti, procente, etc. n acest context a
fost definit recunoaterea i clasificarea entitilor de tip nume (Named
Entity Recognition and Classification NERC) ca subsarcin a extragerii
de informaii din texte (Information Extraction IE). Ulterior, ea s-a
dovedit a fi necesar multor altor subdomenii ale procesrii limbajului
natural (Sekine et al., 1998), (Borthwick et al., 1998) i (Masayuki i
Matsumoto, 2003).
De-a lungul timpului, n abordarea acestui domeniu au fost considerate
mai multe strategii (Nadeau i Sekine, 2007) i (Iftene et al., 2011). Primele
dintre ele au constat n scrierea de algoritmi bazai pe regulile gramaticale
ale respectivului limbaj. Se urmrea crearea de algoritmi ct mai elaborai,
care s trateze n mod corect toate posibilele situaii, fr a crea ambiguiti,
pentru a obine performane ct mai bune. Precizm c performana unui
sistem de recunoatere a entitilor de tip nume este dat de parametrii
precizie i recall (Bikel et al., 1997).
3. Arhitectura aplicaiei. Componente principale
Aplicaia dezvoltat are dou componente care pot fi considerate, n mare
msur, independente una fa de cealalt:
Componenta principal comunic n mod direct cu utilizatorul, prin
intermediul unei interfee grafice i totodat, comand execuia celei
de-a doua componente. Aceasta este dezvoltat n C#, pe platforma
.NET i beneficiaz de o interfa grafic realizat cu ajutorul
Windows Presentation Foundation (WPF). Avnd la dispoziie dou
fiiere XML coninnd date referitoare la infraciunile petrecute ntr-
o anumit regiune i la persoanele care au nfptuit infraciunile
respective, aplicaia furnizeaz modaliti eficiente de vizualizare a
datelor i de cutare a informaiilor dorite ntr-o baz de date local.
Componenta auxiliar, care primind un text care descrie o
frdelege, este capabil s identifice n mod automat informaii
precum data, locaia infraciunii, numele victimelor, semnalmente
ale infractorului, etc.. Datele astfel identificate sunt stocate ntr-un
fiier XML i pot fi ulterior folosite de aplicaia principal. Aceast
aplicaie este una de tip consol i a fost creat n Java, folosind
Criminal Detection O aplicaie pentru identificarea infractorilor 361


mediul de dezvoltare NetBeans IDE 7.1.2.
Sistemul creat lucreaz cu informaii, respectiv texte n limba englez.
Descrierea detaliat a arhitecturii, a modului de proiectare i a
funcionalitilor oferite de fiecare modul al aplicaiei vor fi prezentate n
capitolele urmtoare.
3.1 Componenta de baz
Aplicaia de baz este realizat cu scopul de a facilita accesul simplu i
eficient la informaiile legate de infraciunile comise ntr-o anumit regiune,
pe o anumit perioad de timp. Aceasta permite filtrarea datelor, aplicnd
multiple criterii specificate de utilizator, urmnd ca vizualizarea rezultatelor
s fie realizat n funcie de necesitile i preferinele acestuia.
Scenariul de utilizare vizat este unul conform cruia clientul aplicaiei ar
fi o secie de poliie, care gestioneaz o baz de date de dimensiuni mari, ce
conine informaii despre infraciunile comise n regiunea pe care o
supravegheaz i despre infractorii care le-au comis. Atunci cnd se produce
o nou frdelege, este consultat baza de date, n vederea gsirii de posibili
suspeci. Datorit volumului mare de date, care trebuiesc interogate i a
multitudinii de factori, care trebuie s fie luai n considerare n identificarea
infractorului, o astfel de aplicaie are nevoie s ofere anumite faciliti, care
s o fac simplu de utilizat i s permit realizarea unei filtrri corecte i
complexe a informaiilor.
Aplicaia lucreaz cu informaiile obinute n urma ncrcrii a dou
fiiere XML:
Criminals.xml fiecare nod de tip Criminal (corespunztor unui
infractor) are noduri interioare i atribute n care sunt stocate
informaii precum: nume, prenume, apelativ, sex, naionalitate,
vrst, nlime, greutate, caracteristici ale feei (ochi, nas, etc.),
calea ctre o poz a infractorului .a.m.d. De asemenea, pentru
fiecare infractor avem asociate infraciunile pe care acesta le-a
comis. Tabelul 1 exemplific structura unui nod XML de tip
Criminal.
Tabelul 1: Nod XML de tip Criminal
<?xml version="1.0" encoding="utf-8"?>
<Criminals>
<Criminal Id="1">
362 Ana-Teodora Petrea, Adrian Iftene

<PersonalInformation>
<Nicknames>
<Nickname>The Zodiac</Nickname>
</Nicknames>
<FirstName>John</FirstName>
<LastName>Walker</LastName>
<State>Fugitive</State>
<Sex>Male</Sex>
<Nationality>Spanish</Nationality>
<Age>38</Age>
<Height>189</Height>
<Weight>180</Weight>
</PersonalInformation>
<Appearance>
<Picture>D:\CrimeWorld\Pozeinfractori\1.jpg</Picture>
<Skin Color="Black"/>
<Figure>Solid</Figure>
<Face Shape="Round" />
<Eyes Size="Big" Color="Blue" Shape="Hooded" />
<Lips Shape="Round" Size="" />
<Nose Size="Small" Shape="Concave"></Nose>
<Hair Style="Curly" Color="Dark" Length="Short" />
<DistinctiveSigns>
<DistinctiveSign Sign="Tattoo" Position="Neck" />
</DistinctiveSigns>
</Appearance>
<Crimes>
<Crime Id="1" />
</Crimes>
</Criminal>
</Criminals>
Crimes.xml un nod de tip Crime (corespunztor unei infraciuni)
conine urmtoarele informaii: id-urile fptailor, numele
victimelor, data i localitatea n care s-a produs frdelegea,
categoriile n care se nscrie aceasta (crim, jaf, etc.) i armele
utilizate de fpta (arm de foc, violen fizic, etc.). Tabelul 2
ilustreaz structura unui nod XML de tip Crime. Se poate observa
legtura dintre acest nod i cel din Tabelul 1.
Tabelul 2: Nod XML de tip Crime
<?xml version="1.0" encoding="utf-8"?>
<Crimes>
<Crime Id="1">
<Criminals>
<Criminal Id="1"></Criminal>
</Criminals>
<Victims>
<Victim>
<LastName>Fox</LastName>
<FirstName>Meghan</FirstName>
</Victim>
</Victims>
<Date>
Criminal Detection O aplicaie pentru identificarea infractorilor 363


<Year>2011</Year>
<Month>04</Month>
<Day>06</Day>
</Date>
<Location>
<City>Philipsburg</City>
</Location>
<Categories>
<Category>Murder</Category>
</Categories>
<Weapons>
<Weapon>Gun</Weapon>
</Weapons>
</Crime>
</Crimes>

n urma ncrcrii informaiilor din cele dou fiiere, vom avea la
dispoziie o list de infraciuni i una de infractori (fiecare avnd anumite
caracteristici) i relaiile dintre ele (vom ti ce infractorul a nfptuit o
anumit frdelege i, implicit, ce frdelegi a comis un infractor).
3.2 Ferestre i funcionaliti
Formularul de start al aplicaiei are rolul de a asigura accesul ctre celelalte
ferestre, pe care le vom prezenta n continuare. Utilizatorul va alege una din
opiuni, n funcie de funcionalitatea de care are nevoie la un moment dat.
Fereastra de cutare a infractorilor
Aceast fereastr conine o list care, la un anumit moment, va conine
infractorii ce prezint caracteristicile selectate de utilizator la momentul
respectiv. n momentul deschiderii ferestrei, lista conine toi rufctorii
din baza de date. Modaliti de cutare disponibile:
Dup nume sau alias: cutarea se face pe baza informaiilor ce se
gsesc oriunde n cmpurile nume i alias, ignornd literele mari sau
mici. (vezi Figura 1).
Exclusiv dup nume, folosind Speech Recognition. Dac este
activat recunoaterea vocal, (bifnd opiunea corespunztoare din
Figura 1), programul va putea recunoate rostirea numelui unui
infractor aflat n baza de date i l va afia n lista de rezultate.
Desigur, n cazul n care exist mai muli infractori cu acelai nume,
vor fi afiai toi. Pentru ca aceast component s funcioneze, este
364 Ana-Teodora Petrea, Adrian Iftene

necesar ca un microfon funcional s fie conectat la calculator i s
fie deschis. Deoarece dorim ca aplicaia s fie capabil s
recunoasc infractorii dup numele lor, trebuie s ntocmim o list
care s conin toate aceste nume. Una din problemele dificile a
aprut din faptul c irurile de caractere formate prin concatenarea
numelui i a prenumelui unui infractor pot fi destul de lungi. De
asemenea, deoarece unele nume conin cuvinte comune, sau foarte
asemntoare, se pot crea confuzii i pot fi afiate rezultate
incorecte. De aceea, s-a ales o alt modalitate de recunoatere, care
va fi descris n continuare:
o Iniial, s-a creat un ir de nume i unul de prenume, n
care fiecare cuvnt este introdus o singur dat, chiar
dac se afl n componena numelor mai multor
infractori;
o n continuare, s-a creat un obiect de tip GrammarBuilder,
care a fost configurat astfel nct s recunoasc rostirea
unui cuvnt din lista de prenume, urmat de rostirea unui
cuvnt din lista de nume;
o n etapa urmtoare se verific dac irul astfel format
desemneaz numele unui infractor i n caz afirmativ, se
adaug numele infractorul n lista de rezultate.

Figura 1. Formular cutare infractor
Criminal Detection O aplicaie pentru identificarea infractorilor 365


De asemenea, la rostirea frazei Display All este afiat lista
complet a infractorilor.
Advanced Search (opiunea din Figura 1 este prezentat detaliat n
Figura 2), la apsarea acestui buton se deschide un alt formular, ce
permite utilizatorului s selecteze orice caracteristic a unei
infraciuni sau a unui infractor i o valoare pentru aceast
caracteristic. Astfel, el i poate construi o list de criterii de
cutare, pe care le poate aplica concomitent. Conform coninutului
listei de criterii stabilite n Figura 2, sunt cutai infractorii de sex
masculin, care au comis infraciuni din categoria crim. n cazul n
care au fost selectate mai multe valori pentru aceeai caracteristic,
vor fi alei infractorii care prezint una dintre acestea. De asemenea,
dac un infractor nu are nicio valoare pentru caracteristica respectiv
(de exemplu, dac nu i se cunoate culoarea ochilor), acesta nu este
exclus ca potenial suspect.

Figura 2. Formular criterii de cutare
366 Ana-Teodora Petrea, Adrian Iftene

Precizm faptul c, dac formularul n care se introduc criteriile de
cutare este nchis, el poate fi deschis din nou i va afia aceleai criterii de
cutare selectate la ultima folosire a acestuia.
Fereastra de localizare a infraciunilor
Fereastra destinat localizrii infraciunilor afieaz, n momentul
deschiderii, o hart a regiunii a crei activitate infracional o monitorizm.
Pe hart sunt afiate semne distinctive n locaiile corespunztoare
infraciunilor care se gsesc n baza de date, fiecare dintre acestea aprnd
n dreptul oraului n care a avut loc. Semnele corespunztoare infraciunilor
rezolvate apar colorate n albastru, iar cele corespunztoare infraciunilor ai
cror fptai nu au fost nc identificai sunt marcate cu rou.

Figura 3. Formular cutare infraciune
Atunci cnd utilizatorul selecteaz una dintre semnele afiate pe hart, se
deschide o fereastr ce conine informaii despre infraciunea respectiv
(numele infractorilor, numele victimelor, data i localitatea n care a avut
loc infraciunea), precum i poza infractorului (vezi Figura 3).
Pentru ca utilizatorul s poat ajunge uor la profilul rufctorului care a
comis o anumit fapt, acesta trebuie doar s apese pe poza acestuia i se va
deschide pagina ce conine profilul detaliat al acestuia.
Criminal Detection O aplicaie pentru identificarea infractorilor 367


Similar cutrii de infractori, cutarea locaiilor n care au avut loc
infraciunile poate fi realizat dup o serie de criterii de cutare avansate.
Acestea pot fi referitoare la frdelege n sine (dat, locaie, tipul
infraciunii, etc.), ct i la infractorii care au comis acea infraciune (sex,
caracteristici fizice, vrst, etc.). Formularul care permite selectarea i
aplicarea acestor criterii este cel prezentat mai sus n Figura 2. Vizualizarea
rezultatelor se va face, de aceast dat, pe o hart, prin afiarea locaiilor
corespunztoare infraciunilor obinute n procesul de cutare i filtrare.
Pentru afiarea hrii, respectiv a semnelor distinctive corespunztoare
locaiilor infraciunilor, s-a folosit biblioteca
Microsoft.Maps.MapControl.WPF (http://msdn. microsoft.com/en-
us/library/microsoft.maps.mapcontrol.wpf.aspx). Pentru fiecare infraciune,
s-a efectuat o cerere la serviciul Bing Maps cernd coordonatele
(longitudinea i latitudinea) locaiei infraciunii. Apoi, s-au scalat
coordonatele obinute la dimensiunea harii i s-au afiat semnele distinctive
n punctele astfel obinute.
Fereastra de realizare a portretului robot
n situaia n care un agent de poliie dorete s identifice posibili
suspeci pentru o frdelege, acesta va selecta criteriile de cutare conform
informaiilor care i sunt puse la dispoziie. Aceste informaii sunt, la rndul
lor, furnizate de alte persoane precum martori, victime, persoane apropiate
victimelor, etc. Un pas important n gsirea unui infractor a crui identitate
nu este cunoscut este ntocmirea unui portret robot. Avnd acest lucru n
minte, s-a ataat formularului de selectare a criteriilor de cutare o
component suplimentar.
Unele caracteristici fizice umane sunt mai uor de identificat prin
intermediul imaginilor, dect prin denumirea lor. De altfel, la ntocmirea
portretelor robot, martorii sunt lsai s aleag, dintre mai multe poze, pe
cea care este cea mai apropiat de nfiarea infractorului.
Atunci cnd utilizatorul va alege una din opiunile: forma feei, forma
ochilor, forma nasului sau forma buzelor, se va activa butonul Choose.
Apsarea lui are ca efect deschiderea unei ferestre n care utilizatorul va
putea vizualiza fotografii corespunztoare fiecrei forme a feei, nasului,
ochilor, etc.. Astfel, el va putea alege pentru fiecare caracteristic varianta
care se potrivete cel mai bine descrierii infractorului cutat. Dup acest
368 Ana-Teodora Petrea, Adrian Iftene

pas, caracteristica aleas va fi completat n mod automat n portretul robot
al infractorului. n figurile 4, 5 se pot observa pentru forma feei dou din
variantele disponibile.


Figura 4. Fa oval Figura 5. Fa dreptunghiular
Pozele au fost create cu ajutorul programului FaceGen Modeller
(http://www.facegen.com/), un program de modelare 3D a feei umane.
Printre facilitile lui principale se numr: posibilitatea de a edita manual
fiecare element component al feei, modelarea n funcie de ras, vrst, sex.
Dup obinerea nfirii dorite, fotografia se poate exporta n format 3D
sau 2D. Caracteristicile care au fost modelate cu ajutorul acestui modul
sunt: ochii, nasul, buzele i forma feei.
Fereastra pentru vizualizarea profilului unui infractor
Fereastra cu profilul unui infractor conine toate informaiile despre
acesta: date personale, caracteristicile feei, toate informaiile disponibile
despre infraciunile comise, precum i poza sa, dac o astfel de imagine este
disponibil.
n Figura 6 se poate vedea coninutul profilului unui infractor i
modalitatea de afiare a informaiilor despre acesta.
n cazul n care un infractor nu are nicio fotografie n baza de date, n
locul acesteia va aprea o imagine standard, ilustrat n Figura 7. Atunci
cnd cursorul mouse-ului se va muta deasupra ochilor, nasului sau a
buzelor, se va deschide o fereastr n care vor fi afiate, pentru infractorul
Criminal Detection O aplicaie pentru identificarea infractorilor 369


respectiv, caracteristicile respectivei trsturi a feei (n Figura 7 se pot
observa un exemplu cu detaliile despre ochi).

Figura 6. Profil infractor
Vizualizarea profilului unui infractor este posibil din oricare dintre
formularele prezentate anterior.

Figura 7. Deschiderea ferestrei cu detalii despre ochi
370 Ana-Teodora Petrea, Adrian Iftene

Fereastra dedicat procesrii de texte
Aceast fereastr permite selectarea unui fiier text n care este descris o
frdelege i sunt specificate semnalmentele infractorului, avnd ca rezultat
afiarea unui tabel cu poteniali suspeci pentru noua frdelege. Utilizatorul
i poate alege fiierul pe care s-l proceseze i calea la care s fie generat
fiierul de ieire. Pentru testele pe care le-am realizat pn acuma am folosit
informaii n limba englez preluate din ziare, cu declaraii ale martorilor
sau ale poliiei.
Restriciile impuse textului sunt dimensiunea relativ restrns i
coninutul, care trebuie s ofere informaii relevante despre o infraciune i
sa fie concentrat pe informaii concrete.
Datele extrase sunt mpachetate ntr-un fiier XML, pentru folosirea lor
ulterioar n cadrul proiectului principal.
Aplicaia efectueaz urmtoarele tipuri de procesri textuale asupra
fiierului ncrcat:
Identificarea entitilor de tip nume - Entitile care ne intereseaz
momentan sunt cele care desemneaz nume de persoane, localiti i
date, ntruct ne dorim identificarea numelor victimelor, infractorilor
acolo unde este cazul, a locaiei infraciunii i a datei la care aceasta
a fost comis.
Pentru realizarea acestei sarcini, s-au folosit resursele i metodele puse la
dispoziie de binecunoscutul Gate, salvnd toate entitile gsite i frecvena
apariiei lor ntr-un fiier XML.
Aceast component a fost completat cu un modul capabil s identifice
numele aceleai persoane, chiar dac acesta este scris n forme diferite. De
exemplu, Tairre Lynne West, T. L. West i Tairee West erau marcate iniial
ca fiind trei entiti diferite, dar dup mbunire era pstrat o singur
entitate, entitatea cu forma cea mai lung a numelui. n cazul de mai sus se
pstreaz forma Tairre Lynne West.
De asemenea, s-a folosit biblioteca StringToTime, pentru a transpune
descrierile textuale ale datelor ntr-un format standard, care s permit
extragerea zilei, lunii i anului corespunztor. Astfel, dac n text este
specificat faptul c infraciunea a avut loc vinerea trecut, vom putea ti
data exact a acestei zile i vom putea lucra mai departe cu aceast
informaie .
n cazul entitilor de tip Locaie, s-a extras tipul locaiei desemnate:
ora, ar, strad, etc. Acest lucru era necesar pentru a identifica oraul n
Criminal Detection O aplicaie pentru identificarea infractorilor 371


care a avut loc infraciunea, alte detalii despre ar, strad, etc. fiind
irelevante n contextul creat. S-a folosit aplicaia Gate de adnotare a
textului, care permite adugarea de tag-uri specifice pentru fiecare tip de
entitate descoperit.
Rezoluia anaforei din lista de lanuri corefereniale identificate n
text cu ajutorul parserului Stanford NLP, s-au folosit urmtoarele
informaii: coreferinele, tipul fiecreia (nominal, pronominal,
propriu), coreferina principal.
Colecia de lanuri corefereniale a fost scanat i organizat n dou
categorii, care au fost procesate mai departe n moduri diferite: cele care se
refer la o entitate de tip nume de persoan (una dintre coreferine conine
numele unei persoane) i restul lanurilor, care conin doar coreferine
nominale i pronominale.
Reguli pentru identificarea relaiilor ntre cuvinte cu ajutorul
parserului Stanford NLP s-au extras relaii sintactice i morfologice
ntre cuvintele unei propoziii. Cu ajutorul acestora, pentru o
propoziie, s-au construit o colecie de dependene de diferite tipuri.
O dependen este constituit din dou cuvinte, ntre care se
stabilete un anumit tip de relaie (sintactic sau morfologic).
Primul dintre cuvinte are rolul de guvernant i cel de-al doilea este
numit dependent. Exemple de relaii extrase din propoziia: Bell,
based in Los Angeles, makes and distributes electronic, computer
and building products.: nsubj(make-8, Bell-1), partmod(Bell-1,
based-3), root(ROOT-0, makes-8), etc.
Aceste dependine pe propoziii au fost grupate, pentru a se modulariza
procesarea lor:
Reguli aplicate pentru extragerea de cunoatere dup obinerea
entitilor de tip nume din text, a lanurilor corefereniale i a
dependenelor din fiecare propoziie, s-au creat, pe baza acestora, o
mulime de reguli care s permit identificarea unor anumite tipuri
de informaii din text.
Identificarea rolurilor mai nti, s-au grupat lanurile
corefereniale n funcie de tipul coreferinei principale. Astfel,
lanurile care refer o persoan sunt analizate pentru identificarea
rolurilor fiecrui personaj, n contextul infraciunii: rufctor,
victim, martor sau alt tip de person. Pentru a identifica un
372 Ana-Teodora Petrea, Adrian Iftene

infractor s-a folosit o metoda bazat pe relaiile gramaticale dintre
cuvinte i coreferinele, ce refer numele persoanei respective.
De asemenea, s-au folosit ca resurse colecii de substantive, verbe,
adjective care refer infraciuni. Exemple de astfel de verbe: stab, injure,
kill, rob, steal, shoot, abuse, assault, attack, beat, etc.
S-au stabilit tipurile de dependine care apar n interiorul propoziiilor,
atunci cnd se exprim faptul c o persoan a comis o frdelege. Cteva
dintre acestea sunt:
dependene de tip nsubj (subiect-predicat), n care subiectul este un
cuvnt din componena numelui personajului respectiv i verbul
exprim cominterea unei infraciuni.
Exemplu: Dan Scott severely injured a woman last night, on the street.
nsubj(injured, Scott).
dependene de tip nsubjpass (subiect-verb diateza pasiv), n care
subiectul este un cuvnt din componena numelui personajului
respectiv i verbul exprim faptul c infractorul a fost descoperit,
capturat, pedepsit. S-a folosit o colecie de verbe care indic acest
lucru.
Exemplu: Dan Scott was arrested Monday morning, at his house.
nsubjpass(arrested, Scott).
dependene de tip appos (substantiv-apoziie), n care substantivul
este un cuvnt din componena numelui personajului respectiv i
apoziia conine un substantiv care denumete un rufctor. n acest
caz, s-a folosit o colecie de substantive care exprim acest lucru.
Exemplu: Dan Scott, the criminal that the police has a hard time
capturing, claimed another victim. appos(Scott, criminal).
dependene de tip cop (verb auxiliar-nume predicativ), n care
numele predicativ denumete un rufctor.
Exemplu: Dan Scott is the killer that the police was searching for.
cop(killer, is).
Dependenele de mai sus sunt cutate n propoziiile care au ca subiect
numele unei persoane. S-au gsit o serie de dependene i pentru
propoziiile n care numele personajului este prezent, dar nu ca subiect al
propoziiei. Cteva dintre acestea sunt:
dependene de tip agent. Exemplu: The young girl was assaulted by
Dan Scott. agent(assaulted, Scott).
dependene de tip dobj. Exemplu: The police captured Dan Scott,
Criminal Detection O aplicaie pentru identificarea infractorilor 373


after looking for him for three days. dobj(captured, Scott)
Modalitatea de identificare a victimelor este similar, fiind formulate, n
mod evident, alte reguli.
Identificarea fragmentelor de text relevante s-a fcut pe baza
textelor analizate anterior, n care s-au gsit roluri de victime,
rufctori sau martori. Cutarea informaiilor despre caracteristicile
fizice ale infractorilor, categoria din care face parte infraciunea, etc. va
fi efectuat numai n propoziiile selectate n urma efecturii acestui
pas. Acest lucru a fost realizat pentru a evita identificarea informaiilor
din propoziii, care ofer detalii, ce nu au o relevan att de mare,
pentru atingerea scopului iniial.
Extragerea caracteristicilor fizice ale infractorilor s-a realizat cu
metode specifice urmtoarelor caracteristici:
o Caracteristici ale feei (forma feei, ochilor, nasului, buzelor,
dimensiunea acestora, culoarea pielii, culoarea ochilor,
culoarea i lungimea prului, etc.). Dependenele cutate sunt
cele de tip amod(substantiv-adjectiv), iar substantivele luate n
considerare sunt din urmtoarele categorii:
face, eyes, hair, nose, lips, skin, figure, etc. Exemple:
round face, blue eyes, full lips, solid figure, long
hair, etc.
shape, color, size, style, length, type, etc. Exemple:
medium length (hair), square shape (face), blue color
(eyes), small size (nose), afro style (hair), etc.
o Vrst, nlime, greutate Dependenele avute n vedere
pentru realizarea acestei sarcini sunt cele de tipurile:
npadvmod Exemple: The director is 65 years old.
npadvmod(old, years). He is 6 feet long. npadvmod
(long, feet);
num Exemple: The director is 65 years old. num
(years, 65). He is 6 feet long. num (feet, 6).
Categorii de infraciuni i arme folosite - Pentru extragerea acestor
tipuri de date, s-au folosit dou liste de substantive populate anterior
cu posibile categorii de infraciuni i tipuri de arme, care au fost
cutate n rndul relaiilor ce au n componen substantive.
Dup procesarea textului, rezultatele sunt mpachetate ntr-un fiier
XML, iar caracteristicile extrase din text sunt ncrcate n memorie.
374 Ana-Teodora Petrea, Adrian Iftene

Infractorii care prezint mcar o parte dintre aceste caracteristici sunt
selectai i adugai ntr-un tabel, care afieaz: numele i poza
rufctorului, caracteristicile care se potrivesc i cele care nu se potrivesc
cu cele extrase din text, precum i un procent de asemnare. Acest procent
este calculat prin raportul dintre numrul de caracteristici ntre care exist o
potrivire i numrul total al caracteristicilor descoperite n text. Modalitatea
de calcul ar putea fi extins, oferind posibilitatea ponderrii factorilor, cu
scopul rafinrii i mbuntirii rezultatelor.
Figura 8 conine o exemplificare a structurii i coninutului acestui tabel.
Pentru accesul uor ctre profilul unui infractor care figureaz n tabel,
utilizatorul trebuie numai s efectueze un click pe poza acestuia. Pe viitor
dorim s ponderm caracteristicile identificate n funcie de relevana lor, cu
scopul de a mbunti predicia final.

Figura 8: Tabel rezultate potriviri
Momentan, aplicaia a fost folosit oferindu-i la intrare articole de ziare
preluate de pe Internet, dar ea ar putea fi folosit pe viitor avnd la intrare
declaraiile martorilor sau observaiile celor care ancheteaz o infraciune.
4. Concluzii
Lingvistica Computaional este o ramur destul de dificil de abordat a
Inteligenei Artificiale, acest lucru datorndu-se nivelului sporit de
complexitate al limbii fiecrui popor. Progresele care s-au fcut n ultimii
Criminal Detection O aplicaie pentru identificarea infractorilor 375


ani permit, ns, folosirea cu succes a uneltelor de procesare existente pentru
limba englez.
Aceast lucrare i-a propus s fructifice rezultatele obinute pn acum n
domeniu, pentru a crea un sistem care s poat extrage dintr-un text care
descrie o infraciune, acele informaii care sunt relevante pentru
identificarea infractorului.
Pentru atingerea acestui obiectiv, s-a creat contextul n care acest sistem
s poat funciona, adic aplicaia principal, care a fost completat i cu
alte funcionaliti, pe care le considerm folositoare i necesare.
Alegerea unor parametri precum datele care s fie stocate n baza de date
au depins de informaiile pe care le-am obinut din ziare. n funcie de sursa
acestora, pe viitor, acestea pot fi nlocuite fr a fi fcute schimbri majore
structurii aplicaiei. Schimbrile necesare cuprind modificarea schemei
fiierelor XML aferente i, eventual, adugarea de reguli pentru extragerea
respectivei categorii de date.
n aceste condiii, considerm c aplicaia ar putea fi utilizat ntr-un
mediu real, n cadrul diferitelor instituii n care procesarea acestor tipuri de
texte este realizat de angajai.
Direciile de dezvoltare pentru o astfel de aplicaie sunt, n mod evident,
numeroase. Proiectul poate fi extins cu posibilitatea procesrii unor texte de
dimensiuni mai mari, care conin resurse multimedia (poze, videoclipuri).
Mulumiri
Cercetarea prezentat n aceast lucrare a fost finanat de ctre proiectul
MUCKE (Multimedia and User Credibility Knowledge Extraction), de tip
ERA-NET CHIST-ERA, numrul 2 CHIST-ERA/01.10.2012.
Referine
Bikel, D. M., Miller, S., Schwartz, R., Weischedel, R. Nymble: a High-
Performance Learning Name-finder. Proc. Conference on Applied Natural
Language Processing, 1997.
Borthwick, A., Sterling, J., Agichtein, E., Grishman, R. Exploiting Diverse
Knowledge Sources via Maximum Entropy in Named Entity Recognition. In:
Proceedings of the 6th Workshop on Very Large Corpora, 1998.
376 Ana-Teodora Petrea, Adrian Iftene

Chang, C. H., Kayed, M., Girgis, M. R., Shaalan, K. A Survey of Web Information
Extraction Systems. IEEE Transactions on Knowledge and Data Engineering,
vol. 18, no. 10, Pp. 1411-1428, Oct. 2006,
Cristea, D., Ionita, M., Pistol, I. Inteligena Artificial. Editura Universitii
Al.I.Cuza, Iai, 2007.
Grishman, R. and B. Sundheim. Message understanding conference- 6: A brief
history. In Proceedings of COLING, 1996.
Hutchins, J. Retrospect and prospect in computer-based translation. In Machine
Translation Summit VII, 13th-17th September 1999, Kent Ridge Labs,
Singapore. Proceedings of MT Summit VII MT in the great translation era
(Tokyo: AAMT), Pp. 30-44, 1999.
Iftene, A., Trandab, D., Toader, M., Corci, M. Named Entity Recognition for
Romanian. In Proceedings of the 3th Conference on Knowledge Engineering:
Principles and Techniques Conference (KEPT2011). In Studia Universitatis,
Babe Bolyai, Vol. 2, Cluj-Napoca, Romnia, Iulie 4-6, Pp.19-24, 2011.
Masayuki, A., Matsumoto, Y. Japanese Named Entity Extraction with Redundant
Morphological Analysis. In Proc. Human Language Technology conference
North American chapter of the Association for Computational Linguistic, 2003.
McCarthy, J., Minsky, M., Rochester, N., Shannon, C. A. Proposal for the
Dartmouth Summer Research Project on Artificial Intelligence. 1955.
Nadeau, D., Sekine, S. A Survey of Named Entity Recognition and Classification.
2007.
Peng, F., McCallum, A. Information extraction from research papers using
conditional random fields. In Information Processing & Management, vol. 42,
nr. 963, 2006.
Sekine, S., Grishman, R., Shinnou, H. A Decision Tree Method for Finding and
Classifying Names in Japanese Texts. In: Proceedings of the Sixth Workshop on
Very Large Corpora, 1998.
Shimizu, N. Extracting Frame-based Knowledge Representation from Route
Instructions. In HLT-NAACLWs. on Computationally Hard Problems and Joint
Inference in Speech and Language Processing. Late Breaking Paper. 2006.
Tulbure-Dombi, M., Amariei, D., Iftene, A. Supravegherea pe Internet:
Extragerea de informaii de pe Facebook, Twitter, Wikipedia i Yahoo.
Conferina RoCHI 2010, 139-140, Bucureti, 2010

S-ar putea să vă placă și