cílová vedení školení „Analýza dat a modelování vztahů v balíčku R“ – studie základní schopnosti R programy – svobodný jazyk programování pro statistické výpočty, stejně jako naučit se organizovat a spravovat zadávání dat, provádět počáteční Statistická analýza dat, prezentovat je graficky, umět v datech najít vztahy. Školení je určeno pro studenty bez praxe v R nebo se základní znalostí balíčku.

Je vhodné, aby studenti měli znalosti programování a byli obeznámeni se základy statistické analýzy.

Po absolvování školení budete moci používat program R:

  • Správně vytvořte vzorek dat pro analýzu
  • Organizovat zadávání dat a spravovat data
  • Proveďte deskriptivní statistickou analýzu
  • Studujte vztahy v kontingenčních tabulkách
  • Testovat statistické hypotézy o rovnosti průměrů
  • Používejte grafické možnosti
  • Proveďte korelační analýzu
  • Proveďte regresní analýzu
  • Proveďte ANOVA

Délka školení: 32 akademických hodin. nebo 4 dny.

Tréninkový program:

Téma 1. Základní pojmy statistické analýzy dat – 2 akademické hodiny.

  • Statistický výzkum
  • Metody získávání dat
  • Rozdíl mezi pozorováním a experimentem
  • Populace a vzorek
  • Požadavky na data při vytváření vzorku
  • Koncept bodového a intervalového statistického odhadu
  • Znamení a proměnné
  • Variabilní měřící stupnice
  • Oblasti statistické analýzy dat
  • Popisná a analytická statistika
  • Výběr metod statistické analýzy v závislosti na měřítcích měření proměnných
  • Statistická hypotéza
  • Typy statistických chyb
  • Principy testování statistických hypotéz
  • Volba hladiny významnosti při testování hypotéz

Téma 2. Úvod do práce v prostředí R – 2 akademické hodiny.

Téma 3. Základy programování v R – 2 akademické hodiny.

  • Typy objektů v R
  • Vektor
  • Seznamy
  • Matrice
  • Faktory
  • Datové tabulky
  • Výrazy
  • Operátoři přístupu k datům
  • Funkce a argumenty
  • Cykly a podmíněné příkazy
  • Správa databáze v R
  • Vektorizace operací
  • Ladění
  • Objektově orientované programování

Téma 4. Zadávání dat a organizace v R – 2 akademické hodiny.

  • Metody stahování dat
  • Přímé zadávání dat
  • Zadávání dat do tabulky
  • Import dat z MS Excel
  • Import dat z jiných statistických balíčků a databází
  • Ukládání výsledků analýzy
  • Specifikace kvantitativních dat
  • Specifikace ordinálních a jmenovitých dat
  • Nastavení chybějících hodnot v datech
  • Identifikace odlehlých hodnot a chyb
  • Principy transformace dat

Téma 5. Grafické možnosti R – 2 akademické hodiny.

  • Grafické funkce
  • Grafická zařízení
  • Možnosti grafiky
  • Interaktivní grafika
  • Složené obrázky
  • Výstupní zařízení

Téma 6. Popisná statistická analýza v R – 4 akademické hodiny.

  • Statistika centrální tendence
  • Aritmetický průměr
  • Modální význam
  • Střední hodnota
  • Statistika rozptylu
  • Rozptyl a směrodatná odchylka
  • Variační koeficient
  • Percentily
  • Histogramy
  • Krabicové parcely
  • Z-transformace
  • Zákon normálního rozdělení
  • Šikmost a špičatost
  • Kontrola normality rozdělení
  • Některé zákony distribuce
  • Binomické rozdělení
  • Poissonovo rozdělení
  • Jednotná distribuce
  • Exponenciální rozdělení
  • Lognormální rozdělení
  • Směrodatná chyba a interval pro průměr

Téma 7. Tvorba dat pro analýzu metodou vzorkování – 2 akademické hodiny.

  • Obecná a výběrová populace
  • Charakteristiky vzorku
  • Vlastnosti výběrové metody výzkumu
  • Klasifikace vzorku
  • Typy a metody pravděpodobnostního výběru
  • Metody odběru vzorků
  • Jednoduchý náhodný výběr
  • Systematický náhodný výběr
  • Výběr clusteru
  • Jednostupňový výběr clusteru
  • Vícestupňový výběr clusteru
  • Algoritmus pro provádění výběrových šetření
  • Stanovení požadované velikosti vzorku

