e-AIトランスレータ V2.0.0公開のお知らせ

こんにちは、スタッフのdartsmanです。

e-AI(embedded Artificial Intelligence)用ツール、e-AIトランスレータの

新バージョンV2.0.0を公開しましたのでお知らせいたします。

[e-AIトランスレータ V2.0.0の主な新機能]

・ディープラーニング研究者間で人気急増中のフレームワーク"PyTorch"に対応

・お客様ご要望のあった"TensorFlow"のメジャーバージョンアップに対応

[e-AIトランスレータのダウンロード]

https://www.renesas.com/e-ai-tool

※上記の対応に伴い、Pythonなどインストールが必要なソフトウェアに変更があります。
 詳細はユーザーズマニュアルでご確認ください。
 また、今バージョンのe-AIトランスレータでは、CaffeやTensorFlowの旧API(tf.nn やtf.layers 等のAPI)を
 サポートしていません。これらのフレームワークをご使用の方はe-AIトランスレータ V1.6.0をご使用ください。

Parents
  • こんにちは Sugachanceです。

    PyTorchに対応したとのことで、
    単純なXORを通してみようと思ったのですが、
    入力層の指定の所でうまくいきません。

    (1) そもそも次の形式のネットワークは対応していますでしょうか?

    class Net(nn.Module):
        def __init__(self):
            super(Net, self).__init__()
            self.fc1 = nn.Linear(2, 8)
            self.fc2 = nn.Linear(8, 8)
            self.fc3 = nn.Linear(8, 1)
           self.sigmoid = nn.Sigmoid()

        def forward(self, x):
           x = nn.functional.relu(self.fc1(x))
           x = nn.functional.relu(self.fc2(x))
           x = self.fc3(x)
           x = self.sigmoid(x)
           return x

    (2) (1)がOKの場合、トランスレータの入力層を指定する部分( C,H,Wの形式)
    はどのように入力すべきでしょうか。
    2chで画像ではない(縦横はない)ので
    ”2,1,1”かと思ったのですが、入力層のエラーが出ます。

    以上、よろしくお願いいたします。

Reply
  • こんにちは Sugachanceです。

    PyTorchに対応したとのことで、
    単純なXORを通してみようと思ったのですが、
    入力層の指定の所でうまくいきません。

    (1) そもそも次の形式のネットワークは対応していますでしょうか?

    class Net(nn.Module):
        def __init__(self):
            super(Net, self).__init__()
            self.fc1 = nn.Linear(2, 8)
            self.fc2 = nn.Linear(8, 8)
            self.fc3 = nn.Linear(8, 1)
           self.sigmoid = nn.Sigmoid()

        def forward(self, x):
           x = nn.functional.relu(self.fc1(x))
           x = nn.functional.relu(self.fc2(x))
           x = self.fc3(x)
           x = self.sigmoid(x)
           return x

    (2) (1)がOKの場合、トランスレータの入力層を指定する部分( C,H,Wの形式)
    はどのように入力すべきでしょうか。
    2chで画像ではない(縦横はない)ので
    ”2,1,1”かと思ったのですが、入力層のエラーが出ます。

    以上、よろしくお願いいたします。

Children
  • Sugachanceさん、こんにちは。スタッフのDartsmanです。

    お問い合わせに気づいておらず、ご返信が大変遅くなってしまいました。

    大変申し訳ありませんでした。

    お問い合わせの件ですが、以下のようにモデル定義にflattenを足してモデルを作成することで

    e-AIトランスレータで変換できるようになります。

    この場合、e-AIトランスレータの"Input Shape Dimention"には"2,1,1"を入力します。

    class Net(nn.Module):
      def __init__(self):
        super(Net, self).__init__()
        self.flatten = nn.Flatten()
        self.fc1 = nn.Linear(2, 8)
        self.fc2 = nn.Linear(8, 8)
        self.fc3 = nn.Linear(8, 1)
        self.sigmoid = nn.Sigmoid()


      def forward(self, x):
        x = self.flatten(x)
        x = nn.functional.relu(self.fc1(x))
        x = nn.functional.relu(self.fc2(x))
        x = self.fc3(x)
        x = self.sigmoid(x)
        return x

    今後のバージョンでFlattenを使わなくても変換できるよう改善できないか検討してみます。

    ※9/30にリリースした新バージョン(V2.1.0)では、まだ改善できておりません。

    以上、よろしくお願いいたします。

  •  dartsman様、こんにちは Sugachanceです。

    ご回答ありがとうございます。
    承知いたしました。
    Flattenを入れて試してみます。

  • dartsman様、こんにちは Sugachanceです。

    無事に変換できました。
    ありがとうございました。

  • Sugachanceさん、こんにちは。スタッフのDartsmanです。

    ご連絡ありがとうございます。変換出来たようで良かったです。

    また何かありましたらご連絡ください。

    よろしくお願いいたします。