Skip to content
UoL CS Notes

Home

This website houses notes from my studies at the University of Liverpool. If you see any errors or issues, please do open an issue on this site's GitHub.

Generative Models

COMP324 Lectures

Preferential Attachment Preferential Attachment Method Start with any type of network. Additinonal nodes get added one at a time. Each node in the network (except the existing nodes) have $c$ directed links out of them. Each link is directed to a randomly chosen, previously generated, node. The chance that a...

Read More

Recommenders

COMP315 Lectures

Recommenders give personalised recommendations to users about that to watch, read, listen or buy. Recommenders are usually provided as part of the service it provides recommendations for (like YouTube): Independent recommenders are at a huge disadvantage due to a lack of data. This gives the following advantages: Revenue Model Benefit...

Read More

Accelerators (GPUs)

COMP Lectures

Programming Model Directives Based Languages/Extensions OpenMP OpenCL OpenACC CUDA OpenMP: Prescriptive - User explicitly specifies actions to be undertaken to the compiler. OpenACC: Descriptive - User guides the compiler on how to compile. The compiler decides how to implement the parallelism. OpenMP for Accelerators These examples can’t be run using...

Read More

Bots

COMP315 Lectures

A software agent that assists a user. User’s, Services and Interfaces Bots act as an interface, connecting a user to a service. A service is anything you want to access. User might be human but could be some other software. Bots for E-Commerce We will generally have to make the...

Read More

GDPR Individual Rights

COMP315 Lectures

The GDPR also gives specific rights to individuals: Some of these interact with lawful bases. Others overlap with the duties of controllers and processors. The rights are: Right to be informed. Right of access: Responses should usually be given to the individual, even for children. Right to rectification. Right to...

Read More

Voronoi Diagrams

COMP324 Lectures

Given a collection of $n$ points in space, its Voronoi diagram is a way of diving space in to $n$ convex regions, or Voronoi cells. We generally have the following distances to work with: Euclidean: \[\text{dist}_2(X,Y)=\sqrt{(x_1-y_1)^2+(x_2-y_2)^2}\] Manhattan: \[\text{dist}_1(X,Y)=\mid x_1-y_1\mid +\mid x_2-y_2\mid\] Maximum: \[\text{dist}_{\infty}(X,Y)=\max(\mid x_1-y_1\mid,\mid x_2-y_2\mid)\] Pen & Paper Method PaperAndPencilVoronoi($P_1,\ldots,P_n$)...

Read More

Network Measures

COMP324 Lectures

Non-Network Measures Convex Hull Calculate the total area of the region delimited by the outermost nodes. This can be calculated by triangulating and computing the sum of the area of all the triangles in the network. Given three side lengths $a,b$ and $c$ the area of a triangle can be...

Read More

OpenMP Barriers

COMP328 Lectures

There are implicit barriers at the end of work-sharing constructs and parallel sections. nowait We can use nowait to remove the implicit barrier on a directive: #pragma omp for nowait Additionally schedule(static), can guarantee the order of operations provided that the total number iteration in a for loop are the...

Read More

Support Vector Machines

ELEC320 Lectures

Optimal Hyperplane Support vector machines create a hyperplane that linearly separates a set of data. This is called the optimal hyperplane. The equation of optimal hyperplane takes the form: \[g(x)=\mathbf x^T+b=0\] Support Vectors Support vectors are the closes data-points in the dataset to the optimal hyperplane. They are used to...

Read More

Privacy (GDPR)

COMP315 Lectures

Right to Privacy No one shall be subjected to arbitrary interference with his privacy, family, home or correspondence, nor to attacks upon his honour and reputation. Everyone has the right to the protection of the law against such interference or attacks. - Art.12 UDHR There are several reasons to want...

Read More