Téma 8. Statistické testy pro identifikaci rozdílů ve vzorcích v R – 4 akademické hodiny.

  • Hypotézy o srovnávání prostředků
  • Z-test pro srovnání průměrů
  • Z-test pro srovnání akcií
  • Jednovýběrový t-test
  • T-test pro nezávislé vzorky
  • T-test pro závislé vzorky
  • Podmínky aplikace neparametrických testů
  • Jednovzorkový test Wilcoxon se znaménkem
  • Mann-Whitney test
  • Znakový test pro související vzorky
  • Wilcoxonův podepsaný test pro související vzorky
  • Neparametrická Kruskal-Wallisova analýza rozptylu
  • Friedmanův test pro závislé vzorky

Téma 9. Hodnocení vztahu mezi proměnnými v R – 4 akademické hodiny.

  • Analýza vztahu mezi kategorickými proměnnými
  • Kontingenční tabulky
  • Očekávané frekvence a rezidua v kontingenčních tabulkách
  • Chí-kvadrát test
  • Kritérium dohody
  • Klasifikace typů vztahů mezi kvantitativními proměnnými
  • Rozptylové zákresy
  • Předpoklady a podmínky pro provádění korelační analýzy
  • Pearsonův korelační koeficient
  • Pořadové korelační koeficienty
  • Spearmanův korelační koeficient
  • Kontrola významu vztahu
  • Intervalové odhady korelačních koeficientů
  • Parciální korelační koeficienty

Téma 10. Modelování formy komunikace pomocí regresní analýzy v R–4 akademických hodinách.

  • Základní pojmy regresní analýzy
  • Párový a vícenásobný lineární regresní model
  • Předpoklady pro lineární regresní analýzu
  • Odhad regresních koeficientů
  • Kontrola platnosti regresního modelu
  • Význam regresní rovnice
  • Význam regresních koeficientů
  • Výběr proměnných v regresní analýze
  • Posouzení přesnosti regresní rovnice
  • Posouzení statistické stability regresní rovnice
  • Bodové a intervalové odhady závislé proměnné
  • Nelineární regresní modely
  • Kategorické nezávislé proměnné v regresním modelu

Téma 11. Modelování vztahů pomocí analýza rozptylu v R – 4 ak.ch.

  • Modely ANOVA
  • Předpoklady pro použití analýzy rozptylu
  • Testování hypotézy rovnosti rozptylů
  • Jednosměrný model ANOVA
  • Jednosměrný stůl ANOVA
  • Posouzení míry vlivu faktoru
  • Post hoc testy pro párová srovnání
  • Analýza rozptylu se dvěma nebo více faktory
  • Obousměrný stůl ANOVA s interakcí
  • Grafická interpretace interakce faktorů
  • Multifaktorová modelová analýza

Analýza dat v prostředí R

Ústav výpočetní matematiky a informačních technologií, Oddělení analýzy dat a operačního výzkumu


Směr
: 01.03.02 „Aplikovaná matematika a informatika. Systémové programování“ (bakalářský titul, 3. ročník)

Disciplína: "Analýza dat v prostředí R"

Sylabus: "Prezenční školení, 2017."

Počet hodin: 90 (z toho: přednášky - 18, laboratorní cvičení - 36, samostatná práce - 36); forma kontroly - test.

Směr: 38.03.05 "Obchodní informatika" (bakalářské studium, 4. ročník)

Disciplína: "Analýza dat"

Sylabus: "Prezenční školení, 2018."

Počet hodin: 78 (z toho: přednášky - 18, laboratorní cvičení - 36, samostatná práce - 24); forma kontroly - test.


Klíčová slova
: Dolování dat, strojové učení, regrese, klasifikace, shlukování, podpůrný vektor, SVM, umělý neutron, neuronová síť, systém doporučení, analýza dat, strojové učení, model, vzorkování, proměnná odezvy, trénování vzorků, přeškolování vzorků, učení pod dohledem, trénování bez dozoru , R balíček, R programovací jazyk, statistika, náhodná veličina, r.v., distribuční zákon, normální rozdělení, vzorkování, statistika, metoda maximální věrohodnosti, Chí-kvadrát rozdělení, Studentské rozdělení, Fisherovo rozdělení, hypotéza, oblast přijetí hypotéz, hladina významnosti, chyby prvního a druhého druhu, porovnání vzorků, testy dobré shody, kontingenční tabulka, korelace, regrese, lineární regrese, nelineární regrese, faktor, prediktor, jednorozměrná regrese, vícenásobná regrese, klasifikace, logistická regrese, jednorozměrná diskriminační analýza , Bayesovský přístup, naivní Bayes, podpůrný vektorový stroj, separační nadrovina, rozhodovací stromy, neuronová síť, neuron, aktivační funkce, doporučovací systém, shlukování, funkcionál kvality.

