@@ -289,7 +289,7 @@ final class BasicOperatorTests: XCTestCase {
289
289
XCTAssertEqual ( array3D. scalars, Array ( stride ( from: 40.0 , to: 60 , by: 1 ) ) )
290
290
XCTAssertEqual (
291
291
array2D. scalars,
292
- Array ( stride ( from: 20.0 , to: 25 , by: 1 ) ) +
292
+ Array ( stride ( from: 20.0 , to: 25 , by: 1 ) ) +
293
293
Array( stride ( from: 30.0 , to: 35 , by: 1 ) ) )
294
294
XCTAssertEqual ( array1D. scalars, Array ( stride ( from: 1.0 , to: 5 , by: 2 ) ) )
295
295
}
@@ -310,7 +310,7 @@ final class BasicOperatorTests: XCTestCase {
310
310
let array3D = slice3D. array
311
311
let array2D = slice2D. array
312
312
let array1D = slice1D. array
313
-
313
+
314
314
/// Test shapes
315
315
XCTAssertEqual ( array3D. shape, [ 1 , 4 , 5 ] )
316
316
XCTAssertEqual ( array2D. shape, [ 2 , 5 ] )
@@ -362,7 +362,7 @@ final class BasicOperatorTests: XCTestCase {
362
362
XCTAssertEqual ( concatenated. array, ShapedArray ( shape: [ 4 , 3 ] , scalars: Array ( 0 ..< 12 ) ) )
363
363
XCTAssertEqual ( concatenated0. array, ShapedArray ( shape: [ 4 , 3 ] , scalars: Array ( 0 ..< 12 ) ) )
364
364
XCTAssertEqual (
365
- concatenated1. array,
365
+ concatenated1. array,
366
366
ShapedArray ( shape: [ 2 , 6 ] , scalars: [ 0 , 1 , 2 , 6 , 7 , 8 , 3 , 4 , 5 , 9 , 10 , 11 ] ) )
367
367
}
368
368
@@ -457,12 +457,12 @@ final class BasicOperatorTests: XCTestCase {
457
457
let z = x. unbroadcasted ( like: y)
458
458
XCTAssertEqual ( z. array, ShapedArray < Float > ( repeating: 8 , shape: [ 3 , 1 , 5 ] ) )
459
459
}
460
-
460
+
461
461
func testUnbroadcast3x3To1x3( ) {
462
462
func foo( tensor: Tensor < Float > , shape: Tensor < Int32 > ) -> Tensor < Float > {
463
463
tensor. unbroadcasted ( toShape: shape)
464
464
}
465
-
465
+
466
466
// [3,3] -> [1,3]
467
467
let atTensor : Tensor < Float > = [
468
468
[ 1 , 2 , 3 ] ,
@@ -471,26 +471,26 @@ final class BasicOperatorTests: XCTestCase {
471
471
let pb : ( Tensor < Float > ) -> Tensor < Float > = pullback ( at: atTensor) { x in
472
472
foo ( tensor: x, shape: [ 1 , 3 ] )
473
473
}
474
-
474
+
475
475
// Same shape as parameter of pullback
476
476
var inputTensor : Tensor < Float > = [ [ 1 , 2 , 3 ] ]
477
477
var expected : Tensor < Float > = atTensor
478
- XCTAssertEqual ( expected , pb ( inputTensor) )
478
+ XCTAssertEqual ( pb ( inputTensor) , expected )
479
479
// Different shape than parameter of pullback
480
480
inputTensor = [ 2 ]
481
481
expected = [
482
482
[ 2 , 2 , 2 ] ,
483
483
[ 2 , 2 , 2 ] ,
484
484
[ 2 , 2 , 2 ] ]
485
- XCTAssertEqual ( expected , pb ( inputTensor) )
486
-
485
+ XCTAssertEqual ( pb ( inputTensor) , expected )
486
+
487
487
// Same shape as tensor we are differentiating at
488
488
inputTensor = [
489
489
[ 8 , 1 , 3 ] ,
490
490
[ 8 , 1 , 3 ] ,
491
491
[ 8 , 1 , 3 ] ]
492
492
expected = inputTensor
493
- XCTAssertEqual ( expected , pb ( inputTensor) )
493
+ XCTAssertEqual ( pb ( inputTensor) , expected )
494
494
}
495
495
496
496
func testSliceUpdate( ) {
@@ -518,81 +518,81 @@ final class BasicOperatorTests: XCTestCase {
518
518
target .= Tensor ( repeating: 1 , shape: [ 1 , 3 , 1 ] )
519
519
XCTAssertEqual ( target, Tensor ( repeating: 1 , shape: [ 2 , 3 , 4 ] ) )
520
520
}
521
-
521
+
522
522
func testBroadcast3x0To3x3( ) {
523
523
func foo( tensor: Tensor < Float > , shape: Tensor < Int32 > ) -> Tensor < Float > {
524
524
tensor. broadcasted ( toShape: shape)
525
525
}
526
-
526
+
527
527
// [3,] -> [3,3]
528
528
let pb : ( Tensor < Float > ) -> Tensor < Float > = pullback ( at: [ 99 , 33 , 55 ] ) { x in
529
529
foo ( tensor: x, shape: [ 3 , 3 ] )
530
530
}
531
-
531
+
532
532
// Same shape as parameter of pullback
533
533
var inputTensor : Tensor < Float > = [
534
534
[ 1 , 2 , 3 ] ,
535
535
[ 1 , 2 , 3 ] ,
536
536
[ 1 , 2 , 3 ] ]
537
537
var expected : Tensor < Float > = [ 3 , 6 , 9 ]
538
- XCTAssertEqual ( expected , pb ( inputTensor) )
539
-
538
+ XCTAssertEqual ( pb ( inputTensor) , expected )
539
+
540
540
// Different shape than parameter of pullback
541
541
inputTensor = [
542
542
[ 1 , 2 , 3 ] ,
543
543
[ 1 , 2 , 3 ] ,
544
544
[ 1 , 2 , 3 ] ,
545
545
[ 1 , 2 , 3 ] ]
546
546
expected = [ 4 , 8 , 12 ]
547
- XCTAssertEqual ( expected , pb ( inputTensor) )
548
-
547
+ XCTAssertEqual ( pb ( inputTensor) , expected )
548
+
549
549
// Same shape as tensor we are differentiating at
550
550
inputTensor = [ 1 , 2 , 3 ]
551
551
expected = [ 1 , 2 , 3 ]
552
- XCTAssertEqual ( expected , pb ( inputTensor) )
553
-
552
+ XCTAssertEqual ( pb ( inputTensor) , expected )
553
+
554
554
// Extremely padded shape as tensor we are differentiating at
555
555
inputTensor = [ [ [ [ [ [ 1 , 2 , 3 ] ] ] ] ] ]
556
556
expected = [ 1 , 2 , 3 ]
557
- XCTAssertEqual ( expected , pb ( inputTensor) )
557
+ XCTAssertEqual ( pb ( inputTensor) , expected )
558
558
}
559
-
559
+
560
560
func testBroadcast3x1To3x3( ) {
561
561
func foo( tensor: Tensor < Float > , shape: Tensor < Int32 > ) -> Tensor < Float > {
562
562
tensor. broadcasted ( toShape: shape)
563
563
}
564
-
564
+
565
565
// [3,1] -> [3x3]
566
566
let pb : ( Tensor < Float > ) -> Tensor < Float > = pullback ( at: [ [ 99 , 33 , 55 ] ] ) { x in
567
567
foo ( tensor: x, shape: [ 3 , 3 ] )
568
568
}
569
-
569
+
570
570
// Same shape as parameter of pullback
571
571
var inputTensor : Tensor < Float > = [
572
572
[ 1 , 2 , 3 ] ,
573
573
[ 1 , 2 , 3 ] ,
574
574
[ 1 , 2 , 3 ] ]
575
575
var expected : Tensor < Float > = [ [ 3 , 6 , 9 ] ]
576
- XCTAssertEqual ( expected , pb ( inputTensor) )
577
-
576
+ XCTAssertEqual ( pb ( inputTensor) , expected )
577
+
578
578
// Different shape than parameter of pullback
579
579
inputTensor = [
580
580
[ 1 , 2 , 3 ] ,
581
581
[ 1 , 2 , 3 ] ,
582
582
[ 1 , 2 , 3 ] ,
583
583
[ 1 , 2 , 3 ] ]
584
584
expected = [ [ 4 , 8 , 12 ] ]
585
- XCTAssertEqual ( expected , pb ( inputTensor) )
586
-
585
+ XCTAssertEqual ( pb ( inputTensor) , expected )
586
+
587
587
// Same shape as tensor we are differentiating at
588
588
inputTensor = [ [ 1 , 2 , 3 ] ]
589
589
expected = [ [ 1 , 2 , 3 ] ]
590
- XCTAssertEqual ( expected , pb ( inputTensor) )
591
-
590
+ XCTAssertEqual ( pb ( inputTensor) , expected )
591
+
592
592
// Extremely padded shape of tensor we are differentiating at
593
593
inputTensor = [ [ [ [ [ [ 1 , 2 , 3 ] ] ] ] ] ]
594
594
expected = [ [ 1 , 2 , 3 ] ]
595
- XCTAssertEqual ( expected , pb ( inputTensor) )
595
+ XCTAssertEqual ( pb ( inputTensor) , expected )
596
596
}
597
597
598
598
static var allTests = [
0 commit comments