2006/2007. tanév II.(tavaszi) félév
ELTE, 5PTM, IKP-4IK4G (GYAK  SAS része)
Az információ-kezelés elmélete és gyakorlata/4.


Ez az oldal az ELTE IK hallgatói számára tartalmaz szervezési információt.
Kérdések, megjegyzések e-mailben (dr. Hajas Csilla):
sila@inf.elte.hu

SAS Egyetemi Program Nyári kurzus: lásd SC2007_meghivo.rtf

1. INFORMÁCIÓ
1.1. A gyak. célja és előfeltétele
1.2. Követelmények
1.3. A gyakorlatok beosztása

2. ANYAG, TEMATIKA
2.1. Előzetes heti tematika
2.2. A gyak. anyaga (jelszóval)
2.3. Előzetes infó a SAS ZH-ról

4. HASZNOS LINKEK
4.1. Ajánlott irodalom
4.2. magyar nyelvű linkek
4.3. angol nyelvű linkek
4.4. SAS, SAS OnlineDoc

3. EREDMÉNYEK
3.1. SAS ZH jav.útmutató/pontozás
3.2. SAS ZH eredm. /3 kar kóddal/
       egy külön oldalon (ide link)
3.3. Gyak. jegyek /3 kar kóddal/

 

Budapest, 2007. február 12.

Utolsó módosítás: ápr.11. (SAS jegy), máj.30 (XML és gyak.jegy)

http://people.inf.elte.hu/sila/                                        dr. Hajas Csilla

 


1. Általános információ a gyakorlatokról

1.1. A gyakorlat célja és előfeltétele

„Az információ-kezelés elmélete és gyakorlata/4.” tantárgy gyakorlata négy csoportban az
00-807 Adatbázis-laborban van az ELTE 5.éves programtervező matematikusok részére.
Ebben a félévben két fő témakört dolgozunk fel, különböző gyakorlat-vezetőkkel:
1.témakör: SAS  (Hajas Csilla) – a félév első fele (2007. február 12-tól-március 23-ig)
„The SAS System, Release 9.1 for Windows” környezetben a SAS rendszer áttekintése:
alap-SAS, [SAS Guide], Enterprise Miner (Adatbányászat!!), [Forecast Server (Idősorok)].
2.témakör: XML (Hernáth Zsolt, Vincellér Zoltán) – a félév második fele (márc.26-tól).

Célkitűzés: SAS programozási alapok elsajátítása, a SAS eszközeire épülő magas szintű
adatfeldolgozás, és az adatbányászati algoritmusok a SAS/Enterprise Miner szoftverrel.

A tantárgy felvétele: Az ETR-en keresztül lehet jelentkezni. Előfeltételek: Inf.kez.3.

1.2. Követelmények (a gyakorlati jegy szerzése)

A gyakorlatokon jelenléti ív készül. Gyakorlati jegyet az szerezhet, aki részt vesz
a gyakorlatokon (legalább 7 alkalommal), és megírta a mind a kettő géptermi Zh-t:
SAS-ból (Hajas Csillánál) és XML-ből (Hernáth Zsoltnál vagy Vincellér Zoltánnál).
A gyakorlatra bármelyik csoportba (szerdai vagy pénteki) be lehet járni, viszont a
géptermi ZH előtt jelezni kell, ha nem az ETR beosztás szerinti csoportban írja meg!
A gyakorlati jegyet a két géptermi Zh-n kapott jegyek átlaga alapján számoljuk.

1.3. A gyakorlatok beosztása

 

Szerda

Csüt.

Péntek

      

 

 

Szerda

Csüt.

Péntek

10:00

 

 

 

      

SAS

1.gyak

02.14

15

02.16

10:30

 

 

 

      

 

2.gyak

02.21

22

02.23

11:00

 

 

 

      

 

3.gyak

02.28

01

03.02

11:30

11:45 – 13:15

 

11:45 – 13:15

      

 

4.gyak

03.07

08

03.09

12:00

00-807 AB-labor

 

00-807 AB-labor

      

 

5.gyak

03.14

III.15

03.16*>10

12:30

5PTM/IK4/gy3

 

5PTM/IK4/gy4

      

I.ZH

6.gyak

03.21.ZH

22

03.23.ZH

13:00

 

 

 

      

XML

1.gyak

03.28

29

03.30

13:30

13:30 – 15:00

 

 

      

Tavaszi

szünet

04.04

05

04.06

14:00

00-807 AB-labor

 

 

      

 

