DUICUO

これらのオープンソース プロジェクトは機械学習に不可欠です。

Leifeng.com AI研究所 注記:この記事は主にGitHubの記事「機械学習入門」(オリジナルリンク:https://github.com/collections/machine-learning)の翻訳です。Leifeng.com AI研究所は、AI開発者により詳細なAIプロジェクトとリソースを提供するために、オリジナルの記事にいくつかのオープンソースプロジェクトを補足しました。

[[216684]]

機械学習とは、データを用いて学習、要約、予測を行う学問です。近年、データの発展、アルゴリズムの改良、ハードウェアの計算能力の向上に伴い、機械学習技術は急速に発展し、新たな分野への進出を続けています。パターン認識からビデオゲームまで、開発者はAIアルゴリズムを学習させることで、多種多様な楽しいアプリケーションを開発しています。

MarI/O

ソースコードアドレス: https://pastebin.com/ZZmSNaHX

ニューラルネットワークと遺伝的アルゴリズムを使用して作成されたプログラムは、「スーパーマリオワールド」をプレイできます。

リチャード・アン/Wechat_AutoJump

GitHubアドレス: https://github.com/Richard-An/Wechat_AutoJump

AIがWeChatのジャンプジャンプゲームをプレイする正しい方法。

lllyasviel/style2paints

GitHub アドレス: https://github.com/lllyasviel/style2paints

漫画の線画に自動的に色を付ける AI 搭載ツール。

テンソルフロー/マゼンタ

GitHub アドレス: https://github.com/tensorflow/magenta

機械生成のインテリジェントな音楽とアートのジェネレーター。

jbhuang0604/素晴らしいコンピュータビジョン

GitHub アドレス: https://github.com/jbhuang0604/awesome-computer-vision

非常に優れたコンピューター ビジョン リソース。

研究者たちは機械学習の分野で素晴らしい進歩を遂げてきましたが、その開発はまだ初期段階にあります。

機械学習を初めて使用する開発者が機械学習とは何かを理解するには、まず入力、アルゴリズム、出力の 3 つの部分を理解する必要があります。

入力: 機械学習を動かすデータ

入力とは、アルゴリズムとモデルのトレーニングに必要なデータセットを指します。入力には、ソース コードから統計まで、あらゆるものが含まれます。

GSA/データ

GitHub アドレス: https://github.com/GSA/data

米国一般調達局からの分類データ。

Googleトレンド / データ

GitHub アドレス: https://github.com/GoogleTrends/data

Google オープンソースデータインデックス

国立公園サービス / データ

GitHub アドレス: https://github.com/nationalparkservice/data

米国の国立公園の非公式データベース。

fivethirtyeight / データ

GitHub アドレス: https://github.com/fivethirtyeight/data

ニュースサイトFiveThirtyEightからのコードとデータの一部。

ザランドリサーチ/ファッション・ミニスト

GitHubアドレス: https://github.com/zalandoresearch/fashion-mnist

MINISTに似たファッション商品データベース。

ビームアンドリュー / 医療データ

GitHubアドレス: https://github.com/beamandrew/medical-data

機械学習用の医療データのリスト。

src-d/ソースコード上の素晴らしい機械学習

GitHub アドレス: https://github.com/src-d/awesome-machine-learning-on-source-code

機械学習に関連する論文へのリンクとコード。

ペアコード/ファセット

GitHubアドレス: https://github.com/PAIR-code/facets

機械学習データセット可視化ツール。

機械学習アルゴリズムをトレーニングするにはこのデータが必要なため、高品質のデータセットを入手することは、今日の機械学習分野における最大の課題の 1 つです。

アルゴリズム:データを処理し分析する方法

機械学習アルゴリズムは、データを用いて特定のタスクを実行します。最も一般的な機械学習アルゴリズムには、以下のものがあります。

1. 教師あり学習。

教師あり学習では、ラベル付けされた構造化されたデータを使用します。入力データセットから望ましい出力を指定することにより、機械はターゲットを識別し、他の学習タスクにマッピングする方法を学習できます。

たとえば、決定木学習では、入力データのセットに決定ルールを適用することで数値を予測できます。

イグリゴリック / 決定木

GitHub アドレス: https://github.com/igrigorik/decisiontree

ID3 に基づく機械学習決定木アルゴリズムの実装。

2. 教師なし学習

教師なし学習とは、非構造化データを用いてパターンや構造を発見するプロセスです。教師あり学習ではスプレッドシートを入力データとして用いるのに対し、教師なし学習は書籍や記事の理解に用いられる場合があります。

たとえば、教師なし学習は自然言語処理で非常に人気のある手法です。

ケオン / awesome-nlp

GitHub アドレス: https://github.com/keon/awesome-nlp

自然言語処理 (NLP) 専用のリソースのリスト。

3. 学習を強化する

強化学習では、報酬と罰を使用してエージェントの行動を最適化する、特定の目標を達成するためのアルゴリズムが必要です。

たとえば、強化学習は自動運転車の開発やロボットに物体の生産方法を教えるのに使用できます。

オープンエア / ジム

GitHubアドレス: https://github.com/openai/gym

強化学習アルゴリズムを開発および比較するためのツールキット。

aikorea / 素晴らしい

GitHubアドレス: https://github.com/aikorea/awesome-rl

強化学習用に特別に設計されたリソースのリスト。

練習に使えるプロジェクトをいくつか紹介します。

ウムティシク / アイゲンテクノ

GitHubアドレス: https://github.com/umutisik/Eigentechno

音楽ループの主成分分析

jpmckinney/tf-idf-類似度

GitHubアドレス: https://github.com/jpmckinney/tf-idf-similarity

Ruby gem では、テキスト間の類似度を計算するために tf * idf が使用されます。

scikit-learn-contrib/lightning

GitHub アドレス: https://github.com/scikit-learn-contrib/lightning

Python での大規模な線形分類、回帰、ランキング。

gwding / draw_convnet

GitHub アドレス: https://github.com/gwding/draw_convnet

畳み込みニューラル ネットワーク (ConvNet) を説明するために使用される Python スクリプト。

いくつかのライブラリとツール:

scikit-learn / scikit-learn

GitHub アドレス: https://github.com/scikit-learn/scikit-learn

Python で機械学習を実装します。

テンソルフロー / テンソルフロー

GitHub アドレス: https://github.com/tensorflow/tensorflow

数値計算にデータフロー グラフを使用するオープン ソース ソフトウェア ライブラリ。

テアノ / テアノ

GitHub アドレス: https://github.com/Theano/Theano

多次元配列を含む数式を効率的に定義、最適化、評価できる Python ライブラリ。

将軍ツールボックス/将軍

GitHubアドレス: https://github.com/shogun-toolbox/shogun

非常に効率的なオープンソースの機械学習ツール。

デイビスキング / dlib

GitHub アドレス: https://github.com/davisking/dlib

C++ で記述された機械学習およびデータ分析アプリケーション用のツールキット。

Apache / 予測

GitHub アドレス: https://github.com/apache/predictionio

Apache Spark、HBase、Spray をベースにした、開発者および機械学習エンジニア向けの機械学習サーバー。

その他のディープラーニングフレームワークについては、次の記事をご覧ください。

2017年のディープラーニングフレームワークの発展を振り返る:PyTorchの登場、Theanoの終焉

出力: 最終結果

機械学習の出力は、色を認識するためのパターン、ウェブページの単純な色調分析、あるいは特定の信頼区間内の予測値など、多岐にわたります。つまり、出力は何でもあり得るのです。

出力結果を取得するにはいくつかの方法があります。

  • 分類: データセット内の各項目の出力値を生成します。

  • 回帰: 与えられたデータに基づいて、検討中の変数の最も可能性の高い値を予測します。

  • クラスタリング: 類似したパターンを持つデータをグループ化します。

以下にいくつかのアプリケーション例を示します。

ディープマインド / pysc2

GitHubアドレス: https://github.com/deepmind/pysc2

DeepMind は強化学習を使用して StarCraft 2 をプレイします。

gokceneraslan/awesome-deepbio

GitHub アドレス: https://github.com/gokceneraslan/awesome-deepbio

生物学コンピューティング分野におけるディープラーニング アプリケーションのリスト。

ブリブリスリ / ByteNet

GitHub アドレス: https://github.com/buriburisuri/ByteNet

DeepMind ByteNet を使用して実装され、Tensorflow をベースにしたフランス語から英語への翻訳者。

オープンNMT/オープンNMT

GitHub アドレス: https://github.com/OpenNMT/OpenNMT

Torch 上のオープンソースのニューラル機械翻訳。

機械学習を始める準備はできていますか?

オープンソース プロジェクトを活用して機械学習を習得しましょう。また、以下の開発者のようにリソースを貢献することもできます。

機械学習:

josephmisiti/素晴らしい機械学習

https://github.com/josephmisiti/awesome-machine-learning

いくつかの機械学習フレームワーク、ライブラリ、ソフトウェアのリスト。

ujjwalkarn/機械学習チュートリアル

https://github.com/ujjwalkarn/機械学習チュートリアル

機械学習とディープラーニングのチュートリアル、記事、その他のリソース。

ディープラーニング

素晴らしいディープラーニング

https://github.com/ChristosChristofidis/awesome-deep-learning

いくつかの優れたディープラーニングのチュートリアル、プロジェクト、コミュニティ。

ファスタイ / コース

https://github.com/fastai/courses

fast.ai コース。

テンソルフロー:

jtoy / awesome-tensorflow

GitHub アドレス: https://github.com/jtoy/awesome-tensorflow

TensorFlow リソースリスト: http://tensorflow.org

nlintz / TensorFlow チュートリアル

GitHub アドレス: https://github.com/nlintz/TensorFlow-Tutorials

TensorFlow に関する簡単なチュートリアル。

pkmital/tensorflow_tutorials

GitHub アドレス: https://github.com/pkmital/tensorflow_tutorials

TensorFlow の基本と興味深い応用についていくつか紹介します。

***、Leifeng.com(WeChat公式アカウント:Leifeng.com)AI研究所は、プログラマー向けにさらに2つの禅のようなコメントを追加し、バグのないプログラミングを仏が祝福してくれることを願っています。

Guicai-Li/OneDay

https://github.com/Guicai-Li/OneDay

ヨンドゥル/仏陀

https://github.com/YondoL/Buddha/blob/master/index.html