License: arXiv.org perpetual non-exclusive license
arXiv:2404.04906v1 [cs.HC] 07 Apr 2024

Balancing Information Perception with Yin-Yang: Agent-Based Information Neutrality Model for Recommendation Systems

Mengyan Wang, Yuxuan Hu, Shiqing Wu, Weihua Li, Quan Bai, and Verica Rupar Mengyan Wang, Auckland University of Technology, Auckland, New Zealand (e-mail: [email protected]).Yuxuan Hu, University of Tasmania, Hobart, Australia (e-mail: [email protected]).Shiqing Wu, University of Technology Sydney, Sydney, Australia (e-mail: [email protected]).Corresponding author. Weihua Li, Auckland University of Technology, Auckland, New Zealand (e-mail: [email protected]). Quan Bai, University of Tasmania, Hobart, Australia (e-mail: [email protected]).Verica Rupar, Auckland University of Technology, Auckland, New Zealand (e-mail: [email protected]).
Abstract

While preference-based recommendation algorithms effectively enhance user engagement by recommending personalized content, they often result in the creation of “filter bubbles”. These bubbles restrict the range of information users interact with, inadvertently reinforcing their existing viewpoints. Previous research has focused on modifying these underlying algorithms to tackle this issue. Yet, approaches that maintain the integrity of the original algorithms remain largely unexplored. This paper introduces an Agent-based Information Neutrality model grounded in the Yin-Yang theory, namely, AbIN. This innovative approach targets the imbalance in information perception within existing recommendation systems. It is designed to integrate with these preference-based systems, ensuring the delivery of recommendations with neutral information. Our empirical evaluation of this model proved its efficacy, showcasing its capacity to expand information diversity while respecting user preferences. Consequently, AbIN emerges as an instrumental tool in mitigating the negative impact of filter bubbles on information consumption.

Index Terms:
Recommendation System, Filter Bubble

I Introduction

Online social networks often emphasize content shaped by users’ past behaviors. While user preference-based recommendation systems enhance user engagement, they might also trap users in “filter bubbles” [1]. These bubbles can set users in their existing views, leading to an imbalanced understanding of certain topics.

For instance, a user is deeply fascinated with the health-centric diet, believing in its numerous positive impacts. Preference-based recommendation algorithms may continuously recommend this user with favorable content about the health-centric diet, seldom presenting its drawbacks. Over time, this can reinforce the user’s positive stance, thus creating a biased perspective and encapsulating the user within a filter bubble. This phenomenon isn’t exclusive to the topic of health. Filter bubbles span various topics, sharing the common risk of fostering biased perceptions [2]. The societal impact of these bubbles is profound, which affects individual cognition and polarizes communities [3, 4]. This emphasizes the importance of information neutrality, mitigating biases from filter bubbles by offering broader, balanced information.

Current solutions typically modify the underlying algorithms of recommendation systems to alleviate the filter bubble effect. However, such approaches often require substantial changes and potentially compromise user engagement and satisfaction. This paper integrates the Chinese Yin-Yang (Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT) theory into recommendation systems, proposing an Agent-based Model for Information Neutrality (AbIN). This model aims to address imbalances in information perception and mitigate the effects of filter bubbles while preserving the functionality of existing recommendation algorithms.

We model the recommendation process of AbIN in a distributed manner utilizing Agent-based Modeling [5]. Here, the original recommendation algorithms and the system users are conceptualized as two distinct agents: the Original Preference-based Agent (OPA) and the User Agent (UA). Furthermore, we embed a proactive Information Neutrality Agent (INA) to mediate the interactions between the OPA and UA, aiming to balance information perception and incorporate user feedback. This design ensures that the AbIN can neutralize information without changing the core recommendation algorithm.

The AbIN model draws inspiration from the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT theory, emphasizing the balance between contrasting elements, thereby promoting a well-rounded understanding of diverse topics. The Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT theory, foundational in Chinese philosophy, is symbolized by a circle divided into two halves by an ‘S’-shaped curve. These two halves express the complex relationship between opposites (opposite sentiments on a specific topic). Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT represents negativity and darkness, while Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT means positivity and light [6]. Achieving Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutrality in recommendations is balancing these opposing sentiment energies, and providing users with broader choices rather than limiting them to specific preferences. In light of this philosophy, our model seeks to mitigate information sentiment imbalances, counter filter bubbles, and deliver a balanced recommendation experience to users. The contributions of the proposed approach are summarized as follows:

  1. 1.

    Firstly, we are the first to invoke the Chinese Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT theory in recommendation systems. We propose a Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT Neutralization Control (YYNC) method to provide users with balanced information, broaden their exposure to diverse viewpoints, and foster a more holistic understanding of information.

  2. 2.

    Secondly, we adopt a distributed modeling approach to build a novel model, AbIN, aimed at mitigating the effects of filter bubbles. This model ensures the continued usability of existing recommendation systems without requiring any changes to their algorithms. The AbIN model incorporates multiple independent agents, i.e., OPA, UA, and INA. These agents can interact with each other. This agent-based model enhances the system’s flexibility, allowing for the independent optimization of each agent. Moreover, it reduces implementation risks and provides a more effective solution to address the challenges posed by filter bubbles.

  3. 3.

    Thirdly, we carried out extensive experiments. The result establishes the AbIN model’s efficacy in balancing recommended content, diminishing the impact of filter bubbles, and enhancing users’ well-rounded understanding of the information they consume.

II Related Works

The increasing prominence of filter bubbles due to preference-based recommendation systems has gained scholarly attention. This section reviews existing literature focusing on the need for information balance in online platforms, the role of recommendation algorithms in forming filter bubbles, and methodologies for measuring the filter bubble effect.

To begin, online platforms can inadvertently fuel polarized viewpoints if there is an imbalance between positive and negative information. Fernandes [7] delves into the impact of confirmation information bias on social learning networks. The study introduces a theoretical model examining how agents exchange information influenced by their biases. On a similar note, Li et al. [8] investigate both the uplifting and detrimental effects of social networks. Different from these studies, which emphasise categorizing information as either positive or negative, our work more comprehensively considers information diversity and emotions based on the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT theory.

Subsequently, AI-based recommendation systems have become increasingly sophisticated, tailoring content based on user behavior and preferences [9]. Despite their convenience, they tend to perpetuate filter bubbles. Conventional algorithms like collaborative filtering [10] and content-based filtering [11] have been critically examined for this. Studies confirm that these recommendation methods can contribute to the formation of filter bubbles by limiting exposure to a variety of perspectives [12, 13, 14]. In contrast to existing works, our study extends this discussion by looking not just at content diversity but also at the sentiment behind users’ consumption.

Lastly, attempts to mitigate the filter bubble effect are diverse. Lunardi et al. [15] recommend the k-nearest neighbors (k-NN) item-based recommendation approach with the Maximal Marginal Relevance (MMR) algorithm and conclude that the diversified recommendation strategy can reduce homogenization, as it offers users a wide range of topics. Su et al. [16] address the low-diversity responses in open-domain dialogue generation by incorporating non-conversational text, which yields significantly more varied responses while maintaining contextual relevance. Grossetti et al. [17] introduce a community-aware model to identify category-based similarities within Twitter communities, where a re-ranking model is integrated into the recommendation algorithm to effectively enhance the diversity of recommendation outcomes. Furthermore, researchers have explored graph-based approaches as a means to tackle this issue. For instance, Yang et al. [18] adopt graph-based techniques to enhance the diversity of recommendations, focusing on refining the embedding generation process. Similarly, Li et al. [19] optimize the generation of recommended lists within the user feedback loop by analyzing data in the user-item interaction graph. These approaches usually focus on modifying existing recommendation algorithms to counteract the filter bubble effect. It may not be applicable to systems that are already deployed, or it may affect user engagement. In contrast, our research presents a novel model to neutralize filter bubble influences without altering existing recommendation algorithms.

