UNPKG

10.9 kBSource Map (JSON)View Raw
1{"version":3,"file":"truncated_normal_test.js","sourceRoot":"","sources":["../../src/ops/truncated_normal_test.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2020 Google LLC. All Rights Reserved.\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * =============================================================================\n */\n\nimport * as tf from '../index';\nimport {ALL_ENVS, describeWithFlags} from '../jasmine_util';\nimport {TypedArray} from '../types';\nimport {expectArrayInMeanStdRange} from './rand_util';\n\ndescribeWithFlags('truncatedNormal', ALL_ENVS, () => {\n // Expect slightly higher variances for truncated values.\n const EPSILON = 0.60;\n const SEED = 2002;\n\n function assertTruncatedValues(\n values: TypedArray, mean: number, stdv: number) {\n const bounds = mean + stdv * 2;\n for (let i = 0; i < values.length; i++) {\n expect(Math.abs(values[i])).toBeLessThanOrEqual(bounds);\n }\n }\n\n it('should return a random 1D float32 array', async () => {\n const shape: [number] = [1000];\n\n // Ensure defaults to float32 w/o type:\n let result = tf.truncatedNormal(shape, 0, 3.5, null, SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 3.5);\n expectArrayInMeanStdRange(await result.data(), 0, 3.5, EPSILON);\n\n result = tf.truncatedNormal(shape, 0, 4.5, 'float32', SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 4.5);\n expectArrayInMeanStdRange(await result.data(), 0, 4.5, EPSILON);\n });\n\n it('should return a randon 1D int32 array', async () => {\n const shape: [number] = [1000];\n const result = tf.truncatedNormal(shape, 0, 5, 'int32', SEED);\n expect(result.dtype).toBe('int32');\n assertTruncatedValues(await result.data(), 0, 5);\n expectArrayInMeanStdRange(await result.data(), 0, 5, EPSILON);\n });\n\n it('should return a 2D float32 array', async () => {\n const shape: [number, number] = [50, 50];\n\n // Ensure defaults to float32 w/o type:\n let result = tf.truncatedNormal(shape, 0, 3.5, null, SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 3.5);\n expectArrayInMeanStdRange(await result.data(), 0, 3.5, EPSILON);\n\n result = tf.truncatedNormal(shape, 0, 4.5, 'float32', SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 4.5);\n expectArrayInMeanStdRange(await result.data(), 0, 4.5, EPSILON);\n });\n\n it('should return a 2D int32 array', async () => {\n const shape: [number, number] = [50, 50];\n const result = tf.truncatedNormal(shape, 0, 5, 'int32', SEED);\n expect(result.dtype).toBe('int32');\n assertTruncatedValues(await result.data(), 0, 5);\n expectArrayInMeanStdRange(await result.data(), 0, 5, EPSILON);\n });\n\n it('should return a 3D float32 array', async () => {\n const shape: [number, number, number] = [10, 10, 10];\n\n // Ensure defaults to float32 w/o type:\n let result = tf.truncatedNormal(shape, 0, 3.5, null, SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 3.5);\n expectArrayInMeanStdRange(await result.data(), 0, 3.5, EPSILON);\n\n result = tf.truncatedNormal(shape, 0, 4.5, 'float32', SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 4.5);\n expectArrayInMeanStdRange(await result.data(), 0, 4.5, EPSILON);\n });\n\n it('should return a 3D int32 array', async () => {\n const shape: [number, number, number] = [10, 10, 10];\n const result = tf.truncatedNormal(shape, 0, 5, 'int32', SEED);\n expect(result.dtype).toBe('int32');\n assertTruncatedValues(await result.data(), 0, 5);\n expectArrayInMeanStdRange(await result.data(), 0, 5, EPSILON);\n });\n\n it('should return a 4D float32 array', async () => {\n const shape: [number, number, number, number] = [5, 5, 5, 5];\n\n // Ensure defaults to float32 w/o type:\n let result = tf.truncatedNormal(shape, 0, 3.5, null, SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 3.5);\n expectArrayInMeanStdRange(await result.data(), 0, 3.5, EPSILON);\n\n result = tf.truncatedNormal(shape, 0, 4.5, 'float32', SEED);\n expect(result.dtype).toBe('float32');\n assertTruncatedValues(await result.data(), 0, 4.5);\n expectArrayInMeanStdRange(await result.data(), 0, 4.5, EPSILON);\n });\n\n it('should return a 4D int32 array', async () => {\n const shape: [number, number, number, number] = [5, 5, 5, 5];\n const result = tf.truncatedNormal(shape, 0, 5, 'int32', SEED);\n expect(result.dtype).toBe('int32');\n assertTruncatedValues(await result.data(), 0, 5);\n expectArrayInMeanStdRange(await result.data(), 0, 5, EPSILON);\n });\n});\n"]}
\No newline at end of file