ニューラルネットワーク:あなたはそれをとても単純に持っています

ニューラルネットワークは現在、ハッカーの数、学生、研究者、そして企業の数が増えています。最後の復活は、World Wide WebやNo Leural Network Toolsがほとんどまたはまったくなかった場合、80年代、90秒にありました。現在の復活は2006年頃に始まりました。ハッカーの観点から、他のリソースと他のリソースと同様に提供されたのは、今すぐ申し出されていますか。私自身のために、ラズベリーPIのGPUはいいでしょう。

80年代と90年代

ニューラルネットワーク80S / 90年代の本だけでなく、MAGS
ヤングズのために、米国が世界的な幅広いウェブの前に何もすることができたのだろうか、ハードコピー雑誌は私たちが新しいことを意識させるのに巨大な部分を演じました。それほどそれは科学系誌の1992年9月の特別な問題であり、神経学的ネットワークに紹介された脳、生物学的および人工的な種類の両方を紹介しました。

それからあなたは自分のニューラルネットワークをスクラッチから書くか、または他の誰かからのソースコードを順序付けることができます。私はその科学的アメリカの問題のアマチュア科学者列からフロッピーを秩序だった。あなたはあなたのためにすべての低レベル、複雑な数学をするニューラルネットワークライブラリを同様に購入するかもしれません。トロント大学からのXERIONと呼ばれる無料シミュレータも同様でした。

本屋の科学のセクションに目を向けておくことは、被験者の時折の本を上げました。伝統的なものは、Rumelhart、McClelland et al。鉱山の好ましいものは、神経計算であり、自己組織化マップ:ロボットアームを制御するニューラルネットワークに興味を持っていた場合に有用である。

あなたが参加するかもしれない会議と同様に短いコースと同様に短いコースがありました。 1994年に参加したセミナーは、その後、Geoffrey Hinton、Toronto大学、そして今でも現場のリーダーです。当時の最善の年次セミナーは、今日はまだ強くなっている神経情報処理システム会議でした。

そして最後に、私は公開された論文のためにライブラリを命じることを思い出します。私のセミナー論文のスタック、プログラム配布資料、コピー記事、およびその期間からの手書きノートは約3インチの厚さです。

それから物事は比較的静かになった。ニューラルネットワークはいくつかのアプリケーションで使用を発見したが、彼らは限られた研究界の外で、世界の視点と同様に彼らの誇大宣伝に住んでいなかった、彼らは問題を止めた。いくつかのブレークスルーとともに、そしてそれから最後に2006年頃には、再び世界中で展開されたので、物事は静かに残った。

現在が届きます

私たちはここでのツールに焦点を当てていますが、これは主に行われました。

3層以上の深さを超えるネットワークのための新しいテクニック、今や深いニューラルネットワークと呼ばれる

トレーニングをスピードアップするためのGPU(グラフィック処理単位)の使用

多数のサンプルを含むトレーニングデータの可用性

ニューラルネットワークフレームワーク

現在、さまざまなライセンスで無料のライセンスを無料で使用するためのダウンロードのために提供されているフレームワークと呼ばれる数多くのニューラルネットワークライブラリがあり、それらの多くはオープンソースフレームワークです。より人気のあるもののほとんどは、GPU上のニューラルネットワークを実行することができます。また、ほとんどの種類のネットワークをサポートするのに十分な柔軟性があります。

これがより人気のあるもののほとんどがあります。彼らはすべてFNNを除いてGPUサポートを受けています。

テンソルフロー

言語:Python、C ++は作品にあります

TensorflowはGoogleの最新のニューラルネットワークフレームワークです。 GPUだけでなく、複数のマシンにわたってネットワークを配布するように設計されています。それは低レベルのものと見なすことができ、しかし、どちらもKERASのような高レベルのものよりも大きな学習曲線を提供することができます。ただし、それらはTensorflowに統合されたバージョンのKerasの生産に取り組んでいます。

私たちは、このハンマーですでにこのハンマーのハッキーでハックで、ビールボトルを認識するロボットとテンソルフローを使うことの紹介をしています。

Theano.

言語:Python.

これは多次元配列を含む効果的な数値計算を行うためのオープンソースライブラリです。それはモントリオール大学からのもので、Windows、Linux、そしてOS-X上で動作します。 Theanoは、2009年に0.1がリリースされました。

