プログラミング

プロおよび熱狂的プログラマーのためのQ&A

6
サポートベクターマシンに対する人工ニューラルネットワークの利点は何ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ANN(人工ニューラルネットワーク)とSVM(サポートベクターマシン)は、教師あり機械学習と分類の2つの一般的な戦略です。特定のプロジェクトにどちらの方法が適しているかはよくわからないことが多く、答えは常に「依存している」と確信しています。多くの場合、両方の組み合わせとベイジアン分類が使用されます。 Stackoverflowに関するこれらの質問は、ANNとSVMに関してすでに尋ねられています。 ANNおよびSVM分類 分類の質問におけるANN、SVM、KNNの違い テキスト処理用のサポートベクターマシンまたは人工ニューラルネットワーク? この質問では、ANN(具体的には、マルチレイヤーパーセプトロン)のどの側面がSVMを介して使用することが望ましいと思われるかを具体的に知りたいのですが?私が尋ねる理由は、反対の質問に答えるのが簡単だからです。サポートベクターマシンは、ANNの2つの主要な弱点を回避するため、ANNより優れていることがよくあります。 (1)ANN は、グローバルな最小値ではなくローカルな最小値に収束することがよくあります。つまり、ANN は、本質的に「全体像を見落としている」(または森の森を見逃している)ことを意味します (2)トレーニングが長すぎると、ANNはしばしばオーバーフィットします。つまり、特定のパターンについて、ANNはノイズをパターンの一部と見なし始める可能性があります。 SVMはこれらの2つの問題のどちらにも悩まされません。ただし、SVMがANNの完全な代替になることを意図していることはすぐにはわかりません。それでは、ANNはSVMに対して特定の利点を持っているため、特定の状況に適用できる可能性があります。ANNに対するSVMの特定の利点を挙げましたが、ANNの利点(ある場合)のリストを確認したいと思います。

