classify_neural_operator_onnx_expanded_nop Function

public function classify_neural_operator_onnx_expanded_nop(prefix, nodes, num_nodes) result(is_neural_operator)

Return true when the expanded-ONNX node cluster for prefix is a neural operator.

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: prefix

Expanded-ONNX layer prefix (e.g. "layer3")

type(onnx_node_type), intent(in) :: nodes(:)

Parsed ONNX nodes

integer, intent(in) :: num_nodes

Number of valid node entries

Return Value logical

Return value

Neural operator has ReduceMean but not Exp/Exp_1 or MatMul_3


Source Code

  function classify_neural_operator_onnx_expanded_nop(prefix, nodes, &
       num_nodes) result(is_neural_operator)
    !! Return true when the expanded-ONNX node cluster
    !! for prefix is a neural operator.
    implicit none

    ! Arguments
    character(*), intent(in) :: prefix
    !! Expanded-ONNX layer prefix (e.g. "layer3")
    type(onnx_node_type), intent(in) :: nodes(:)
    !! Parsed ONNX nodes
    integer, intent(in) :: num_nodes
    !! Number of valid node entries

    logical :: is_neural_operator
    !! Return value

    !! Neural operator has ReduceMean but not Exp/Exp_1 or MatMul_3
    is_neural_operator = &
         find_onnx_expanded_node_by_suffix( &
              nodes, num_nodes, prefix, 'ReduceMean') .gt. 0

  end function classify_neural_operator_onnx_expanded_nop