カフェ

言語:コマンドライン、Python、MATLAB

CaffeはBerkeley AIの研究、近隣の貢献者によって開発されています。モデルは、プレーンテキストデータで定義でき、コマンドラインツールを使用して処理できます。 MATLABインタフェースと同様にPythonも同様にあります。たとえば、プレーンテキストファイルにモデルを定義でき、ソルバーと呼ばれる2番目のプレーンテキストデータで訓練する方法についての詳細を説明しています。次にニューラルネットワークを訓練するFEコマンドラインツール。その後、Pythonプログラムを使用してこの訓練を受けたネットをロードすることと、それを使用して、画像の分類を行うことができます。

CNTK

言語:Python、C ++、C#

これは、Microsoftのコグニティブツールキット(CNTK)とWindowsとLinux上で実行されます。彼らは現在、Kerasで使用されるバージョンに取り組んでいます。

カラス

言語:Python.

Pythonで書かれたKerasは、その下にTensorflowまたはTheanoを使用しており、それらのフレームワークを使いやすくします。同様にCNTKをサポートする計画も同様にあります。 KerasをTensorFlowに統合するための作業が進行中です。その結果、別々のテンソルフロー専用バージョンのKerasが得られます。

TF Learn.

言語:Python.

Kerasのように、これはTensorflowの上にある高水準図書館です。

ファン

言語:15の言語を超える言語、GPUのサポートはありません

これはCに記載されている高レベルのオープンソースライブラリです。しかし、それは長年にわたって人気があり、そしてLinuxディストリビューションにさえ含まれています。最近ここでHackadayでは、補強学習を使用して歩くことを学んだロボットで、ニューラルネットワークを利用する機械学習技術です。

松明

言語:ルアー

C. C.に書かれたオープンソースライブラリは、トーチが埋め込まれています。

ピトーチ

言語:Python.

Pytorchは比較的新しく、彼らのウェブサイトはそれが初期リリースベータ版であると言います、しかしそれにはたくさんの関心事があるようです。それはLinuxおよびOS-X上で実行され、その下のトーチを使用します。

私が逃した他の人は疑問がありません。あなたがここにいないことを特に望んでいるならば、コメントで私たちに知らせてください。

どちらを使うべきですか?プログラミング言語またはOSが問題でない限り、あなたのスキルレベルは念頭に置いています。数学に不快な場合、またはニューラルネットワークのニュランスに深く掘り下げたくない場合は、高レベルのものを選びました。その場合は、Tensorflowから離れて、Kera、Tfrearn、または他の高レベルのものよりもAPIについて詳しく知らなければなりません。数学機能を強調するフレームワークは通常、ネットワークを作成するためにもっと多くの作業を行う必要があります。もう1つの要因は、根本的な研究をしているかどうかです。高レベルのフレームワークでは、おそらく複数の層にまたがっている接続、およびすべての方向に流れるデータと同様に、クレイジーネットワークを作成するのに十分な内側にアクセスできるようにすることはできません。

オンラインサービス

あなたはあなたのハックに提供するニューラルネットワークが何かを追加したいと思っていますか?そのためにあなたのハックをインターネットに接続することによって提供されるサービスがある。

私たちは、音声認識のためのAmazonのAlexaを利用する無数の例を見ました。グーグルは、ビジョンとスピーチを含むクラウドマシン学習サービスを持っています。そのビジョンサービスは、キャンディー選別のためのRaspberry Piを使用してここに示されています。 Wekinatorは、芸術家、そして私たちがニューラルネットワークを訓練するために芸術家や音楽家を訓練して、家の周りの様々なジェスチャーに対応し、仮想世界の最も激しいバイオリンを作るために様々なジェスチャーに対応することを目的としています。除外されないように、マイクロソフトと同様にその認知サービスAPIは、ビジョン、スピーチ、言語、その他のものも含めています。

TPUSと同様にGPU

