生成モデルとシーケンス モデルは、常に私を魅了してきました。これらのモデルは、機械学習を初めて学ぶときによく遭遇する質問とは異なる質問をします。私が初めて ML を学び始めたとき、多くの人と同じように、分類と回帰を学びました。これらは、次のような質問をしたり答えたりするのに役立ちます。
分類と回帰は習得する価値のあるスキルであり、実際の問題ではどちらもほぼ常に使用できます。ただし、これまでの質問とはまったく異なるタイプの質問をする場合もあります。
夏のインターンシップ中に、TensorFlow の最も高度な API の 2 つ (tf.keras と Eager Execution) を使用してこれらの例を開発しました。ここではその内容を紹介します。役に立つ、興味深い内容だと思っていただければ幸いです。
これらの API を初めて使用する場合は、最近更新された例を含む tensorflow.org/tutorials のノートブックを読んで詳細を学ぶことができます。 次の各例はエンドツーエンドであり、同様のパターンに従います。
例1: テキスト生成 最初の例はテキスト生成です。ここでは、RNN を使用してシェイクスピアのスタイルに似たテキストを生成します。以下のリンクをたどって Colaboratory で実行できます (または GitHub から Jupyter ノートブックとしてダウンロードできます)。コードはノートブックで詳しく説明されています。 例1ノートブック: https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/contrib/eager/python/examples/generative_examples/text_generation.ipynb シェイクスピアが非常に多くの本を書いたことを考慮して、この例ではシェイクスピアのスタイルに似たテキストを生成することを学習します。 シェイクスピア コーパスで 30 エポックのトレーニングを行った後、ノートブックによって生成されたサンプル テキスト。 ほとんどの文章は意味をなさないものの (この単純なモデルはまだ言語の意味を学習していないため)、ほとんどの単語が正しく綴られており、生成されたスクリプトの構造が元のスクリプトの構造に似ているのは印象的です。 (これは文字ベースのモデルであり、長期間トレーニングしたわけではありませんが、これら 2 つのことをゼロから学習することができました)。必要に応じて、コードを 1 行変更するだけでデータセットを変更できます。 ) RNN について詳しくは、Andrej Karpathy の優れた記事「The Unreasonable Effectiveness of Recurrent Neural Networks」をご覧ください。 Keras または tf·Keras を使用した RNN の実装について詳しく知りたい場合は、Francois Chollet のノートブックをお勧めします。 Francois Chollet のノートブック: https://github.com/fchollet/deep-learning-with-python-notebooks 例2: DCGAN この例では、DCGAN を使用して手書きの数字を生成します。生成的敵対ネットワーク (GAN) は、ジェネレーターと識別器で構成されます。ジェネレーターの役割は、ディスクリミネーターを騙すためにリアルな画像を生成することです。識別器の役割は、実際の画像と偽の画像(ジェネレータによって生成されたもの)を分類することです。以下に示す出力は、論文「Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks」で説明されているネットワーク アーキテクチャとハイパーパラメータを使用して、ジェネレータとディスクリミネーターを 150 エポックにわたってトレーニングした後に生成されました。 例2ノートブック: https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/contrib/eager/python/examples/generative_examples/dcgan.ipynb 画像の GIF は 150 エポック中 10 エポックごとに生成されます。この GIF を生成するコードはノートブックにあります。 例3: 注意ニューラル機械翻訳 この例では、スペイン語の文章を英語の文章に翻訳するモデルをトレーニングします。モデルのトレーニングが完了すると、「¿to davia estan en casa?」などのスペイン語の文章を入力すると、「are you still at home?」という英語の翻訳が返されます。 下の図は注目度マップです。翻訳時に入力文のどの部分がモデルの注目を引いたかを示します。たとえば、モデルが「cold」という単語を翻訳したときは、「mucho」、「frio」、「aqui」を参照していました。ノートブックで説明されているように、tf.keras と Eager Execution を使用して、Bahdanau Attention を最初から実装します。この実装をカスタム モデルを実装するための基礎として使用することもできます。 例3ノートブック: https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/contrib/eager/python/examples/nmt_with_attention/nmt_with_attention.ipynb 上記翻訳の注目度マップ。 例4: 注目画像注釈 この例では、画像のキャプションを予測するモデルをトレーニングします。また、キャプションを生成する際にモデルが注目する画像の部分を示す注目マップも生成します。たとえば、モデルが「サーフボード」という単語を予測する場合、画像内のサーフボードに焦点を当てます。ノートブックによって自動的にダウンロードされる MS-COCO データセットのサブセットを使用してモデルをトレーニングします。 例4ノートブック: https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/contrib/eager/python/examples/generative_examples/image_captioning_with_attention.ipynb 画像の予測キャプション。 上の図の各単語の注目度マップ。 オリジナルリンク: https://medium.com/tensorflow/complete-code-examples-for-machine-translation-with-attention-image-captioning-text-generation-51663d07a63d [この記事は51CTOコラム「Machine Heart」、WeChatパブリックアカウント「Machine Heart(id: Almosthuman2014)」からのオリジナル記事です] この著者の他の記事を読むにはここをクリックしてください |
<<: いいえ!機械学習は単なる美化された統計ではありません。
>>: データラベラーの視点からAI技術の詳細な応用を検討する
自然言語処理や画像分類から翻訳など、ほとんどの機械学習タスクは、モデル内のパラメータやハイパーパラメ...
携帯電話からウェアラブルデバイス、翻訳製品まで、人工知能は人々の日常生活に広く浸透しています。 5G...
みなさんこんにちは、ピーターです〜この記事は、Kaggle での機械学習の実践的なケーススタディです...
長い間、CV トレーニングは 2 次元データに限定されてきました。3 次元データのラベル付けにはコス...
メタバースは現実世界を揺るがしており、未知の部分が多すぎるため、賛否両論の評価を受けています。しかし...
Photoshop のようなソフトウェアを使用することは、創造的な作業とみなされますか、それとも反...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
Github を使用しているときに、次のプロンプトを見たことがありますか? $ gitクローン ht...
機械学習を学び始めるべきだと言うインフルエンサーが増えています。彼らの言うことを聞くべきでしょうか?...
簡単に言えば、機械学習とは、非常に複雑なアルゴリズムと技術に基づいて、人間の行動を無生物、機械、また...
数日前、TikTokで、ある親がTikTokの特殊効果を使って子供の年齢と容姿を計測する動画を見まし...
ご存知のとおり、コンピューティング パワーの文字通りの意味はコンピューティング能力です。 「コンピュ...
今日の社会では、デジタル工業化と産業のデジタル化により、デジタル世界と物理世界の深い融合と発展が促進...