10
EBSとインスタンスストアの利点(およびその逆)[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 3年前休業。 Amazon EC2のインスタンスでEBSとインスタンスストアを比較すると、どのようなメリットがあるのか​​わかりません。どちらかといえば、EBSはコストの差が比較的小さいにもかかわらず、はるかに便利(停止、開始、持続+速度の向上)のようです...?また、EBSがまだ比較的新しいことを考慮して、EBSが利用可能になったことで、より多くの人々がEBSを使用しているかどうかについての指標はありますか?


7
メソッドはタイプの別のメソッドと同じ消去を持っています
同じクラスに次の2つのメソッドを含めることが合法ではないのはなぜですか? class Test{ void add(Set<Integer> ii){} void add(Set<String> ss){} } 私は得る compilation error メソッドadd(Set)には、タイプTestの別のメソッドと同じ消去add(Set)があります。 私はそれを回避することができますが、なぜjavacがこれを好まないのかと思っていました。 多くの場合、これらの2つの方法のロジックは非常によく似ており、1つの方法で置き換えることができます。 public void add(Set<?> set){} メソッドですが、常にそうであるとは限りません。 constructorsこれらの引数を取る2つが必要な場合は、1つのの名前を変更することはできないため、これは非常に面倒ですconstructors。
381 java  generics 


22
Javaで同期(これ)を避けますか?
Javaの同期についての質問がSOに出てくるときはいつでも、synchronized(this)避けなければならないことを非常に熱心に指摘する人もいます。代わりに、プライベートリファレンスのロックが優先されると主張しています。 指定された理由のいくつかは次のとおりです。 いくつかの邪悪なコードがあなたのロックを盗む可能性があります(これは非常に人気があり、「偶然に」変種もあります) 同じクラス内のすべての同期されたメソッドは、まったく同じロックを使用するため、スループットが低下します (不必要に)情報を公開しすぎている 私を含む他の人々synchronized(this)は、それが(Javaライブラリーでも)よく使用されるイディオムであり、安全でよく理解されていると主張します。バグがあり、マルチスレッドプログラムで何が行われているかの手掛かりがないため、これを回避することはできません。つまり、該当する場合はそれを使用します。 私は、ロックオンを回避するthisことが望ましい場合に、ロックオンを回避することが望ましい実際の例(foobarのものではない)をいくつか見ることに興味synchronized(this)があります。 したがって、常に避けsynchronized(this)て、プライベートリファレンスのロックに置き換える必要がありますか? いくつかの詳細情報(回答が提供されると更新されます): インスタンスの同期について話している の暗黙的な(synchronizedメソッド)と明示的な形式のsynchronized(this)両方が考慮されます この件に関してBlochまたは他の当局を引用する場合は、好ましくない部分を省略しないでください(例:効果的なJava、スレッドセーフティの項目:通常はインスタンス自体のロックですが、例外があります)。 synchronized(this)提供以外の細かいロックが必要な場合synchronized(this)は適用されないため、問題はありません。

16
参照とポインターを使用する場合
ポインタと参照の構文と一般的なセマンティクスを理解していますが、APIで参照またはポインタを使用することが適切かどうかをどのように判断すればよいですか? 当然、状況によってはどちらか一方が必要です(operator++参照引数が必要です)が、変数が破壊的に渡されていることは構文上明らかであるため、一般的にはポインタ(およびconstポインタ)を使用した方がよいと思います。 たとえば、次のコードで: void add_one(int& n) { n += 1; } void add_one(int* const n) { *n += 1; } int main() { int a = 0; add_one(a); // Not clear that a may be modified add_one(&a); // 'a' is clearly being passed destructively } ポインターを使用すると、何が起こっているのかが常に(さらに)明白になります。そのため、APIなどでは、明確さを重視する場合、ポインターは参照よりも適切ではありませんか?つまり、参照は必要な場合にのみ使用する必要があるということoperator++ですか(例:)?どちらか一方にパフォーマンスの問題はありますか? 編集(古い): NULL値を許可して生の配列を処理する以外に、選択は個人の好みに帰着するようです。GoogleのC ++スタイルガイドを参照する以下の回答を受け入れました。「値の構文はあるがポインタのセマンティクスがあるため、参照は混乱を招く可能性がある」という見解を示しているためです。 NULLであってはならないポインタ引数をサニタイズするために必要な追加の作業(たとえばadd_one(0)、実行時にポインタバージョンを呼び出して中断する)のため、オブジェクトが存在しなければならない参照を使用することは保守性の観点からは残念ですが、意味があります。構文の明確さを失う。
381 c++  pointers  reference 

14
iPhoneは最初のページでのみナビゲーションバーを非表示にする
ナビゲーションバーを非表示にして表示する以下のコードがあります。最初のビューが読み込まれると非表示になり、「子」が呼び出されると非表示になります。問題は、ルートビューに戻ったときに、それをトリガーして再度非表示にするイベント/アクションが見つからないことです... ルートページに手動でアクションを実行する「テスト」ボタンがありますが、見栄えがよくないので、自動にしたいと思います。 -(void)hideBar { self.navController.navigationBarHidden = YES; } -(void)showBar { self.navController.navigationBarHidden = NO; }


25
ExecutorServiceを使用して、すべてのスレッドが完了するのを待つ方法は?
次のように、一度にいくつかのタスクを4回実行する必要があります。 ExecutorService taskExecutor = Executors.newFixedThreadPool(4); while(...) { taskExecutor.execute(new MyTask()); } //...wait for completion somehow それらがすべて完了したら、どうすれば通知を受け取ることができますか?今のところ、いくつかのグローバルタスクカウンターを設定し、すべてのタスクの終わりにそれを減らすことよりも良いことを考えることはできません。その後、無限ループでこのカウンターを監視して0にします。または、Futureのリストを取得し、それらすべてに対して無限ループモニターisDoneを実行します。無限ループを含まないより良い解決策は何ですか? ありがとう。

5
印刷せずにGo文字列をフォーマットしますか?
文字列を印刷せずにGoで文字列をフォーマットする簡単な方法はありますか? できます: bar := "bar" fmt.Printf("foo: %s", bar) しかし、私はそれをさらに操作できるように、印刷するのではなく、フォーマットされた文字列を返したいのです。 次のようなこともできます: s := "foo: " + bar しかし、これはフォーマット文字列が複雑な場合は読みにくくなり、1つまたは多くの部分が文字列ではなく、最初に変換する必要がある場合は扱いにくくなります。 i := 25 s := "foo: " + strconv.Itoa(i) これを行う簡単な方法はありますか?

21
Androidでアクティビティを再起動する方法
Androidを再起動するにはどうすればよいActivityですか?私は次のことを試しましたが、Activity単に終了しました。 public static void restartActivity(Activity act){ Intent intent=new Intent(); intent.setClass(act, act.getClass()); act.startActivity(intent); act.finish(); }


13
C#でのFinalize / Disposeメソッドの使用
C#2008 私はしばらくこれに取り組んできましたが、コード内のfinalizeメソッドとdisposeメソッドの使用についてはまだ混乱しています。私の質問は以下の通りです: アンマネージリソースを破棄するときは、ファイナライザーのみが必要であることを知っています。ただし、アンマネージリソースを呼び出すマネージリソースがある場合でも、ファイナライザを実装する必要がありますか? ただし、アンマネージリソースを使用しないクラスを開発する場合-直接的または間接的に、IDisposableそのクラスのクライアントが「usingステートメント」を使用できるように実装する必要がありますか? クラスのクライアントがusingステートメントを使用できるようにするためだけにIDisposableを実装することは可能でしょうか? using(myClass objClass = new myClass()) { // Do stuff here } 以下のシンプルなコードを開発して、ファイナライズ/破棄の使用方法を示します。 public class NoGateway : IDisposable { private WebClient wc = null; public NoGateway() { wc = new WebClient(); wc.DownloadStringCompleted += wc_DownloadStringCompleted; } // Start the Async call to find if NoGateway is true …

8
短いGitバージョンのハッシュを取得する
HEADGitからの短いバージョンのハッシュを取得するためのより明確な方法はありますか? 私が得るのと同じ出力を表示したい: git log -n 1 | head -n 1 | sed -e 's/^commit //' | head -c 8 最初は上記のコマンドを使用してバージョン文字列を生成しましたが、これはさらに優れています。 git describe --tags 0.1.12(タグ付きコミット)または0.1.11-5-g0c85fbc(タグの後の5つのコミット)のような文字列を出力します。
381 git 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.