2.gyak

04.11

12

04.13

14:30

5PTM/IK4/gy2

 

 

      

 

3.gyak

04.18

19

04.20

15:00

 

 

 

      

 

4.gyak

04.25

26

04.27

15:30

 

 

 

      

 

5.gyak

05.02

03

05.04

16:00

 

 

 

      

Eötvös-

Pázmány

05.09

10

05.11

16:30

 

 

 

      

 

6.gyak

05.16

17

05.18

 

* a 2007-es munkanapok átrendezése miatt márc.16 péntek helyett márc.10-én szombaton lesz gyakorlat!


2. A gyakorlatok anyaga, tematikája

2.1. Előzetes heti tematika

SAS 1.hét
febr.14. és
febr.16.

SAS Programok /1
PROC step

SAS rendszer, SAS fejlesztő környezet:
Explorer, Enhanced editor, Log, Output.
SAS terminológia: SAS data set (tábla)
változó (oszlop), obs/megfigyelés (sor).
SAS programok: DATA step, PROC step.
PROC steps (részletesen): proc contents,
proc print, proc sort, proc freq, proc means,
proc report, proc tabulate, proc gchart, stb.

SAS 2.hét
febr.21. és
febr.23.

SAS Programok /2
 DATA step

DATA steps: infile, input (SAS data sets
létrehozása, nyersadatok beolvasása)
file, put (kiíratás SAS data sets-ből, stb).
Változók használata: drop, keep.
Összefűzés/fésülés: append, merge.
Az if elágazás és a ciklusutasítások.

SAS 3.hét
febr.28. és
márc.2.

Enterprise Miner /1


SEMMA:
1. Sample (minta)


2. Explore (feltárás)
3. Modify (adatm.)

SAS EM használata (library létrehozása,
       adatfájl importálása ->SAS data sets,
       EM project és diagram létrehozása)
Adatbányászati eszközök csoportosítása:
Input Data Source
Sampling (mintavétel)
Data Partition (training, validation, test)
Multiplot (bar chart, scatter plot)
Clustering (klaszterezés) folyt.köv.

SAS 4.hét
márc.7. és
márc.9.

Enterprise Miner /2
2. Explore (feltárás)


3. Modify (adatm.)

4. Model (modell)

folyt. Multiplot (bar chart, scatter plot)
Distribution Explorer (hisztogram)
Association (asszociációs szabályok,
gyakori halmaz keresése) folyt.köv.
folyt. Clustering (klaszterezés)
Filter Outliers (kiugró értékek szűrése)
Modellezés és előrejelzés:
Regression (lineáris regresszió) folyt.köv.

SAS 5.hét
márc.14. és
/16.péntek
átrendezve
márc.10-re
szombatra
(vagy 14-re
szerdán is).

Enterprise Miner /3
2. Explore (feltárás)
3. Modify (adatm.)

4. Model (modell)



5. Assess (kiérték.)

folyt. Association (asszociációs
szabályok és szekvencia elemzés)
Replacement (hiányzó értékek pótlása)
Variable transformation (vált.transzf.)
folyt. Regression (logisztikus regresszió)
Osztályozás és előrejelzés:
Tree (döntési fák),
Neural Network (neurális hálózatok).
Assessment, Reporter (beszámoló).

SAS 6.hét
márc.21/23.

Gépes számonkérés

Részleteket lásd az alábbi menüpontban:
2.3. Előzetes infó a géptermi ZH-ról

2.2. A SAS gyakorlatok anyaga (jelszóval)

A gyakorlatok tematikája, lásd a korábbi menüpontban: 2.1. Előzetes heti tematika
A gyakorlatok SAS mintapéldái és az adatok: SAS
(az ismert jelszóval nyitható) könyvtárból tölthetők le.
Az 1-2 gyakorlat SAS mintaprogramjait kiegészítettem magyarázó szöveggel.
A 3-5 gyakorlatok az Adatbányászati eszközök és algoritmusok valamint
a SAS Enterprise Miner (példák PrintScreen-ben) anyaga PDF-ben itt van:

Gyakorlatok 2007. tavasz

Forrásprogramok

Adatok

1. febr.14 (sze)-febr.16 (p)

ProcStep_feb14.sas

SASdataProgr/ könyvtár

2. febr.21 (sze)-febr.23 (p)

DataStep_feb21.sas

SASdataProgr/ könyvtár

3. febr.28 (sze)-márc.2 (p)

AdBany_feb28.pdf

