連載記事

複数記事に分けて公開したものをシリーズごとに分けています。

子どもとプログラミング Googleサイトの使い方 Aiとプログラミング Aiとイラスト
    公開日:11/12/2018
    シェア:

    GoogleAIの勉強:コース選択

      GoogleAIのオープニングも読み終えたところで、さっそく「Machine Learning Crash Course」からAIの勉強をすすめていきたいと思います。

    前回「Machine Learning Crash Course」を開きましたが、一番上のリンクボタンから入っていきたいと思います。
    出典:Machine Learning Crash Course

    VIEW PREREQUISITES

    ここでは「VIEW PREREQUISITES」を開いていきます。素直に「StartCrashCourse」でに良いのですが、そちらは英語の動画で解説を視聴できようで、中学英語ではまったく太刀打ちできないため、テキストでの解説があり、Google翻訳で何とかなりそうな「VIEW PREREQUISITES」を選びます。
    出典:Machine Learning Crash Course
    開いたページはもちろん英語なので、Goole翻訳さんに働いてもらいます。
    前提条件とプレワークマシンラーニングクラッシュコースはあなたのために適切ですか?
    • 私は、機械学習の背景がほとんどまたはまったくありません。
    • 私は機械学習の背景を持っていますが、私はもっと最新かつ完全な理解をしたいと思います。
    • 私は機械学習を本当にうまく理解していますが、私はTensorFlowについてほとんどまたは全く知りません。
    マシンラーニングクラッシュコースを開始する前に、次の前提条件とプレワークセクションを読んで、すべてのモジュールを修了する準備が整ったことを確認してください。
    前提条件機械学習クラッシュコースは、機械学習における事前知識を前提としていません。ただし、提示された概念を理解し、練習を完了するためには、以下の前提条件を満たすことをお勧めします。
    イントロレベル代数のマスター。変数や係数、線形方程式、関数のグラフ、ヒストグラムに慣れている必要があります。(対数や微分などの高度な数学の概念に精通していることは役に立ちますが、必須ではありません)。
    プログラミングの基礎知識とPythonでのコーディング経験 Machine Learningクラッシュコースのプログラミング演習は、TensorFlowを使用してPythonでコーディングされてい ます。これまでのTensorFlowの経験は必要ありませんが、関数定義/呼び出し、リストと辞書、ループ、条件式などの基本的なプログラミング構造を含むPythonコードの読み書きは快適です。
    注:参照の主要な概念とツールごとの基準材料で、機械学習のクラッシュコースで使用される数学やプログラミングの概念の詳細なリストについては、以下のセクションを。プレワークプログラミング演習は、Colaboratory プラットフォームを使用して、ブラウザで直接実行されます(設定は不要です)。Colaboratoryはほとんどの主要なブラウザでサポートされており、ChromeとFirefoxのデスクトップ版で最も完全にテストされています。エクササイズをオフラインでダウンロードして実行する場合は、ローカル環境を設定する手順を参照してください 。
    パンダ入門機械学習クラッシュコースのプログラミング演習では、 データセットを操作するためにパンダライブラリを使用します。あなたがパンダに精通していない場合 は、演習で使用された主要なパンダの特徴を示すパンダチュートリアルのクイック入門を完了することをお勧めします。
    低レベルのTensorFlowの基礎Machine Learning Crash Courseのプログラミング演習では、TensorFlowの高レベル tf.estimator APIを使用してモデルを構成します。最初からTensorFlowモデルを作成する場合は、次のチュートリアルを完了してください。
    TensorFlow Hello World:低レベルのTensorFlowでコード化された「Hello World」。
    TensorFlowプログラミングコンセプト:TensorFlowアプリケーションの基本コンポーネント(テンソル、演算、グラフ、およびセッション)のウォークスルー。
    テンソルの 作成と操作:テンソルの簡単な入門:TensorFlowプログラミングの中心的な抽象化。また、線形代数における行列の加算と乗算についてのリフレッシャーを提供します。
    主な概念とツール機械学習クラッシュコースでは、以下の概念とツールについて説明し、適用します。詳細については、リンクされたリソースを参照してください。
    • 数学
    • 代数
    • 変数、 係数、関数
    • 線形方程式のような
    • 対数、対数方程式など
    • シグモイド関数
    • 線形代数
    • テンソルとテンソルのランク
    • 行列乗算
    • 三角法
    • Tanh(活性化関数として議論され、 事前知識は必要ありません)
    • 統計
    • 平均値、中央値、異常値、および標準偏差
    • ヒストグラムを読む能力
    • 微積分(高度なトピックの場合はオプション)
    • デリバティブの概念 (実際にデリバティブを計算する必要はありません)
    • 勾配 または勾配
    • 部分派生 (勾配に密接に関連している)
    • チェーンルール ( ニューラルネットワークをトレーニングするためのバックプロパゲーションアルゴリズムの完全な理解のため)
    • Pythonプログラミング
    • 基本的なPython
    次のPythonの基礎については、「The Python Tutorial」を参照してください。
    • 位置パラメータとキーワードパラメータを使用して、関数を定義して呼び出す
    • 辞書、 リスト、 セット(作成、アクセス、反復)
    • forループは、 for複数のイテレータ変数(例えば、とループfor a, b in [(1,2), (3,4)])
    • if/else条件ブロックと 条件式
    • 文字列フォーマット (例えば、'%.2f' % 3.14)
    • 変数、代入、基本データ型 (int、float、bool、str)
    pass声明
    中間Python
    次のより高度なPythonの機能については、 The Python Tutorialも参照してください。
    • リスト内包
    • ラムダ関数
    サードパーティのPythonライブラリ機械学習クラッシュコースコードの例では、サードパーティライブラリの次の機能を使用しています。これらのライブラリに事前に精通している必要はありません。必要なときに知る必要があるものを探すことができます。
    • Matplotlib(データ視覚化用)
    • pyplot モジュール
    • cm モジュール
    • gridspec モジュール
    • シーボーン(ヒートマップ用)
    • heatmap 関数
    • パンダ(データ操作用)
    • DataFrame クラス
    • NumPy(低レベルの数学演算の場合)
    • linspace 関数
    • random 関数
    • array 関数
    • arange 関数
    • scikit-learn(評価指標用)
    • メトリックモジュール
    • Bashターミナル/クラウドコンソール
    ローカルマシンまたはクラウドコンソールでプログラミング演習を実行するには、コマンドラインでの作業が快適である必要があります。
    • Bashリファレンスマニュアル
    • バッシュのチートシート
    • シェルを学ぶ
    (出典:Machine Learning Crash Course(翻訳)
    なんかいろいろ書いてありました。ざっくりまとめてみた感じでは、
    1. 少しはプログラミング経験があった方が良いよ。
    2. TensorFlowというものを使うよ
    3. Colaboratoryを使うけど、ブラウザで動くから大丈夫だよ
    という感じでしょうか。TensorFlowというのはGoogleさんが開発して公開している「機械学習ライブラリ」ということで、当然GoogleAIでも必要になるわけですね。もう少しいろいろ書いてある気がするのですが、途中でわからなくなったら帰ってこようと思います。
    どちらにしても、プログラミングのベースは多言語とそれほど変わるとも思えないので、過去にCとかJAVAとかBASICをやったことがある人なら問題ないでしょう。やったことがなかったとしても、ここで覚えていければ良い気がします。

    私は、機械学習の背景がほとんどまたはまったくありません。

    出典:Machine Learning Crash Course(翻訳)

    必要条件など見てきたので、もう一度一番上に戻りましょう、ここに3つの選択肢があります。
    • 私は、機械学習の背景がほとんどまたはまったくありません。
    • 私は機械学習の背景を持っていますが、私はもっと最新かつ完全な理解をしたいと思います。
    • 私は機械学習を本当にうまく理解していますが、私はTensorFlowについてほとんどまたは全く知りません。
    どうやらレベルに合わせてコースが選べるようです。2番目と3番目の違いがわかりにくいのですが、このページを見に来ている人は迷わず一番上の「私は、機械学習の背景がほとんどまたはまったくありません。」を選択で良いかと思います。
    GoogleAIを広めたいGoogleさんなので、さぞかし丁寧に教えてくれるのだろうと期待して、GoogleAIのレッスンスタートです!
     

よく読まれている記事