タグ

ブックマーク / qiita.com/haminiku (2)

  • 【Ruby】ArrayとQueueがスレッドセーフか検証してみた - Qiita

    背景 RubyのQueueクラスの説明に、これはスレッドセーフだと書いてあったので検証してみました。 スレッドセーフとは 自分でも正確な意味を理解していなかったので調べてみました。スレッドセーフとはアプリケーションをマルチスレッドで動作させても問題がないこと スレッドアンセーフだとどうなるか たとえばマルチスレッドで実行したときに、複数スレッドから同一の変数に変更が発生してデータが消えたり意図しない値になってしまうこと(レースコンディションという) つまり仮説! ArrayとQueueを用意し、100スレッドで複数のワーカーで同時にpopさせて並列計算するとQueueでは正しい結果が出力されるが、Arrayではレースコンディションが発生し、計算結果がズレる..はず 仕様 1..10000000の値を合計する。結果が50000005000000となれば正しい レースコンディションが発生すれば

    【Ruby】ArrayとQueueがスレッドセーフか検証してみた - Qiita
  • TensorFlow 畳み込みニューラルネットワークで手書き認識率99.2%の分類器を構築 - Qiita

    TensorFlowとは2015/11/9にオープンソース化されたGoogle機械学習ライブラリです。この記事ではディープラーニングと言われる多層構造のニューラルネットワークをTensorFlowを利用して構築しています。 TensorFlowはPythonから操作できますがバックエンドではC++で高速に計算しています。macPython2.7系環境でTensorFlowの上級者用チュートリアルを行い、手書き認識率99.2%の多層構造の畳み込みニューラルネットワークモデルの分類器を構築したときの作業メモです。特別な設定なしにCPU使用率270%メモリ600MByteとちゃんと並列計算してくれました。MNISTランキングを見ると認識率99.2%は上位のモデルとなるようです。 TensorFlowチュートリアル TensorFlowの初心者用と上級者用チュートリアル2つに取り組んでみました

    TensorFlow 畳み込みニューラルネットワークで手書き認識率99.2%の分類器を構築 - Qiita
  • 1