SASdataEMiner/ könyvtár

4. márc.7 (sze)-márc.9 (p)

EMiner_marc7.pdf

SASdataEMiner/ könyvtár

5. márc.10 (szo)-márc.14 (sze)

EMiner_marc10.pdf

SASdataEMiner/ könyvtár

MintaZh (márc.14 sze)

mintaZH_marc14.pdf

SASdataEMiner/ könyvtár

6. márc.21 (sze)-márc.23 (p)

lásd 3.1. SAS ZH javítási
       útmutató és pontozás

’C:\Program Files\SAS\Enterprise
Guide 4\Sample\Data’ könyvtárban

2.3. Előzetes információ a SAS ZH-ról

Gyakorlati jegyet csak az szerezhet, aki az XML és SAS részt is teljesítette:
SAS  gépes számonkérés a 6. gyakorlatokon 2007.március 21-23-án lesz,
egy MintaZh feladatsort lásd az előző: 2.2. A SAS gyakorlatok anyaga alatt.

Tudnivalók a SAS zárthelyiről:

A zárthelyi dolgozat zártkörű, vagyis a dolgozatírás alatt csak a gyakorlaton résztvevő
dolgozatot író hallgatók tartózkodhatnak a laborban (hozzatok személyi azonositó iratot).
Segédeszköz használható (de csak saját részre, könyveket, lapokat, egyéb papírokat tilos
egymásnak átadni). Lehet használni a SAS Helpet, a SAS OnlineDoc dokumentációt,
még az órai példák is felhasználhatók, valamint az internetről a SAS honlapjáról vagy
egyetemi honlapokról letölthető SAS oktatási anyagok. A feladat megoldásokhoz a SAS,
és Enterprise Mineren kívül segítségként használható az Enterprise Guide program is.
Azonban csak önálló munkát értékelek! Kérdezgetni a dolgozat alatt már nem lehet!
E-mailezni vagy egyéb módon üzengetni a zh alatt tilos!

A kiosztott feladatlapot be kell adni, írja rá a nevét és az ETR_azonosítóját (EHA-kód).
A feladatlapon konkrét kérdések is találhatók az eredményekkel kapcsolatban, amelyekre
a választ a feladatlap kitöltésével kell megadni, illetve lesz egy kifejtős feladat is a lapon.
A feladatokban szereplő SAS adattáblák a ZH alatt letölthetők lesznek a feladatlapon
feltüntetett helyről. Sokféle feladatlap lesz, így mindenki különböző táblákból dolgozhat.

Az 1-2. feladatok megoldásait a SAS progr.nyelvén (DATA és PROC steps) adjuk meg,
a programokat lefuttatva a „Log” tartalmát összefűzve egyetlen fájlban helyezzük el, és
a feladatlapon szereplő kérdésekre (csak ezekre) az „Output” ablak alapján válaszoljunk!
A 3-4. feladatokat a SAS Enterprise Minerrel végezzük el, és ahol van „Output”ablak,
ennek (és nem a „Log”-nak) a tartalmát is fűzzük hozzá a fenti szövegfájlhoz, valamint
ezeknél a feladatoknál a „Results” eredmény alapján válaszoljon a feladatlap kérdéseire.
Az 5. feladat „kifejtős” kérdés valamelyik Adatbányászati eszköz alkalmazásáról.
 
Kérem, hogy az 1-2 feladatok „Log” tartalmát és a 3-4 feladatok „Output” tartalmát
egyetlen szövegfájlba másolja össze. Ebben a szövegfájlban a feladatlapon megadott
kérdések sorrendjét kövesse valamint megjegyzésekkel világosan különítse el, hogy
melyik rész melyik feladathoz illetve melyik részfeladathoz tartozik. A szövegfájl
neve ehakod.txt legyen, ahol az ehakod helyére írja be a saját EHA-kódját, vagyis
az ETR azonosítóját (.ELTE nélkül). Ha kész van, akkor ezt az ehakod.txt fájlt
anonymous FTP-vel töltse fel az ablinux.inf.elte.hu gépre (névtelen kapcsolódás,
nem kell jelszót megadni), de a fájlt csak egyszer küldheti át, az nem írható felül,
és nem is nyitható meg! A feladat pontozásánál figyelembe veszem a gyorsaságot is,
aki hamarabb befejezte és elküldte a zh-t, az több pontot kap, mint aki később adta be.

3. EREDMÉNYEK

3.1. SAS ZH javítási útmutató és pontozás

