ruby-dnn 0.9.4 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,97 +0,0 @@
1
- # LIB-APIリファレンス
2
- ruby-dnnの付属ライブラリのリファレンスです。
3
- 最終更新バージョン:0.8.6
4
-
5
-
6
- # dnn/lib/mnist
7
- MNISTデータセットを扱うライブラリです。初回利用時は、データセットのダウンロードを行うため、時間がかかります。
8
-
9
-
10
- # module MNIST
11
- MNISTを扱うモジュールです。
12
-
13
- ## 【Singleton methods】
14
-
15
- ## def self.load_train
16
- トレーニング用データを取得します。
17
- ### arguments
18
- なし。
19
- ### return
20
- Array
21
- [イメージデータ, ラベルデータ]の形式で取得します。
22
- * イメージデータ
23
- Numo::UInt8の[60000, 28, 28]の形式
24
- * テストデータ
25
- Numo::UInt8の[60000]の形式
26
-
27
- ## def self.load_test
28
- テスト用データを取得します。
29
- ### arguments
30
- なし。
31
- ### return
32
- Array
33
- [イメージデータ, ラベルデータ]の形式で取得します。
34
- * イメージデータ
35
- Numo::UInt8の[10000, 28, 28]の形式
36
- * テストデータ
37
- Numo::UInt8の[10000]の形式
38
-
39
-
40
- # dnn/lib/cifar10
41
- CIFAR-10データセットを扱うライブラリです。初回利用時は、データセットのダウンロードを行うため、時間がかかります。
42
-
43
-
44
- # module CIFAR10
45
- CIFAR-10を扱うモジュールです。
46
-
47
- ## 【Singleton methods】
48
-
49
- ## def self.load_train
50
- トレーニング用データを取得します。
51
- ### arguments
52
- なし。
53
- ### return
54
- Array
55
- [イメージデータ, ラベルデータ]の形式で取得します。
56
- * イメージデータ
57
- Numo::UInt8の[50000, 3, 32, 32]の形式
58
- * テストデータ
59
- Numo::UInt8の[50000]の形式
60
-
61
- ## def self.load_test
62
- テスト用データを取得します。
63
- ### arguments
64
- なし。
65
- ### return
66
- Array
67
- [イメージデータ, ラベルデータ]の形式で取得します。
68
- * イメージデータ
69
- Numo::UInt8の[10000, 32, 32, 3]の形式
70
- * テストデータ
71
- Numo::UInt8の[10000]の形式
72
-
73
-
74
- # dnn/lib/image
75
- 画像のread/writeを行うライブラリです。内部でstb_image.hとstb_image_write.hを使用しています。
76
-
77
-
78
- # module Image
79
-
80
- ## def self.read(file_name)
81
- 画像をNumo::UInt8形式で読み込みます。
82
- ### arguments
83
- * String file_name
84
- 読み込む画像のファイル名。
85
- ### return
86
- Numo::UInt8
87
- [height, width, rgb]のNumo::UInt8配列。
88
-
89
- ## def self.write(file_name, img, quality: 100)
90
- Numo::UInt8形式の画像を書き込みます。
91
- ### arguments
92
- * String file_name
93
- 書き込む画像のファイル名。
94
- * Numo::UInt8 img
95
- [height, width, rgb]のNumo::UInt8配列。
96
- * Integer quality: 100
97
- 画像をJPEGで書き込む場合のクオリティ。
@@ -1,44 +0,0 @@
1
- #include <ruby.h>
2
- #include <stdint.h>
3
- #include <stdlib.h>
4
-
5
- #define CIFAR10_WIDTH 32
6
- #define CIFAR10_HEIGHT 32
7
- #define CIFAR10_CHANNEL 3
8
-
9
- static VALUE cifar10_load_binary(VALUE self, VALUE rb_bin, VALUE rb_num_datas) {
10
- uint8_t* bin = (uint8_t*)StringValuePtr(rb_bin);
11
- int32_t num_datas = FIX2INT(rb_num_datas);
12
- VALUE rb_x_bin;
13
- VALUE rb_y_bin;
14
- int32_t i;
15
- int32_t j = 0;
16
- int32_t k = 0;
17
- int32_t size = CIFAR10_WIDTH * CIFAR10_HEIGHT * CIFAR10_CHANNEL;
18
- int32_t x_bin_size = num_datas * size;
19
- int32_t y_bin_size = num_datas;
20
- uint8_t* x_bin;
21
- uint8_t* y_bin;
22
-
23
- x_bin = (uint8_t*)malloc(x_bin_size);
24
- y_bin = (uint8_t*)malloc(y_bin_size);
25
- for (i = 0; i < num_datas; i++) {
26
- y_bin[i] = bin[j];
27
- j++;
28
- memcpy(&x_bin[k], &bin[j], size);
29
- j += size;
30
- k += size;
31
- }
32
- rb_x_bin = rb_str_new((char*)x_bin, x_bin_size);
33
- rb_y_bin = rb_str_new((char*)y_bin, y_bin_size);
34
- free(x_bin);
35
- free(y_bin);
36
- return rb_ary_new3(2, rb_x_bin, rb_y_bin);
37
- }
38
-
39
- void Init_cifar10_loader() {
40
- VALUE rb_dnn = rb_define_module("DNN");
41
- VALUE rb_cifar10 = rb_define_module_under(rb_dnn, "CIFAR10");
42
-
43
- rb_define_singleton_method(rb_cifar10, "load_binary", cifar10_load_binary, 2);
44
- }
@@ -1,3 +0,0 @@
1
- require "mkmf"
2
-
3
- create_makefile("cifar10_loader")