Témata: 1. Vývojové prostředí R: informace z historie. instalace a spuštění balíčku. 2. Programování prvních kroků v R. 3. Vykreslování grafů v prostředí R. 4. Zadávání dat a práce se soubory v prostředí R. 4.1. Práce s jednorozměrnými datovými poli. 4.2. Práce s maticemi a datovými tabulkami. 5. Testování statistických hypotéz v prostředí R. 5.1. Testování hypotézy o zákonu rozdělení pravděpodobnosti náhodné veličiny (Pearsonův Chí-kvadrát test). 5.2. Testování hypotézy nezávislosti charakteristik s kvalitativním seskupením (Pearsonův Chí-kvadrát test). 5.3. Testování hypotézy o rovnosti matematických očekávání normálních populací (Studentův t-test). 5.4. Testování hypotézy o rovnosti rozptylů normálních populací (Fisherův test). 6. Úloha konstrukce jednofaktorového lineárního regresního modelu. Prognózování. 7. Problém vícenásobné lineární regrese. 7.1. Problém jednorozměrné lineární regrese jako speciální případ vícenásobné regrese. 7.2. Studium závislosti proměnné odezvy na faktoru v regresním modelu. 8. Klasifikační problém, přístupy k jeho řešení. 8.1. Logistická regrese. 8.2. Lineární diskriminační analýza. 8.3. Rozhodovací stromy - princip "rozděl a panuj". 9. Neuronové sítě(neuronové sítě) a jejich aplikace ve strojovém učení. 10. Podpůrné vektorové stroje, podpůrné vektorové stroje (SVM) ve strojovém učení. 11. Systémy doporučení, jejich účel, konstrukce, použití. 12. Speciální úlohy strojového učení.


Datum zahájení: 1. září 2014
  • Missarov Mukadas Dmukhtasibovich, vedoucí. Ústav analýzy dat a operačního výzkumu KFU, doktor fyzikálních a matematických věd, profesor, email: [e-mail chráněný]
  • Kashina Olga Andreevna, Ph.D., docentka katedry analýzy dat a operačního výzkumu, email: [e-mail chráněný]

Úvod

Nejprve si proberme terminologii. Hovoříme o oblasti, která se v západní literatuře nazývá Data Mining a do ruštiny se často překládá jako „analýza dat“. Termín není zcela úspěšný, protože slovo „analýza“ v matematice je docela známé, má ustálený význam a je součástí názvů mnoha klasických sekcí: matematická analýza, funkční analýza, konvexní analýza, nestandardní analýza, vícerozměrný komplex analýza, diskrétní analýza, stochastická analýza, kvantová analýza atd. Ve všech těchto oblastech vědy se studuje matematický aparát, který se opírá o některé zásadní výsledky a umožňuje řešit problémy v těchto oblastech. V analýze dat je situace mnohem složitější. Jde především o aplikovanou vědu, ve které neexistuje žádný matematický aparát v tom smyslu, že neexistuje žádný konečný soubor základních faktů, z nichž by vyplývalo, jak řešit problémy. Mnoho problémů je „individuálních“ a nyní se objevují stále nové třídy problémů, pro které je nutné vyvinout matematický aparát. Ještě větší roli zde hraje skutečnost, že analýza dat je relativně novým směrem ve vědě.

Dále musíme vysvětlit, co je to „analýza dat“. Nazval jsem to „oblast“, ale oblast čeho? To je místo, kde věci začínají být zajímavé, protože to není jen oblast vědy. Opravdový analytik řeší především aplikované problémy a zaměřuje se na praxi. Kromě toho musí být data analyzována v ekonomii, biologii, sociologii, psychologii atd. Řešení

nové úkoly, jak jsem již řekl, vyžadují vymýšlení nových technik (nejsou to vždy teorie, ale také techniky, metody atd.), takže někteří říkají, že analýza dat je také umění a řemeslo.

V V aplikovaných oblastech je nejdůležitější praxe! Je nemožné si představit chirurga, který neprovedl jedinou operaci. Ve skutečnosti to vůbec není chirurg. Datový analytik se také neobejde bez řešení reálných aplikovaných problémů. Čím více takových problémů vyřešíte sami, tím kvalifikovanějšími specialisty se stanete.