III Framework and Formal Definitions

III-A Overall Framework

In this research, we leverage agent-based modeling to develop the AbIN model, aimed at mitigating filter bubbles. As displayed in Figure 1, the AbIN model comprises three independent yet interconnected agents: OPA, UA, and INA. Each agent employs its unique learning strategies. A user is represented as an interactive User Agent (UA) with specific preferences. The Original Preference-based Agent (OPA) functions as the conventional preference-based recommendation system, learning UA’s preferences and suggesting messages that align with these preferences. To counterbalance the potential bias introduced by OPA, we introduce the Information Neutralization Agent (INA). INA’s role is to analyze and adjust the recommendation list from OPA by applying the Yin-Yang Neutralization Control (YYNC) method, ensuring a balance of viewpoints. After processing, INA forwards this balanced list of recommendations to UA. Through this mechanism, INA integrates complementary viewpoints into OPA’s recommendations, thereby offering UA a balanced information experience. This approach aims to harmonize the viewpoints within the recommendations, ensuring diversified and unbiased information to the user.

Refer to caption
Figure 1: The Framework of Agent-based Model for Information Neutrality (AbIN).

III-B Formal Definitions

In this subsection, we introduce formal definitions crucial for an understanding of the concepts central to AbIN.

Definition 1: User Agent (visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT). This term refers to an individual within a social context, whose representation is captured through an embedding process. At any given time t𝑡titalic_t, the embedding of visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (𝐯𝐢subscript𝐯𝐢\mathbf{v_{i}}bold_v start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT) is computed by aggregating the embeddings of all messages interacted with by visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, utilizing the Hadamard product [20] for combination. UA receives recommendations from INA and decides whether to accept or reject these recommendations based on their preferences.

Definition 2: Influence Messages (Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT). The OPA recommends a set of messages at time t𝑡titalic_t based on the preference of visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, denoted as Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = {msg1𝑚𝑠subscript𝑔1msg_{1}italic_m italic_s italic_g start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT,…,msgj𝑚𝑠subscript𝑔𝑗msg_{j}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT}. Each message, msgx𝑚𝑠subscript𝑔𝑥msg_{x}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT, comprises a tuple: (q(msgx),T(msgx),o(msgx))𝑞𝑚𝑠subscript𝑔𝑥𝑇𝑚𝑠subscript𝑔𝑥𝑜𝑚𝑠subscript𝑔𝑥(q(msg_{x}),T(msg_{x}),o(msg_{x}))( italic_q ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) , italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) , italic_o ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) ), containing the message’s content text q(msgx)𝑞𝑚𝑠subscript𝑔𝑥q(msg_{x})italic_q ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ), the associated topic T(msgx)𝑇𝑚𝑠subscript𝑔𝑥T(msg_{x})italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ), and the sentiment intensity o(msgx)[0,1]𝑜𝑚𝑠subscript𝑔𝑥01o(msg_{x})\in[0,1]italic_o ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) ∈ [ 0 , 1 ]. In this paper, the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization is the sentiment balance for specific topics in Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT. Therefore, it is important to classify Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT and Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT, which are introduced in Definition 3.

Definition 3: Yin and Yang. Messages are classified as Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT if o(msgx)𝑜𝑚𝑠subscript𝑔𝑥o(msg_{x})italic_o ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) ranges from 0 to 0.5, and as Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT if it exceeds 0.5. An o(msgx)𝑜𝑚𝑠subscript𝑔𝑥o(msg_{x})italic_o ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) value of precisely 0.5 denotes a neutral sentiment. The sentiment’s intensity is considered more extreme as its value diverges further from 0.5, whether it falls under Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT oder Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT.

Refer to caption
Figure 2: The Chinese Yin-Yang (Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT) Symbol.

III-C Yin-Yang Neutralization Definition

Figure 2 depicts a conceptual diagram based on the Chinese Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT philosophy. It displays sentiment values ranging from 0 to 1 along both the x and y axes. This diagram features a circle centered at (0.5, 0.5) with a radius of 0.5, divided by an ‘S’-shaped curve (segment C-B) that represents the transition between Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT (above) and Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT (below) sentiments. This curve embodies the perfect Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization [6]. Inspired by [21], the mathematical representation of the perfect Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization is given by:

f(oτix)=12+(12oτix)14(oτix12)2𝑓subscriptsuperscript𝑜𝑥subscript𝜏𝑖1212subscriptsuperscript𝑜𝑥subscript𝜏𝑖14superscriptsubscriptsuperscript𝑜𝑥subscript𝜏𝑖122\displaystyle f(o^{x}_{\tau_{i}})=\frac{1}{2}+\left(1-2o^{x}_{\tau_{i}}\right)% \sqrt{\frac{1}{4}-\left(o^{x}_{\tau_{i}}-\frac{1}{2}\right)^{2}}italic_f ( italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) = divide start_ARG 1 end_ARG start_ARG 2 end_ARG + ( 1 - 2 italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) square-root start_ARG divide start_ARG 1 end_ARG start_ARG 4 end_ARG - ( italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG 2 end_ARG ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG (1)

where oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT indicates a sentiment score in Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = {oτi1subscriptsuperscript𝑜1subscript𝜏𝑖o^{1}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT,…,oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT}. Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT includes sentiment scores for each message under topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT. The point (f(oτix)𝑓subscriptsuperscript𝑜𝑥subscript𝜏𝑖f(o^{x}_{\tau_{i}})italic_f ( italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ), oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT) is on the ‘S’-shaped curve and signifies a Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization pair for oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = o(msgx)𝑜𝑚𝑠subscript𝑔𝑥o(msg_{x})italic_o ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) within topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

The Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization aims for sentiment balance in Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT for the specific topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. The analysis process of balance using the following criteria: 1) We sequentially select a sentiment score oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT from Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT based on the sentiment extremity. 2) We establish a tolerance interval for Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization by drawing a circle centered at (oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, f(oτix)𝑓subscriptsuperscript𝑜𝑥subscript𝜏𝑖f(o^{x}_{\tau_{i}})italic_f ( italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT )) with a radius equal to the shorter distance from x=oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT to the curve’s intersection. The rationale for establishing this interval is that users with extreme preferences tend to have a narrower acceptance threshold, whereas those with more moderate views possess a broader range of acceptance.

Referring to Figure 2, when oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT is 0.2, any sentiment score within Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT that falls between points b and c can be considered a Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization pair with oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, denoted as (oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, oτix+subscriptsuperscript𝑜superscript𝑥subscript𝜏𝑖o^{x^{+}}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT). Here, oτix+subscriptsuperscript𝑜superscript𝑥subscript𝜏𝑖o^{x^{+}}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT is seen as the complementary sentiment to oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT. If every value in Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT can be paired in this way, then Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT is considered to have achieved Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization.

IV Agent-Based Information Neutrality Model

In this section, we detail the operations of the AbIN model, which encompasses three critical, interrelated yet independent agents: OPA, INA, and UA. In summary, OPA is tasked with creating messages based on user preferences and forwarding them to INA. INA intercepts these messages and outputs a final Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization recommendation list to UA. UA responds to outputs from INA based on current user preferences and deposits these responses into the user preference repository. Finally, OPA accepts responses from UA and provides the next set of recommendations to INA.

IV-A Original Preference-based Agent

The Original Preference-based Agent (OPA) serves as the original preference-based recommendation system, employing a preference-based recommendation algorithm, like Collaborative Filtering (CF) [10] recommendation algorithm, to suggest a set of messages. OPA interacts with UA to select a list of messages based on the preferences generated by UA. As the input of INA, these selected messages are then processed for information neutralization through INA in preparation for generating the final recommendation list.

IV-B Information Neutrality Agent

