Обсуждение:Численные методы обучения по прецедентам (практика, В.В. Стрижов)

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
м
м
Строка 127: Строка 127:
# Read [introductory materials] to MATLAB.
# Read [introductory materials] to MATLAB.
# Read documenting conventions [[Media: MatlabStyle1p5.pdf|Matlab Programming Style Guidelines]].
# Read documenting conventions [[Media: MatlabStyle1p5.pdf|Matlab Programming Style Guidelines]].
 +
 +
=== Homework2: test programming problem ===
 +
This should take between two and six hours. The purpose of this homework is for the students to practice using MATLAB/Octave
 +
before the projects are launched.
 +
 +
# Select a problem from [[Задачи пробного программирования| the list (rus)]], place its number into the table in the Group's page.
 +
# In the directory MLAlgorithms/Group274/Example2015Code create a subditectory Surname2015Problem0 (your surname, year, "Problem", problem number).
 +
# Upload your code and figures into your directory.
 +
# Provide a brief annotation for the problem that includes description of solution and results. Make a short report (approximately 45 seconds) on the basis of this descriptions.
 +
# Note that all figures should be formatted according to recommendations from [[JMLDA/Fig|JMLDA/Fig (rus)]].
 +
# The code should be documented according to [[Media: MatlabStyle1p5.pdf‎|MATLAB Programming Style Guidelines]].
 +
 +
* Tip: first formulate your solution in formulas then rewrite it as code.
 +
 +
Examples:
 +
