csvの一次元データに対する畳込みニューラルネットワークの入力データのばらつきについて
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Jo Sasaki
am 10 Dez. 2018
Kommentiert: Jo Sasaki
am 20 Dez. 2018
音データのcsvデータに対し畳み込みニューラルネットワークを行っています。
CNNレイヤーに対応したデータストアはimageDatastoreしかないので、下記の読み込み関数を定義して読み込みを行っています。
function data = readDatastoreCSV(filename)
data = csvread(filename);
data = reshape(data, [1 1200 1 1]);
この場合読み込み関数で読み込むデータは1200データとしなければなりませんが、今手元にある入力データは1100や1400などばらつきがある状態です。
ですので、csvデータに対し0パディングのようにデータの水増しを行いたいと思っています。
例えば、1200データが存在するcsvに対し300データ「0」を末尾に加えて、この作業をすべてのデータ数を1500として扱おうと考えています。
こういったcsvデータの水増しはMATLABで可能でしょうか?
もしくは、MATLABのcnnの関数内でデータの数を合わせてくれる機能などが存在しているのでしょうか?
読み込み関数内で行ってもいいですし、csvデータのみ編集でもよいのでご教授いただければ幸いです。
0 Kommentare
Akzeptierte Antwort
Kazuya
am 11 Dez. 2018
Bearbeitet: Kazuya
am 11 Dez. 2018
データ型など注意する必要があるかもしれませんが、
function data = readDatastoreCSV(filename)
tmp = csvread(filename); % データ読み込み(N < 1500が前提)
N = length(tmp); % 読み取ったデータ要素数確認
data = zeros(1500,1); % 全て 0 のベクトル定義
data(1:N,1) = tmp; % filename のデータをコピー
data = reshape(data, [1 1500 1 1]);
とすれば、とりあえず結果出てくる data は 1500要素で揃います。
5 Kommentare
Kazuya
am 18 Dez. 2018
分割後の csv はどれも csvread 関数単体で実行しても読み取れないということですか?先日の書き込みからはすべてが読み取れないわけではなさそうでしたが。
- 読み取れる csv ファイルと読み取れない csv ファイルの特定
- 同じ csv ファイルでも読み取れる時と読み取れない時があるのかどうか
の2点を確認せずに、いろいろ試しても解決(原因の理解)にはつながらないですよー。うっかり動くこともあるとは思いますが。
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Preprocess Data for Deep Neural Networks finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!