Upload 5 files
Browse files
Melspectrogram_v2.mlmodelc/analytics/coremldata.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b8a8227f0e06c52e639c4335a606c21f0b1a2fe4c1464fdc49dc8adc30abef86
|
3 |
+
size 243
|
Melspectrogram_v2.mlmodelc/coremldata.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:6e3b77fcd063d42c86b3d1fa633698de2fb56f2a9a82bd8affba183cba68ea11
|
3 |
+
size 610
|
Melspectrogram_v2.mlmodelc/metadata.json
ADDED
@@ -0,0 +1,110 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[
|
2 |
+
{
|
3 |
+
"shortDescription" : "Dynamic Mel-Spectrogram Preprocessor (0.1-10s)",
|
4 |
+
"metadataOutputVersion" : "3.0",
|
5 |
+
"outputSchema" : [
|
6 |
+
{
|
7 |
+
"hasShapeFlexibility" : "0",
|
8 |
+
"isOptional" : "0",
|
9 |
+
"dataType" : "Float32",
|
10 |
+
"formattedType" : "MultiArray (Float32)",
|
11 |
+
"shortDescription" : "128-bin mel-spectrogram features",
|
12 |
+
"shape" : "[]",
|
13 |
+
"name" : "melspectrogram",
|
14 |
+
"type" : "MultiArray"
|
15 |
+
},
|
16 |
+
{
|
17 |
+
"hasShapeFlexibility" : "0",
|
18 |
+
"isOptional" : "0",
|
19 |
+
"dataType" : "Int32",
|
20 |
+
"formattedType" : "MultiArray (Int32 1)",
|
21 |
+
"shortDescription" : "Number of valid mel-spectrogram frames",
|
22 |
+
"shape" : "[1]",
|
23 |
+
"name" : "melspectrogram_length",
|
24 |
+
"type" : "MultiArray"
|
25 |
+
}
|
26 |
+
],
|
27 |
+
"version" : "1.0",
|
28 |
+
"modelParameters" : [
|
29 |
+
|
30 |
+
],
|
31 |
+
"author" : "FluidAudio",
|
32 |
+
"specificationVersion" : 6,
|
33 |
+
"storagePrecision" : "Float16",
|
34 |
+
"mlProgramOperationTypeHistogram" : {
|
35 |
+
"Range1d" : 2,
|
36 |
+
"Gather" : 3,
|
37 |
+
"Sub" : 4,
|
38 |
+
"FloorDiv" : 1,
|
39 |
+
"Identity" : 1,
|
40 |
+
"Reshape" : 2,
|
41 |
+
"Matmul" : 1,
|
42 |
+
"Cast" : 5,
|
43 |
+
"Select" : 3,
|
44 |
+
"Concat" : 3,
|
45 |
+
"Add" : 4,
|
46 |
+
"Tile" : 2,
|
47 |
+
"Less" : 1,
|
48 |
+
"GreaterEqual" : 1,
|
49 |
+
"Sqrt" : 1,
|
50 |
+
"RealDiv" : 4,
|
51 |
+
"Pow" : 2,
|
52 |
+
"Shape" : 3,
|
53 |
+
"Pad" : 1,
|
54 |
+
"ExpandDims" : 10,
|
55 |
+
"Conv" : 2,
|
56 |
+
"Log" : 1,
|
57 |
+
"SliceByIndex" : 3,
|
58 |
+
"Stack" : 1,
|
59 |
+
"ReduceSum" : 4,
|
60 |
+
"Mul" : 1
|
61 |
+
},
|
62 |
+
"computePrecision" : "Mixed (Float16, Float32, Int32)",
|
63 |
+
"stateSchema" : [
|
64 |
+
|
65 |
+
],
|
66 |
+
"isUpdatable" : "0",
|
67 |
+
"availability" : {
|
68 |
+
"macOS" : "12.0",
|
69 |
+
"tvOS" : "15.0",
|
70 |
+
"visionOS" : "1.0",
|
71 |
+
"watchOS" : "8.0",
|
72 |
+
"iOS" : "15.0",
|
73 |
+
"macCatalyst" : "15.0"
|
74 |
+
},
|
75 |
+
"modelType" : {
|
76 |
+
"name" : "MLModelType_mlProgram"
|
77 |
+
},
|
78 |
+
"inputSchema" : [
|
79 |
+
{
|
80 |
+
"dataType" : "Float32",
|
81 |
+
"hasShapeFlexibility" : "1",
|
82 |
+
"isOptional" : "0",
|
83 |
+
"shapeFlexibility" : "1 × 1600...160000",
|
84 |
+
"shapeRange" : "[[1, 1], [1600, 160000]]",
|
85 |
+
"formattedType" : "MultiArray (Float32 1 × 1600)",
|
86 |
+
"type" : "MultiArray",
|
87 |
+
"shape" : "[1, 1600]",
|
88 |
+
"name" : "audio_signal",
|
89 |
+
"shortDescription" : "Raw audio waveform (16kHz, 0.1-10 seconds)"
|
90 |
+
},
|
91 |
+
{
|
92 |
+
"hasShapeFlexibility" : "0",
|
93 |
+
"isOptional" : "0",
|
94 |
+
"dataType" : "Int32",
|
95 |
+
"formattedType" : "MultiArray (Int32 1)",
|
96 |
+
"shortDescription" : "Number of audio samples",
|
97 |
+
"shape" : "[1]",
|
98 |
+
"name" : "audio_length",
|
99 |
+
"type" : "MultiArray"
|
100 |
+
}
|
101 |
+
],
|
102 |
+
"userDefinedMetadata" : {
|
103 |
+
"com.github.apple.coremltools.source_dialect" : "TorchScript",
|
104 |
+
"com.github.apple.coremltools.source" : "torch==2.5.0",
|
105 |
+
"com.github.apple.coremltools.version" : "8.3.0"
|
106 |
+
},
|
107 |
+
"generatedClassName" : "Melspectrogram_v2",
|
108 |
+
"method" : "predict"
|
109 |
+
}
|
110 |
+
]
|
Melspectrogram_v2.mlmodelc/model.mil
ADDED
@@ -0,0 +1,157 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
program(1.0)
|
2 |
+
[buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3405.2.1"}, {"coremlc-version", "3404.23.1"}, {"coremltools-component-torch", "2.5.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
|
3 |
+
{
|
4 |
+
func main<ios15>(tensor<int32, [1]> audio_length, tensor<fp32, [1, ?]> audio_signal) [FlexibleShapeInformation = tuple<tuple<tensor<string, []>, dict<tensor<string, []>, tensor<int32, [?]>>>, tuple<tensor<string, []>, dict<tensor<string, []>, list<tensor<int32, [2]>, ?>>>>((("DefaultShapes", {{"audio_signal", [1, 1600]}}), ("RangeDims", {{"audio_signal", [[1, 1], [1600, 160000]]}})))] {
|
5 |
+
tensor<int32, []> var_6 = const()[name = tensor<string, []>("op_6"), val = tensor<int32, []>(512)];
|
6 |
+
tensor<int32, [1]> var_7 = add(x = audio_length, y = var_6)[name = tensor<string, []>("op_7")];
|
7 |
+
tensor<int32, []> var_9 = const()[name = tensor<string, []>("op_9"), val = tensor<int32, []>(512)];
|
8 |
+
tensor<int32, [1]> var_10 = sub(x = var_7, y = var_9)[name = tensor<string, []>("op_10")];
|
9 |
+
tensor<int32, []> var_11 = const()[name = tensor<string, []>("op_11"), val = tensor<int32, []>(160)];
|
10 |
+
tensor<int32, [1]> floor_div_0 = floor_div(x = var_10, y = var_11)[name = tensor<string, []>("floor_div_0")];
|
11 |
+
tensor<string, []> var_12_to_fp16_dtype_0 = const()[name = tensor<string, []>("op_12_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
12 |
+
tensor<fp16, []> var_14_promoted_to_fp16 = const()[name = tensor<string, []>("op_14_promoted_to_fp16"), val = tensor<fp16, []>(0x1p+0)];
|
13 |
+
tensor<fp16, [1]> floor_div_0_to_fp16 = cast(dtype = var_12_to_fp16_dtype_0, x = floor_div_0)[name = tensor<string, []>("cast_18")];
|
14 |
+
tensor<fp16, [1]> seq_len_1_cast_fp16 = add(x = floor_div_0_to_fp16, y = var_14_promoted_to_fp16)[name = tensor<string, []>("seq_len_1_cast_fp16")];
|
15 |
+
tensor<string, []> cast_0_dtype_0 = const()[name = tensor<string, []>("cast_0_dtype_0"), val = tensor<string, []>("int32")];
|
16 |
+
tensor<int32, [2]> var_28_begin_0 = const()[name = tensor<string, []>("op_28_begin_0"), val = tensor<int32, [2]>([0, 0])];
|
17 |
+
tensor<int32, [2]> var_28_end_0 = const()[name = tensor<string, []>("op_28_end_0"), val = tensor<int32, [2]>([1, 1])];
|
18 |
+
tensor<bool, [2]> var_28_end_mask_0 = const()[name = tensor<string, []>("op_28_end_mask_0"), val = tensor<bool, [2]>([true, false])];
|
19 |
+
tensor<bool, [2]> var_28_squeeze_mask_0 = const()[name = tensor<string, []>("op_28_squeeze_mask_0"), val = tensor<bool, [2]>([false, true])];
|
20 |
+
tensor<string, []> audio_signal_to_fp16_dtype_0 = const()[name = tensor<string, []>("audio_signal_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
21 |
+
tensor<fp16, [1, ?]> audio_signal_to_fp16 = cast(dtype = audio_signal_to_fp16_dtype_0, x = audio_signal)[name = tensor<string, []>("cast_16")];
|
22 |
+
tensor<fp16, [1]> var_28_cast_fp16 = slice_by_index(begin = var_28_begin_0, end = var_28_end_0, end_mask = var_28_end_mask_0, squeeze_mask = var_28_squeeze_mask_0, x = audio_signal_to_fp16)[name = tensor<string, []>("op_28_cast_fp16")];
|
23 |
+
tensor<int32, [1]> var_30_axes_0 = const()[name = tensor<string, []>("op_30_axes_0"), val = tensor<int32, [1]>([1])];
|
24 |
+
tensor<fp16, [1, 1]> var_30_cast_fp16 = expand_dims(axes = var_30_axes_0, x = var_28_cast_fp16)[name = tensor<string, []>("op_30_cast_fp16")];
|
25 |
+
tensor<int32, [2]> var_40_begin_0 = const()[name = tensor<string, []>("op_40_begin_0"), val = tensor<int32, [2]>([0, 1])];
|
26 |
+
tensor<int32, [2]> var_40_end_0 = const()[name = tensor<string, []>("op_40_end_0"), val = tensor<int32, [2]>([1, 0])];
|
27 |
+
tensor<bool, [2]> var_40_end_mask_0 = const()[name = tensor<string, []>("op_40_end_mask_0"), val = tensor<bool, [2]>([true, true])];
|
28 |
+
tensor<fp16, [1, ?]> var_40_cast_fp16 = slice_by_index(begin = var_40_begin_0, end = var_40_end_0, end_mask = var_40_end_mask_0, x = audio_signal_to_fp16)[name = tensor<string, []>("op_40_cast_fp16")];
|
29 |
+
tensor<int32, [2]> var_50_begin_0 = const()[name = tensor<string, []>("op_50_begin_0"), val = tensor<int32, [2]>([0, 0])];
|
30 |
+
tensor<int32, [2]> var_50_end_0 = const()[name = tensor<string, []>("op_50_end_0"), val = tensor<int32, [2]>([1, -1])];
|
31 |
+
tensor<bool, [2]> var_50_end_mask_0 = const()[name = tensor<string, []>("op_50_end_mask_0"), val = tensor<bool, [2]>([true, false])];
|
32 |
+
tensor<fp16, [1, ?]> var_50_cast_fp16 = slice_by_index(begin = var_50_begin_0, end = var_50_end_0, end_mask = var_50_end_mask_0, x = audio_signal_to_fp16)[name = tensor<string, []>("op_50_cast_fp16")];
|
33 |
+
tensor<fp16, []> var_51_to_fp16 = const()[name = tensor<string, []>("op_51_to_fp16"), val = tensor<fp16, []>(0x1.f0cp-1)];
|
34 |
+
tensor<fp16, [1, ?]> var_52_cast_fp16 = mul(x = var_50_cast_fp16, y = var_51_to_fp16)[name = tensor<string, []>("op_52_cast_fp16")];
|
35 |
+
tensor<fp16, [1, ?]> var_54_cast_fp16 = sub(x = var_40_cast_fp16, y = var_52_cast_fp16)[name = tensor<string, []>("op_54_cast_fp16")];
|
36 |
+
tensor<int32, []> var_56 = const()[name = tensor<string, []>("op_56"), val = tensor<int32, []>(1)];
|
37 |
+
tensor<bool, []> input_1_interleave_0 = const()[name = tensor<string, []>("input_1_interleave_0"), val = tensor<bool, []>(false)];
|
38 |
+
tensor<fp16, [1, ?]> input_1_cast_fp16 = concat(axis = var_56, interleave = input_1_interleave_0, values = (var_30_cast_fp16, var_54_cast_fp16))[name = tensor<string, []>("input_1_cast_fp16")];
|
39 |
+
tensor<int32, [3]> concat_0x = const()[name = tensor<string, []>("concat_0x"), val = tensor<int32, [3]>([1, 1, -1])];
|
40 |
+
tensor<fp16, [1, 1, ?]> input_3_cast_fp16 = reshape(shape = concat_0x, x = input_1_cast_fp16)[name = tensor<string, []>("input_3_cast_fp16")];
|
41 |
+
tensor<int32, [6]> input_5_pad_0 = const()[name = tensor<string, []>("input_5_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 256, 256])];
|
42 |
+
tensor<string, []> input_5_mode_0 = const()[name = tensor<string, []>("input_5_mode_0"), val = tensor<string, []>("reflect")];
|
43 |
+
tensor<fp16, []> const_0_to_fp16 = const()[name = tensor<string, []>("const_0_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
|
44 |
+
tensor<fp16, [1, 1, ?]> input_5_cast_fp16 = pad(constant_val = const_0_to_fp16, mode = input_5_mode_0, pad = input_5_pad_0, x = input_3_cast_fp16)[name = tensor<string, []>("input_5_cast_fp16")];
|
45 |
+
tensor<int32, [2]> concat_1x = const()[name = tensor<string, []>("concat_1x"), val = tensor<int32, [2]>([1, -1])];
|
46 |
+
tensor<fp16, [1, ?]> input_cast_fp16 = reshape(shape = concat_1x, x = input_5_cast_fp16)[name = tensor<string, []>("input_cast_fp16")];
|
47 |
+
tensor<int32, [1]> expand_dims_3 = const()[name = tensor<string, []>("expand_dims_3"), val = tensor<int32, [1]>([160])];
|
48 |
+
tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = tensor<string, []>("expand_dims_4_axes_0"), val = tensor<int32, [1]>([1])];
|
49 |
+
tensor<fp16, [1, 1, ?]> expand_dims_4_cast_fp16 = expand_dims(axes = expand_dims_4_axes_0, x = input_cast_fp16)[name = tensor<string, []>("expand_dims_4_cast_fp16")];
|
50 |
+
tensor<string, []> conv_0_pad_type_0 = const()[name = tensor<string, []>("conv_0_pad_type_0"), val = tensor<string, []>("valid")];
|
51 |
+
tensor<int32, [2]> conv_0_pad_0 = const()[name = tensor<string, []>("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
|
52 |
+
tensor<int32, [1]> conv_0_dilations_0 = const()[name = tensor<string, []>("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
|
53 |
+
tensor<int32, []> conv_0_groups_0 = const()[name = tensor<string, []>("conv_0_groups_0"), val = tensor<int32, []>(1)];
|
54 |
+
tensor<fp16, [257, 1, 512]> expand_dims_1_to_fp16 = const()[name = tensor<string, []>("expand_dims_1_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
55 |
+
tensor<fp16, [1, 257, ?]> conv_0_cast_fp16 = conv(dilations = conv_0_dilations_0, groups = conv_0_groups_0, pad = conv_0_pad_0, pad_type = conv_0_pad_type_0, strides = expand_dims_3, weight = expand_dims_1_to_fp16, x = expand_dims_4_cast_fp16)[name = tensor<string, []>("conv_0_cast_fp16")];
|
56 |
+
tensor<string, []> conv_1_pad_type_0 = const()[name = tensor<string, []>("conv_1_pad_type_0"), val = tensor<string, []>("valid")];
|
57 |
+
tensor<int32, [2]> conv_1_pad_0 = const()[name = tensor<string, []>("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
|
58 |
+
tensor<int32, [1]> conv_1_dilations_0 = const()[name = tensor<string, []>("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
|
59 |
+
tensor<int32, []> conv_1_groups_0 = const()[name = tensor<string, []>("conv_1_groups_0"), val = tensor<int32, []>(1)];
|
60 |
+
tensor<fp16, [257, 1, 512]> expand_dims_2_to_fp16 = const()[name = tensor<string, []>("expand_dims_2_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(263296)))];
|
61 |
+
tensor<fp16, [1, 257, ?]> conv_1_cast_fp16 = conv(dilations = conv_1_dilations_0, groups = conv_1_groups_0, pad = conv_1_pad_0, pad_type = conv_1_pad_type_0, strides = expand_dims_3, weight = expand_dims_2_to_fp16, x = expand_dims_4_cast_fp16)[name = tensor<string, []>("conv_1_cast_fp16")];
|
62 |
+
tensor<int32, []> stack_0_axis_0 = const()[name = tensor<string, []>("stack_0_axis_0"), val = tensor<int32, []>(-1)];
|
63 |
+
tensor<fp16, [1, 257, ?, 2]> stack_0_cast_fp16 = stack(axis = stack_0_axis_0, values = (conv_0_cast_fp16, conv_1_cast_fp16))[name = tensor<string, []>("stack_0_cast_fp16")];
|
64 |
+
tensor<fp16, []> var_93_promoted_to_fp16 = const()[name = tensor<string, []>("op_93_promoted_to_fp16"), val = tensor<fp16, []>(0x1p+1)];
|
65 |
+
tensor<fp16, [1, 257, ?, 2]> var_94_cast_fp16 = pow(x = stack_0_cast_fp16, y = var_93_promoted_to_fp16)[name = tensor<string, []>("op_94_cast_fp16")];
|
66 |
+
tensor<int32, [1]> var_99_axes_0 = const()[name = tensor<string, []>("op_99_axes_0"), val = tensor<int32, [1]>([-1])];
|
67 |
+
tensor<bool, []> var_99_keep_dims_0 = const()[name = tensor<string, []>("op_99_keep_dims_0"), val = tensor<bool, []>(false)];
|
68 |
+
tensor<fp16, [1, 257, ?]> var_99_cast_fp16 = reduce_sum(axes = var_99_axes_0, keep_dims = var_99_keep_dims_0, x = var_94_cast_fp16)[name = tensor<string, []>("op_99_cast_fp16")];
|
69 |
+
tensor<fp16, [1, 257, ?]> x_7_cast_fp16 = identity(x = var_99_cast_fp16)[name = tensor<string, []>("x_7_cast_fp16")];
|
70 |
+
tensor<bool, []> x_9_transpose_x_0 = const()[name = tensor<string, []>("x_9_transpose_x_0"), val = tensor<bool, []>(false)];
|
71 |
+
tensor<bool, []> x_9_transpose_y_0 = const()[name = tensor<string, []>("x_9_transpose_y_0"), val = tensor<bool, []>(false)];
|
72 |
+
tensor<fp16, [1, 128, 257]> filterbanks_to_fp16 = const()[name = tensor<string, []>("filterbanks_to_fp16"), val = tensor<fp16, [1, 128, 257]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(526528)))];
|
73 |
+
tensor<fp16, [1, 128, ?]> x_9_cast_fp16 = matmul(transpose_x = x_9_transpose_x_0, transpose_y = x_9_transpose_y_0, x = filterbanks_to_fp16, y = x_7_cast_fp16)[name = tensor<string, []>("x_9_cast_fp16")];
|
74 |
+
tensor<fp16, []> var_108_to_fp16 = const()[name = tensor<string, []>("op_108_to_fp16"), val = tensor<fp16, []>(0x1p-24)];
|
75 |
+
tensor<fp16, [1, 128, ?]> var_109_cast_fp16 = add(x = x_9_cast_fp16, y = var_108_to_fp16)[name = tensor<string, []>("op_109_cast_fp16")];
|
76 |
+
tensor<fp16, []> x_11_epsilon_0_to_fp16 = const()[name = tensor<string, []>("x_11_epsilon_0_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
|
77 |
+
tensor<fp16, [1, 128, ?]> x_11_cast_fp16 = log(epsilon = x_11_epsilon_0_to_fp16, x = var_109_cast_fp16)[name = tensor<string, []>("x_11_cast_fp16")];
|
78 |
+
tensor<int32, []> var_114 = const()[name = tensor<string, []>("op_114"), val = tensor<int32, []>(1)];
|
79 |
+
tensor<int32, [3]> var_116_shape_cast_fp16 = shape(x = x_11_cast_fp16)[name = tensor<string, []>("op_116_shape_cast_fp16")];
|
80 |
+
tensor<int32, []> gather_5_indices_0 = const()[name = tensor<string, []>("gather_5_indices_0"), val = tensor<int32, []>(2)];
|
81 |
+
tensor<int32, []> gather_5_axis_0 = const()[name = tensor<string, []>("gather_5_axis_0"), val = tensor<int32, []>(0)];
|
82 |
+
tensor<int32, []> gather_5 = gather(axis = gather_5_axis_0, indices = gather_5_indices_0, x = var_116_shape_cast_fp16)[name = tensor<string, []>("gather_5")];
|
83 |
+
tensor<int32, []> const_1 = const()[name = tensor<string, []>("const_1"), val = tensor<int32, []>(0)];
|
84 |
+
tensor<int32, []> const_2 = const()[name = tensor<string, []>("const_2"), val = tensor<int32, []>(1)];
|
85 |
+
tensor<int32, [?]> var_124 = range_1d(end = gather_5, start = const_1, step = const_2)[name = tensor<string, []>("op_124")];
|
86 |
+
tensor<int32, [1]> var_126_axes_0 = const()[name = tensor<string, []>("op_126_axes_0"), val = tensor<int32, [1]>([0])];
|
87 |
+
tensor<int32, [1, ?]> var_126 = expand_dims(axes = var_126_axes_0, x = var_124)[name = tensor<string, []>("op_126")];
|
88 |
+
tensor<int32, []> concat_2_axis_0 = const()[name = tensor<string, []>("concat_2_axis_0"), val = tensor<int32, []>(0)];
|
89 |
+
tensor<bool, []> concat_2_interleave_0 = const()[name = tensor<string, []>("concat_2_interleave_0"), val = tensor<bool, []>(false)];
|
90 |
+
tensor<int32, [2]> concat_2 = concat(axis = concat_2_axis_0, interleave = concat_2_interleave_0, values = (var_114, gather_5))[name = tensor<string, []>("concat_2")];
|
91 |
+
tensor<int32, [2]> shape_0 = shape(x = var_126)[name = tensor<string, []>("shape_0")];
|
92 |
+
tensor<int32, [2]> real_div_0 = real_div(x = concat_2, y = shape_0)[name = tensor<string, []>("real_div_0")];
|
93 |
+
tensor<int32, [?, ?]> time_steps = tile(reps = real_div_0, x = var_126)[name = tensor<string, []>("time_steps")];
|
94 |
+
tensor<int32, [1]> var_131_axes_0 = const()[name = tensor<string, []>("op_131_axes_0"), val = tensor<int32, [1]>([1])];
|
95 |
+
tensor<int32, [1]> melspectrogram_length = cast(dtype = cast_0_dtype_0, x = seq_len_1_cast_fp16)[name = tensor<string, []>("cast_17")];
|
96 |
+
tensor<int32, [1, 1]> var_131 = expand_dims(axes = var_131_axes_0, x = melspectrogram_length)[name = tensor<string, []>("op_131")];
|
97 |
+
tensor<bool, [?, ?]> valid_mask = less(x = time_steps, y = var_131)[name = tensor<string, []>("valid_mask")];
|
98 |
+
tensor<int32, [1]> var_134_axes_0 = const()[name = tensor<string, []>("op_134_axes_0"), val = tensor<int32, [1]>([1])];
|
99 |
+
tensor<bool, [?, 1, ?]> var_134 = expand_dims(axes = var_134_axes_0, x = valid_mask)[name = tensor<string, []>("op_134")];
|
100 |
+
tensor<fp16, []> var_135_to_fp16 = const()[name = tensor<string, []>("op_135_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
|
101 |
+
tensor<fp16, [1, 128, ?]> var_136_cast_fp16 = select(a = x_11_cast_fp16, b = var_135_to_fp16, cond = var_134)[name = tensor<string, []>("op_136_cast_fp16")];
|
102 |
+
tensor<int32, [1]> x_mean_numerator_axes_0 = const()[name = tensor<string, []>("x_mean_numerator_axes_0"), val = tensor<int32, [1]>([2])];
|
103 |
+
tensor<bool, []> x_mean_numerator_keep_dims_0 = const()[name = tensor<string, []>("x_mean_numerator_keep_dims_0"), val = tensor<bool, []>(false)];
|
104 |
+
tensor<fp16, [1, 128]> x_mean_numerator_cast_fp16 = reduce_sum(axes = x_mean_numerator_axes_0, keep_dims = x_mean_numerator_keep_dims_0, x = var_136_cast_fp16)[name = tensor<string, []>("x_mean_numerator_cast_fp16")];
|
105 |
+
tensor<int32, [1]> x_mean_denominator_axes_0 = const()[name = tensor<string, []>("x_mean_denominator_axes_0"), val = tensor<int32, [1]>([1])];
|
106 |
+
tensor<bool, []> x_mean_denominator_keep_dims_0 = const()[name = tensor<string, []>("x_mean_denominator_keep_dims_0"), val = tensor<bool, []>(false)];
|
107 |
+
tensor<string, []> cast_4_to_fp16_dtype_0 = const()[name = tensor<string, []>("cast_4_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
108 |
+
tensor<fp16, [?, ?]> valid_mask_to_fp16 = cast(dtype = cast_4_to_fp16_dtype_0, x = valid_mask)[name = tensor<string, []>("cast_15")];
|
109 |
+
tensor<fp16, [?]> x_mean_denominator_cast_fp16 = reduce_sum(axes = x_mean_denominator_axes_0, keep_dims = x_mean_denominator_keep_dims_0, x = valid_mask_to_fp16)[name = tensor<string, []>("x_mean_denominator_cast_fp16")];
|
110 |
+
tensor<int32, [1]> var_148_axes_0 = const()[name = tensor<string, []>("op_148_axes_0"), val = tensor<int32, [1]>([1])];
|
111 |
+
tensor<fp16, [?, 1]> var_148_cast_fp16 = expand_dims(axes = var_148_axes_0, x = x_mean_denominator_cast_fp16)[name = tensor<string, []>("op_148_cast_fp16")];
|
112 |
+
tensor<fp16, [?, 128]> x_mean_cast_fp16 = real_div(x = x_mean_numerator_cast_fp16, y = var_148_cast_fp16)[name = tensor<string, []>("x_mean_cast_fp16")];
|
113 |
+
tensor<int32, [1]> var_153_axes_0 = const()[name = tensor<string, []>("op_153_axes_0"), val = tensor<int32, [1]>([2])];
|
114 |
+
tensor<fp16, [?, 128, 1]> var_153_cast_fp16 = expand_dims(axes = var_153_axes_0, x = x_mean_cast_fp16)[name = tensor<string, []>("op_153_cast_fp16")];
|
115 |
+
tensor<fp16, [?, 128, ?]> var_155_cast_fp16 = sub(x = x_11_cast_fp16, y = var_153_cast_fp16)[name = tensor<string, []>("op_155_cast_fp16")];
|
116 |
+
tensor<fp16, []> var_156_to_fp16 = const()[name = tensor<string, []>("op_156_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
|
117 |
+
tensor<fp16, [?, 128, ?]> var_157_cast_fp16 = select(a = var_155_cast_fp16, b = var_156_to_fp16, cond = var_134)[name = tensor<string, []>("op_157_cast_fp16")];
|
118 |
+
tensor<fp16, []> var_158_promoted_to_fp16 = const()[name = tensor<string, []>("op_158_promoted_to_fp16"), val = tensor<fp16, []>(0x1p+1)];
|
119 |
+
tensor<fp16, [?, 128, ?]> var_159_cast_fp16 = pow(x = var_157_cast_fp16, y = var_158_promoted_to_fp16)[name = tensor<string, []>("op_159_cast_fp16")];
|
120 |
+
tensor<int32, [1]> var_164_axes_0 = const()[name = tensor<string, []>("op_164_axes_0"), val = tensor<int32, [1]>([2])];
|
121 |
+
tensor<bool, []> var_164_keep_dims_0 = const()[name = tensor<string, []>("op_164_keep_dims_0"), val = tensor<bool, []>(false)];
|
122 |
+
tensor<fp16, [?, 128]> var_164_cast_fp16 = reduce_sum(axes = var_164_axes_0, keep_dims = var_164_keep_dims_0, x = var_159_cast_fp16)[name = tensor<string, []>("op_164_cast_fp16")];
|
123 |
+
tensor<fp16, []> var_168_to_fp16 = const()[name = tensor<string, []>("op_168_to_fp16"), val = tensor<fp16, []>(0x1p+0)];
|
124 |
+
tensor<fp16, [?, 1]> var_169_cast_fp16 = sub(x = var_148_cast_fp16, y = var_168_to_fp16)[name = tensor<string, []>("op_169_cast_fp16")];
|
125 |
+
tensor<fp16, [?, 128]> var_170_cast_fp16 = real_div(x = var_164_cast_fp16, y = var_169_cast_fp16)[name = tensor<string, []>("op_170_cast_fp16")];
|
126 |
+
tensor<fp16, [?, 128]> x_std_1_cast_fp16 = sqrt(x = var_170_cast_fp16)[name = tensor<string, []>("x_std_1_cast_fp16")];
|
127 |
+
tensor<fp16, []> var_172_to_fp16 = const()[name = tensor<string, []>("op_172_to_fp16"), val = tensor<fp16, []>(0x1.5p-17)];
|
128 |
+
tensor<fp16, [?, 128]> x_std_cast_fp16 = add(x = x_std_1_cast_fp16, y = var_172_to_fp16)[name = tensor<string, []>("x_std_cast_fp16")];
|
129 |
+
tensor<int32, [1]> var_180_axes_0 = const()[name = tensor<string, []>("op_180_axes_0"), val = tensor<int32, [1]>([2])];
|
130 |
+
tensor<fp16, [?, 128, 1]> var_180_cast_fp16 = expand_dims(axes = var_180_axes_0, x = x_std_cast_fp16)[name = tensor<string, []>("op_180_cast_fp16")];
|
131 |
+
tensor<fp16, [?, 128, ?]> x_cast_fp16 = real_div(x = var_155_cast_fp16, y = var_180_cast_fp16)[name = tensor<string, []>("x_cast_fp16")];
|
132 |
+
tensor<int32, [3]> var_183_shape_cast_fp16 = shape(x = x_cast_fp16)[name = tensor<string, []>("op_183_shape_cast_fp16")];
|
133 |
+
tensor<int32, []> gather_6_indices_0 = const()[name = tensor<string, []>("gather_6_indices_0"), val = tensor<int32, []>(-1)];
|
134 |
+
tensor<int32, []> gather_6_axis_0 = const()[name = tensor<string, []>("gather_6_axis_0"), val = tensor<int32, []>(0)];
|
135 |
+
tensor<int32, []> gather_6 = gather(axis = gather_6_axis_0, indices = gather_6_indices_0, x = var_183_shape_cast_fp16)[name = tensor<string, []>("gather_6")];
|
136 |
+
tensor<int32, []> const_3 = const()[name = tensor<string, []>("const_3"), val = tensor<int32, []>(0)];
|
137 |
+
tensor<int32, []> const_4 = const()[name = tensor<string, []>("const_4"), val = tensor<int32, []>(1)];
|
138 |
+
tensor<int32, [?]> mask_1 = range_1d(end = gather_6, start = const_3, step = const_4)[name = tensor<string, []>("mask_1")];
|
139 |
+
tensor<int32, []> gather_7_indices_0 = const()[name = tensor<string, []>("gather_7_indices_0"), val = tensor<int32, []>(0)];
|
140 |
+
tensor<int32, []> gather_7_axis_0 = const()[name = tensor<string, []>("gather_7_axis_0"), val = tensor<int32, []>(0)];
|
141 |
+
tensor<int32, []> gather_7 = gather(axis = gather_7_axis_0, indices = gather_7_indices_0, x = var_183_shape_cast_fp16)[name = tensor<string, []>("gather_7")];
|
142 |
+
tensor<int32, []> var_195 = const()[name = tensor<string, []>("op_195"), val = tensor<int32, []>(1)];
|
143 |
+
tensor<int32, []> concat_3_axis_0 = const()[name = tensor<string, []>("concat_3_axis_0"), val = tensor<int32, []>(0)];
|
144 |
+
tensor<bool, []> concat_3_interleave_0 = const()[name = tensor<string, []>("concat_3_interleave_0"), val = tensor<bool, []>(false)];
|
145 |
+
tensor<int32, [2]> concat_3 = concat(axis = concat_3_axis_0, interleave = concat_3_interleave_0, values = (gather_7, var_195))[name = tensor<string, []>("concat_3")];
|
146 |
+
tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = tensor<string, []>("expand_dims_0_axes_0"), val = tensor<int32, [1]>([0])];
|
147 |
+
tensor<int32, [1, ?]> expand_dims_0 = expand_dims(axes = expand_dims_0_axes_0, x = mask_1)[name = tensor<string, []>("expand_dims_0")];
|
148 |
+
tensor<int32, [?, ?]> var_197 = tile(reps = concat_3, x = expand_dims_0)[name = tensor<string, []>("op_197")];
|
149 |
+
tensor<bool, [?, ?]> mask = greater_equal(x = var_197, y = var_131)[name = tensor<string, []>("mask")];
|
150 |
+
tensor<int32, [1]> var_202_axes_0 = const()[name = tensor<string, []>("op_202_axes_0"), val = tensor<int32, [1]>([1])];
|
151 |
+
tensor<bool, [?, 1, ?]> var_202 = expand_dims(axes = var_202_axes_0, x = mask)[name = tensor<string, []>("op_202")];
|
152 |
+
tensor<fp16, []> var_216_to_fp16 = const()[name = tensor<string, []>("op_216_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
|
153 |
+
tensor<fp16, [?, 128, ?]> var_217_cast_fp16 = select(a = var_216_to_fp16, b = x_cast_fp16, cond = var_202)[name = tensor<string, []>("op_217_cast_fp16")];
|
154 |
+
tensor<string, []> var_217_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("op_217_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
155 |
+
tensor<fp32, [?, 128, ?]> melspectrogram = cast(dtype = var_217_cast_fp16_to_fp32_dtype_0, x = var_217_cast_fp16)[name = tensor<string, []>("cast_14")];
|
156 |
+
} -> (melspectrogram, melspectrogram_length);
|
157 |
+
}
|
Melspectrogram_v2.mlmodelc/weights/weight.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:023c2303b7c3a1fafed92fc6ec46c1d43a48c0bbcdf33d6441d383a61747734c
|
3 |
+
size 592384
|