ニューラルネットワークを通して繰り返します
ニューラルネットワークを訓練するには、ニューラルネットワークを通じて、ネットワークの正確さを改善するたびに、ニューラルネットワークを繰り返し、次に後方に繰り返します。ポイントまで、あなたができるより多くの反復は、あなたが止まるときの最終的な正確さがはるかに良いでしょう。反復回数は数百台または数千でもあります。 1980年代と1990年代のコンピュータで、十分な反復を達成すると、許容できない時間がかかる場合があります。記事によると、ニューラルネットワークにおける深い学習:2004年に、2004年には、完全に接続されたニューラルネットワークのためのGPUを用いて速度の20倍の増加が達成された。 2006年には、畳み込みニューラルネットワークのために4倍の増加が達成されました。 2010年までに、CPU対GPUのトレーニングを比較すると50倍の速度が速くなりました。その結果、精度ははるかに高かった。

NVIDIAタイタンXPグラフィックカード。画像クレジット:NVIDIA.
GPUはどのように役立ちますか?ニューラルネットワークを訓練する巨大な部分は、Matrix乗算を含み、それはCPUよりもGPU上ではるかに速く行われるものです。 GraphicsカードとGPUを作成するためのリーダーであるNVIDIAは、GPUを利用するためにニューラルネットワークソフトウェアによって使用されるCUDAと呼ばれるAPIを作成しました。私たちはこれを指摘しているので、CUDAという用語がたくさん見えます。深い学習の普及に伴い、NVIDIAは、CUDNN(深部ニューラルネットワーク用のCUDA)を含むAPIを追加しました。

NVIDIAは同様に独自のシングルボードコンピュータ、エセトンTX2を持っています。しかし、私たちの[Brian Benchoff]が指摘したので、価格地点は典型的なハッカーのために少し高いです。

グーグルは、そのテンソル処理装置の種類(TPU)のタイプの独自のハードウェア加速度に取り組んでいます。上記のGoogleのフレームワークの名前とTensorflowの名前と類似したことに気付いたかもしれません。 Tensorflowはテンソルを重く使用します(シングルとソフトウェアの多次元アレイを考えてください)。 TPU上のGoogleの論文によると、それはニューラルネットワークの推論段階のために設計されています。推論とは、ニューラルネットワークを訓練しないが、訓練された後にニューラルネットワークを使用することを指す。まだ任意の種類のフレームワークで使用されているのを見ていませんが、それは留意し続けるものです。

他の人のハードウェアを使う

あなたは訓練するのに長い時間がかかるが、サポートされているGPUを持っていない、またはあなたのリソースを結び付けたくないのはニューラルネットワークを持っていますか?その状況では、インターネット上でアクセス可能な他のマシンで使用できるハードウェアがあります。そのようなものは、個人のために、毎月の支払いなしに1時間あたりのペニーのみを犠牲にするフロイダブです。もう1つはAmazon EC2です。

データセット

ラベル付きデータを用いたニューラルネットワークを訓練する
ニューラルネットワークにおけるブレークスルーの1つは、数万の数万のサンプルを含むトレーニングデータの利用可能性であると述べた。監視されたトレーニングアルゴリズムを使用してニューラルネットワークを訓練することは、その入力でネットワークにデータを与えることを含みます。その状況では、データは同様にラベル付けされなければなりません。あなたがネットワークの入力に馬のイメージを与えるならば、そしてその出力はそれがチーターのように見えると言うならば、それはエラーが大きいだけでなく、より多くのトレーニングが必要であることを知る必要があります。予想される出力はラベルと呼ばれ、データは「ラベル付きデータ」です。

そのようなデータセットの多くはトレーニング目的でオンラインで提供されています。 MNSTは手書きの文字認識のためのものです。 ImagenetとCifarは、ラベル付き画像の2つの異なるデータセットです。このウィキペディアのページには、もっと多くのものがリストされています。上記のフレームワークの多くは、必要なデータセットを含むチュートリアルを持っています。

それはあなたが絶対に大きなデータセットを絶対に必要としていると言うことではありません。 FNNフレームワークを使用した歩行ロボットは、サーボモータの位置をトレーニングデータとして使用しました。

その他のリソース

80年スと90年代とは異なり、あなたはまだニューラルネットワークに関するハードコピー本を買うことができますが、オンラインで数多くのものがあります。私が楽しんだ2つのオンライン本は、Mit Pressとニューラルネットワークと深い学習による深い学習です。上記のフレームワークはすべて始めるのに役立つチュートリアルを持っています。そして、あなたが検索するどんなタイプのトピックに関するYouTubeのビデオだけでなく、無数の他のWebサイトもあります。私は録音された講義のYouTubeのビデオ、そしてセミナーの話は非常に便利です。

