<｜begin▁of▁sentence｜>### Instruction:
Given a small graph G with 4 nodes and 4 edges, where the edge set is [(0, 1), (1, 2), (2, 3), (3, 0)], and a feature matrix X represented as a sparse COO matrix with non-zero elements in the diagonal, how can you use the FSCNMF model to get the node embeddings with specified dimensions and parameters?
### Response:
import networkx as nx
from karateclub import FSCNMF
from scipy.sparse import coo_matrix

# Sample graph
G = nx.Graph()
G.add_edges_from([(0, 1), (1, 2), (2, 3), (3, 0)])

# Sample feature matrix
data = [1, 2, 3, 4]
row = [0, 1, 2, 3]
col = [0, 1, 2, 3]
X = coo_matrix((data, (row, col)), shape=(4, 4))

# Instantiate and fit the model
dimensions = 16
model = FSCNMF(dimensions=dimensions, lower_control=1e-15, iterations=500, alpha_1=1000.0, alpha_2=1.0, alpha_3=1.0, beta_1=1000.0, beta_2=1.0, beta_3=1.0, seed=42)

# Fit the model
model.fit(G, X)

# Get the embedding
embedding = model.get_embedding()
print('Embedding:\n', embedding)
<|EOT|>