Za prvé, analýza dat je praxe, praxe a další praxe. Musíme řešit skutečné problémy, mnohé z nich, z různých oblastí. Protože například klasifikace signálů a textů jsou dvě zcela odlišné oblasti. Specialisté, kteří mohou snadno sestavit diagnostický algoritmus motoru založený na signálech senzorů, nemusí být schopni vytvořit jednoduchý filtr spamu pro e-maily. Je však velmi žádoucí získat základní dovednosti při práci s různými objekty: signály, texty, obrázky, grafy, popisy funkcí atd. Navíc vám to umožní vybrat si úkoly podle vašich představ.

Za druhé, je důležité vybrat si své školicí kurzy a mentory moudře.

V V zásadě se vše můžete naučit sami. Koneckonců, nezabýváme se oblastí, kde existuje některá tajemství přecházela z úst do úst. Naopak, existuje mnoho kompetentních školení, zdrojových kódů programů a dat. Navíc je velmi užitečné, když několik lidí řeší jeden problém paralelně. Faktem je, že při řešení takových problémů se musíte vypořádat s velmi specifickým programováním. Řekněme váš algoritmus

odpovědělo 89 % správných odpovědí. Otázka: je to hodně nebo málo? Pokud to nestačí, o co jde: naprogramovali jste algoritmus špatně, zvolili špatné parametry algoritmu nebo je samotný algoritmus špatný a není vhodný pro řešení tohoto problému? Pokud je práce duplikována, lze rychle najít chyby v programu a nesprávné parametry. A pokud je duplikován specialistou, jsou rychle vyřešeny i otázky posouzení výsledku a přijatelnosti modelu.

Za třetí, je užitečné mít na paměti, že řešení analýzy dat zabere hodně času.

Statistika

Analýza dat v R

1. Proměnné

V R, stejně jako všechny ostatní programovací jazyky, má proměnné. Co je to proměnná? V podstatě je to adresa, se kterou můžeme najít některá data, která ukládáme do paměti.

Proměnné se skládají z levé a pravé strany, oddělené operátorem přiřazení. V R je operátor přiřazení konstrukce „<-”, если название переменной находится слева, а значение, которое сохраняется в памяти - справа, и она аналогична “=” в других языках программирования. В отличии от других языков программирования, хранимое значение может находиться слева от оператора присваивания, а имя переменной - справа. В таком случае, как можно догадаться, оператор присваивания примет конструкцию следующего вида: “->”.

V v závislosti na uložených datech mohou být proměnné různé typy: celé číslo, skutečné, řetězec. Například:

moje.var1<- 42 my.var2 <- 35.25

V tomto případě bude proměnná my.var1 typu celé číslo a proměnná my.var2 bude typu real.

Stejně jako v jiných programovacích jazycích můžete s proměnnými provádět různé aritmetické operace.

my.var1 + my.var2 - 12

moje.var3<- my.var1^2 + my.var2^2

Kromě aritmetických operací můžete provádět logické operace, tedy porovnávací operace.

my.var3 > 200 my.var3 > 3009 my.var1 == my.var2 my.var1 != my.var2 my.var3 >= 200 my.var3<= 200

Výsledkem logické operace bude pravdivý (TRUE) nebo nepravdivý (FALSE) výrok. Můžete také provádět logické operace nejen mezi proměnnou s určitou hodnotou, ale také s jinou proměnnou.

moje.nová.var<- my.var1 == my.var2

Random Forest je jeden z mých oblíbených algoritmů pro dolování dat. Za prvé, je neuvěřitelně všestranný; lze jej použít k řešení regresních i klasifikačních problémů. Hledejte anomálie a vybírejte prediktory. Za druhé, toto je algoritmus, který je opravdu obtížné nesprávně aplikovat. Jednoduše proto, že na rozdíl od jiných algoritmů má málo přizpůsobitelných parametrů. A také je překvapivě jednoduché povahy. A přitom je úžasně přesný.

Jaká je myšlenka za tak úžasným algoritmem? Myšlenka je jednoduchá: řekněme, že máme nějaký velmi slabý algoritmus, řekněme . Pokud vytvoříme mnoho různých modelů pomocí tohoto slabého algoritmu a zprůměrujeme výsledky jejich předpovědí, bude konečný výsledek výrazně lepší. Tomu se říká souborové učení v akci. Algoritmus Random Forest se proto nazývá „Random Forest“, pro přijatá data vytváří mnoho rozhodovacích stromů a pak zprůměruje výsledek jejich předpovědí. Důležitým bodem je zde prvek náhody při tvorbě každého stromu. Je přece jasné, že pokud vytvoříme mnoho stejných stromů, tak výsledek jejich zprůměrování bude mít přesnost jednoho stromu.