The Information Neutrality Agent (INA) plays a crucial role in the AbIN model by facilitating information neutralization. Upon receiving a recommendation list from OPA, INA initially organizes the messages into clusters. Subsequently, we propose the Dominant Cluster Identification Algorithm (DCIA) to identify the target cluster for the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization. Following this, we employ a novel Yin-Yang Neutralization Control (YYNC) method to achieve information balance within recommendations. INA then selects appropriate messages from the information messages base, guided by the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization results from YYNC, and integrates these with OPA’s recommendations. This enriched recommendation list is finally forwarded to UA.

IV-B1 Message Clustering

Message clustering is an initial step in INA, setting the stage for subsequent information neutralization. This step involves grouping messages based on semantic and thematic similarities, which are quantified using both textual embeddings and topic representations. We employ BERT [22] for generating textual embeddings for each message (msgx𝑚𝑠subscript𝑔𝑥msg_{x}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT). Each message is also tagged with a topic T(msgx)𝑇𝑚𝑠subscript𝑔𝑥T(msg_{x})italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ).

Textual Similarity: Cosine distance [23] between the embeddings of two messages, msgi𝑚𝑠subscript𝑔𝑖msg_{i}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and msgj𝑚𝑠subscript𝑔𝑗msg_{j}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, is calculated as:

ρ(msgi,msgj)=𝐦𝐬𝐠𝐢𝐦𝐬𝐠𝐣𝐦𝐬𝐠𝐢𝐦𝐬𝐠𝐣𝜌𝑚𝑠subscript𝑔𝑖𝑚𝑠subscript𝑔𝑗subscript𝐦𝐬𝐠𝐢subscript𝐦𝐬𝐠𝐣delimited-∥∥subscript𝐦𝐬𝐠𝐢delimited-∥∥subscript𝐦𝐬𝐠𝐣\displaystyle\rho(msg_{i},msg_{j})=\frac{\mathbf{msg_{i}}\cdot\mathbf{msg_{j}}% }{\left\lVert\mathbf{msg_{i}}\right\rVert\left\lVert\mathbf{msg_{j}}\right\rVert}italic_ρ ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) = divide start_ARG bold_msg start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ⋅ bold_msg start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT end_ARG start_ARG ∥ bold_msg start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ∥ ∥ bold_msg start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT ∥ end_ARG (2)

where 𝐦𝐬𝐠𝐢subscript𝐦𝐬𝐠𝐢\mathbf{msg_{i}}bold_msg start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT and 𝐦𝐬𝐠𝐣subscript𝐦𝐬𝐠𝐣\mathbf{msg_{j}}bold_msg start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT denote textual embeddings, 𝐦𝐬𝐠𝐢𝐦𝐬𝐠𝐣subscript𝐦𝐬𝐠𝐢subscript𝐦𝐬𝐠𝐣\mathbf{msg_{i}}\cdot\mathbf{msg_{j}}bold_msg start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ⋅ bold_msg start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT refers to the dot product of the textual embeddings, and 𝐦𝐬𝐠𝐢delimited-∥∥subscript𝐦𝐬𝐠𝐢\left\lVert\mathbf{msg_{i}}\right\rVert∥ bold_msg start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ∥ and 𝐦𝐬𝐠𝐣delimited-∥∥subscript𝐦𝐬𝐠𝐣\left\lVert\mathbf{msg_{j}}\right\rVert∥ bold_msg start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT ∥ denote the corresponding Euclidean norms.

Topic Similarity: T(msgx)𝑇𝑚𝑠subscript𝑔𝑥T(msg_{x})italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ) denotes the singular topic assigned to message msgx𝑚𝑠subscript𝑔𝑥msg_{x}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT. As each message is only associated with one topic, a single topic is related to multiple messages. We can obtain the topic embedding 𝐓𝐱subscript𝐓𝐱\mathbf{T_{x}}bold_T start_POSTSUBSCRIPT bold_x end_POSTSUBSCRIPT by aggregating related message embeddings. The similarity of messages with topic labels is quantified using cosine distance:

ρ(T(msgi),T(msgj))=𝐓𝐢𝐓𝐣𝐓𝐢𝐓𝐣,𝜌𝑇𝑚𝑠subscript𝑔𝑖𝑇𝑚𝑠subscript𝑔𝑗subscript𝐓𝐢subscript𝐓𝐣delimited-∥∥subscript𝐓𝐢delimited-∥∥subscript𝐓𝐣\displaystyle\rho(T(msg_{i}),T(msg_{j}))=\frac{\mathbf{T_{i}}\cdot\mathbf{T_{j% }}}{\left\lVert\mathbf{T_{i}}\right\rVert\left\lVert\mathbf{T_{j}}\right\rVert},italic_ρ ( italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) , italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ) = divide start_ARG bold_T start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ⋅ bold_T start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT end_ARG start_ARG ∥ bold_T start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT ∥ ∥ bold_T start_POSTSUBSCRIPT bold_j end_POSTSUBSCRIPT ∥ end_ARG , (3)

Unified Distance Metric: We introduce a unified distance metric to encapsulate both textual and topical similarity:

d(msgi,msgj)=α×ρ(msgi,msgj)𝑑𝑚𝑠subscript𝑔𝑖𝑚𝑠subscript𝑔𝑗𝛼𝜌𝑚𝑠subscript𝑔𝑖𝑚𝑠subscript𝑔𝑗\displaystyle d(msg_{i},msg_{j})=\alpha\times\rho(msg_{i},msg_{j})italic_d ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) = italic_α × italic_ρ ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) (4)
+(1α)×ρ(T(msgi),T(msgj)),1𝛼𝜌𝑇𝑚𝑠subscript𝑔𝑖𝑇𝑚𝑠subscript𝑔𝑗\displaystyle+(1-\alpha)\times\rho(T(msg_{i}),T(msg_{j})),+ ( 1 - italic_α ) × italic_ρ ( italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) , italic_T ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ) ,

Here, α𝛼\alphaitalic_α balances the influence of the textual and topical embeddings in clustering. We set α𝛼\alphaitalic_α as 0.5 to treat both of them equally.

Clustering Algorithm: We use k-means to partition messages into K𝐾Kitalic_K clusters, optimized by a combined distance metric d(msgi,msgj)𝑑𝑚𝑠subscript𝑔𝑖𝑚𝑠subscript𝑔𝑗d(msg_{i},msg_{j})italic_d ( italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ). The centroids μksubscript𝜇𝑘\mu_{k}italic_μ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT are re-calibrated by computing the mean of all messages designated to cluster Cksubscript𝐶𝑘C_{k}italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT:

μk=1|Ck|msgiCkmsgi,subscript𝜇𝑘1subscript𝐶𝑘subscript𝑚𝑠subscript𝑔𝑖subscript𝐶𝑘𝑚𝑠subscript𝑔𝑖\mu_{k}=\frac{1}{|C_{k}|}\sum_{msg_{i}\in C_{k}}msg_{i},italic_μ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG | italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT | end_ARG ∑ start_POSTSUBSCRIPT italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_m italic_s italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , (5)

This clustering prepares the ground for the ensuing Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT analysis aimed at neutralizing sentiment imbalance.

IV-B2 Dominant Cluster Identification Algorithm (DCIA)

DCIA is designed to establish a Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization information by focusing on critical clusters. It considers clusters’ size and entropy to prioritize larger, stable ones. A pivotal aspect of the DCIA is the Memory Mechanism, which adapts strategies based on the feedback from UA garnered from their interactions. If the user agent consistently rejects the recommendation, DCIA adjusts the focus of the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization to another cluster.

Entropy Calculation for Each Cluster: Entropy quantifies diversity in a cluster, focusing on topics and sentiments. For a given cluster Cksubscript𝐶𝑘C_{k}italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT and topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the average sentiment score Psuperscript𝑃P^{\prime}italic_P start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is:

P(τi,Ck)=jCkoτijjCksuperscript𝑃subscript𝜏𝑖subscript𝐶𝑘subscript𝑗subscript𝐶𝑘subscriptsuperscript𝑜𝑗subscript𝜏𝑖subscript𝑗subscript𝐶𝑘P^{\prime}(\tau_{i},C_{k})=\frac{\sum_{j\in C_{k}}o^{j}_{\tau_{i}}}{\sum_{j\in C% _{k}}}italic_P start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = divide start_ARG ∑ start_POSTSUBSCRIPT italic_j ∈ italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_o start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j ∈ italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_ARG (6)

where oτijsubscriptsuperscript𝑜𝑗subscript𝜏𝑖o^{j}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT denotes the sentiment score of message msgj𝑚𝑠subscript𝑔𝑗msg_{j}italic_m italic_s italic_g start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT towards topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. When oτij[0,1]subscriptsuperscript𝑜𝑗subscript𝜏𝑖01o^{j}_{\tau_{i}}\in[0,1]italic_o start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ∈ [ 0 , 1 ], it follows that the range of P(τi,Ck)superscript𝑃subscript𝜏𝑖subscript𝐶𝑘P^{\prime}(\tau_{i},C_{k})italic_P start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) will also fall within the [0,1]01[0,1][ 0 , 1 ] interval.

Now, we can compute the entropy for each cluster, considering the average sentiment scores. The entropy of cluster Cksubscript𝐶𝑘C_{k}italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT is defined as:

H(Ck)=τiTP(τi,Ck)log2P(τi,Ck)𝐻subscript𝐶𝑘subscriptsubscript𝜏𝑖𝑇superscript𝑃subscript𝜏𝑖subscript𝐶𝑘subscript2superscript𝑃subscript𝜏𝑖subscript𝐶𝑘H(C_{k})=-\sum_{\tau_{i}\in T}P^{\prime}(\tau_{i},C_{k})\log_{2}P^{\prime}(% \tau_{i},C_{k})italic_H ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = - ∑ start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_T end_POSTSUBSCRIPT italic_P start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_P start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) (7)

In Equation 7, H(Ck)𝐻subscript𝐶𝑘H(C_{k})italic_H ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) measures the diversity of sentiment associated with the topics within the cluster. A higher value signifies a more diverse array of viewpoints within the cluster.

Cluster Importance Evaluation Algorithm We define cluster importance (Imp(Ck)𝐼𝑚𝑝subscript𝐶𝑘Imp(C_{k})italic_I italic_m italic_p ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT )) using its size (Sksubscript𝑆𝑘S_{k}italic_S start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT) and entropy (H(Ck)𝐻subscript𝐶𝑘H(C_{k})italic_H ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT )). Normalized size and entropy are Sksubscriptsuperscript𝑆𝑘S^{\prime}_{k}italic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT and H(Ck)superscript𝐻subscript𝐶𝑘H^{\prime}(C_{k})italic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ), respectively:

Sk=Skj=1nSjsubscriptsuperscript𝑆𝑘subscript𝑆𝑘superscriptsubscript𝑗1𝑛subscript𝑆𝑗S^{\prime}_{k}=\frac{S_{k}}{\sum_{j=1}^{n}S_{j}}italic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = divide start_ARG italic_S start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_S start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG (8)

where n𝑛nitalic_n is the total number of clusters. Furthermore, the entropy values are normalized as follows:

H(Ck)=H(Ck)maxj=1,,nH(Cj)superscript𝐻subscript𝐶𝑘𝐻subscript𝐶𝑘subscript𝑗1𝑛𝐻subscript𝐶𝑗H^{\prime}(C_{k})=\frac{H(C_{k})}{\max_{j=1,\dots,n}H(C_{j})}italic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = divide start_ARG italic_H ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) end_ARG start_ARG roman_max start_POSTSUBSCRIPT italic_j = 1 , … , italic_n end_POSTSUBSCRIPT italic_H ( italic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) end_ARG (9)

Finally, Imp(Ck)𝐼𝑚𝑝subscript𝐶𝑘Imp(C_{k})italic_I italic_m italic_p ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) is defined as:

𝐼𝑚𝑝(Ck)=2(Sk×H(Ck))(Sk+H(Ck))𝐼𝑚𝑝subscript𝐶𝑘2subscriptsuperscript𝑆𝑘superscript𝐻subscript𝐶𝑘subscriptsuperscript𝑆𝑘superscript𝐻subscript𝐶𝑘\textit{Imp}(C_{k})=\frac{2\cdot(S^{\prime}_{k}\times H^{\prime}(C_{k}))}{(S^{% \prime}_{k}+H^{\prime}(C_{k}))}Imp ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = divide start_ARG 2 ⋅ ( italic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT × italic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ) end_ARG start_ARG ( italic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ) end_ARG (10)

Memory Mechanism The Memory Mechanism guides the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization efforts toward topics within a specific cluster, informed by UA’s feedback. A threshold, denoted by R, is set to limit the allowable number of rejections for messages produced by INA within the final recommendation list. If the number of rejections by a user visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT surpasses R, INA adjusts the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization target to the subsequent cluster of importance.

IV-B3 Yin-Yang Neutralization Control Method

The primary task of the Yin-Yang Neutralization Control (YYNC) Method is to evaluate the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT balance of topics within a specified cluster and to apply balancing measures to those topics that are deemed imbalanced.

Defined in Section III-C, the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization process is initiated when a target sentiment list Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = {oτi1subscriptsuperscript𝑜1subscript𝜏𝑖o^{1}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT,…,oτimsubscriptsuperscript𝑜𝑚subscript𝜏𝑖o^{m}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT} fails to form Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT pairs, indicating an imbalance. For Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization, each sentiment in Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT must pair with another (complementary sentiment). In cases of imbalance, the YYNC method seeks the most appropriate sentiment score from the database to create Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT pairs, as detailed in Algorithm 1, thus achieving neutralization to the sentiment list.