* [http://sourceforge.net/p/mlalgorithms/code/HEAD/tree/Group174/Example2014Code/Popova2014Problem7/]. The code is documented, results are visualized, solution is described. This example lacks results report and figures description. Figure formatting: compare fig1 and fig2.
 +
* [http://sourceforge.net/p/mlalgorithms/code/HEAD/tree/Group174/Example2014Code/ShvetsProblem15/]. The code is documented, results are visualized, solution is described. Figure formatting is OK. This example lacks results report and figures description.
 +
 +
Examples of basic machine learning problems in MatLab: [http://www.mathworks.com/machine-learning/examples.html#classification].

Версия 15:25, 10 июня 2015

Основная страница будет постепенно переводиться на английский в связи с значимым числом запросов. 9.2.2014

Содержание

Introduction

’’Machine Learning and Data Analysis’’ is a practical course that focuses on methods for scientific research. The course teaches students how to conduct research projects in the field of machine learning and data analysis. The abstract goal is to learn to convey ideas in precise, clear and elegant way; specific goal is to write a research paper, accepted by other researchers from the field of Machine Learning and Data Analysis; make a report. Expected result is a research paper, submitted to a peer-reviewed journal from the list, composed by the Higher Attestation Commission.

The course introduces students to technologies used in scientific research and teaches them to present the results of their studies in the correct format, as used by other researchers from the field of machine learning and data analysis. By the end of this term, each student is expected to write a research paper and submit it to a peer-reviewed journal from the list, composed by the Higher Attestation Commission. During the course the students learn the basics of scientific writing and designing computational experiments, using associated tools such as markdown system LaTeX, bibliographic system BibTeX, and computing environment MATLAB.

The work on a project includes exploring the literature, writing mathematical problem statement and algorithm description, investigating the its properties, and running computational experiments. Each student selects a personal problem from the list of suggested research topics. The student analyzes recent publications on the selected topic, formulates the problem and presents it to the group. Then the student performs mathematical description and analysis of suggested methods, followed by an intermediate report. The last step is to run computational experiments to illustrate the method's properties using real or synthetic data. Each paper undergoes a revision process with the student's peers acting as reviewers. The works are syncronized via SourceForge.org, at the project ’’MLAlgorithms’’.

Course format. Each project is aided by an assistant and an expert. A student is willing to learn to formally state research problems, find adequate references, generate novel and significant ideas for problem solving.

An assistant helps the student with technical issues, consults the student on topics of machine learning, promptly reacts to arising problems, performs evaluations and grading. Each assistant is supposed to possess sufficient publishing experience. Ideally, the advisor is writing paper on the adjacent topic. It is recommended to organize weekly reviewing process in such way that a student would input the corrections himself.

An expert guarantees novelty and importance of the paper, suggests the problems, provides data.


Course-related materials

Past terms

Link to the course page Description
Group 274, summer 2015 (In Russian) My first publication in Higher Attestation Commission journal. The course involves experts and personal assistants.
Group YАД, summer 2015 (In Russian) My first publication in Higher Attestation Commission journal. The course involves experts and personal assistants.
Group 174, summer 2015 (In Russian) Research planning.
Group 174, winter 2014 (In Russian) Conducting commercially-oriented research, developing applications. The problems are chosen from industrial and academical sources.
Group 974, winter 2014 (In Russian) Lectures on emerging machine learning issues. Assays and practice in Mathematica.
Group 174, summer 2014 (In Russian) My first publication in Higher Attestation Commission journal. The course involves experts and personal assistants.
Group 074, summer 2014 (In Russian) Writing assays: brief problem statements and analysis
Group 974, summer 2014 (In Russian) The "Software engineering" course, professor L. Karpov

Requirements

Basic

  • The students must have previously passed the analysis, discrete mathematics, probability theory, statistical inference, and optimization algorithms courses.

Advanced

Approximate syllabus

  1. Find and describe the data. Compose a reference list, and store it in bib-file. Write an annotation to the paper.
  2. Visualize the data. Make a literature review.
  3. Write an introduction to the paper. The introduction should include existing methods review and a description of the proposed approach.
  4. Write a problem statement. Make stress on the novelty of suggested approach. Come up with a solution draft.
  5. Design computational experiment, obtain initial results.
  6. Describe the suggested approach in detail.
  7. Complete computational experiments.
  8. Describe the results of computational experiments. This includes error analysis and comparison to other methods.
  9. Correct the paper according to reviewers comments.
  10. Correct theoretical content.
  11. Correct the paper's structure.
  12. Submit the manuscript of the paper to a journal.
  13. Make a report

Consulting and grading

  1. The project is divided into separate tasks, each followed by a list of requirements that determine the quality criteria for grading.
  2. Each task must be completed during the week and submitted the day preceding the lecture.
  3. Preferably, each task is improved and resubmitted several times before the deadline.

Each completed task (marked with a corresponding letter) yields 1 point, and the suffix +/- adds/subtracts 0.25 points.

Homeworks

Note for assistants. The tasks listed below provide quality citeria for homework grading.

Homework1: synchronization tools

  1. Acquire the technical computing environment (MATLAB or Octave) .
  2. Install the typesetting system TeX (MikTeX for Windows, TeX Live for Linux and Mac OS).
  3. Install a text editor, for example TeXnic Center or WinEdt for Windows, and TeXworks for Linux.
  4. Install the bibliographic reference manager JabRef.
  5. Create account at [1] repository and e-mail the login to the group's coordinator. Read [introductory materials] on version control systems.
  6. Install a subversion client (TortoiseSVN for Windows, RabbitVCS for Linux).
  7. Following the guidelines, check out the MLAlgorithms repository.
  8. Create account at MachineLearning.ru and e-mail the login to the group's coordinator.

Run the installed tools, and get acquainted with interfaces.

Homework1: LaTeX

  1. If necessary, read LaTeX and BibTeX articles.
  2. Download the article template, ZIP and compile it.

Homework1: MATLAB

  1. Read [introductory materials] to MATLAB.
  2. Read documenting conventions Matlab Programming Style Guidelines.

Homework2: test programming problem

This should take between two and six hours. The purpose of this homework is for the students to practice using MATLAB/Octave before the projects are launched.

  1. Select a problem from the list (rus), place its number into the table in the Group's page.
  2. In the directory MLAlgorithms/Group274/Example2015Code create a subditectory Surname2015Problem0 (your surname, year, "Problem", problem number).
  3. Upload your code and figures into your directory.
  4. Provide a brief annotation for the problem that includes description of solution and results. Make a short report (approximately 45 seconds) on the basis of this descriptions.
  5. Note that all figures should be formatted according to recommendations from JMLDA/Fig (rus).
  6. The code should be documented according to MATLAB Programming Style Guidelines.
  • Tip: first formulate your solution in formulas then rewrite it as code.

Examples:

  • [2]. The code is documented, results are visualized, solution is described. This example lacks results report and figures description. Figure formatting: compare fig1 and fig2.
  • [3]. The code is documented, results are visualized, solution is described. Figure formatting is OK. This example lacks results report and figures description.

Examples of basic machine learning problems in MatLab: [4].

Личные инструменты