Анализ многомерных данных на компьютере, 522 гр., семинар (по выбору)
Место и время проведения: вторник, 3 пара (4399)
Преподаватель: Голяндина Нина Эдуардовна
Вот ссылка на слайды, где написано про работу с R (что поставить, как работает, …). В целом, они для “продвинутых”. Минимум для всех - слайды 3 и 4 (R и RStudio), а также 13-18 (RMarkdown).
Важно для зачета: необходимым условием (еще нужно выступать с рассказами на заданную тему на занятии; обычно после выступления становится понятно, что нужно исправить-дополнить) будет подготовка в RMarkdown отчетов по обсуждаемым на занятиях темам. Первая тема - первичный анализ данных. Я их буду проверять и, если что-то не так, спрашивать, что да почему. Чем больше объяснений, включая формулы, есть в отчете, тем меньше нужно объяснять дополнительно. Поэтому сохраняйте то, что готовите к занятиям.
19.12.2017
Первая попытка сдачи зачета.
12.12.2017
Тамара и Дима - доделайте классификацию с учетом лекции 7 декабря (ROC, AUC) и приступайте к кластерному анализу https://cran.r-project.org/web/views/Cluster.html. Кроме просто применения kmeans и hclust, интересно сравнить кластеризацию по всем данным и по первым k-1 главной компоненте. Можно попробовать разделение смеси (model-based).
Остальные доразбираются с дискриминантным анализом и классификацией (нужно мне заранее прислать) и пробуют сделать кластерный анализ.
05.12.2017
Все делают полностью feature extraction и feature selection в ДА (нужны все пункты, которые перечислены ниже) и присылают мне заранее, а на занятии рассказывают. Можно сравнить отбор признаков по Partial Lambda и по информационным критериям (пошаговый DA в klaR - greedy.wilks и stepAIC (не получилось, поэтому не делаем)).
Дима и Тамара, чтобы больше успеть, можете уже и классификацию сделать.
Забегая вперед, классификация включает в себя lda, qda, cross-validation, визуализацию. (Можете посмотреть на другие методы классификации, которые частично будут в след. семестре, здесь https://github.com/kabacoff/RiA2/blob/master/Ch17%20Classification.R)
#LDA iris.train <- iris iris.lda <- lda(iris.train[,1:4], iris.train[,5]) iris.ldap <- predict(iris.lda, iris.train[,1:4])$class table(iris.ldap, iris.train[,5]) #classification quality ris.lda <- lda(iris.train[,1:4], iris.train[,5], CV = TRUE) table(iris.lda$class, iris.train[,5]) #leave-one-out cross-validation #LDA, out-of-sample iris.train <- iris[seq(1,nrow(iris),5),] iris.unknown <- iris[-seq(1,nrow(iris),5),] iris.lda <- lda(iris.train[,1:4], iris.train[,5]) iris.ldap <- predict(iris.lda, iris.unknown[,1:4])$class ct <- table(iris.ldap, iris.unknown[,5]) diag(prop.table(ct, 1)) # Exploratory Graph for LDA or QDA for each pair of variables library(klaR) partimat(Sp ~ ., Iris, method=“lda”)
28.11.2017
Задание - канонический дискриминантный анализ. Включает в себя (плюсами отмечено то, что было рассказано 23.11.2017 или ранее):
- Проверка модели (гомоскедастичность, нормальность) (+).
- Значимость различия групп (+).
- Интерпретация отличия на основе стандартизованных дискриминантных функций и факторной структуры (+).
- Значимое число дискриминантных функций (+).
- Уменьшение числа признаков вручную (+).
- Пошаговый дискриминантный анализ (+).
- Значения новых признаков (канонических переменных) (+)
- Графическое изображение результатов дискр. анализа (+ одно из изображений - это скаттеплоты новых признаков.).
Функции в R - lda, candisc, manova (можно поискать другие пакеты). Для проверки на нормальность - пакеты nortest, mvnormtest, на равенство ковариационных матриц heplots (там есть Box M и не только). Все делают то, что отмечено плюсами, под руководством Тамары и Димы.
21.11.2017 Владимир рассказывают про факторный анализ - не получилось.
Так как есть время, вернемся к аспектам темы про регрессию. Тамара - про робастную регрессию, Дмитрий - про непараметрическую.
14.11.2017 Климент, Виталий, Владимир рассказывают про факторный анализ. Пришлите мне заранее заготовку в html. Функции factanal, fa (psych). GPArotation и пр. Нужно обратить внимание результаты разных методов FA и остаточные корреляции, интерпретация факторов на основе factor structure и factor pattern.
Тамара, Дмитрий - подготовьте вместе рассказ про использование информационных критериев для определения числа факторов и сравните с другими способами определения числа факторов. Можно попробовать что-то промоделировать и посмотреть, как методы/критерии реагируют на отклонение от нормальности.
07.11.2017 Задание Тамаре и Диме - сделать факторный анализ. Функции factanal, fa (psych). GPArotation и пр. Обратить внимание на определение числа факторов, результаты разных методов FA и остаточные корреляции, интерпретация факторов на основе factor structure и factor pattern
Остальным - повторить теорию АГК и факторного анализа перед вторником. Также имеет смысл начать делать факторный анализ на своих данных - попробовать взять какую-то функцию для ФА, понять, что означают ее параметры и результаты, запустить.
31.10.2017 Все показывают PCA, сделанный с помощью разных пакетов (см. ниже ссылки на материалы по этому поводу). Задания по PCA нужно прислать мне на проверку заранее.
24.10.2017 Начинаем разбирать PCA с помощью Тамары и Димы (разные пакеты), варианты пакетов перечислены здесь. Нашла еще более свежее и подробное описание пакетов и примеров для АГК.
17.10.2017 Последнее занятие по линейной регрессии. Рассказы Владимира, Виталия, Климента про нее (разобраться с формулами, уметь находит нужные в конспекте и объяснять); перед этим пришлите отчеты мне. Все, что не успели, надо будет сдавать уже в дополнительное время + некоторый штраф. В файл с обработкой нужно вставить теорию.
10.10.2017 Линейная регрессия (рассказы про нее). Нужно разобраться с регрессией (см. план рассказа здесь http://statmod.ru/wiki/study:spring2017:4stat) и прислать html не позднее 8 октября. По-прежнему жду долги (работу над ошибками по блоку теста Статистика и html, сделанный с помощью RMarkdown, по трем блокам, описанным в http://statmod.ru/wiki/study:fall2017:stat_4sm).
03.10.2017 В прошлый раз задание было сделано лишь частично, в теории не разобрались, до тестов не дошли (не касается Тамары и Дмитрия). Поэтому мне нужно срочно прислать работу над ошибками по блоку теста Статистика, а также до понедельника (т.е. не позднее воскресенья 1 октября) прислать html, сделанный с помощью RMarkdown, по трем блокам, описанным в http://statmod.ru/wiki/study:fall2017:stat_4sm. (К следующему разу нужно будет разобраться с регрессией (см. план рассказа здесь http://statmod.ru/wiki/study:spring2017:4stat) и также прислать html не позднее 8 октября.) Пользуйтесь предложенной помощью от 622 гр, а также помощью и конспектами Тамары и Дмитрия.
26.09.2017 Все делают первичную обработку данных. Напоминаю, что разделились на две группы (Дмитрий, Климент, Александр) и (Тамара, Виталий, Владимир). Всем, с помощью Дмитрия и Тамары, нужно разобраться в теории и сделать первичную обработку каких-то своих данных. Обращаю внимание, что нужно понимать формулы тоже (для начала - для t-test) и с помощью тетрадки их выписывать и объяснять. Часть формул можно выписать прямо в RMarkdown, так как он поддерживает простую разметку TEX.
19.09.2017 На первое занятие нужно всем прийти с ноутбуком и поставленными R и RStudio. После того как их поставите, запустите хотя бы один R-файл с помощью RStudio, а также попробуйте сделать хотя бы один файл html с помощью RMarkdown (см. слайды).
Дима, Тамара, Владимир (?) делают задание по первичной обработке данных на R - это аналог описанного здесь в трех частях, если убрать частности, связанные с конкретным заданием и пакетом STATISTICA. Делать желательно в Rmarkdown.