未来

GPUのラズベリーPI 7
疑わしい未来は、より多くのフレームワークが沿って来るのを見るでしょう。

私たちは長い間専門のニューラルチップと市場でのボードを見ましたが、90年代に戻っても、巨大な市場を発見したことがありません。ただし、これらの実際の成長区域、全員が取り組んでいるニューラルネットワークソフトウェアを提供するための特別に設計されていません。 GPUはその市場に役立ちます。画像のための数百万の接続を持つニューラルネットワークとして、そして音声処理、言語、そしてそのままより小さな消費者デバイスの邪魔にならないように、そのソフトウェアに合わせて調整されたより多くのGPUまたはプロセッサが必要とされることは、それをうまく何かをもたらすでしょう。ラズベリーPIまたはArduinoボード上の新しい要素になることができます。代わりに処理がオンラインサービスのままである可​​能性がありますが。編集:ラズベリーPIにGPUがあることがわかります。以下のコメントを参照してください。それは上記のすべてのフレームワークがそれを利用することを意味するのではありません。たとえば、TensorflowはNVIDIA CUDAカードのみをサポートしています。ただし、独自のカスタムニューラルネットワークコードにGPUを使用することはできます。そのコメントにはさまざまなリンクがあります。

TPUのようなASICからのGPUの競争がすでに競争があり、可能な限り、ニューラルネットワークからGPUを全く発売する可能性があります。

私たちの新しいコンピュータは

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

Samsungのフラッグシップほど重要な数字で販売していないにもかかわらず、Google Pixel GadgetsをストックファームウェアとロックブートローダーSamsungのフラッグシップほど重要な数字で販売していないにもかかわらず、Google Pixel Gadgetsをストックファームウェアとロックブートローダー

に戻す方法、Googleのデバイスは、以前のNexusラインでさえも、熱心な3番目のラインでも喜びを感じています。パーティーデザイナーのサポート。これが、2013年第4四半期にリリースされたNexus 5が、5年後に最も現在のAndroid 8.1 Oreoを更新できる理由です。 Google Pixelガジェットは、この点で顕著なものではありません。その背後にこのような強力な近所があるため、Google Pixelガジェットには多くのROMと他のMODがあり、そのうちのいくつかは他のガジェットに移植される可能性が高いです。 MODやカスタムメイドのROMのインストールなどのことを行ったことがある場合は、物事が常にうまくいかないことを理解できます。以前にバックアップを作成したことがあるかもしれませんが、そうでないかどうかはどうでしょうか?さて、Google Pixelガジェットをファームウェアに戻す方法を正確に紹介します。 要件 もちろん、ロック解除されたGoogle Pixelデバイス。あなたはおそらく、他にどのようにそれを台無しにしたのかを正確に正確にしているので、あなたはすでにロック解除されたガジェットを持っているでしょう。 Google Pixelデバイス用の適切なストックファクトリー画像。これは、以下のダウンロードセクションからダウンロードできます。 Google SDKプラットフォームツールが必要です。これは、デスクトップOSに応じて、以下のダウンロードセクションからダウンロードできます。 携帯電話でUSBデバッグを有効にします。 インテリアストレージ、メッセージ、連絡先の合計、およびその他の必要なデータをバックアップすることを確認してください。このプロセスには、デバイスのフォーマットが必要です。ただし、必要に応じてこれを防ぐことができます。 Windows PCを使用している場合は、同様に最新のGoogle USBドライバーをインストールするための要件が​​あります。 ダウンロード SDKプラットフォームツール – ダウンロードされたアーカイブを抽出し、プラットフォームツールというフォルダーを取得する必要があります。 ウィンドウズ マック Linux Google Designer

グリッドディップメーター:忘れられた機器グリッドディップメーター:忘れられた機器