Jak pracuje? Předpokládejme, že máme nějaká vstupní data. Každý sloupec odpovídá nějakému parametru, každý řádek odpovídá nějakému datovému prvku.

Z celé datové sady můžeme náhodně vybrat určitý počet sloupců a řádků a na jejich základě sestavit rozhodovací strom.


Čtvrtek 10. května 2012

Čtvrtek 12. ledna 2012


To je vše. 17hodinový let je u konce, Rusko zůstává v zámoří. A oknem útulného bytu se 2 ložnicemi se na nás dívá San Francisco, slavné Silicon Valley, Kalifornie, USA. Ano, to je přesně ten důvod, proč v poslední době moc nepíšu. Přestěhovali jsme se.

Všechno to začalo v dubnu 2011, kdy jsem měl telefonický rozhovor se Zyngou. Pak mi to všechno připadalo jako nějaká hra nesouvisející s realitou a vůbec jsem si nedokázal představit, k čemu to povede. V červnu 2011 přijela Zynga do Moskvy a provedla sérii pohovorů, bylo zváženo asi 60 kandidátů, kteří prošli telefonickým pohovorem a z nich bylo vybráno asi 15 lidí (přesný počet nevím, někteří si to později rozmysleli, jiní okamžitě odmítl). Rozhovor se ukázal být překvapivě jednoduchý. Žádné problémy s programováním, žádné záludné otázky o tvaru poklopů, většinou testování vaší schopnosti chatovat. A znalosti byly podle mě hodnoceny jen povrchně.

A pak začal rigmarole. Nejdřív jsme čekali na výsledky, pak nabídka, pak schválení LCA, pak schválení petice o vízum, pak dokumenty z USA, pak fronta na ambasádě, pak dodatečné ověření, pak vízum. Chvílemi se mi zdálo, že jsem připravený všechno vzdát a dát gól. Občas jsem pochyboval, zda tu Ameriku potřebujeme, ostatně ani Rusko není špatné. Celý proces trval asi šest měsíců, nakonec jsme v polovině prosince dostali víza a začali se připravovat na odlet.

Pondělí byl můj první pracovní den na novém místě. Kancelář má všechny podmínky nejen k práci, ale i bydlení. Snídaně, obědy a večeře od vlastních kuchařů, spousta pestrého jídla nacpaného na každém rohu, posilovna, masáže a dokonce i kadeřník. To vše je pro zaměstnance zcela zdarma. Mnoho lidí dojíždí do práce na kole a několik místností je vybaveno pro uskladnění vozidel. Obecně jsem v Rusku nikdy nic takového neviděl. Všechno má však svou cenu, hned jsme byli upozorněni, že budeme muset hodně pracovat. Co je podle jejich měřítek „hodně“, mi není příliš jasné.

Doufám ale, že i přes množství práce se mi v dohledné době podaří obnovit blogování a třeba povědět něco o americkém životě a práci programátora v Americe. Počkej a uvidíš. Zatím všem přeji šťastný Nový rok a Vánoce a zase na viděnou!


Pro příklad použití vytiskneme dividendový výnos ruských společností. Jako základní cenu bereme závěrečnou cenu akcie v den uzavření registru. Z nějakého důvodu nejsou tyto informace na webu Trojky dostupné, ale jsou mnohem zajímavější než absolutní hodnoty dividend.
Pozornost! Spuštění kódu trvá poměrně dlouho, protože... Pro každou promo akci musíte zadat požadavek na servery finam a získat její hodnotu.

Výsledek<- NULL for(i in (1:length(divs[,1]))){ d <- divs if (d$Divs>0)( zkuste(( uvozovky<- getSymbols(d$Symbol, src="Finam", from="2010-01-01", auto.assign=FALSE) if (!is.nan(quotes)){ price <- Cl(quotes) if (length(price)>0) (dd<- d$Divs result <- rbind(result, data.frame(d$Symbol, d$Name, d$RegistryDate, as.numeric(dd)/as.numeric(price), stringsAsFactors=FALSE)) } } }, silent=TRUE) } } colnames(result) <- c("Symbol", "Name", "RegistryDate", "Divs") result


Podobně můžete vytvářet statistiky za předchozí roky.