2011-01-26 10 views
0

私はその質問があいまいであることを認識しているので、私はいくつかの文脈を提供し、おそらく文脈に関連する回答を受け取るでしょう。Androidデバイスでピッチトラッキングアルゴリズムのパフォーマンスを確実に評価するにはどうすればよいですか?

私はBScコンピュータサイエンス(数学)の一環として最終年度のプロジェクトを実施しています。私の選択したプロジェクトは、モバイルデバイス上で動作するピッチトラッキングアルゴリズムを評価することです。 Androidベースのデバイスで実装する可能性のある標準アルゴリズムがいくつかあります。

パフォーマンス、信頼性、精度について周波数推定を評価するため、いくつかの定量的測定を行う必要があります。

私の結論は、これらのアルゴリズムの私自身の実装に大きく関係しているということです。導入した非効率性を検出または最小化するにはどうすればよいでしょうか?

さらに、一般的なモバイルデバイスの数学的計算に関するパフォーマンス上の問題はありますか?浮動小数点値は常にプロセッサでサポートされているわけではないので、整数演算が好まれます。

私はいくつかの関連する質問を読んでおり、標準的なアルゴリズムを使って本を指していますが、数多くのピッチトラッキングアルゴリズムが学術論文の説明としてのみ存在する場合はそれほど簡単ではありません。

私はperformace評価ソフトウェアにも向けられていますが、特定のアプリケーションの方向には向いていません。人気のある選択肢はありますか?

答えて

1

非効率性を検出して最小化することについては、他のタイプのシステムでのピッチトラッキングアルゴリズムの評価がありますか?おそらく、評価を評価するための参照としてそれらを使用することができます(話すように)。つまり、実装で明白なバイアスが導入されているかどうかを確認できるベースラインの問題があるかもしれません。

一部の(ほとんどの)デバイスには浮動小数点プロセッサがないため、整数または固定小数点演算を使用する方がよい場合があります。 (浮動小数点計算はこれらのプラットフォームのソフトウェアで行われます)もちろん、浮動小数点と浮動小数点の間のトレードオフを調べることも公正です。同じアルゴリズムを2つの方法で実装することもできます。ただその問題を研究するだけです。

一般的なパフォーマンス評価ソフトウェアは、あなたの割り当てに適しているかもしれません。特定のメトリックの意味で「パフォーマンス、信頼性、および正確さ」が何を意味するのかを正確に定義する必要があります。次に、それらのメトリックを測定または推定するためのインプリメンテーションを計測する最善の方法について質問できます。

+0

整数/浮動小数点のトレードオフを調べるという考えは興味深い見通しですが、私はそれをテストするのに十分なハードウェアがないと考えています。しかし、私はまだそうすることにメリットがあると思います。 もちろん、私は参考実装について疑問を抱いています。問題なくi7マシン上で動作するものはたくさんありますが、レイテンシは簡単に比較できますか?私は、私が携帯電話と同じようにPC上で同じレイテンシ比を見せてくれると期待しているとは思えません。私は使用しているプロセッサの操作の「支出」を考慮する必要があります。 –

+0

実際には、私はリファレンス実装のために少し異なる使い方を思いついていました。アルゴリズムAとBがいくつかの既存のテストスイートによってほぼ同等であるにもかかわらず、Bの実装がAを大幅に上回る場合は、Bの実装をねじ込んだ可能性を探るべきです。(もちろん、常に可能性があります既存のテストスイートがAを駄目にしていました。これは優れたアルゴリズムでした)レイテンシのようなものでは、パフォーマンスに比例したコンポーネントと固定されたコンポーネントがあると、比は危険です。 –

関連する問題