## 3 ML Application in O-RAN
### O-RAN Deployment  
The deployment of an Open RAN poses challenges in terms of computing and network resources. Integrating hardware and software components from multiple vendors can lead to issues with resource allocation, such as conflicts over computing power, storage, and bandwidth. Interoperability challenges can also lead to inefficiencies in resource utilization, as different components may have different requirements and capabilities. \begin{table}
\begin{tabular}{l l l l} \hline \hline
**Title** & **Ref** & **Title** & **Ref** \\ \hline Section 3.1 O-RAN Deployment & [15; 35] & Section 3.2 AI/ML Implementation & [22; 36] \\ \hline Section 3.3 Network Slicing & [37; 38; 39; 40] & Section 3.4 Dynamic Function Split & [41; 42; 43] \\ \hline Section 3.5 Resource Management & [44; 45; 46; 47] & Section 3.6 Session Management & [48; 49; 50] \\ \hline Section 3.7 Traffic Steering & [4; 51; 52] & Section 3.8 Mobility Management & [53] \\ \hline Section 3.9 Energy Efficiency & [54] & Section 3.10 Satellite NTN & [55] \\ \hline \hline \end{tabular}
\end{table} 
Table 2: The structure of Section 3 for ML applications in Open RAN. In addition, security concerns related to access control, data protection, and privacy can require additional computing and network resources to address. Overall, the deployment of O-RAN requires careful planning and management of computing and network resources to ensure optimal performance and security. In [15], the authors investigate how the deep-learning mechanisms could be deployed in an O-RAN architecture, via its hierarchical RIC modules. In particular, its O-RAN placement within the Near-RT RIC, O-CU, O-DU, and O-RU modules, as well as the associated functional blocks and O-RAN interfaces, is discussed. The authors describe the general procedure to implement automated DL models in O-RAN to achieve stable performance of these models by introducing ML system operations (MLOps) concept in O-RAN. They then go deeper and explore two case studies for DL deployment in O-RAN, which are classified as supervised and/or deep reinforcement learning (DRL). For supervised learning, the authors identify two approaches to deployment: a centralized approach and a federated learning (FL) distributed architecture. The authors propose that for either approach, in order to enhance RAN performance and reduce operational cost, RICs would integrate embedded ML capability. To achieve this, local models (i.e., \"xAPPs\") would run in the Near-RT RIC and global model parameters would be generated by the Non-RT RIC. In the centralized case, the data would be held in the Non-RT RIC, but for FL, the xApps could be built in the Near-RT RIC using O-RU level data, and just the local parameters transmitted to the Non-RT RIC for aggregation, leaving the data to be held locally. In either approach, the Non-RT RIC would then send out the global parameters to the xApps to update their models, which then operate in real-time using data obtained from the O-RUs via the O1 interface. In the case of reinforcement learning (RL), the authors focus the deployment strategy on the actions of the RL algorithm intelligent agent(s), which should be deployed near the Near-RT RIC to improve the performance of xApps. This agent then uses the E2 interface to communicate with the O-DU and O-CU-C/U modules to take periodic actions to update the policy of resource allocation and scheduling in the O-DU's MAC layer. Additionally, the agent connects to the O-RU through the O1 interface to receive the obtained reward based on user experience quality and new state of the system expressed by the total number of allocated resource blocks and users' density. By using inputs and rewards, the ML model can be trained to make data-driven decision more accurately. The authors then discuss options for control of the training and deployment process for ML systems. The first option is a fully manual process with review by network staff before deployment of an updated run-time system.