Skip to content

Commit 588431d

Browse files
committed
Ended algorithm description
1 parent bd4bfa0 commit 588431d

File tree

5 files changed

+29
-16
lines changed

5 files changed

+29
-16
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@
55
*.out
66
*.snm
77
*.synctex.gz
8-
*.toc
8+
*.toc
9+
*.vrb

Presentation/Presentation.pdf

10.6 KB
Binary file not shown.

Presentation/Presentation.vrb

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
\section{Fault detection and isolation on steel plates}
22

33
\begin{frame}
4-
TO DO
4+
\frametitle{Dataset description}
5+
The steel plates faults dataset comes from research by Semeion, Research Center of Sciences of Communication. The aim of the research was to correctly classify the type of surface defects in stainless steel plates. Below is some information about the dataset:
6+
\begin{itemize}
7+
\item number of fault classes: $6 + 1$ (no faults);
8+
\item number of attributes: $27$;
9+
\item number of instances: $1941$;
10+
\item absence of missing values.
11+
\end{itemize}
12+
Unfortunately, no further details on the covariates are available.
513
\end{frame}

Presentation/Sections/PLS algorithm.tex

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,21 @@ \section{Description of the PLS algorithm}
1010
The first algorithm is more accurate than the other, however it requires more computational time than PLS2 to find the $\alpha$ eigenvectors into which project the \textit{m} covariates.
1111
\end{frame}
1212

13+
\begin{frame}
14+
\frametitle{Data structures}
15+
Before starting with the description of the algorithm, we recall that:
16+
\begin{itemize}
17+
\item the matrix $X \in \mathbb{R}^{n\times m}$ is decomposed into a \textbf{score matrix} $T \in \mathbb{R}^{n\times\alpha}$ and a \textbf{loading matrix} $P \in \mathbb{R}^{m\times\alpha}$ such that $X = \hat{X} + E = T\cdot P^\top + E$, where $E \in \mathbb{R}^{n\times m}$ is the (true) \textbf{residual} matrix for $X$;
18+
\item the matrix $Y \in \mathbb{R}^{n\times p}$ is decomposed into a \textbf{score matrix} $U\in\mathbb{R}^{n\times\alpha}$ and a \textbf{loading matrix} $Q\in \mathbb{R}^{p\times\alpha}$ such that $Y = \hat{Y} + \widetilde{F} = U\cdot Q^\top + \widetilde{F}$, where $\widetilde{F}\in \mathbb{R}^{n\times p}$ is the (true) \textbf{residual matrix} for $Y$.
19+
\item the matrix $B\in \mathbb{R}^{\alpha\times\alpha}$ is the \textbf{diagonal regression matrix} such that $\hat{U} = T\cdot B$.
20+
\end{itemize}
21+
Therefore:
22+
\begin{center}
23+
$Y = \hat{U}\cdot Q^\top + F = T\cdot B\cdot Q^\top + F$
24+
\end{center}
25+
where $F$ is the \textbf{prediction error matrix}; $B$ is selected such that the induced $2$-norm of $F$ is minimized.
26+
\end{frame}
27+
1328
\begin{frame}[fragile]
1429
\frametitle{MATLAB code}
1530
The following MATLAB code implements the PLS2 algorithm:
@@ -47,8 +62,8 @@ \section{Description of the PLS algorithm}
4762
\textcolor{green}{% calculation of b and the error matrices}
4863
b = (u'*t)/(t'*t); \textcolor{green}{% j-th column of the...}
4964
\textcolor{green}{% coefficient regression matrix}
50-
E = E - t*p';
51-
F = F - b*t*q';
65+
E = E - t*p'; \textcolor{green}{% update of the residuals for matrix X}
66+
F = F - b*t*q'; \textcolor{green}{% update of the residuals for matrix Y}
5267
\end{Verbatim}
5368
\end{frame}
5469

@@ -62,6 +77,6 @@ \section{Description of the PLS algorithm}
6277
\textcolor{blue}{end}
6378
Y_hat = X*B2; \textcolor{green}{% computation of predictions}
6479
\end{Verbatim}
65-
For each row of \verb|Y_hat| the fault class is chosen by assigning $1$ to the column whose value si greater than that of the others, $0$ otherwise. Moreover, to increase the performances of PLS it is necessary \textbf{normalize} both $X$ and $Y$ before running the algorithm.
80+
For each row of \verb|Y_hat| the fault class is chosen by assigning $1$ to the column whose value si greater than that of the others, $0$ otherwise. \\Moreover, to increase the performances of PLS it is necessary \textbf{normalize} both $X$ and $Y$ before running the algorithm.
6681

6782
\end{frame}

0 commit comments

Comments
 (0)