## 3 Materials and Methods  
### Formulation of the Problem  
Let \(V=V^{id}\cup V^{P}\cup V^{c}\) denote the set of all nodes, where \(V^{id}_{i}=\{v^{id}_{1},v^{id}_{2},v^{id}_{3},\cdots,v^{id}_{N}\}\), \(V^{p}_{i}=\{v^{p}_{1},v^{p}_{2},v^{p}_{3},\cdots,v^{p}_{V}\}\), and \(V^{c}_{i}=\{v^{c}_{1},v^{c}_{2},v^{c}_{3},\cdots,v^{c}_{U}\}\), where \(N\), \(Y\), and \(U\) are the total number of project IDs, project prices, and project categories, respectively. Each project \(v^{id}_{i}\in v^{id}\) is embedded into the same space, and let \(h^{I}_{Y_{i}}\) represent the vector representation of \(v^{id}_{i}\) of dimension \(d^{(l)}\) in \(l^{th}\) layer of the deep neural network. Each session is represented as a set of length m \(S_{i}=\{v^{id}_{i,1},v^{id}_{i,2},v^{id}_{i,3},\cdots,v^{id}_{i,m}\}\), where \(v^{id}_{ik}\in V(1\leq k\leq m)\) denotes the items interacted with by the anonymous user during session \(S_{i}\), and the items are sorted by interaction time. The task of the MGMI-CEHCN model is to predict the most likely interaction project \(v^{id}_{i,m+1}\) for a specific session at time \(m+1\). The model inputs a sequence of sessions, outputs the recommendation scores of all possible items \(\hat{y}\), and finally takes the top K items as the recommended candidates for the session \(S_{i}\). **Definition 1**: _As mentioned in [45], the distribution of prices for a given category is more consistent with a logistic distribution than with the commonly used uniform distribution. The probability density function of a logistic distribution presents a higher preference in the middle zone and a lower preference at the ends. In price-dense intervals, users are confronted with more similarly priced goods and are thus more sensitive to price changes, thus requiring a more detailed division of price levels, while in sparsely priced intervals, a looser division is possible. In addition, in order to balance the training data, the number of items in each price level should be kept approximately the same. Therefore, as shown in Figure 1, we discretize the prices into \(\theta\) levels (e.g., \(\theta\) = 5), where each interval corresponds to an equal probability. Formally, for item \(x_{i}\) with price \(x_{p}\) and a price range of [min, max] for its category, we determine its price level as follows:_  
\[p_{i}=\lfloor\frac{\phi(x_{p})-\phi(min)}{\phi(max)-\phi(min)}\times\theta\rfloor \tag{1}\]  
_where \(\phi(X)\) is the cumulative distribution function of logistic distribution, which can be defined as follows:_  
\[\phi(x)=P(X\leq x)=\frac{1}{1+e^{-\pi\frac{x-x}{\sqrt{3}\delta}}} \tag{2}\]  
_where \(\mu\) and \(\delta\) are the expected value and standard deviation, respectively._  
**Definition 2**. : _Heterogeneous Hypergraph. Design a customized heterogeneous hypergraph \(G=(V,E)\), as shown in Figure 2, where \(V\) is the set of all nodes, and \(E\) is the set of all hyperedges. Encoded node types include project prices \(v^{p}\), project IDs \(v^{id}\), and project categories \(v\). Nodes are uniformly represented as \(v^{\tau}\), with nodes of the same type forming isomorphic nodes. Each hyperedge \(e\in E\) connects two or more nodes of arbitrary type. To represent multi-type relationships between nodes, we define two types of hyperedges: (1) feature hyperedges \(e^{f}\) connect all features of a project; (2) session hyperedges \(e^{id}\) connect nodes of all projects in a session._  
_If two nodes are connected by a session hyperedge, they are adjacent. Each session hyperedge \(e^{id}\in E\) containing two or more vertices is assigned a positive weight \(W_{e}\), and all weights form a diagonal matrix \(W\in R^{M\times M}\). A hypergraph can be represented by an adjacency matrix \(H\in R^{N\times M}\), where each element is defined as_  
\[H_{ie}=\left\{ \begin{array}{ll}1,&\text{if}\quad v^{id}_{i}\in e^{id}\\ 0,&\text{if}\quad v^{id}_{i}\
otin e^{id}\end{array} \right.