Algorithm 1 Yin-Yang Neutralization Control Method.
1:Input:
2:- Sentiment data pool for topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT: Oτipoolsubscriptsuperscript𝑂𝑝𝑜𝑜𝑙subscript𝜏𝑖O^{pool}_{\tau_{i}}italic_O start_POSTSUPERSCRIPT italic_p italic_o italic_o italic_l end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = {oτiisubscriptsuperscript𝑜𝑖subscript𝜏𝑖o^{i}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, …, oτinsubscriptsuperscript𝑜𝑛subscript𝜏𝑖o^{n}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT}
3:- Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization target for topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT: Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT = {oτijsubscriptsuperscript𝑜𝑗subscript𝜏𝑖o^{j}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, …, oτimsubscriptsuperscript𝑜𝑚subscript𝜏𝑖o^{m}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT}
4:- tolerant: tol𝑡𝑜𝑙tolitalic_t italic_o italic_l
5:Output: A complementary list for Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization: complement_list𝑐𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡_𝑙𝑖𝑠𝑡complement\_listitalic_c italic_o italic_m italic_p italic_l italic_e italic_m italic_e italic_n italic_t _ italic_l italic_i italic_s italic_t
6:
7:function IfBalance(Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT)
8:     Sort Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT by closeness to neutral sentiment 0.5
9:     Initialize remain_list𝑟𝑒𝑚𝑎𝑖𝑛_𝑙𝑖𝑠𝑡remain\_listitalic_r italic_e italic_m italic_a italic_i italic_n _ italic_l italic_i italic_s italic_t to track unpaired sentiments
10:     while len(Oτi)0lensubscript𝑂subscript𝜏𝑖0\text{len}(O_{\tau_{i}})\neq 0len ( italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) ≠ 0 do
11:         min,maxget_radiation_tolerance(oτim)𝑚𝑖𝑛𝑚𝑎𝑥get_radiation_tolerancesubscriptsuperscript𝑜𝑚subscript𝜏𝑖min,max\leftarrow\text{get\_radiation\_tolerance}(o^{m}_{\tau_{i}})italic_m italic_i italic_n , italic_m italic_a italic_x ← get_radiation_tolerance ( italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) \triangleright The distance between (oτimsubscriptsuperscript𝑜𝑚subscript𝜏𝑖o^{m}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, min𝑚𝑖𝑛minitalic_m italic_i italic_n) and (oτimsubscriptsuperscript𝑜𝑚subscript𝜏𝑖o^{m}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, max𝑚𝑎𝑥maxitalic_m italic_a italic_x) is the tolerance interval for Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization
12:         oτim+find_complement_num(Oτit,min,max)subscriptsuperscript𝑜superscript𝑚subscript𝜏𝑖find_complement_numsubscriptsuperscript𝑂𝑡subscript𝜏𝑖𝑚𝑖𝑛𝑚𝑎𝑥o^{m^{+}}_{\tau_{i}}\leftarrow\text{find\_complement\_num}(O^{t}_{\tau_{i}},% min,max)italic_o start_POSTSUPERSCRIPT italic_m start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ← find_complement_num ( italic_O start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_m italic_i italic_n , italic_m italic_a italic_x )
13:         if oτim+subscriptsuperscript𝑜superscript𝑚subscript𝜏𝑖o^{m^{+}}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_m start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT is not None then
14:              Oτi.remove(oτim+)formulae-sequencesubscript𝑂subscript𝜏𝑖removesubscriptsuperscript𝑜superscript𝑚subscript𝜏𝑖O_{\tau_{i}}.\text{remove}(o^{m^{+}}_{\tau_{i}})italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT . remove ( italic_o start_POSTSUPERSCRIPT italic_m start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT )
15:         else
16:              remain_list.append(oτim)formulae-sequence𝑟𝑒𝑚𝑎𝑖𝑛_𝑙𝑖𝑠𝑡appendsubscriptsuperscript𝑜𝑚subscript𝜏𝑖remain\_list.\text{append}(o^{m}_{\tau_{i}})italic_r italic_e italic_m italic_a italic_i italic_n _ italic_l italic_i italic_s italic_t . append ( italic_o start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT )
17:         end if
18:     end while
19:end function
20:
21:function FindMatchScore(remain_list,Oτipool𝑟𝑒𝑚𝑎𝑖𝑛_𝑙𝑖𝑠𝑡subscriptsuperscript𝑂𝑝𝑜𝑜𝑙subscript𝜏𝑖remain\_list,O^{pool}_{\tau_{i}}italic_r italic_e italic_m italic_a italic_i italic_n _ italic_l italic_i italic_s italic_t , italic_O start_POSTSUPERSCRIPT italic_p italic_o italic_o italic_l end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT)
22:     Initialize complement_list𝑐𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡_𝑙𝑖𝑠𝑡complement\_listitalic_c italic_o italic_m italic_p italic_l italic_e italic_m italic_e italic_n italic_t _ italic_l italic_i italic_s italic_t to include sentiments added for balance
23:     for oτitsubscriptsuperscript𝑜𝑡subscript𝜏𝑖o^{t}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT in remain_list𝑟𝑒𝑚𝑎𝑖𝑛_𝑙𝑖𝑠𝑡remain\_listitalic_r italic_e italic_m italic_a italic_i italic_n _ italic_l italic_i italic_s italic_t do
24:         min,maxget_radiation_tolerance(oτit)𝑚𝑖𝑛𝑚𝑎𝑥get_radiation_tolerancesubscriptsuperscript𝑜𝑡subscript𝜏𝑖min,max\leftarrow\text{get\_radiation\_tolerance}(o^{t}_{\tau_{i}})italic_m italic_i italic_n , italic_m italic_a italic_x ← get_radiation_tolerance ( italic_o start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT )
25:         oτit+find_complement_num(Oτipool,min,max)subscriptsuperscript𝑜superscript𝑡subscript𝜏𝑖find_complement_numsubscriptsuperscript𝑂𝑝𝑜𝑜𝑙subscript𝜏𝑖𝑚𝑖𝑛𝑚𝑎𝑥o^{t^{+}}_{\tau_{i}}\leftarrow\text{find\_complement\_num}(O^{pool}_{\tau_{i}}% ,min,max)italic_o start_POSTSUPERSCRIPT italic_t start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ← find_complement_num ( italic_O start_POSTSUPERSCRIPT italic_p italic_o italic_o italic_l end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_m italic_i italic_n , italic_m italic_a italic_x )
26:         if oτit+Nonesubscriptsuperscript𝑜superscript𝑡subscript𝜏𝑖Noneo^{t^{+}}_{\tau_{i}}\neq\text{None}italic_o start_POSTSUPERSCRIPT italic_t start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ≠ None then
27:              complement_list.append(oτit+)formulae-sequence𝑐𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡_𝑙𝑖𝑠𝑡appendsubscriptsuperscript𝑜superscript𝑡subscript𝜏𝑖complement\_list.\text{append}(o^{t^{+}}_{\tau_{i}})italic_c italic_o italic_m italic_p italic_l italic_e italic_m italic_e italic_n italic_t _ italic_l italic_i italic_s italic_t . append ( italic_o start_POSTSUPERSCRIPT italic_t start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT )
28:              return complement_list𝑐𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡_𝑙𝑖𝑠𝑡complement\_listitalic_c italic_o italic_m italic_p italic_l italic_e italic_m italic_e italic_n italic_t _ italic_l italic_i italic_s italic_t
29:         else
30:              min=min+tol𝑚𝑖𝑛𝑚𝑖𝑛𝑡𝑜𝑙min=min+tolitalic_m italic_i italic_n = italic_m italic_i italic_n + italic_t italic_o italic_l; max=max+tol𝑚𝑎𝑥𝑚𝑎𝑥𝑡𝑜𝑙max=max+tolitalic_m italic_a italic_x = italic_m italic_a italic_x + italic_t italic_o italic_l
31:              Repeat lines 23-26.
32:         end if
33:     end for
34:end function

IV-B4 Searching

The final phase of the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization process, referred to as “Searching”, revolves around treating the sentiment list (complement_list𝑐𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡_𝑙𝑖𝑠𝑡complement\_listitalic_c italic_o italic_m italic_p italic_l italic_e italic_m italic_e italic_n italic_t _ italic_l italic_i italic_s italic_t) generated by the YYNC method as a search query. This query is subsequently utilized to retrieve relevant messages from the information message base. These retrieved messages are then finally merged with the recommendation (Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT) provided by OPA, culminating in a unified message set that is presented as a recommendation to UA.

Refer to caption
Figure 3: The searching process in INA.

Illustrated in Figure 3, the outputs from the YYNC method function as the query for the “Searching” step. This query is input into the Information Message Base, initiating a search within the base to extract messages with matching topics and corresponding sentiment scores. In the depicted example of Figure 3, assuming the sentiment query value associated with topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is 0.035, we search all messages of topic τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with 0.035 sentiment score from the information message base. Subsequently, a pre-trained embedding model is engaged to extract features from each message. A similarity assessment is executed between the feature of each message and user preferences 𝐯𝐢tsuperscriptsubscript𝐯𝐢𝑡\mathbf{v_{i}}^{t}bold_v start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT to ensure the output message exhibits the highest similarity with user preferences. In essence, for each sentiment query, a corresponding message output is obtained. The accumulation of these outputs combined with Mvitsubscriptsuperscript𝑀𝑡subscript𝑣𝑖M^{t}_{v_{i}}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT from OPA is INA’s final output, donated as MviRtsubscriptsuperscript𝑀𝑡subscript𝑣𝑖𝑅M^{t}_{{v_{i}}R}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT.

IV-C User Agent

