Beres ,escu Mihai-Cristian [628531]
UNIVERSITATEA DE MEDICIN ˘A, FARMACIE, S ,TIINT ,E
S,I TEHNOLOGIE ”GEORGE EMIL PALADE”
DIN T ˆARGU MURES ,
FACULTATEA DE INGINERIE S ,I
TEHNOLOGIA INFORMAT ,IEI
Programul de studii: Informatic ˘a
LUCRARE DE LICENT ,˘A
Coordonator s ,tiint ,ific:
Lector Dr. Lefkovits Szidonia Absolvent: [anonimizat] ,escu Mihai-Cristian
TˆARGU MURES ,
2020
UNIVERSITATEA DE MEDICIN ˘A, FARMACIE, S ,TIINT ,E
S,I TEHNOLOGIE ”GEORGE EMIL PALADE”
DIN T ˆARGU MURES ,
FACULTATEA DE INGINERIE S ,I
TEHNOLOGIA INFORMAT ,IEI
Programul de studii: Informatic ˘a
LUCRARE DE LICENT ,˘A
Coordonator s ,tiint ,ific:
Lector Dr. Lefkovits Szidonia Absolvent: [anonimizat] ,escu Mihai-Cristian
TˆARGU MURES ,
2020
UNIVERSITATEA DE MEDICIN
˘
A, FARMACIE, S
,
TIINT
,
E S
,
I TEHNOLOGIE
”GEORGE EMIL PALADE” DIN T
ˆ
ARGU-MURES ¸
FACULTATEA DE INGINERIE S
,
I TEHNOLOGIA INFORMAT
,
IEI
Specializarea: Informatic
˘
a Viza facultat
,
ii
Sistem de detectare a c
˘
aderilor bazat pe un sistem mobil
Coordonator s
,
tiint
,
ific: Lector Dr. Lefkovits Szidonia Candidat: [anonimizat]
,
escu Mihai-Cristian
Anul absolvirii: 2020
a) Tema lucr
˘
arii de licent
,
˘
a: Sistem de detectare a c
˘
aderilor bazat pe un sistem mobil
b) Probleme principale tratate:
Colectarea unei baze de date a senzorilor ce cuprinde at
ˆ
at c
˘
aderi, c
ˆ
at si activit
˘
at
,
i
de zi cu zi
Implementarea unei ret
,
ele neuronale cu scopul de a
ˆ
ınv
˘
at
,
a pe baza datelor colec-
tate
Crearea unei aplicat
,
ii mobile ce prelueaz
˘
a datele de pe propriul server, s
,
i
testeaz
˘
a daca act
,
iunea curent
˘
a este c
˘
adere
c) Bibliografia recomandat
˘
a:
Mao, A.; Ma, X.; He, Y .; Luo, J. Highly Portable, Sensor-Based System for
Human Fall Monitoring. Sensors 2017, 17, 2096.
d) Termene obligatorii de consultant
,
˘
a: s
˘
apt
˘
am
ˆ
anal
e) Locul s
,
i durata practicii: laboratoarele specifice programului de studiu
Primit la data de: 26-06-2019
Termen de predare: 10-05-2020
Semn
˘
atura Director Departament Semn
˘
atura coordonatorului
Semn
˘
atura candidat: [anonimizat] 2-3
surse, si sa micsorati spatiul intre randuri,
cum ne-am inteles
Cuprins
1 Introducere 1
1.1 Tematica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Obiectiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Stadiul actual al aplicat ,iilor de c ˘adere al dispozitivelor mobile . . . . . . . . . 3
2 Aspecte teoretice s ,i tehnice 4
2.1 Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1 Kotlin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.2 Componentele fundamentale ale aplicat ,iilor Android . . . . . . . . . . 4
2.1.3 Senzori ˆın Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.4 Accelerometru . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.5 Giroscop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.6 Magnetometru . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Inteligent ,˘a artificial ˘a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.1 Not ,iuni de baz ˘a. Neuronul. Ret ,ea neuronal ˘a . . . . . . . . . . . . . . . 11
2.2.2 Funct ,ii de activare . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.3 Overfitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.4 ˆInv˘at,are supervizat ˘a.ˆInv˘at,are nesupervizat ˘a.ˆInv˘at,are consolidat ˘a . . . 19
3 Aspecte de proiectare 20
Capitolul 1
Introducere
1.1 Tematica
ˆ
In prezent, din ce
ˆ
ın ce mai multe persoane duc o viat
,
˘
a sedentar
˘
a datorit
˘
a facilit
˘
at
,
ilor oferite
de evolut
,
ia tehnologiei. De asemenea, este recunoscut faptul c
˘
a insuficient
,
a activit
˘
at
,
ii fiz-
ice este unul din cei zece factori pentru mortalitatea global
˘
a.Persoanele cu o activitate fizic
˘
a
redus
˘
a sunt supus
,
i la un risc al mortalit
˘
at
,
ii mai ridicat dec
ˆ
at persoanele care efectueaz
˘
a cel
put
,
in 150 minute de activitate fizic
˘
a s
˘
apt
˘
am
ˆ
anal. Un alt fenomen important este
ˆ
ımb
˘
atr
ˆ
anirea
populat
,
iei: acest fapt se datoreaz
˘
a cres
,
terii sperant
,
ei de viat
,
˘
a, c
ˆ
at s
,
i a sc
˘
aderii sporului natu-
ral. C
˘
aderile sunt un risc major asupra s
˘
an
˘
at
˘
at
,
ii persoanelor
ˆ
ın v
ˆ
arst
˘
a, care afecteaz
˘
a calitatea
viet
,
ii acestora.
ˆ
In r
ˆ
andul acestora, c
˘
aderile accidentale sunt mult mai frecvente: 30 procente
din populat
,
ie cu o v
ˆ
arst
˘
a de peste 65 de ani cad cel put
,
in o dat
˘
a pe an; aceast
˘
a proport
,
ie cres
,
te
rapid
ˆ
ın funct
,
ie de v
ˆ
arst
˘
a [
Tromp
].
ˆ
In plus,
ˆ
ın cazul persoanelor
ˆ
ın v
ˆ
arst
˘
a supuse c
˘
aderilor,
exist
˘
a riscul de a nu exista posibilitatea de a se ridica, rezult
ˆ
and
ˆ
ın spitalizare sau, mai r
˘
au,
deces [
Tinetti
]. Astfel, prin cercet
˘
ari
ˆ
ın recunoas
,
terea activit
˘
at
,
ilor de zi cu zi s
,
i a c
˘
aderilor,
se poate reduce gravitatea unei c
˘
aderi,
ˆ
ın special
ˆ
ın cazul persoanelor
ˆ
ın v
ˆ
arst
˘
a. Detectarea
c
˘
aderilor de zi cu zi s
,
i a c
˘
aderilor sunt,
ˆ
ın principiu, deduse prin analizarea datelor senzorilor,
precum camera video, accelerometru, giroscop, magnetometru s
,
i barometru [
Muhammad
].
1
nu ati pastrat spatierea de 1.5 intre linii
https://tex.stackexchange.com/questions/83855/change-line-s
pacing-inside-the-document
\usepackage{setspace}
\renewcommand{\baselinestretch}{1.5}
comanda este
in versiunea anterioara era
bine
sa folositi alta varianta de citare, cea cu numar intre paranteze [11]
https://www.overleaf.com/learn/latex/biblatex_bibliography_styles
sa folositi stilul numeric
Capitolul 1. Introducere 1.2. Obiectiv
Figura 1. 1.1: Procentajul de seniori care au perceput un risc de c ˘adere dup ˘a sex s ,i vˆarst˘a
[comparisonFall ]
1.2 Obiectiv
Scopul de baz ˘a al lucr ˘arii este implementarea unei aplicat ,ii capabile de a detecta c ˘aderile s ,i
a le diferent ,ia de activit ˘at,ile de zi cu zi. Pentru a dezvolta o astfel de aplicat ,ie, sunt necesare
ˆındeplinirea urm ˘atoarelor criterii:
Colectarea unui set de date a senzorilor existent ,iˆıntr-un telefon inteligent ce cuprinde
diferite posturi ˆın care o persoan ˘a poate c ˘adea.
Crearea unei ret ,ele neuronale bazat ˘a pe ˆınv˘at,are supervizat ˘a cu scopul de a prelua
t˘ariile neuronilor dup ˘aˆınv˘at,are.
Crearea unui server care se ocup ˘a de transmiterea datelor spre utilizatorii aplicat ,iei.
Implementarea unei aplicat ,ii mobile care, cu ajutorul accelerometrului, giroscopului
s,i a magnetometrului s ˘a testeze statutul telefonului.
2
Capitolul 1. Introducere1.3. Stadiul actual al aplicat ,iilor de c ˘adere al dispozitivelor mobile
1.3 Stadiul actual al aplicat ,iilor de c ˘adere al dispozitivelor
mobile
Pˆan˘aˆın momentul de fat ,˘a, exist ˘a dou ˘a metode principale de a detecta c ˘aderile:
1. Setarea unui prag limit ˘a pentru a detecta c ˘aderea
2. Inteligent ,˘a artificial ˘a (bazat ˘a peˆınv˘at,are supervizat ˘a)
Conform [ comparisonFall ], majoritatea algoritmilor de detectare a c ˘aderilor sunt bazat ,i pe
g˘asirea unui prag limit ˘a,ˆıns˘a algoritmii ce folosesc inteligent ,˘a artificial ˘a pot oferi o precizie
mult mai ridicat ˘a. Performant ,a general ˘a a cinci algoritmi de ˆınv˘at,are artificial ˘a a fost mai
mare dec ˆat performant ,a a cinci algoritmi pe baz ˘a de prag descris ,iˆın literatur ˘a de speciali-
tate, mas ,inile vector-suport (Support Vector Machine) oferind cea mai mare combinat ,ie de
sensibilitate s ,i specificitate.
Figura 1. 1.2: Compararea sensibilit ˘at,ii s,i specificit ˘at,iiˆıntre cinci algoritmi bazat ,i pe prag s ,i cinci
algoritmi de ˆınv˘at,are automat ˘a pentru a distinge c ˘aderile de activit ˘at,i zilnice. [ comparisonFall ]
3
Capitolul 2
Aspecte teoretice s ,i tehnice
2.1 Android
Android este un sistem de operare pentru telefoanele mobile, acesta reg ˘asindu-se ˆın aprox-
imativ 2.5 miliarde de dispozitive mobile [ android ]. Android este dezvoltat de o asociat ,ie
de dezvoltatori, cunoscut sub numele de Open Handset Alliance s ,i sponsorizat ˘a de Google.
Acesta a fost dezv ˘aluit lumii pentru prima dat ˘aˆın 2007, primul dispozitiv Android cu scop
comercial fiind lansat un an mai t ˆarziu, ˆın 2008.
2.1.1 Kotlin
Kotlin este un limbaj de programare cu inferent ,˘a de tip, ce poate fi folosit pe mai multe plat-
forme. Kotlin este proiectat s ˘a interopere pe deplin cu Java, iar versiunea JVM a bibliotecii
sale standard depinde de biblioteca Java Class, dar inferent ,a de tip permite sintaxei s ˘a s˘a fie
mai concis ˘a. [kotlinWiki ]
2.1.2 Componentele fundamentale ale aplicat ,iilor Android
Componentele aplicat ,iei sunt, ˆın esent ,˘a, elementele vitale ale unei aplicat ,ii. Aceste com-
ponente sunt cuplate aplicat ,iei ”AndroidManifest.xml”, care are rolul de a descrie fiecare
component ˘a s,i modul de interact ,iune.
ˆIn prezent, exist ˘a patru tipuri de astfel de componente ce se pot folosi ˆın aplicat ,iile An-
droid:
1. Activit ˘at,i – ecran al interfet ,ei
2. Servicii – component ˘a cu scopul rul ˘arii unui proces ˆın fundal
3. Receptori de transmisie – permite ˆınregistrarea evenimentelor
4. Furnizori de cont ,inut – ofer ˘a acces la date ˆıntre aplicat ,ii
Componenta activitate reprezint ˘a un ecran al interfet ,ei de utilizare a aplicat ,iei Android. ˆIn
acest fel, o activitate Android este foarte asem ˘an˘atoare cu ferestrele ˆıntr-o aplicat ,ie desktop.
O aplicat ,ie Android poate cont ,ine una sau mai multe activit ˘at,i, adic ˘a unul sau mai multe
4
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
ecrane. Aplicat ,ia Android ˆıncepe prin afis ,area activit ˘at,ii principale, apoi aplicat ,ia av ˆand
posibilitatea de a deschide activit ˘at,i suplimentare.
Ciclul de viat ,˘a al unei activit ˘at,i Android Atunci c ˆand o aplicat ,ie Android este pornit ˘a
pentru prima dat ˘a, activitatea principal ˘a este creat ˘a. Activitatea trece apoi prin 3 st ˘ariˆınainte
c˘a acesta s ˘a fie gata s ˘a serveasc ˘a utilizatorul: Creat (Created), ˆınceput (Started) s ,i reluat
(Resumed).
Figura 1. 2.1: Ciclul de viat ,˘a al unei activit ˘at,i
Surs˘a:[activityCycle ]
Dac˘a activitatea principal ˘a poate deschide orice alte activit ˘at,i (ecrane), aceste activit ˘at,i
vor trece prin aceleas ,i 3 st ˘ari la deschiderea lor.
Dac˘a o activitate X deschide o alt ˘a activitate Y , atunci activitatea X va fi ˆıntrerupt ˘a,
ceea ce inseamn ˘a c˘a activitatea X va trece ˆın starea de pauz ˘a (onPause). ˆIn momentul ˆın
care utilizatorul apas ˘a pe butonul care ˆıl redirect ,ioneaz ˘aˆınapoi s ,i revine la activitatea X,
activitatea X revine la starea reluat ˘a (onResume).
Dac˘a utilizatorul revine la ecranul init ,ial al dispozitivului Android, toate activit ˘at,ile vor
fiˆıntrerupte s ,i apoi oprite. Dac ˘a utilizatorul revine apoi la aplicat ,ie, activit ˘at,ile vor trece prin
st˘arile ˆıncepute s ,i apoi reluate.
St˘arile unei activit ˘at,i urmeaz ˘aˆıntotdeauna s ˘aget ,ile din diagram ˘a de mai sus. O activitate
nu poate s ˘ari de la creat la reluat direct. O activitate va trece ˆıntotdeauna prin creare, ˆıncepere
s,i reluare ˆın exact aceast ˘a secvent ,˘a. O activitate se poate schimba de la reluat la pauz ˘a de la
spate s ,i de la pauz ˘a la oprit s ,iˆınapoi la ˆınceput, dar niciodat ˘a de la oprit direct la reluat.
Toate activit ˘at,ile din aplicat ,iile Android sunt reprezentate de o clas ˘a de activit ˘at,i. Aceste
clase de activit ˘at,i sunt subclase ale clasei android.app.Activity. Clasa de activit ˘at,i cont ,ine un
set de metode care corespunde ciclului de viat ,˘a,ˆın care o activitate poate fi. Aceste metode
sunt urm ˘atoarele:
5
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
onCreate() – la crearea activit ˘at,ii, activitatea intr ˘a in acest stadiu. ˆIn aceast ˘a metod ˘a, ar
trebui s ˘a se efectueze operat ,ii care se ˆıntampl ˘a o singur ˘a dat ˘a pe durata activit ˘at,ii
onStart() – aceast ˘a metod ˘a face ca aplicat ,ia s˘a fie vizibil ˘a utilizatorului (acvtivitatea
devine interactiv ˘a)
onRestart() – ˆın cazul ˆın care aplicat ,ia revine la activitate, se apeleaza aceast ˘a metod ˘a
onResume() – ˆın momentul ˆın care activitatea intr ˘aˆın aceast ˘a stare, aceasta vine ˆın
prim-plan, urm ˆand ca sistemul s ˘a apeleze onResume(). Aplicat ,ia r˘amˆaneˆın starea
reluat ˘a pˆan˘aˆın momentul ˆın care un alt eveniment devine ˆın prim-plan.
onPause() – aceast ˘a metod ˘a se apeleaza la momentul ies ,irii din activitate
onStop() – c ˆand activitatea nu mai este vizibil ˘a utilizatorului, sistemul apeleaz ˘a aceast ˘a
metod ˘a.
onDestroy() – aceast ˘a metod ˘a este apelat ˘aˆınaintea distrugerii unei activit ˘at,i. onDe-
stroy() poate fi apelat ˘a cˆand activitatea se termin ˘a sau apare o schimbare a configur ˘arii
(precum rotirea dispozitivului). [ activityCycle ]
Cˆand activitatea trebuie s ˘a treac ˘a la una dintre st ˘arile ciclului de viat ,˘a, metoda ciclului de
viat ,˘a corespunz ˘atoare este apelat ˘a la instant ,a subclasei Activitate. C ˆand metoda ciclului de
viat ,˘a termin ˘a, se presupune c ˘a activitatea se afl ˘aˆın noua stare a ciclului de viat ,˘a. De exemplu,
odat˘a cu revenirea metodei ciclului de viat ,˘a onCreate(), se presupune c ˘a activitatea este ˆın
starea creat ˘a.
Unserviciu este o component ˘a cu scop general pentru ment ,inerea unei aplicat ,ii care
ruleaz ˘aˆın fundal pentru a efectua operat ,iuni pe termen lung sau pentru a efectua lucr ˘ari
pentru procesele de la distant ,˘a. Un serviciu nu ofer ˘a o interfat ,˘a de utilizator. Ciclul de viat ,˘a
al unui serviciu este definit de dou ˘a st˘ari:ˆınceput (Started) s ,i legat (Bound).
Unreceptor de transmisie reprezint ˘a o component ˘a Android care permite ˆınregistrarea
evenimentelor at ˆat ale aplicat ,iei, c ˆat s ,i a sistemului. Dac ˘a exist ˘a mai mult ,i receptori pentru
un eveniment, tot ,i aces ,tia vor fi notificat ,iˆın momentul ˆın care evenimentul se ˆıntˆampl ˘a.
Ciclul de viat ,˘a al unui receptor de transmisie se termin ˘aˆın momentul ˆın care funct ,ia de
preluare a notific ˘arii (onReceive()) se ˆıncheie.
Unfurnizor de cont ,inut ofer˘a accesul la date ˆıntre diferite aplicat ,ii Android. Acesta
ˆıncapsuleaz ˘a datele s ,i ofer ˘a un mecanism de definire a securit ˘at,ii datelor. Rolul principal al
acestuia este de a partaja date ˆıntre aplicat ,ii.
2.1.3 Senzori ˆın Android
ˆIn prezent, majoritatea dispozitivelor Android au integrate divers ,i senzori, cu rol ˆın m˘asurarea
mis ,c˘arii, orient ˘arii s ,i a anumitor condit ,ii a mediului ˆınconjur ˘ator. Senzorii integrat ,i sunt ca-
pabili de a m ˘asur˘a cu precizie factorii necesari, astfel aces ,tia devenind foarte utili ˆın cazul
ˆın care se dores ,te monitorizarea pozit ,iei dispozitivului ˆın spat ,iul tridimensional sau vitez ˘a
acestuia. Platforma Android suport ˘a trei categorii generale de senzori [ sensorKotlin ]:
1. Senzori de mis ,care – Monitorizeaz ˘a accelerat ,ia s,i rotat ,ia dispozitivului ˆın spat ,iul tridi-
mensional.
6
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
Figura 1. 2.2: Ciclul de viat ,˘a al unui serviciu
Surs˘a:[serviceCycle ]
2. Senzori de mediu – M ˘asoar ˘a anumit ,i parametrii ai mediului, precum temperatura, pre-
siunea, umiditatea s ,i iluminarea
3. Senzori de pozit ,ie – M ˘asoar ˘a pozit ,ia unui dispozitiv. Aceast ˘a categorie este definit ˘a de
magnetometru s ,i senzori de orientare
7
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
Figura 1. 2.3: Diagram ˘a ilustrativ ˘a a modului ˆın care se administreaz ˘a
accesul la spat ,iu de c ˘atre un furnizor de cont ,inut
Surs˘a:[contentProvider ]
2.1.4 Accelerometru
Accelerometrul reprezint ˘a dispozitivul electromecanic utilizat pentru a m ˘asura fort ,ele de
accelerat ,ie, unde accelerat ,ia este variat ,ia c˘a m˘arime s ,i direct ,ie a vectorului vitez ˘a. Aceste
fort ,e sunt de dou ˘a tipuri: statice s ,i dinamice. Prin fort ,˘a static ˘a se ˆınt,elege fort ,˘a aplicat ˘a
asupra dispozitivului care nu se schimb ˘aˆın m˘arime, pozit ,ie sau direct ,ie, un exemplu elocvent
fiind fort ,a gravitat ,ional ˘a. Prin urmare, fort ,ele dinamice sunt reprezentate de fort ,ele ce
ˆıs,i schimb ˘a cel put ,in una din cele trei caracteristici. [ acceleration ] Cel mai comun mod
de funct ,ionare a unui accelerometru este prin efectul piezoelectric. Efectul piezoelectric
reprezint ˘a abilitatea anumitor entit ˘at,i de a genera o sarcin ˘a electric ˘a c˘a r˘aspuns la efortul
mecanic aplicat. Cuv ˆantul piezoelectric provine din greac ˘a, form ˘a original ˘a fiind ”piezein”,
care ˆınseamn ˘a strˆangere sau ap ˘asare, s ,i piezo, care este ˆınseamn ˘a ”ˆımpingere”.
8
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
Figura 1. 2.4: Tipurile de senzori suportat ,i de platforma Android
Surs˘a:[sensorKotlin ]
2.1.5 Giroscop
Giroscopul este dispozitivul care utilizeaz ˘a gravitat ,ia P˘amˆantului pentru determinarea ori-
ent˘arii. Acesta este alc ˘atuit dintr-un disc care se rotes ,te, care poart ˘a denumirea de rotor, s ,i
este montat pe o ax ˘a ce se ˆınvˆarte, ˆın centrul unei rot ,i mai mari s ,i mai stabile. Pe m ˘asur˘a
ce axa se ˆınvˆarte, rotorul r ˘amˆaneˆın repaus pentru a arat ˘a tract ,iunea gravitat ,ional ˘a central ˘a s,i
astfel direct ,ia c˘arei cai este orientat ˘aˆın jos.
9
Capitolul 2. Aspecte teoretice s ,i tehnice 2.1. Android
Figura 1. 2.5: Accelerometru
Surs˘a:[contentProvider ]
Figura 1. 2.6: Efectul piezoelectric
Surs˘a:[piezoelectric ]
2.1.6 Magnetometru
Conform [ magnetometer ], magnetometrul este instrumentul care are c ˘a scop m ˘asurarea
rezistent ,ei s ,i orient ˘arii(direct ,iei) c ˆampului magnetic din vecin ˘atatea acestuia. Magnetismul
difer ˘aˆın funct ,ie de locat ,ie din cauza naturii diferite a rocilor s ,i de interact ,iunea dintre par-
ticulele ˆınc˘arcate de soare s ,i magnetosfera planetei, care au c ˘a efect schimbarea c ˆampului
magnetic al P ˘amˆantului. Magnetometrele sunt folosite ˆın mai multe domenii, principalele
fiind sondajele geofizice, detectarea anomaliilor magnetice iar ˆın cazul unei aeronave, aces-
tea sunt folosite pentru a indic ˘a direct ,ia. Mecanismul de funct ,ionare const ˘aˆın efectul Hall
[hallEffect ], care detecteaz ˘a cˆampul magnetic al P ˘amˆantului ˆıntr-un spat ,iu tridimensional.
Magnetometrul produce o tensiune proport ,ional ˘a cu puterea s ,i polaritatea c ˆampului magnetic
de-a lungul axei pe care este direct ,ionat fiecare senzor. Tensiunea perceput ˘a este convertit ˘a
ˆın semnal digital reprezent ˆand intensitatea c ˆampului magnetic.
10
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
Figura 1. 2.7: Giroscop
Surs˘a:[gyroscope ]
Figura 1. 2.8: magnetometru folosit ˆıntr-o aeronava
Surs˘a:[gyroscope ]
2.2 Inteligent ,˘a artificial ˘a
2.2.1 Not ,iuni de baz ˘a. Neuronul. Ret ,ea neuronal ˘a
Inteligent ,a artificial ˘a reprezint ˘a simularea inteligent ,ei umane a mas ,inilor, care sunt progra-
mate s ˘a gˆandeasc ˘a precum oamenii s ,i s˘a imite act ,iunile lor.
Caracteristica de baz ˘a a inteligent ,ei artificiale este de a rat ,ionaliza s ,i de a lua act ,iuni care
au cele mai mari s ,anse de a atinge obiectivul dorit.
Un sistem de inteligent ,˘a artificial ˘a are la baz ˘a 3 componente majore:
11
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
Figura 1. 2.9: Modul de funct ,ionare al magnetometrului
Surs˘a:[gyroscope ]
1. Reprezentarea cunos ,tiint ,elor s ,i a rat ,ionamentului – reprezint ˘a un domeniu al inteligent ,ei
artificiale care are ca scop convertirea informat ,iilor oferite de lume ˆıntr-o manier ˘aˆın
care un calculator o poate interpreta.
2. G ˆandirea sau rat ,ionamentul reprezint ˘a abilitatea prin care se ajunge la rezolvarea prob-
lemei. Acest domeniu mai are s ,i denumirea de planificare, deoarece, ˆın esent ,˘a, cerint ,˘a
este de a g ˘as,i cursul act ,iunilor a unui sistem de a ajunge la rezultatul propus.
3.ˆInv˘at,area reprezint ˘a o form ˘a a inteligent ,ei artificiale care permite unui anumit sistem
s˘aˆınvet ,e prin date, s ,i nu prin programare static ˘a, explicit ˘a.ˆIn prezent, exist ˘a mai multe
tipuri sau paradigme de ˆınv˘at,are care sunt folosite ˆın procesul de ˆınv˘at,are:
(a)ˆInv˘at,area supervizat ˘a
(b)ˆInv˘at,area nesupervizat ˘a
(c)ˆInv˘at,area semisupervizat ˘a
(d)ˆInv˘at,area ˆınt˘arit˘a/consolidat ˘a (reinforcement learning)
(e)ˆInv˘at,area de sine
(f)ˆInv˘at,area caracteristicilor (feature learning)[ wikiAI ]
Neuronul este, din punct de vedere biologic, celul ˘a fundamental ˘a a sistemului nervos. Acesta
transmite informat ,ii spre alte celule nervoase sau mus ,chi. Majoritatea neuronilor au un corp,
un axon s ,i dendrite. Corpul acestora este format din nucleu s ,i citoplasm ˘a. [bioNeuron ]
12
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
Figura 1. 2.10: Neuronul biologic Surs ˘a:[neuronImage ]
Din punct de vedere informatic, neuronul artificial este o funct ,ie matematic ˘a, care a fost
conceput din analogia cu neuronul biologic. Aces ,tia sunt elemente elementare ˆın construirea
unei ret ,ele neuronale. Un neuron artificial are una sau mai multe c ˘ai de intrare, pe care le
ˆınsumeaz ˘a, produc ˆand o valoare de ies ,ire. Fiecare m ˘arimi de intrare este ponderat ˘a sepa-
rat, iar suma este trecut ˘a printr-o funct ,ie numit ˘a funct ,ie de activare sau funct ,ie de transfer
[artificialNeuron ].
Ret ,eaua neuronal ˘a este descris ˘a c˘a fiind ret ,ea de unit ˘at,i simple de procesare asem ˘an˘atoare
neuronilor care realizeaz ˘a colectiv calcule complexe. Ret ,elele neuronale sunt adesea orga-
nizate ˆın straturi, inclusiv un strat de intrare care prezint ˘a datele (de exemplu, o imagine),
straturi ascunse care transform ˘a datele ˆın reprezent ˘ari intermediare s ,i un strat de ies ,ire care
produce un r ˘aspuns (de exemplu, o act ,iune). Conexiunile recurente sunt de asemenea popu-
lare atunci c ˆand se proceseaz ˘a secvent ,ial date [ lake2016building ].
13
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
Figura 1. 2.11: Ret ,ea neuronal ˘a simpl ˘a, cu un strat de intrare, un strat ascuns s ,i un strat de ies ,ire
Surs˘a:[NeuralNetwork ]
ˆIn cazul ˆın care unei ret ,ele neuronale i se adaug ˘a mai multe straturi ascunse, complexi-
tatea calculelor este mult mai ridicat ˘a. Prin aceast ˘a ad˘augare, ret ,eaua neuronal ˘a define mai
precis ˘a,ˆıns˘a s,i timpul de execut ,ie cres ,te semnificativ. Acest tip de ret ,ea se numes ,te ret ,ea
neuronal ˘a profund ˘a (deep neural network).
Figura 1. 2.12: Ret ,ea neuronal ˘a profund ˘a Surs ˘a:[deepNN ]
Init ,ial, t˘ariile fiec ˘arei conexiuni a doi neuroni sunt alese aleatoriu, apoi aceste valori fiind
actualizate de c ˘atre algoritm prin introducerea datelor ˆın ret ,eaua neuronal ˘a pˆan˘aˆın momentul
ˆın care aceast ˘a este optimizat ˘a corespunz ˘ator, ˆıntr-un mod de a nu se ajunge la supra-potrivire
(overfitting). Prin supra-potrivire se ˆınt,elege o eroare mic ˘a a datelor de antrenare, dar o eroare
mare ˆın cazul ˆın care noi date sunt introduse ˆın ret ,eaua neuronal ˘a. Cu alte cuvinte, ret ,eaua
14
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
neuronal ˘a este capabil ˘a doar de prelucrarea corect ˘a a datelor existente ˆın datele de antrenare.
2.2.2 Funct ,ii de activare
Cele mai utilizate funct ,ii sunt[ CalculNeuronal ][activationFunctions ]:
1. funct ,ia liniar ˘a
f!R!R;f(x) =x (2.1)
Figura 1. 2.13: Funct ,ia liniar ˘a Surs ˘a:[neuronImage ]
2. funct ,ia treapt ˘a
f!R!0;1;f(x) =(
1;x>=0
0;x<0(2.2)
Figura 1. 2.14: Funct ,ia treapt ˘a Surs ˘a:[neuronImage ]
15
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
3. funct ,ia ramp ˘a
f!R![ 1;1];f(x) =8
><
>:1;x>=1
x;x2( 1;1)
0;x<0(2.3)
Figura 1. 2.15: Funct ,ia ramp ˘a Surs ˘a:[neuronImage ]
4. funct ,ia sigmoidal ˘a
f!R!(0;1);f(x) =1
1+ex(2.4)
Figura 1. 2.16: Funct ,ia sigmoidal ˘a Surs ˘a:[neuronImage ]
5. funct ,ia tangent ˘a hiperbolic ˘a
f!R!( 1;1);f(x) =tanh(x) =
ex e x
ex+e x(2.5)
16
Capitolul 2. Aspecte teoretice s
,
i tehnice 2.2. Inteligent
,
˘
a artificial
˘
a
Figura 1. 2.17:
Funct
,
ia tangent
˘
a hiperbolic
˘
a Surs
˘
a:[
neuronImage
]
6.
funct
,
ia signum
f
!
R
!
1
;
1
;
f
(
x
) =
(
1
;
x
>
=
0
1
;
x
<
0
(2.6)
Figura 1. 2.18:
Funct
,
ia signum Surs
˘
a:[
neuronImage
]
2.2.3 Overfitting
Pentru a evita supra-potrivirea
ˆ
ıntr-o ret
,
ea neuronal
˘
a, se cunosc mai multe metode:
1.
Simplificarea modelului. Aceast
˘
a tehnic
˘
a reprezint
˘
a eliminarea unor straturi ascunse
s
,
i/sau a neuronilor.
2.
Oprirea din timp a ret
,
elei neuronal
˘
a. Prin aceast
˘
a metod
˘
a, se
ˆ
ınt
,
elege oprirea
ˆ
ınv
˘
at
,
˘
arii
ˆ
ın momentul
ˆ
ın care ret
,
eaua neuronal
˘
a a ajuns
ˆ
ın punctul
ˆ
ın care eroarea este minim
˘
a.
17
adaugati sursa si
aici
Capitolul 2. Aspecte teoretice s ,i tehnice 2.2. Inteligent ,˘a artificial ˘a
Figura 1. 2.19: Oprirea din timp a ret ,elei neuronale Surs ˘a:[earlystopping ]
3. Augmentarea datelor. Augmentarea datelor este procesul de cres ,tere a datelor din
setul de intrare. Spre exemplu, o ret ,ea neuronal ˘a care primes ,te c˘a date imagini, poate
fi augmentat ˘a prin ad ˘augarea imaginilor init ,iale, ˆıns˘a prin a le cres ,te luminozitatea,
prin a le mari sau a le transpune ˆın alt ˘a pozit ,ie.
4. Renunt ,area/abandonarea unor anumit ,i neuroni (dropouts). Acest procedeu presupune
modificarea ret ,elei neuronale, ret ,eaua abandon ˆand neuroni aleatoriu la fiecare iteratie.
Figura 1. 2.20: Abandonarea la anumit ,i neuroni [ NeuralNetwork ]
18
Capitolul 2. Aspecte teoretice s
,
i tehnice 2.2. Inteligent
,
˘
a artificial
˘
a
2.2.4
ˆ
Inv
˘
at
,
are supervizat
˘
a.
ˆ
Inv
˘
at
,
are nesupervizat
˘
a.
ˆ
Inv
˘
at
,
are consoli-
dat
˘
a
ˆ
In figure de mai sus, se poate observa modul de operare direct (feedforward) [
CalculNeuronal
].
ˆ
Intr-o ret
,
ea
ˆ
ın care propagarea se face
ˆ
ınapoi (backpropagation), erorile calculate sunt trans-
mise c
˘
atre straturile ascunse, t
˘
ariile neuronilor fiind ajustate pentru a reduce eroarea.
ˆ
Inv
˘
at
,
area supervizat
˘
a reprezint
˘
a un tip de
ˆ
ınv
˘
at
,
are
ˆ
ın care se cunoas
,
te rezultatul dorit,
datele de
ˆ
ınv
˘
at
,
are constituind o pereche format
˘
a din date de intrare s
,
i date de ies
,
ire. O astfel
de
ˆ
ınv
˘
at
,
are este folosit
˘
a pentru a prezice sau deduce rezultatele pentru date sau evenimente
care nu au fost
ˆ
ınc
˘
a
ˆ
ınv
˘
at
,
ate.
ˆ
Inv
˘
at
,
area nesupervizat
˘
a este o tehnic
˘
a de
ˆ
ınv
˘
at
,
are a inteligent
,
ei artificiale care presupune
g
˘
asirea modelelor s
,
i a caracteristicilor nedetectate anterior. Prin urmare, acest tip de
ˆ
ınv
˘
at
,
are
nu depinde de o pereche de tip intrare-ies
,
ire, ci strict de datele de intrare.
ˆ
Inv
˘
at
,
area consolidat
˘
a este un un tip de
ˆ
ınv
˘
at
,
are care const
˘
a
ˆ
ın a lua m
˘
asuri potrivite pentru
a maximiza recompensele
ˆ
ıntr-o situat
,
ie specific
˘
a. Aceast
˘
a tehnic
˘
a este folosit
˘
a de diverse
programe s
,
i mas
,
ini pentru a g
˘
asi cel mai bun comportament posibil sau calea pe care ar trebui
s
˘
a o ia in diferite situat
,
ii.
ˆ
Inv
˘
at
,
area consolidat
˘
a difer
˘
a de
ˆ
ınv
˘
at
,
area supervizat
˘
a prin faptul c
˘
a
aceasta nu are un r
˘
aspuns cheie, ci
ˆ
ıl
ˆ
ınvat
,
˘
a prin experient
,
˘
a [
reinforcement
].
19
nu uitati de sursa nici aici
Capitolul 3
Aspecte de proiectare
20
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Beres ,escu Mihai-Cristian [628531] (ID: 628531)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
