Участник:StasFomin/ML2019 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
(Алгоритмы и структуры данных)
м (StasFomin переименовал страницу StasFomin/ML2019 в Участник:StasFomin/ML2019)
 
(нет различий)

Текущая версия на 13:54, 18 ноября 2019

Обязательные дисциплины

Машинное обучение

Лекции

ДЗ

01

Нифига не понял, как добится нормального результата. Но нет времени.

Надо будет потом сделать работу над ошибками, выяснить как решать эту задачу — очень похоже что из этого путь к классификации 0x1.tv


Алгоритмы и структуры данных

Наш курс состоит из лекций, семинаров и домашних заданий.

1. 10 лекций и 10 семинаров. 2. Оценки. Можно набрать 100 баллов, сдав все задачи. Оценки Отлично, Хорошо и Удовлетворительно будут ставиться за набранные баллы. Предварительно, на Удовлетворительно нужно набрать 50 баллов. 3. Дедлайны. На каждую задачу дается ограниченное время для ее решения: две недели. 4. Семинары. На семинаре преподаватель что-то рассказывает по теме, обсуждает небольшие задачи. Пишутся некоторые куски кода с трансляцией через проектор. 5. Тестирующая система. Перед тем, как сдать задачу преподавателю, ее нужно проверить в тестирующей системе. Ссылка на нее будет выдана с заданием. 6. Списывание. Списывать запрещено! За списывание предусмотрено наказание. Если замечено списывание, то у списавшего и у того, кто дал списать, задача аннулируется и вычитается 5 баллов. Чтобы не напороться на антиплагиат, не выкладывайте свои решения, не пользуйтесь кусками кода из интернета.

Если есть вопросы, пишите в комментариях, личным сообщением, в чат или на почту


3 группа. От Нарцева до Ястребова сдают Дмитрию Корепанову - dmitrykorepanov@gmail.com

Просьба присылать ссылки на посылки на почту с пометкой в теме "MADE12:". Ссылка на посылку обычно выглядит вот так: https://contest.yandex.ru/contest/14656/run-report/223322323322/

Дедлайны устанавливаются в две недели после публикации видео-материалов. В нашем случае для первого и второго задания - это 7 ноября.

ML2019 2019-11-06 22-43-49 image0.png

Лекции

1
https://www.youtube.com/watch?v=WMGyg_IAawg
2
https://www.youtube.com/watch?v=1g36w_N_q6E


Advanced C++

Лекции

01

Слайды
https://drive.google.com/open?id=1sGruLwlTn5ld5dunBjcITxzR4BPofnE3

02

Слайды
https://drive.google.com/open?id=1PD6z-zhgVfVBkI7GcewdXJKylV77aL7I


HW

Для успешного прохождения курса должны быть выполнены ВСЕ домашние задания. Задания объявляются в конце каждого занятия, время на выполнение - одна неделя. Под выполнением подразумевается не просто присланное на проверку задание, а еще и его успешная защита, то есть оценка в ведомости.

Требования к домашним заданиям:

  • В вашем github должен быть репозиторий made_2019_cpp
  • Внутри репозитория должны быть директории из двух цифр, вида: 01, 02 и т.д. - это номера домашних заданий
  • Внутри каждой директории могут быть любые файлы реализующие задачу. Обязательным является только файл Makefile
  • В Makefile обязательно должны быть цели test и run. run запускает бинарный файл с домашним заданием, test запускает тесты вашего решения
  • Собираться ваш код должен компилятором С++ поддерживающим 14 стандарт
  • Внешних зависимостей быть не должно

После выполнения домашнего задания присылайте Владиславу Смирнову (vladislav.smirnov@corp.mail.ru) письмо с темой made_2019_cpp_номердз

Как оцениваются задания

1 балл, если задание выполнено (написан код, код делает то, что указано в задании, код покрыт тестами) +1 балл, если задание было сдано вовремя +2 балла на усмотрение проверяющего

Итого от 1 до 4 баллов за каждое задание.


За каждую задачу в курсе вы можете получить до 4 баллов. 1 балл из них вы теряете, если задача полностью защищена после указанных сроков. Полные правила сдачи вы можете посмотреть здесь Через неделю будут опубликованы следующие доступные лекции. К этому времени я ожидаю, что большинство из вас уже пройдет ревью домашнего задания 1, а может и обоих. Тогда вам будет более понятно, что от вас ожидается при оформлении кода.

Обсудить непонятные вопросы при выполнении дз или посмотреть на моменты, с которыми столкнулись другие студенты, вы можете в канале cpp в слаке.

Присылайте домашние задания на мою почту (vladislav.smirnov@corp.mail.ru). Учтите, что проверка может занять примерно до 3 итераций, так что задание стоит присылать за 3-4 дня до дедлайна, если вы не уверены, что оформили всё идеально. При проверке учитывается не только реализация алгоритма, но и его оформление. Будем обсуждать как правильно писать код, делить на логические части и обрабатывать ошибки.

01

1 ДЗ - 31.10.19 00:00

02

2 ДЗ - 07.11.19 00:00


Advanced Java

ДЗ надо сделать в течение недели после публикации до следующего занятия. Код запушить код в гитхаб, сделать пул реквест из бранчи в мастер, ссылку на пул реквест прислать мне. При решении попытайтесь написать красивое ооп решение. И обязательно надо добавить unit тесты

При ревью я постараюсь написать, как можно улучшить ваше решение, поэтому чем раньше вы пришлете решение, тем более подробное код ревью получить. Даже несколько раундов код ревью. По любым вопросам можно писать мне в слак. Для студентов, кто учится удалено, можно прислать решение или сразу, или как станут доступны видео лекции.

Лекции

01
https://www.youtube.com/watch?v=Ae64zyPbHg4
02
https://www.youtube.com/watch?v=HsHErIqZyWg


HW

01

Написать программу, которая считывает входной параметр c командной строки. Это имя файла. В этом файле находится информация о сделке в следующем формате: Trade: { “type”: {typeValue}, “price”: {priceValue} } Возможные значения {typeValue}: FX_SPOT, BOND, COMMODITY_SPOT, IR_SWAP и т.д. priceValue – числовое значение.

Ваша задача - считать информацию о сделке и создать объект, описанный в файле. Каждому типу сделки соответствует свой класс. price – поле сделки, нужно установить его значение. Для считывания файла используйте классы пакета java.io Задачу нужно решить двумя способами: Первый способ – с помощью конструкции switch или if switch (tradeType) { case “FX_SPOT” : .. Второй способ – создать enum TradeType c абстрактным методом createTrade(…). Додумать самим дальше, как можно здесь использовать enum. Написать логику, так чтобы ее можно было переиспользовать (например, может измениться источник данных – консоль вместо файла).

Написать unit тесты к решению. Junit подключить через gradle. Вся бизнес логика должна быть в классах, которые реализуют определенный интерфейс. Писать основную логику в static методах не надо.