The User Agent (UA) receives a Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization recommendation list from INA. It responds to this list based on user preferences from historical behaviors and decides whether to accept or reject the messages from INA. To simulate the user’s responses to INA’s recommendations, an offline Acceptance Probability Algorithm is employed. This algorithm assesses the similarity between preferences of UA and the messages in MviRtsubscriptsuperscript𝑀𝑡subscript𝑣𝑖𝑅M^{t}_{{v_{i}}R}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT using the cosine similarity formula:

ρ(vit,MviRt)=𝐯𝐢t𝐌viRt𝐯𝐢t𝐌viRt,𝜌superscriptsubscript𝑣𝑖𝑡subscriptsuperscript𝑀𝑡subscript𝑣𝑖𝑅superscriptsubscript𝐯𝐢𝑡subscriptsuperscript𝐌𝑡subscript𝑣𝑖𝑅normsuperscriptsubscript𝐯𝐢𝑡normsubscriptsuperscript𝐌𝑡subscript𝑣𝑖𝑅\displaystyle\rho(v_{i}^{t},M^{t}_{{v_{i}}R})=\frac{\mathbf{v_{i}}^{t}\cdot% \mathbf{M}^{t}_{{v_{i}}R}}{||\mathbf{v_{i}}^{t}||||\mathbf{M}^{t}_{{v_{i}}R}||},italic_ρ ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT ) = divide start_ARG bold_v start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT ⋅ bold_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT end_ARG start_ARG | | bold_v start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT | | | | bold_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT | | end_ARG , (11)

where 𝐌viRtsubscriptsuperscript𝐌𝑡subscript𝑣𝑖𝑅\mathbf{M}^{t}_{{v_{i}}R}bold_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT represents the integrated embedding of all messages in MviRtsubscriptsuperscript𝑀𝑡subscript𝑣𝑖𝑅M^{t}_{{v_{i}}R}italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT, and 𝐯𝐢tsuperscriptsubscript𝐯𝐢𝑡\mathbf{v_{i}}^{t}bold_v start_POSTSUBSCRIPT bold_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT signifies visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT’s preferences at time t𝑡titalic_t.

This algorithm incorporates a random value to model visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT’s responses. If the cosine similarity ρ(vit,MviRt)𝜌superscriptsubscript𝑣𝑖𝑡subscriptsuperscript𝑀𝑡subscript𝑣𝑖𝑅\rho(v_{i}^{t},M^{t}_{{v_{i}}R})italic_ρ ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT ) exceeds this random threshold, it indicates that visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT accepts the recommended message. Otherwise, the message is rejected. Based on these acceptance or rejection decisions, feedback from UA is forwarded to OPA for the generation of next-round messages. Simultaneously, this feedback updates the user preference repository, enhancing the accuracy of future recommendations from INA.

V Experiments and Analysis

In our research, we aim to thoroughly assess the AbIN model’s efficacy in fostering sentiment diversity, realizing Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization, and consequently mitigating filter bubbles. To this end, we carried out three interconnected experiments. These experiments investigate AbIN’s performance on recommendation diversity, precision, and Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization.

V-A Datasets and Settings

We utilize two real-world datasets, i.e., the Microsoft News dataset (MIND) 111https://msnews.github.io/ and IMDB 222https://www.kaggle.com/datasets/meastanmay/imdb-dataset?select=tmdb_5000_movies.csv/ dataset. MIND is a public news recommendation dataset, encompassing user interaction data gathered from Microsoft News. MIND comprises data from 5,000 users, encompassing 230,117 user reading records and 51287 news. IMDB is a movie recommendation dataset. We use the rating records provided by the dataset. It comprises 25,000 movie rating records from 333 users and a range of 2586 movies.

Settings: Considering the inherent impracticality and substantial cost of conducting online testing for researchers, we have developed an offline simulation approach to evaluate the proposed method. The Acceptance Probability Algorithm described in Section IV-C simulates user feedback for recommendations.

V-B Evaluation Metrics

We assess the AbIN system using three key metrics: Diversity, Accuracy, and Yin-Yang Neutralization Degree (best_diff).

Diversity: Measures the range of sentiments across recommendations, indicating a system’s ability to offer varied perspectives. It consists of sentiment coverage and repetition rate (RR), where coverage is the sum of sentiments for a particular topic in the recommendation list divided by the sum of sentiments for that topic in the data pool and then averaged. The RR calculates the average sentiment redundancy for a specific topic, as the topic is τisubscript𝜏𝑖\tau_{i}italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, RR=i=1nRRτin𝑅𝑅superscriptsubscript𝑖1𝑛𝑅subscript𝑅subscript𝜏𝑖𝑛RR=\frac{\sum_{i=1}^{n}RR_{\tau_{i}}}{n}italic_R italic_R = divide start_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_R italic_R start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_ARG start_ARG italic_n end_ARG.

Accuracy: Reflects how recommendations align with user preferences. It’s evaluated through Hit (1 if at least one message is accepted in a recommendation, 0 otherwise) and Precision (Pre), which is the ratio of accepted items in the recommendation.

best_diff: Quantifies the degree of Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization in recommendation systems, we introduce a metric defined by the formula: |x=1nf(oτix)y=1moτiy|superscriptsubscript𝑥1𝑛𝑓subscriptsuperscript𝑜𝑥subscript𝜏𝑖superscriptsubscript𝑦1𝑚subscriptsuperscript𝑜𝑦subscript𝜏𝑖\left|\sum_{x=1}^{n}f(o^{x}_{\tau_{i}})-\sum_{y=1}^{m}o^{y}_{\tau_{i}}\right|| ∑ start_POSTSUBSCRIPT italic_x = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_f ( italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) - ∑ start_POSTSUBSCRIPT italic_y = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_o start_POSTSUPERSCRIPT italic_y end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT |, where f𝑓fitalic_f represents the curve function detailed in Equation 1. Here, oτixsubscriptsuperscript𝑜𝑥subscript𝜏𝑖o^{x}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_x end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT and oτiysubscriptsuperscript𝑜𝑦subscript𝜏𝑖o^{y}_{\tau_{i}}italic_o start_POSTSUPERSCRIPT italic_y end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT denote the individual sentiments within the list Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT, corresponding to Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT and Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT respectively. The variables m𝑚mitalic_m and n𝑛nitalic_n are the counts of Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT and Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT scores in the list. A “best_diff” value of 0 signifies that the list Oτisubscript𝑂subscript𝜏𝑖O_{\tau_{i}}italic_O start_POSTSUBSCRIPT italic_τ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT has achieved the perfect neutralization.

V-C Baselines

We assess the performance of AbIN in comparison with several established baseline methods:

  • NGCF [24]: Enhances recommendation by modeling collaborative signals with user-item graphs.

  • LGCN [25]: Focuses on neighborhood aggregation for efficient training; outperforms NGCF.

  • DGCF [26]: Disentangles user-item relationships to capture user intent diversity.

  • ENMF [27]: Employs three new optimization methods in a neural matrix factorization framework for better performance.

  • SGL [28]: Incorporates self-supervised learning into traditional GCNs for improved accuracy and robustness.

For each baseline, we also explore its integration with the AbIN model, denoted as “MethodAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT” (e.g., SGLAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT), resulting in 10 comparative baselines to assess the impact of AbIN on overcoming filter bubbles and achieving neutralization goals.

V-D Experiment 1: Evaluation of Diversity and Accuracy

The first experiment evaluates the AbIN model’s impact on enhancing diversity and accuracy within preference-based recommendation systems. By leveraging metrics such as Coverage and RR as metrics for diversity, and Hit and Pre for accuracy, our objective is to show how the AbIN model enhances sentiment diversity without significantly compromising recommendation precision. The experiment conducted on the MIND and IMDB datasets involved 10 recommendation models applied to 5 randomly selected users from each dataset (U45, U46, U103, U10022, U23393 from MIND and U22, U62, U63, U88, U109 from IMDB), illustrating the benefits of incorporating the AbIN model in overcoming filter bubbles and fostering a neutral recommendation environment. The average evaluation results are shown in Table I, where “ΔΔ\Deltaroman_Δ(%)” denotes the percentage change due to AbIN.

