code: def test_movielens_both_accuracy():
      """
      Accuracy with both genre metadata and item-specific
      features should be no worse than with just item-specific
      features (though more training may be necessary).
      """
  
      item_features = fetch_movielens(
          indicator_features=True, genre_features=True
      )["item_features"]
  
      model = LightFM(random_state=SEED)
      model.fit_partial(train, item_features=item_features, epochs=15)
  
      train_predictions = model.predict(
          train.row, train.col, item_features=item_features
      )
      test_predictions = model.predict(
          test.row, test.col, item_features=item_features
      )
  
      assert roc_auc_score(train.data, train_predictions) > 0.84
      assert roc_auc_score(test.data, test_predictions) > 0.75
  
imports: import pickle
  import numpy
  import scipy.sparse
  from scipy import stats
  from sklearn.metrics import roc_auc_score
  from sklearn.model_selection import KFold, RandomizedSearchCV
  from lightfm.lightfm import LightFM
  from lightfm.datasets import fetch_movielens
  from lightfm.evaluation import auc_score, precision_at_k
label_desc: Use image node_id 19 for calling a global function with example usage: test_movielens_both_accuracy() without return types