def NodeClassification(embedding_look_up, node_list, labels, testing_ratio, seed):
    (X_train, y_train, X_test, y_test) = split_train_test_classify(embedding_look_up, node_list, labels, testing_ratio=testing_ratio, seed=seed)
    binarizer = MultiLabelBinarizer(sparse_output=True)
    y_all = np.append(y_train, y_test)
    binarizer.fit(y_all)
    y_train = binarizer.transform(y_train).todense()
    y_test = binarizer.transform(y_test).todense()
    model = OneVsRestClassifier(LogisticRegression(random_state=seed, max_iter=1000, solver='lbfgs'))
    model.fit(X_train, y_train)
    y_pred_prob = model.predict_proba(X_test)
    y_pred = get_y_pred(y_test, y_pred_prob)
    accuracy = accuracy_score(y_test, y_pred)
    micro_f1 = f1_score(y_test, y_pred, average='micro')
    macro_f1 = f1_score(y_test, y_pred, average='macro')
    print(((('#' * 9) + ' Node Classification Performance ') + ('#' * 9)))
    print(f'Accuracy: {accuracy:.3f}, Micro-F1: {micro_f1:.3f}, Macro-F1: {macro_f1:.3f}')
    print(('#' * 50))
    return (accuracy, micro_f1, macro_f1)
def NodeClassification(embedding_look_up, node_list, labels, testing_ratio, seed):
    (X_train, y_train, X_test, y_test) = split_train_test_classify(embedding_look_up, node_list, labels, testing_ratio=testing_ratio, seed=seed)
    binarizer = MultiLabelBinarizer(sparse_output=True)
    y_all = np.append(y_train, y_test)
    binarizer.fit(y_all)
    y_train = binarizer.transform(y_train).todense()
    y_test = binarizer.transform(y_test).todense()
    model = OneVsRestClassifier(LogisticRegression(random_state=seed, max_iter=1000, solver='lbfgs'))
    model.fit(X_train, y_train)
    y_pred_prob = model.predict_proba(X_test)
    y_pred = get_y_pred(y_test, y_pred_prob)
    accuracy = accuracy_score(y_test, y_pred)
    micro_f1 = f1_score(y_test, y_pred, average='micro')
    macro_f1 = f1_score(y_test, y_pred, average='macro')
    print(((('#' * 9) + ' Node Classification Performance ') + ('#' * 9)))
    print(f'Accuracy: {accuracy:.3f}, Micro-F1: {micro_f1:.3f}, Macro-F1: {macro_f1:.3f}')
    print(('#' * 50))
    return (accuracy, micro_f1, macro_f1)