TABLE I: Comparative Analysis of Recommendation Models with and without the AbIN Enhancement
Models MIND IMDB
Diversity Accuracy Diversity Accuracy
Coverage RR Pre Hit Coverage RR Pre Hit
SGL 0.0009 0.0349 0.4920 1 0.0136 0.0031 0.4619 1
SGLAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT 0.0012 0.0269 0.5012 1 0.0145 0.0015 0.4902 1
ΔΔ\Deltaroman_Δ(%) \uparrow21.67 \downarrow 29.56 \uparrow 1.84 - \uparrow5.708 \downarrow 109.52 \uparrow 5.77 -
NGCF 0.0011 0.0399 0.4660 1 0.0135 0.0030 0.4880 1
NGCFAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT 0.0014 0.0315 0.4454 1 0.0193 0.0025 0.5006 1
ΔΔ\Deltaroman_Δ(%) \uparrow 18.06 \downarrow 21.11 \downarrow 4.63 - \uparrow 29.68 \downarrow 20.39 \uparrow 2.52 -
LGCN 0.0010 0.0413 0.538 1 0.0116 0.0122 0.516 1
LGCNAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT 0.0012 0.0252 0.5232 1 0.0136 0.0066 0.4844 1
ΔΔ\Deltaroman_Δ(%) \uparrow 20.03 \downarrow 63.92 \downarrow 2.81 - \uparrow 14.61 \downarrow 84.22 \uparrow 6.516 -
DGCF 0.0012 0.0471 0.49 1 0.0143 0.0044 0.53 1
DGCFAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT 0.0014 0.0328 0.460 1 0.0152 0.0032 0.5140 1
ΔΔ\Deltaroman_Δ(%) \uparrow 14.78 \downarrow43.59 \downarrow6.52 - \uparrow5.89 \downarrow37.5 \downarrow 3.09 -
ENMF 0.0010 0.0333 0.490 1 0.0138 0.0025 0.512 1
ENMFAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT 0.0012 0.0259 0.5196 1 0.0161 0.0021 0.5165 1
ΔΔ\Deltaroman_Δ(%) \uparrow 9.308 \downarrow 28.61 \uparrow 5.704 - \uparrow 13.85 \downarrow 18.54 \uparrow 0.875 -

Results indicate that incorporating the AbIN model significantly increases sentiment coverage across both datasets and reduces sentiment repetition. This leads to a richer user experience by offering a broader range of sentiments. Despite mixed outcomes in precision, the findings underscore the AbIN model’s ability to balance diversity and accuracy effectively. Overall, this experiment underscores the AbIN model’s role in enhancing the diversity of preference-based recommendation systems. By broadening the variety of content recommended to users, the model addresses critical challenges such as filter bubbles.

V-E Experiment 2: Neutralization Evaluation

Refer to caption
(a)
Refer to caption
(b)
Figure 4: An analysis of the efficacy of the AbIN model in the context of a single-instance Yin-Yang neutralization task on two datasets. (a) Yin-Yang neutralization evaluation on MIND dataset. (b) Yin-Yang neutralization evaluation on IMDB dataset.

This experiment evaluates the AbIN model’s capability to enhance neutralization in recommendation systems, specifically aiming to balance Ysubscript𝑌Y_{-}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT and Y+subscript𝑌Y_{+}italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT to provide a more neutral recommendation environment and reduce the impact of filter bubbles. The “best_diff” matrix serves as a quantitative measure of neutralization extent. This study includes two datasets: 2,000 users were randomly selected from MIND, and all users from IMDB were included.

In the scatter plots referenced (Figure 4), the x-axis indicates user numbers, and the y-axis represents the degree of Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization (best_diff) across recommended topics for each user in a single recommendation. The figures reveal that the AbIN-enhanced model (LGCNAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT), depicted by yellow dots, significantly improves Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization compared to the LGCN model (blue dots), with many instances nearing perfect neutralization (approaching 0). This suggests that integrating AbIN aids in achieving a more neutral recommendation environment.

The experimental results underscore the AbIN model’s impact on improving Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization within recommendation systems. By consistently lowering the “best_diff” values across a broad user base, the AbIN-enhanced model demonstrates its superiority over preference-based approaches.

V-F Experiment 3: Impact of Cluster Sizes

TABLE II: Comparison of LGCN and LGCNAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT on MIND and IMDB datasets
MIND IMDB
cluster time(m) LGCN LGCNAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT Improve(%) time(m) LGCN LGCNAbIN𝐴𝑏𝐼𝑁{}_{AbIN}start_FLOATSUBSCRIPT italic_A italic_b italic_I italic_N end_FLOATSUBSCRIPT Improve(%)
1 76.58 0.2332 0.0244 89.54 0.598 0.7287 0.0165 97.72
2 38.56 0.2358 0.0203 91.38 0.454 0.6622 0.0110 98.32
3 34.06 0.2384 0.0192 91.97 0.400 0.6650 0.0111 98.31
4 30.41 0.2442 0.0191 92.18 0.355 0.8391 0.0264 96.84
5 30.30 0.2333 0.0180 92.27 0.358 0.9169 0.0390 95.74
6 29.18 0.2293 0.0174 92.32 0.364 0.9388 0.0431 95.40
7 28.86 0.2263 0.0230 89.85 0.370 0.9750 0.0464 95.23
8 26.34 0.2299 0.0225 90.20 0.379 0.9697 0.0503 94.80

In this parameter experiment, we assess the impact of varying cluster sizes on the speed and extent of Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization by the recommendation system, which is configured to suggest 10 messages per recommendation. This setup remains consistent with that of Experiment 2, except for the cluster sizes examined.

The table shows an acceleration in the neutralization process as the cluster size increases, as noted in the “time” column. This column quantifies the extent of Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization (reflected by “best_diff”) achieved by the AbIN-enhanced model compared to the LGCN model. Despite minor fluctuations, cluster size 6 is selected for the MIND dataset due to its optimal performance. Conversely, the IMDB dataset exhibits a significant shift in neutralization performance. The “Improve(%)” diminishes from 98.32% to 94.80% as cluster size increases and stabilizes from cluster size 4 onwards. This suggests that the messages within the targeted cluster reach a stable beyond this point. Cluster size 2 is chosen for the IMDB dataset, which demonstrates the best performance on Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization.

V-G Discussions

Our study involves three interconnected experiments to offer an extensive evaluation of the effectiveness of the proposed AbIN model. These experiments collectively illuminate the AbIN model’s multifaceted capabilities, including its performance on recommendation diversity, precision, and Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization. The AbIN-based recommendation algorithms reveal their ability to mitigate filter bubbles by broadening sentiment recommendation spectrums and providing a more balanced perception. The experimental results emphasize the model’s potential for practical applications in recommendation systems without altering original algorithms. However, while our findings emphasize AbIN’s potential, it’s essential to acknowledge potential limitations. Its applicability across real-world implementation challenges needs to be further explored. Future research could probe deeper into these aspects, ensuring AbIN’s robustness in diverse online environments.

VI Conclusion and Future Work