オシロスコープを得るためにハードウェアハッカーのための主要な儀式の儀式であることが利用されています。最近まで、典型的な人々の予算ではめったに新しい楽器がめったにありませんでした。さて、特にローエンドのPCスコープと「スコープメーター」を含める場合は、低コストのオプションが大幅にあります。デジタルメーターも同様に低コスト(多くの場合、一部の主要店では完全に無料)、信号発生器、周波数カウンタ、およびロジックアナライザでもあります。 しかし、それは非常に柔軟なキットの部分であるので、あなたが一般的に利用されているのと同じくらい一般的であると思わないテスト装置の一部があります。確かに、あなたが無線作業をしていない場合は、あなたの欲求リストでは高くないかもしれませんが、あなたがRFで何かをしているならば、それは柔軟なツールだけではなく、大きな価値もあります。それは何と呼ばれていますか?場合によります。歴史的に、彼らは「グリッドディップオシレータ」またはGDOという名前で行きました。場合によっては、代わりに「グリッドディップメーター」と呼ばれるのを聞いています。しかし、現代のバージョンはチューブを持っていません(したがって、したがって、グリッドはありません)ようこそ、あなたは今それらを浸漬メートルやおそらくDippersだけ呼ばれるのを聞くのです。 なぜそれが浸るのですか? 電話をかけているものに関係なく、操作の理論はまったく同じでもまったく同じです。装置は、出力を外部回路に結合する方法を備えた非常に広いバンドオシレータよりはるかに多いものではありません。発振器からどの程度の電力がどの程度どの程度の電力がどの程度行われているかをスクリーニングする方法がも同様にあります。これは、発振器の最上部振幅を見て一般的に行われます。 DIPの理由は、メソッドインダクタおよびコンデンサが異なる周波数で動作するのを終える必要があります。ほぼ任意のタイプの回路または要素には、3つのインピーダンス源があります。抵抗は、周波数に基づいて修正しないはずです。静電容量による容量性リアクタンス。誘導要素からの誘導的リアクタンスと同様に。場合によっては、これらのうちのかなりの量のものがあります。たとえば、カーボン抵抗器では、どちらのタイプのリアクタンスも非常に多くありません。コンデンサは主に容量性のリアクタンスであるべきです。 インピーダンスと同様にリアクタンス 提供されたコンデンサの場合、リアクタンスは低周波数では非常に高く、高周波数では非常に低いです。インダクタンスは反対の:低周波数はより高い周波数よりも低いリアクタンスを生み出します。あなたがゼロヘルツ波として存在するDCを信じるならば、これを覚えておくのは非常に簡単です。インダクタ(ワイヤのコイル)は、直流(低リアクタンス)、ならびにコンデンサ(2つの平行なプレート)をはっきりと通します(高リアクタンス)。 回路の全体的なインピーダンスがこれら3つの要素に依存していても、値を追加するだけでは簡単ではありません。それは抵抗、そしてリアクタンスはまったく同じ種類の量ではありません。 3オームのリアクタンスを持つ2オームトンに1Vの信号が入っている場合は、1Vが通常の抵抗に入るとまったく同じように振る舞いたいと思います。抵抗とリアクタンスが直列である場合、その効率的な抵抗の値はインピーダンスであり、それは抵抗のベクトル和、リアクタンスです。 この例では、22 + 32 = 13である。 13の平方根はおよそ3.6ですので、インピーダンスの大きさは3.6オームです。それをさらに複雑にするために、誘導的リアクタンスならびにカパラクティブリアクタンスは互いにキャンセルする傾向がある。それを正方形にするからであるが、キャパシウムリアクタンスを否定的に扱うことは慣習的である。数学のために、あなたは本物の部分としての抵抗と複素数の虚数部分としてのリアクタンスとして抵抗を扱います。極型への変換は、位相角と同様に大きさを提供します。 並行して、それはまったく同じことのようなものですが、反応は抵抗と同じ抵抗を並行して追加します。これがポイントです:いくつかの周波数、誘導リアクタンスならびに容量性リアクタンスが等しい。直列回路では、リアクタンスがゼロになるだけでなく、残っているだけでなく抵抗があります。並列回路では、ゼロはフラクションの分母内で巻き取り、その結果、効率的なリアクタンスは無制限(そして純粋な抵抗と並行して、抵抗の値を修正しません)。いずれにせよ、リアクタンスは純粋な抵抗を残す。 共振 リアクタンスが互いにキャンセルされる点は共鳴です。 DIPメーターは共振点で作動しているため、メーターの発振器はそれに最大のトン(最低インピーダンス)を持ちます(最低インピーダンス)、したがって電圧が低下する(またはディップ)。任意の種類の他の周波数では、テスト中の回路の全体的なインピーダが存在するだけでなく、いくつかのリアクタンスが残されます。共振。 Clearly, the most fundamental function of the dip meter is to