MINTA: SAS zárthelyi dolgozat (például az E-csoport feladatsora) PONTOZÁSA

Az 1-2. feladatok megoldásait a SAS program formájában (PROC STEPS) adjuk meg,
a programokat lefuttatva a „Log” tartalmát összefűzve egyetlen fájlban helyezzük el, és
a feladatlapon szereplő kérdésekre (csak ezekre) az „Output” ablak alapján válaszoljunk!
A 3-4. feladatokat a SAS Enterprise Minerrel végezzük el, és ahol van „Output”ablak,
ennek (és nem a „Log”-nak) a tartalmát is fűzzük hozzá a fenti szövegfájlhoz, valamint
ezeknél a feladatoknál a „Results” eredmény alapján válaszoljon a feladatlap kérdéseire.
Az 5. feladat „kifejtős” kérdést a dolgozatlap hátoldalán fejtse ki (kézírással a lényegét).

A feladatokban szereplő SAS adathalmazok az alábbi könyvtárban találhatóak:
'C:\Program Files\SAS\Enterprise Guide 4\Sample\Data'

Pontozás: minden feladat 3 pontos, összesen 5 feladat van, vagyis 15 pont érhető el,
                  (a plusz/mínusz 1 pont gyorsasági/késedelmi pont miatt max.14-16 pont)

1. feladat: Készítsünk statisztikát a FITNESS adathalmazról a „Maximum heart rate”
cimkéjű változó (maximális pulzus) alapján: mennyi az átlag, a szórás és a medián?

1. feladat pontozása:
A programra 2 pont, 1 pont: proc means data = libname.fitness mean std median;
így pl. aki std (stddev) szórás helyett range-t használt, ezt az 1 pontot elveszítette,
1 pont: var maxpulse; vagyis itt a változó neve kell, nem pedig a címke (Label),
és a lapon a kérdésére a válasz is 1 pont (de a std hiba miatt nem vontam le újból).

2. feladat: Készítsünk gyakorisági statisztikát a CARS_1993 adathalmazról, a „drága”
autóknak (ahol Price alapján 15 alatt olcsó, 15 és 25 között átlagos és 25 felett „drága”)
hány százaléka „erős” (ahol Horsepower alapján 150 alatt gyenge, 150 felett erős).

2. feladat pontozása:
A proc format-ra 1 pont, proc freq-re 1 pont, és 1 pont a lapon a kérdésére adott válasz,
de csak a jó válasz (például itt 85% a megfelelő érték, de ha nem jó értéket írt ki, vagy
a teljes kereszttáblát kiírogatta, az nem ér pontot, csak a kérdésre adott pontos válasz).

3. feladat: Készítsünk klaszter-elemzést LIPID adathalmazra, melynek során soroltassuk
3 csoportba a vérzsirszinteket. Előtte tanulmányozzuk át az adatokat, milyen változókat
vennél figyelembe, az adatok hány százaléka hiányzó érték? Mennyi a koleszterin szint
(Cholesterol) átlaga az előállt klaszterekben?

3. feladat pontozása:
1 pont: a megfelelő változók kiválogatása, például interval változók (ne binary, ne ordinal),
itt a példában a változók egy részére 55% a hiányzó érték, ezeket ne vegyük figyelembe,
hiszen a változók zöménél 0% vagyis nincs hiányzó érték, így inkább ezekre készítsük el.
1 pont: a standardizálásra, a beküldött outputból tudom ellenőrizni, hogy melyik opciót
(None, Range vagy Std Dev.) választotta (a None az nem jó, hogy nem standardizált),
1 pont: a lapon a kérdésére adott válasz, a standardizálás miatt ne az Output fülből,
hanem a Statistics fülből kell kiírnunk a klaszterátlagot.

4. feladat: Készítsünk regressziós elemzést a AUCTION adathalmazra, melynek során
vizsgáljuk meg, hogyan hat a piac működési költségére (Cost) az, hogy melyik állatból
mennyit adtak el a piacon (a táblában ezresekben vannak az adatok megadva).
Előtte tanulmányozzuk át az adatokat, milyen változókat ne vegyük figyelembe?
(például a Volume-ot ne). A regressziós elemzés alapján melyik a legmeghatározóbb
paraméter és mi a t-értéke?

4. feladat pontozása:
A programra 2 pont, nincs különösebb teendőnk, mint az Input Data Source-ban beállítani
a fenti példában Cost target és Volume rejected (a többi marad input, illetve a Marketid id),
a feladatlap kérdésére a helyes válasz 1 pont (pl. legmeghatározóbb a cattle és t-érték:7.62).