This paper introduces AbIN, an innovative agent-based model inspired by the Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT theory, that aims to mitigate filter bubbles in existing recommendation systems. Distinct from prevalent solutions that modify recommendation algorithms, AbIN incorporates multiple agents into the recommendation task. Each agent within the AbIN model is designed to be both independent and interconnected. By Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT analysis and neutralization, the model counteracts imbalanced information perception, fostering a more balanced sentiment perspective. Experiments showcased AbIN’s efficacy in promoting sentiment diversity, achieving Y&Y+subscript𝑌subscript𝑌Y_{-}\&Y_{+}italic_Y start_POSTSUBSCRIPT - end_POSTSUBSCRIPT & italic_Y start_POSTSUBSCRIPT + end_POSTSUBSCRIPT neutralization, and thus alleviating filter bubbles. To conclude, AbIN offers a novel solution to mitigate filter bubbles generated by preference-based recommendation systems. Future research avenues should delve into refining its precision, and real-world implementation, exploring its dynamic adaptations, and assessing the impact on users.

Acknowledgments

The authors would like to acknowledge the financial support from Callaghan Innovation (CSITR1901, 2021), New Zealand, without which this research would not have been possible. We are grateful for their contributions to the advancement of science and technology in New Zealand. The authors would also like to thank CAITO.ai for their invaluable partnership and their contributions to the project.

References

  • [1] L. Michiels, J. Leysen, A. Smets, and B. Goethals, “What are filter bubbles really? a review of the conceptual and empirical work,” in Adjunct Proceedings of the 30th ACM Conference on User Modeling, Adaptation and Personalization, 2022, pp. 274–279.
  • [2] C. Schumann, J. Foster, N. Mattei, and J. Dickerson, “We need fairness and explainability in algorithmic hiring,” in International Conference on Autonomous Agents and Multi-Agent Systems (AAMAS), 2020.
  • [3] Z. Liu, W. Xu, W. Zhang, and Q. Jiang, “An emotion-based personalized music recommendation framework for emotion improvement,” Information Processing & Management, vol. 60, no. 3, p. 103256, 2023.
  • [4] S. Flaxman, S. Goel, and J. M. Rao, “Filter bubbles, echo chambers, and online news consumption,” Public opinion quarterly, vol. 80, no. S1, pp. 298–320, 2016.
  • [5] W. Li, Q. Bai, T. D. Nguyen, and M. Zhang, “Agent-based influence maintenance in social networks,” in Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, 2017, pp. 1592–1594.
  • [6] A. Kandel and Y.-Q. Zhang, “Intrinsic mechanisms and application principles of general fuzzy logic through yin-yang analysis,” Information Sciences, vol. 106, no. 1-2, pp. 87–104, 1998.
  • [7] M. R. Fernandes, “Confirmation bias in social networks,” Mathematical Social Sciences, vol. 123, pp. 59–76, 2023.
  • [8] X. Li, X. Guo, and Z. Shi, “Bright sides and dark sides: Unveiling the double-edged sword effects of social networks,” Social Science & Medicine, vol. 329, 2023.
  • [9] Q. Guo, Z. Sun, J. Zhang, and Y.-L. Theng, “An attentional recurrent neural network for personalized next location recommendation,” in Proceedings of the AAAI Conference on artificial intelligence, vol. 34, no. 01, 2020, pp. 83–90.
  • [10] F. Wang, H. Zhu, G. Srivastava, S. Li, M. R. Khosravi, and L. Qi, “Robust collaborative filtering recommendation with user-item-trust records,” IEEE Transactions on Computational Social Systems, vol. 9, no. 4, pp. 986–996, 2021.
  • [11] S. Reddy, S. Nalluri, S. Kunisetti, S. Ashok, and B. Venkatesh, “Content-based movie recommendation system using genre correlation,” in Smart Intelligent Computing and Applications: Proceedings of the Second International Conference on SCI 2018, Volume 2.   Springer, 2019, pp. 391–397.
  • [12] A. L. Vilela, L. F. C. Pereira, L. Dias, H. E. Stanley, and L. R. d. Silva, “Majority-vote model with limited visibility: an investigation into filter bubbles,” Physica A: Statistical Mechanics and its Applications, vol. 563, 2021.
  • [13] D. Geschke, J. Lorenz, and P. Holtz, “The triple-filter bubble: using agent-based modeling to test a meta-theoretical framework for the emergence of filter bubbles and echo chambers,” British Journal of Social Psychology, vol. 58, pp. 129–149, 2019.
  • [14] Y. Hu, S. Wu, C. Jiang, W. Li, Q. Bai, and E. Roehrer, “Ai facilitated isolations? the impact of recommendation-based influence diffusion in human society,” in Proceedings of the 31st International Joint Conference on Artificial Intelligence, 2022, pp. 5080–5086.
  • [15] G. M. Lunardi, G. M. Machado, V. Maran, and J. P. M. de Oliveira, “A metric for filter bubble measurement in recommender algorithms considering the news domain,” Applied Soft Computing, vol. 97, 2020.
  • [16] H. Su, X. Shen, S. Zhao, Z. Xiao, P. Hu, R. Zhong, C. Niu, and J. Zhou, “Diversifying dialogue generation with non-conversational text,” in Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020, pp. 7087–7097.
  • [17] Q. Grossetti, C. Du Mouza, N. Travers, and C. Constantin, “Reducing the filter bubble effect on twitter by considering communities for recommendations,” International Journal of Web Information Systems, vol. 17, no. 6, pp. 728–752, 2021.
  • [18] L. Yang, S. Wang, Y. Tao, J. Sun, X. Liu, P. S. Yu, and T. Wang, “Dgrec: Graph neural network for recommendation with diversified embedding generation,” in Proceedings of the Sixteenth ACM International Conference on Web Search and Data Mining, 2023, pp. 661–669.
  • [19] Z. Li, Y. Dong, C. Gao, Y. Zhao, D. Li, J. Hao, K. Zhang, Y. Li, and Z. Wang, “Breaking filter bubble: A reinforcement learning framework of controllable recommender system,” in Proceedings of the ACM Web Conference 2023, 2023, pp. 4041–4049.
  • [20] E. Million, “The hadamard product,” Course Notes, vol. 3, no. 6, pp. 1–7, 2007.
  • [21] K. Chen and R. Ma, “A mathematic expression of the genes of chinese traditional philosophy,” arXiv e-prints, pp. arXiv–1611, 2016.
  • [22] J. D. M.-W. C. Kenton and L. K. Toutanova, “Bert: Pre-training of deep bidirectional transformers for language understanding,” in Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, vol. 1, 2019, p. 2.
  • [23] M. Behrendt and S. Harmeling, “Arguebert: How to improve bert embeddings for measuring the similarity of arguments,” in Proceedings of the 17th Conference on Natural Language Processing (KONVENS 2021), 2021, pp. 28–36.
  • [24] X. Wang, X. He, M. Wang, F. Feng, and T.-S. Chua, “Neural graph collaborative filtering,” in Proceedings of the 42nd international ACM SIGIR conference on Research and development in Information Retrieval, 2019, pp. 165–174.
  • [25] X. He, K. Deng, X. Wang, Y. Li, Y. Zhang, and M. Wang, “Lightgcn: Simplifying and powering graph convolution network for recommendation,” in Proceedings of the 43rd International ACM SIGIR conference on research and development in Information Retrieval, 2020, pp. 639–648.
  • [26] X. Wang, H. Jin, A. Zhang, X. He, T. Xu, and T.-S. Chua, “Disentangled graph collaborative filtering,” in Proceedings of the 43rd international ACM SIGIR conference on research and development in information retrieval, 2020, pp. 1001–1010.
  • [27] C. Chen, M. Zhang, Y. Zhang, Y. Liu, and S. Ma, “Efficient neural matrix factorization without sampling for recommendation,” ACM Transactions on Information Systems (TOIS), vol. 38, no. 2, pp. 1–28, 2020.
  • [28] J. Wu, X. Wang, F. Feng, X. He, L. Chen, J. Lian, and X. Xie, “Self-supervised graph learning for recommendation,” in Proceedings of the 44th international ACM SIGIR conference on research and development in information retrieval, 2021, pp. 726–735.