185 lines
6.2 KiB
TeX
185 lines
6.2 KiB
TeX
\section{Analisis Data}
|
||
|
||
% Dalam studi ini, setiap sensor menghasilkan data akselerasi yang direkam sebagai sebuah vektor numerik kontinu. Secara matematis,
|
||
% setiap data sensor didefinisikan sebagai
|
||
% \begin{equation}
|
||
% n \in \mathbb{R}^{262144},
|
||
% \end{equation}
|
||
% di mana \(n\) adalah vektor berisi 262144 sampel pengukuran akselerasi seperti yang dijelaskan pada persamaan~\ref{eq:sample}.
|
||
|
||
% Selanjutnya, data akselerasi untuk 30 sensor (atau \textit{node}) disimpan dalam sebuah berkas \texttt{.TXT}. Maka, setiap berkas tersebut dapat direpresentasikan sebagai matriks
|
||
% \begin{equation}
|
||
% N \in \mathbb{R}^{262144 \times 30},
|
||
% \end{equation}
|
||
% di mana setiap kolom dari \(N\) merupakan data akselerasi untuk satu sensor dari 30 sensor yang ada.
|
||
|
||
\subsection{Grid, Kode \textit{Joint}, dan Nama File}
|
||
|
||
Masing-masing *sensor node* diberi nama menurut indeks \(n\) (dengan \(n = 0,1,\dots,29\)).
|
||
Berkas data mentah tiap node disimpan dalam berkas teks berformat
|
||
\texttt{zzzAD<n>.TXT}; penamaannya dapat dirumuskan sebagai
|
||
|
||
\[
|
||
Z_{n} \;=\; \texttt{``zzzAD}n\texttt{.TXT''},
|
||
\qquad n = 1,\dots,30.
|
||
\]
|
||
|
||
Pada pembahasan selanjutnya, simbol \(Z_{n}\) dipakai sebagai penunjuk
|
||
berkas data untuk node ke-\(n\).
|
||
Untuk merujuk satu kanal (kolom) tertentu di dalam matriks
|
||
\(\mathbf{D}^{(n)}\), digunakan notasi
|
||
|
||
\[
|
||
\gls{not:damage_file}_{s}^{(\gls{not:joint_index})} \in \mathbb{R}^{262144},
|
||
\]
|
||
|
||
dengan ketentuan:
|
||
|
||
* superskrip \((\gls{not:joint_index})\) menandakan indeks kasus kerusakan
|
||
(1–30),
|
||
* subskrip \(s\) menandakan indeks kanal sensor yang dipilih
|
||
(\(s = 1,\dots,30\)).
|
||
|
||
Dengan demikian,
|
||
\(\gls{not:damage_file}_{s}^{(n)}\) merepresentasikan sebuah vektor
|
||
\(262144 \times 1\) yang berisi deret waktu hasil pengukuran kanal
|
||
\(s\) pada skenario kerusakan ke-\(n\).
|
||
|
||
\subsection{Pemetaan Sensor ke Dalam Folder (Damage-case)}
|
||
|
||
Semua tiga puluh \textit{node} dikelompokkan ke dalam enam folder yang merepresentasikan enam skenario kerusakan, masing-masing dilabeli \(d_{i}\) dengan \(i=0,\dots,5\). Setiap folder mengandung tepat lima \textit{node} berurutan, sehingga didefinisikan:
|
||
\begin{equation*}
|
||
\gls{not:damage_file_set_case}_{i} = \bigl\{
|
||
\,\mathbf{D}_{5i}^{(5i)},
|
||
\;\mathbf{D}_{5i+1}^{(5i+1)},
|
||
\;\mathbf{D}_{5i+2}^{(5i+2)},
|
||
\;\mathbf{D}_{5i+3}^{(5i+3)},
|
||
\;\mathbf{D}_{5i+4}^{(5i+4)}
|
||
\bigr\},
|
||
\quad i = 0,\dots,5.
|
||
\end{equation*}
|
||
\begin{equation}
|
||
\mathcal{D}_i = \bigl\{
|
||
\end{equation}
|
||
Sebagai contoh secara konkrit,
|
||
\begin{align*}
|
||
d_0 &= \{n_{0}^{F_0},\;n_{1}^{F_1},\;n_{2}^{F_2},\;n_{3}^{F_3},\;n_{4}^{F_4}\},\\[1ex]
|
||
d_1 &= \{n_{5}^{F_5},\;n_{6}^{F_6},\;n_{7}^{F_7},\;n_{8}^{F_8},\;n_{9}^{F_9}\},\\[1ex]
|
||
&\;\;\vdots\\[1ex]
|
||
d_5 &= \{n_{25}^{F_{25}},\;n_{26}^{F_{26}},\;n_{27}^{F_{27}},\;n_{28}^{F_{28}},\;n_{29}^{F_{29}}\}.
|
||
\end{align*}
|
||
|
||
\subsection{Seleksi Sensor \textit{Node} Ujung-Ujung (Domain Waktu)}
|
||
|
||
Untuk mensimulasikan tata letak sensor terbatas, dari setiap folder kerusakan hanya diambil \textit{node} pertama dan terakhir. Subset domain waktu ini dilambangkan sebagai
|
||
\begin{equation*}
|
||
d_{i}^{\mathrm{TD}}
|
||
= \bigl\{\,n_{5i}^{F_{5i}},\;n_{5i+4}^{F_{5i+4}}\bigr\},
|
||
\quad |d_{i}^{\mathrm{TD}}| = 2.
|
||
\end{equation*}
|
||
|
||
\subsection{Ekstraksi Fitur}
|
||
|
||
Operator STFT \(\mathcal{T}\) didefinisikan untuk memetakan sinyal domain waktu mentah (vektor dengan panjang \(L=262144\)) menjadi spektrogram berukuran \(513\times513\). Langkah-langkahnya adalah:
|
||
\begin{equation*}
|
||
\begin{aligned}
|
||
\text{(1) Fungsi jendela:}\quad
|
||
w[n] &= \frac{1}{2}\Bigl(1 - \cos\frac{2\pi n}{N_w - 1}\Bigr),
|
||
\quad n=0,\ldots,N_w-1; \\[1ex]
|
||
\text{(2) STFT:}\quad
|
||
S_k(p,t)
|
||
&= \sum_{n=0}^{N_w-1}
|
||
x_k\bigl[t\,N_h + n\bigr]
|
||
\;w[n]\;
|
||
e^{-j2\pi p n / N_w},\\[1ex]
|
||
&\quad
|
||
p = 0,\ldots,512,\quad t = 0,\ldots,512.
|
||
\end{aligned}
|
||
\end{equation*}
|
||
Pengambilan magnitudo menghasilkan matriks spektrogram untuk \textit{node} \(k\) sebagai
|
||
\begin{equation*}
|
||
\widetilde n_{k}^{F_{k}}(p,t) \;=\; \bigl|S_{k}(p,t)\bigr|
|
||
\;\in\;\mathbb{R}^{513\times513}.
|
||
\end{equation*}
|
||
Dengan demikian operator STFT dapat dituliskan sebagai:
|
||
\begin{equation*}
|
||
\mathcal{T}:\; n_{k}^{F_{k}}\in\mathbb{R}^{262144}
|
||
\;\longmapsto\;
|
||
\widetilde n_{k}^{F_{k}}\in\mathbb{R}^{513\times513}.
|
||
\end{equation*}
|
||
|
||
\subsection{Subset Domain Frekuensi}
|
||
|
||
Operator \(\mathcal{T}\) diterapkan pada \textit{node} ujung-ujung yang telah dipilih, sehingga diperoleh:
|
||
\begin{equation*}
|
||
d_{i}^{\mathrm{FD}}
|
||
= \bigl\{\,
|
||
\widetilde n_{5i}^{F_{5i}},\;
|
||
\widetilde n_{5i+4}^{F_{5i+4}}
|
||
\,\bigr\},
|
||
\quad
|
||
|d_{i}^{\mathrm{FD}}| = 2.
|
||
\end{equation*}
|
||
|
||
\subsection{Pengelompokan Berdasarkan Letak Ujung Sensor}
|
||
|
||
Sensor-sensor ujung bagian bawah dilabeli sebagai Sensor A dan sensor-sensor ujung bagian atas dilabeli sebagai Sensor B. Semua data dari keenam kasus kerusakan digabungkan menjadi dua himpunan:
|
||
\begin{equation*}
|
||
\text{Sensor A}
|
||
=
|
||
\bigl\{\,
|
||
\widetilde n_{0}^{F_{0}},\,
|
||
\widetilde n_{5}^{F_{5}},\,
|
||
\dots,\,
|
||
\widetilde n_{25}^{F_{25}}
|
||
\bigr\},
|
||
\quad
|
||
\text{Sensor B}
|
||
=
|
||
\bigl\{\,
|
||
\widetilde n_{4}^{F_{4}},\,
|
||
\widetilde n_{9}^{F_{9}},\,
|
||
\dots,\,
|
||
\widetilde n_{29}^{F_{29}}
|
||
\bigr\}.
|
||
\end{equation*}
|
||
|
||
\subsection{Perakitan Baris dan Pelabelan}
|
||
|
||
Setiap spektrogram berukuran \(513\times513\) diartikan sebagai 513 vektor fitur berdimensi 513. Untuk setiap kasus kerusakan \(i\) dan sensor \(s\), vektor fitur ini direplikasi sebanyak 5 kali (indeks pengulangan \(r\in\{0,\dots,4\}\)) dan diambil masing-masing baris/kolom ke-\(t\) dengan
|
||
\begin{equation*}
|
||
\mathbf{x}_{i,s,r,t}\in\mathbb{R}^{513}.
|
||
\end{equation*}
|
||
Label skalar untuk kasus kerusakan dinyatakan sebagai
|
||
\begin{equation*}
|
||
y_{i} = i,\quad i=0,\dots,5.
|
||
\end{equation*}
|
||
Selanjutnya, fungsi \textit{slicing} didefinisikan sebagai
|
||
\begin{equation*}
|
||
\Lambda(i,s,r,t)
|
||
\;=\;
|
||
\bigl[\,
|
||
\mathbf{x}_{i,s,r,t},
|
||
\;y_{i}
|
||
\bigr]
|
||
\;\in\;\mathbb{R}^{513+1}.
|
||
\end{equation*}
|
||
|
||
\subsection{Bentuk Akhir Data untuk Pelatihan}
|
||
|
||
Seluruh baris dari enam kasus kerusakan, lima pengulangan, dan 513 potongan waktu digabungkan menjadi dataset untuk satu sisi sensor:
|
||
\begin{equation*}
|
||
\mathcal{D}^{(s)}
|
||
=
|
||
\bigl\{
|
||
\Lambda(i,s,r,t)
|
||
\;\big|\;
|
||
i=0,\dots,5,\;
|
||
r=0,\dots,4,\;
|
||
t=0,\dots,512
|
||
\bigr\}.
|
||
\end{equation*}
|
||
Karena terdapat total \(6\times5\times513 = 15\,390\) baris, dan setiap baris memiliki \(513\) fitur ditambah satu kolom label, maka bentuk akhir dari data untuk satu sisi sensor adalah:
|
||
\begin{equation*}
|
||
|\mathcal{D}^{(s)}| = 15\,390 \times 514.
|
||
\end{equation*} |