google-research
45 строк · 1.3 Кб
1# coding=utf-8
2# Copyright 2024 The Google Research Authors.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16"""Tests for pairs."""
17import tensorflow as tf18
19from dedal import pairs as pairs_lib20
21
22class PairsTest(tf.test.TestCase):23
24def setUp(self):25super().setUp()26tf.random.set_seed(0)27
28def test_build(self):29batch_size = 3230dim = 531inputs = tf.random.uniform((batch_size * 2, dim))32indices = tf.reshape(tf.range(batch_size *2), (-1, 2))33
34result, = pairs_lib.build(indices, inputs)35self.assertAllEqual(result[4], tf.stack([inputs[8], inputs[9]]))36
37# Shift by one the second column.38indices = tf.stack(39[indices[:, 0], tf.roll(indices[:, 1], shift=1, axis=0)], axis=1)40result, = pairs_lib.build(indices, inputs)41self.assertAllEqual(result[4], tf.stack([inputs[8], inputs[7]]))42
43
44if __name__ == '__main__':45tf.test.main()46