前提・実現したいこと
Pytorchを用いたマルウェア検知のためのDeep Learningのモデルを作成しています.
その際にPytorchが扱えるように,bytes型で読み込んだマルウェアのバイナリーファイルを以下のコードを用いてTensor型に変換しています
python
1BINARY = b'MZ\x90\x00\x03\x00\x00\x00\x04\x00' #f.read()で読み込んだ直後 2 3inp_bytez = torch.from_numpy(np.frombuffer(BINARY, dtype=np.uint8)[np.newaxis,:]).float() 4>> tensor([ 77., 90., 144., ..., 0., 0., 0.])
そして色々な処理が終わった後に,要素の型がnumpy.float32のnumpy.ndarrayが返ってくるのですが,これを上記のBINARYのように変換する方法はありますでしょうか?
以下のようなコードを書いているのですが,想定していた形が得られません.
発生している問題
python
1Return = [[90. 144. 0. 3. 0. 0. 0. 4. 0. 0.]] 2type(Return, Return[0],Return[0][0]) 3>>'numpy.ndarray', 'numpy.ndarray', 'numpy.float32' 4 5bytez = list(map(lambda x: bytes(x), Return[0])) 6#実際に出力された値 7>> [b'\x00\x00\xb4B', b'\x00\x00\x10C', b'\x00\x00\x00\x00', b'\x00\x00@@', b'\x00\x00\x00\x00', b'\x00\x00\x00\x00', b'\x00\x00\x00\x00',b'\x00\x00\x80@', b'\x00\x00\x00\x00', b'\x00\x00\x00\x00'] 8#想定していた値 9>>b'MZ\x90\x00\x03\x00\x00\x00\x04\x00'
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/07/19 02:30