5. feladat: Az adatok előkészítésének, az adattisztítás folyamatának egy rövid kifejtése.

5. feladat pontozása:
Ez is 3 pontos feladat, mint a többi, de a kifejtésnél nem a mennyiséget, hanem a minőséget
értékeltem inkább, mennyire értette meg az adatbányászati technikák /módszerek lényegét.

Ponthatárok:

Pont:

0-6

7

8

9

10

11

12

13-15

Jegy:

1

2

2/3

3

3/4

4

4/5

5

3.2. SAS ZH eredménye (Név helyett 3 karakteres kóddal)

SAS ZH eredménye (ETR azonosító első 3 karakterével) ezen a külön oldalon (link)
SAS pótZH:
május 23, szerda 9:00-10:30-ig, 00-807 Adatbázis labor

3.3. Gyakorlati jegyek (Név helyett 3 karakteres kóddal)

A gyakorlati jegyet a „SAS jegy” és az „XML jegy” átlaga adja meg, felfelé kerekítve.
Gyakorlati jegyek (ETR azonosító első 3 karakterével) ezen a külön oldalon (link)


4. Hasznos linkek

4.1. Ajánlott irodalom

[AbJ]
[Han]
[AdZ]
[IA2]

Abonyi János (szerk): Adatbányászat a hatékonyság eszköze, Comp.Books 2006.
J.Han-M.Kamber: Adatbányászat – Koncepciók és technikák, Panem, 2004.
P.Adriaans-D.Zatinge: IT - Adatbányászat, Panem, 2004.
Iványi Antal (szerk): Informatikai algoritmusok II., ELTE Eötvös Kiadó, 2005.
                                28. fejezet Gyakori elemhalmazok keresése (Bodon Ferenc)
                                29. fejezet Klaszterezés (Fogaras Dániel és Lukács András)

 

4.2. magyar nyelvű linkek

Bodon Ferenc (BME) Adatbányászati algoritmusok (egy kiváló könyv a weben)

Molnár András (ELTE) és Sidló Csaba (SZTAKI) 2005-ös diái:


SAS programozás és Enterprise Guide


Molnár András diái

Bevezetés, OLAP rendszer, adattárház
SAS rendszer, SAS programozás/ PROC step
SAS programozás/ DATA step
Stat. elemzések SAS Enterprise Guide-dal

intro.ppt
sasbase.ppt
datastep.ppt
guide.ppt                       .


Adatbányászat, SAS Enterprise Miner


Sidló Csaba diái

Adatbányászat, SAS EM eszköztára, Association
Osztályozás, előrejelzés, modellépítés, Clustering

eminer1.ppt
eminer2.ppt                   .

Lukács András (SZTAKI) Adatbányászat előadás 2005-ös diái:


Adatbányászat


Lukács András diái

Bevezetés
Gyakori termékek
Klaszterezés
Adattárház

dm05_01_bevezetes.pdf
dm05_02_fim_apriori.pdf
dm05_03_klaszterezes.pdf
dm05_04_adattarhaz.pdf

SZTAKI Data Mining and Web Search Group

Lukács András (SZTAKI) Adatbányászat szeminárium

Sidló Csaba (SZTAKI) Data Warehouse - Adattárház

Adatbanyaszat.lap.hu

Magyar Adatbányászok Honlapja

4.3. angol nyelvű linkek

Jeffrey D. Ullman honlapján Data Mining Lecture Notes oktatási anyag

UCLA > Stat.Comp. > SAS Resources to help you learn and use SAS

4.4. SAS és SAS OnlineDoc

SAS honlapja: SAS               SAS OnlineDoc

SAS Magyarország               SAS Egyetemi Program az ELTE-n

Egyetemi Program                SAS diákklubja: SAS Masters' Club

SAS néhány magyarországi ügyfele: Magyar Külkereskedelmi Bank, CIB Bank,
OTP Bank, HVB Bank, Budapest Bank, Magyar Cetelem Bank, Inter-Európa Bank,
K&H, Volksbank, Erste Bank, Generali-Providencia, Uniqa Biztosító, APEH, KSH,
MÁV, Shell, Richter, EGIS, Sanofi-Aventis, Pannon, T-Mobile, ACNielsen, stb.

SAS nemzetközi sikerek: SAS/Success Stories



 Fel a Lap tetejére                   Vissza a Kezdőlapra