@@ -84,23 +84,18 @@ public static void load_weights_from_hdf5_group(long f, List<ILayer> layers)
8484 {
8585 string original_keras_version = "2.5.0" ;
8686 string original_backend = null ;
87- if ( Hdf5 . AttributeExists ( f , "keras_version" ) )
88- {
89- var ( success , attr ) = Hdf5 . ReadStringAttributes ( f , "keras_version" , "" ) ;
90- if ( success )
91- original_keras_version = attr . First ( ) ;
92- // keras version should be 2.5.0+
93- var ver_major = int . Parse ( original_keras_version . Split ( '.' ) [ 0 ] ) ;
94- var ver_minor = int . Parse ( original_keras_version . Split ( '.' ) [ 1 ] ) ;
95- if ( ver_major < 2 || ( ver_major == 2 && ver_minor < 5 ) )
96- throw new ValueError ( "keras version should be 2.5.0 or later." ) ;
97- }
98- if ( Hdf5 . AttributeExists ( f , "backend" ) )
99- {
100- var ( success , attr ) = Hdf5 . ReadStringAttributes ( f , "backend" , "" ) ;
101- if ( success )
102- original_backend = attr . First ( ) ;
103- }
87+ var ( success , attr ) = Hdf5 . ReadStringAttributes ( f , "keras_version" , "" , true ) ;
88+ if ( success )
89+ original_keras_version = attr . First ( ) ;
90+ // keras version should be 2.5.0+
91+ var ver_major = int . Parse ( original_keras_version . Split ( '.' ) [ 0 ] ) ;
92+ var ver_minor = int . Parse ( original_keras_version . Split ( '.' ) [ 1 ] ) ;
93+ if ( ver_major < 2 || ( ver_major == 2 && ver_minor < 5 ) )
94+ throw new ValueError ( "keras version should be 2.5.0 or later." ) ;
95+
96+ ( success , attr ) = Hdf5 . ReadStringAttributes ( f , "backend" , "" , true ) ;
97+ if ( success )
98+ original_backend = attr . First ( ) ;
10499
105100 var filtered_layers = new List < ILayer > ( ) ;
106101 foreach ( var layer in layers )
@@ -137,7 +132,7 @@ public static void load_weights_from_hdf5_group(long f, List<ILayer> layers)
137132 var weight_names = load_attributes_from_hdf5_group ( g , "weight_names" ) ;
138133 foreach ( var i_ in weight_names )
139134 {
140- ( bool success , Array result ) = Hdf5 . ReadDataset < float > ( g , i_ ) ;
135+ ( success , Array result ) = Hdf5 . ReadDataset < float > ( g , i_ ) ;
141136 if ( success )
142137 weight_values . Add ( np . array ( result ) ) ;
143138 }
@@ -329,12 +324,10 @@ private static List<List<object>> Split(Array list, int chunkSize)
329324
330325 public static string [ ] load_attributes_from_hdf5_group ( long group , string name )
331326 {
332- if ( Hdf5 . AttributeExists ( group , name ) )
333- {
334- var ( success , attr ) = Hdf5 . ReadStringAttributes ( group , name , "" ) ;
335- if ( success )
336- return attr . ToArray ( ) ;
337- }
327+ var ( success , attr ) = Hdf5 . ReadStringAttributes ( group , name , "" , true ) ;
328+ if ( success )
329+ return attr . ToArray ( ) ;
330+
338331 return null ;
339332 }
340333
0 commit comments