COMP0120 Numerical Optimisation

Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due

NUMERICAL OPTIMISATION

PROJECT GUIDELINES

Optimisation in classification with Support Vector Machines (SVMs)

Marta Betcke

Submit a single PDF report via Moodle by 4pm (UK time) on Wednesday 23rd of April 2025. 

To facilitate marking, please include the optimisation method in the name of the submitted PDF file and in the header/title of your report.

Scope:

This is a numerical optimisation and not a machine learning project. The emphasis here is on optimisation methods and their convergence not on classification performance. The task is to take an application problem, translate it into mathematical optimisation formulation abstract from the application, then solve and analyse it as an optimisation problem.

Report:

To achieve full marks (as in brackets [n pt]) the report needs to be well structured (address each point completely in a dedicated section), be written clearly and logically while succinct, mathematically rigorous (on par with the lecture), use consistent notation, and be self contained i.e. include everything the reader needs to understand it. This does not mean you should include proofs of theorems, find a way to make a coherent argument without including the proofs.

Always provide references to sources of any claims, theorems, methods etc (avoid Wikipedia, good Wiki contributions state original sources!).

Do not expect us to search in your text for arguments, guess what you may have meant,look things up, or accept any statements without coherent supporting argument with reference to sources.

3k words is a total hard limit (code excluded), please include the word count.

Code:

The optimisation method needs to be implemented by you from scratch, no use of optimisation packages is allowed, except for reusing codes made available by us in tutorials. For setting up the classification problem you can use dedicated packages, but do not use the built in optimisation routines. You can use Python or Julia but you may need to reimplement some routines that were provided in Matlab.

Include your implementation of the optimisation method and an excerpt from your testing script showing how it is called (keep it to minimum necessary to validate that you used your own implementation, use highlighting if necessary), as two separate and clearly labelled appendices in your report.

Collate report and code as one single PDF document for submission. The code will not count towards the word limit. You will only get full points for parts II & III if code is included.

UCL rules and regulations on late submission and plagiarism apply. Use of chatGPT and similar is not allowed.

Mathematical formulation of an SVM classification problem:

Support vector machines (SVMs) are a well established and rigorously founded techniquefor solution of classification problems in machine learning.

(a) Introduce a classification problem, e.g. linearly separate two sets of points in a plane. Visualise if possible. [5 pt]
(b) Choose an SVM formulation for your problem (e.g. primal/dual, linear/nonlinear, choice of loss etc) and justify your choice. Here, the task is to translate an application problem,a.k.a. your SVM classification problem, into the language of mathematical optimisation. Explain your mathematical formulation without including any ML derivations. [10 pt]
(c) Identify the type and properties of the resulting optimisation problem and any challenges it poses. [5 pt]
Marks: 20 pt baseline [: 20pt]

Optimisation method and convergence theory in the context of your problem:

Note: Theory will only be given full marks if there is a serious attempt on numerical solution.
(a) Propose an appropriate method for solution of your optimisation problem. Justify your choice w.r.t. applicability and efficiency: convergence type are rate for your problem, complexity, memory usage, etc. [5 pt]
(b) Describe the method in sufficient detail so it is clear how it works (state your sources, unify notation from different sources). [10 pt]

You may want to introduce a method which was not on the syllabus and apply it to your optimisation problem. The bonus points awarded will depend on the level of difficulty of the chosen method and the theory involved.

(c) Discuss if local or global convergence can be expected for your problem. For more details see below (†).[5 pt]

(d) Discuss theoretical convergence rates predicted for your problem. For more details see below (†).[5 pt]

(†) To argue convergence in (c,d) paraphrase theorems from the lecture or other respectable sources (books, journals, trusted lecture notes etc). Always state the complete result, this may involve combining multiple lemmas and theorems into a coherent theorem (reference all sources, unify notation!). Explain why this result applies to your problem i.e. check the assumptions against the properties of your problem. If you cannot exactly match the problem with the theory explain this clearly and discuss what is the departure from the theory in your case and what effect on convergence do you expect and why.

Marks: 25 pt baseline + up to 25 pt bonus (method substantially different to those on the syllabus, different convergence theorems, etc). [: 25 - 50 pt]

Solution of the optimisation problem and discussion of the results:

Note: Without a serious attempt on numerical solution, the project will not achieve a pass

mark.
(a) Solve the optimisation problem and visualise, if possible, or find another way to present your solution (this could be application specific). List relevant parameters and other choices you made (e.g. which line search was used, etc). Critically discuss the obtained solution. [15 pt]

(b) Provide one relevant convergence plot and discuss the empirical convergence rate qualita tively (e.g. linear/quadratic/superlinear, etc; no need to calculate the precise rate). [5 pt]

(c) Discuss the theoretical versus empirical convergence rates including all relevant checks, e.g. was trust region active or not, was step size 1 attained or not, etc. If there are any discrepancies between the two, explain possible reasons. [5 pt]

(d) Discuss the theoretical versus empirical performance of the method in terms of complexity, CPU time, memory used. [5 pt]

Marks: 30 pt baseline [: 30 pt]

发表评论

电子邮件地址不会被公开。 必填项已用*标注