Skip to content
This repository was archived by the owner on Jan 10, 2025. It is now read-only.

Commit 36ddbb1

Browse files
author
Ilia Lazarev
committed
Improve SOFM description #2 #4 #13 #15 #19
1 parent b227fad commit 36ddbb1

File tree

2 files changed

+49
-26
lines changed

2 files changed

+49
-26
lines changed

bibliography.bib

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1098,5 +1098,25 @@ @InProceedings{weikang2016
10981098
abstract = {The text representation is fundamental for text mining and information retrieval. The Bag Of Words (BOW) and its variants (e.g. TF-IDF) are very basic text representation methods. Although the BOW and TF-IDF are simple and perform well in tasks like classification and clustering, its representation efficiency is extremely low. Besides, word level semantic similarity is not captured which results failing to capture text level similarity in many situations. In this paper, we propose a straightforward Bag Of Word cLusters (BOWL) representation for texts in a higher level, much lower dimensional space. We exploit the word embeddings to group semantically close words and consider them as a whole. The word embeddings are trained on a large corpus and incorporate extensive knowledge. We demonstrate on three benchmark datasets and two tasks, that BOWL representation shows significant advantages in terms of representation accuracy and efficiency.},
10991099
isbn = {978-3-319-47650-6}
11001100
}
1101+
@inproceedings{appiah2009,
1102+
doi = {10.1109/ijcnn.2009.5179001},
1103+
url = {https://doi.org/10.1109%2Fijcnn.2009.5179001},
1104+
year = 2009,
1105+
month = {jun},
1106+
publisher = {{IEEE}},
1107+
author = {Kofi Appiah and Andrew Hunter and Hongying Meng and Shigang Yue and Mervyn Hobden and Nigel Priestley and Peter Hobden and Cy Pettit},
1108+
title = {A binary Self-Organizing Map and its {FPGA} implementation},
1109+
booktitle = {2009 International Joint Conference on Neural Networks}
1110+
}%
11011111
1112+
@inproceedings{santana2017,
1113+
doi = {10.1109/ijcnn.2017.7966174},
1114+
url = {https://doi.org/10.1109%2Fijcnn.2017.7966174},
1115+
year = 2017,
1116+
month = {may},
1117+
publisher = {{IEEE}},
1118+
author = {Alessandra Santana and Alessandra Morais and Marcos G. Quiles},
1119+
title = {An alternative approach for binary and categorical self-organizing maps},
1120+
booktitle = {2017 International Joint Conference on Neural Networks ({IJCNN})}
1121+
}%
11021122
@Comment{jabref-meta: databaseType:bibtex;}

manuscript.tex

Lines changed: 29 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -156,46 +156,53 @@ \subsection{The classical algorithm}
156156
The SOFM is one of the most widely-used unsupervised learning methods used in various areas of modern science.
157157
It was first proposed by Kohonen as a self-organizing unsupervised learning algorithm which produces feature maps similar to those occurring in the brain \cite{solan2001}.
158158
The SOFM algorithm operates with a set of input objects, each represented by a $N$-dimensional vector,
159-
and describes a mapping from a higher-dimensional input space to a lower-dimensional map space.
159+
and describes a mapping from a higher-dimensional input space to a lower-dimensional map space, commonly a bi-dimensional map.
160160

161161
The input dimensions are associated with the features,
162162
and the nodes in the grid (called cluster vectors) are assigned the $N$-dimensional vectors.
163163
The components of these vectors are usually called weights.
164-
Initially the weight components are chosen randomly.
165-
We then can train our SOFM adjusting the components through the learning process which occur in the two basic procedures of selecting a winning cluster vector and updating its weights (Fig.~\ref{fig:sofm_fitting}).
166-
More specifically, they consist of four step process: \begin{enumerate*}
164+
Initially the weight components are chosen randomly
165+
and topological distances between neurons given.
166+
We then can train our SOFM adjusting the components through the learning process which occur in the two basic procedures of
167+
selecting a winning cluster vector, also called the best matching unit (BMU), and updating its weights (Fig.~\ref{fig:sofm_fitting}).
168+
More specifically, they consist of four step process:
169+
\begin{enumerate*}
167170
\item selecting an input vector randomly from the set of all input vectors;
168-
\item finding a cluster vector which is closest to the input vector;
169-
\item adjusting the weights of the winning node in such a way that it becomes even closer to the input vector;
171+
\item finding a cluster vector which is closest to the input vector (BMU);
172+
\item adjusting the weights of the BMU and neurons close to it on feature map in such a way
173+
that these vectors becomes even closer to the input vector;
170174
\item repeating this process for many iterations until it converges.
171175
\end{enumerate*}
172176

173177

174-
After the winning cluster vector is selected, the weights of the vector are adjusted according to
178+
On a step $t$ when the BMU $w_{c}$ is selected,
179+
the weights of the BMU and its neigbours on feature map are adjusted according to
175180
%
176181
\begin{equation}
177-
\vec w_{i+1} =
178-
\vec w_i
179-
+ \alpha\left(\vec{x} - \vec w_i\right).
180182
\label{eq:learning}
183+
\vec{w_{i}}(t + 1)
184+
= \vec{w_i}(t)
185+
+ \theta(c, i, t) \alpha(t)
186+
\left(\vec{x}(t) - \vec{w_i}(t)\right),
181187
\end{equation}
182188
%
183-
The above expression can be interpreted according to:
184-
if a component of the input vector $\vec{x}$ is greater than the corresponding weight $ \vec{w}_i $,
185-
increase the weight by a small amount with the learning rate $\alpha$;
186-
if the input component is smaller than the weight, decrease the weight by a small amount.
187-
The larger the difference between the input component and the weight component, the larger the increment (decrement).
189+
where $\alpha(t)$ is the learning rate and $\theta(c, i, t)$ is the neighbor function,
190+
which defines the topological neighbor neurons to be updated.
191+
Note that neighbor function depend on distance on feature map given initialy,
192+
but not distance metrics between vectors.
193+
188194
Intuitively, this procedure can be geometrically interpreted as iteratively moving the cluster vectors in space one at a time in a way
189195
that ensures each move is following the current trends inferred from their distances to the input objects.
190196
A visualisation of this process is shown in Fig. \ref{fig:sofm_fitting}.
191197

192-
Usually the winning cluster vector is selected based on the Euclidean distance between an input vector and the cluster vectors.
193-
In our approach, we use the Hamming distance instead of the Euclidean distance to select the winning cluster vector.
194-
It allows us to use a simpler encoding of the classical information into the quantum state and use an effective procedure for the calculation of the Hamming distance on the quantum machine,
195-
such as to reduce the number of calculations in number of cluster vectors in comparison to the classical case.
196-
197-
198-
198+
In SOFM original version was designed to cluster real-valued data
199+
and the winning cluster vector is selected based on the Euclidean distance between an input vector and the cluster vectors.
200+
The paper deals with binary vectors clustering problem
201+
and for binary data the Hamming distance is more suitable \cite{appiah2009, santana2017}.
202+
Using a known technique of encoding classical information into a quantum register,
203+
based on probabilistic quantum memories \cite{trugenberger2001},
204+
we introduce an optimized algorithm for calculating the matrix of Hamming distances
205+
between each pair of binary vectors of two sets taking advantage of quantum parallelism.
199206

200207

201208

@@ -246,10 +253,6 @@ \subsection{Optimized quantum scheme for Hamming distance calculation}
246253

247254

248255

249-
Using a known technique of encoding classical information into a quantum register,
250-
based on probabilistic quantum memories \cite{trugenberger2001},
251-
we introduce an optimized algorithm for calculating the matrix of Hamming distances between each pair of binary vectors of two sets taking advantage of quantum parallelism.
252-
This allows for a simple encoding of the classical information into a quantum register.
253256

254257
The overall procedure involves two registers of $n$ qubits each, denoted $\left| X \right\rangle$ and $\left| Y \right\rangle$, along with a single auxiliary qubit $\left| a \right\rangle$.
255258
During the whole process, the $\left| Y \right\rangle$ register is used to store the cluster states.

0 commit comments

Comments
 (0)