## 3 Machine Learns to Recognize Signals  
Machine learning is a robust tool for understanding signal characteristics and effectively identifying signals detected across various sensing tasks, such as vibration signals for fault detection [10,22, 23, 24], through trained machine learning models. Notably, exploring vibration signals in varied temperature environments, particularly the concurrent measurement of vibration and temperature through fiber optic sensing and the subsequent signal recognition using machine learning, remains an area yet to be thoroughly investigated. This report employs a DNN sequential model [25] to discern the vibration frequency and temperature characteristics of the vibration signals. The main code of the DNN sequential model is defined as follows:  
model = Sequential([Input([X.shape(1)]), Dense(500, activation='relu'),  
BatchNormalization(), Dropout(0.2), Dense(500, activation='relu'),  
BatchNormalization(), Dropout(0.2), Dense(128, activation='relu'),  
BatchNormalization(), Dropout(0.2), Dense(y_one_hot.shape(1),  
activation='softmax')]). The sequential model comprises stacked layers arranged linearly. The model commences with an input layer designed to receive vibration frequency signals. The input layer's shape is specified by Input[X.shape(1)], where X.shape(1) denotes the number of features in the input data. In a sequential model, it is not strictly necessary to define the input layer explicitly, but doing so can improve clarity even though Keras can determine the input shape from the first layer. DNN is made up of several hidden layers, each containing neurons that process the weighted sum of inputs from the layer before it using activation functions. Common activation functions include Rectified Linear Unit (ReLU) and sigmoid. These layers are instrumental in discerning intricate patterns and features from the input data. The first hidden layer, Dense (500, activation ='relu'), is a fully connected (dense) layer housing 500 neurons. The utilization of ReLU as the activation function introduces non-linearity into the model. ReLU outputs the input directly if it is positive; otherwise, it yields zero. The BatchNormalization() layer normalizes the output of the preceding layer, thereby stabilizing and expediting the training process by reducing internal covariate shifts. This normalization technique adjusts the activations of the prior layer within each batch, leading to a potential acceleration in convergence. Additionally, the Dropout(0.2) layer randomly deactivates 20% of the input units during training, mitigating overfitting by preventing the model from heavily relying on any single feature. Subsequently, the second dense layer, Dense(500, activation ='relu'), the subsequent BatchNormalization() layer, and the following Dropout(0.2) layer serve similar functions to their respective initial layers. Figure 5: Simultaneous measurements of vibration and dynamic temperature from 31 to 36 \({}^{\circ}\)C, 41 to 46 \({}^{\circ}\)C, and 51 to 56 \({}^{\circ}\)C with FSO participation: (**a**) 20 Hz vibration frequency, (**b**) 40 Hz vibration frequency, (**c**) 60 Hz vibration frequency, and (**d**) 80 Hz vibration frequency. The third dense layer consists of 128 neurons and employs ReLU activation. Its primary function is to act as a bridge to the output layer. Following this, the third batch normalization, achieved through BatchNormalization(), standardizes the output of the third dense layer. Additionally, the third dropout layer, implemented using Dropout(0.2), serves to mitigate overfitting. The model learns to identify relevant features from the vibration signals as the data moves through the hidden layer. This could include the ability to recognize unique frequency patterns or anomalies that correspond to vibrations that take place at different temperatures. The final layer, Dense(y_one_hot.shape(1), activation='softmax'), functions as the output layer, containing many neurons equivalent to the classes present in the target variable, denoted by 'y_one_hot.shape(1)'.