Products

Products / BakingSoDA

強化学習(Reinforcement Learning)

強化学習概

マシンラーニングの中では最適化分析上、最も効果的な強化学習(Reinforcement Learning)が活用されています。未来価値を最大化するための意思決定をAIが自ら学習する方法です。教師ありの学習と違い、ターゲットは成果(Reward)であり、予測値はポリシー又は遂行戦略(Action)になります。ビジネス状況に合わせるState, Reward, Environment, Actionなどの最適化された設計を行うことが最も重要です。





過去の結果が十分ではない状態で意思決定(Action)による結果(reward)を元に未来価値(Value)を最大化する方法をAIが自ら学習 

例) 貸出限度額を決定するために試行戦略を自ら学習し、最適な遂行戦略を発掘


予測する対象はなく、データのみで類似グループやパターンを探す分析

群集解析(clustering)、連関分析、ネットワーク分析など 

過去の結果があり、その結果を当てる予測モデルを過去のデータから学習し、導き出す行為

Scoreを算出する分類(Classification)や回帰分析(Regression)
  過去の結果が十分ではない状態で意思決定(Action)による結果(reward)を元に未来価値(Value)を最大化する方法をAIが自ら学習
     例) 貸出限度額を決定するために試行戦略を自ら学習し、最適な遂行戦略を発掘
  予測する対象はなく、データのみで類似グループやパターンを探す分析
  群集解析(clustering)、連関分析、ネットワーク分析など
  過去の結果があり、その結果を当てる予測モデルを過去のデータから学習し、導き出す行為
Scoreを算出する分類(Classification)や回帰分析(Regression)

強化学習(Reinforcement Learning)の定義

強化学習(Reinforcement Learning.以下RL)はマシンラーニングの一つで環境の中に定義されたエージェントが現在の状態を認識し、選択可能な行動の中で報酬を最適化する行動または行動順番を選択する方法です。


エージェント(Agent):状態を観察、行動を選択、目標志向


環境(Environment):エージェントを除いた残り(物理的に定義困難)
状態(State):現在の状況を現れる情報
行動(Action):現在の状況でエージェントがすること
報酬(Reward):行動の良し悪しを教える情報
  エージェント(Agent):状態を観察、行動を選択、目標志向
  環境(Environment):エージェントを除いた残り(物理的に定義困難)
  状態(State):現在の状況を現れる情報
  行動(Action):現在の状況でエージェントがすること
  報酬(Reward):行動の良し悪しを教える情報

強化学習の相互作用

エージェントが環境から自分の状態を観察



その状態でどのような基準(価値関数:現在の状態で未来に受け取ると期待される報酬の合計)による行動を選択
選択した行動を環境で実行
環境から次の状態と報酬を受取
報酬を通し、エージェントが保持した情報を修正
  エージェントが環境から自分の状態を観察
  その状態でどのような基準(価値関数:現在の状態で未来に受け取ると期待される報酬の合計)による行動を選択
  選択した行動を環境で実行
  環境から次の状態と報酬を受取
  報酬を通し、エージェントが保持した情報を修正

強化学習の活用

通常RLは、ゲームやロボットなどの環境に多く利用されます。アジャイルソーダでは、ゲームやロボット分野ではなく、企業のビジネスに強化学習で解決できる問題を定義し、状況に合わせてアルゴリズム(Policy Gradientなど)を適用することでAIが自ら問題解決が出来るように研究を進めています。特にデータ蓄積による戦略の改善と推薦が出来る機能やモデルを開発し、近いうちにSparklingSoDAに搭載する予定です。現在、コンサルティングサービスも提供していますので、詳しいことはお問い合わせ下さい。

Generative Adversarial Network (GAN)

GANの定義

GANという単語の意味は下記の通りです。


G   Generative (生成する)

A   Adversarial (敵対的)

N   Network (ネットワーク)


即ち、データを生成するのにあたり、敵対的な関係にあるネットワークも共に使用し、作られたモデルを指します。 

GANは大きく2つの部分に分かれています。


  Generator

 データを生成する部分です。

 偽造紙幣犯人だと理解して下さい。

 Discriminatorを騙します


  Discriminator

 偽データを見て本物か偽物かを区別する部分です。

 警察だと理解して下さい。

 Generatorが作ったデータが本物か偽物かを区

       別します。


つまり、Discriminator(警察)がGenerator(偽造紙幣犯人)に騙され、区別が出来ないところまでGeneratorが学習を行い、データを生成します。


参照:Deep Learning for Computer Vision: Generative models and adversarial training

(UPC 2016)

GANは大きく2つの部分に分かれています。


 Generator

        データを生成する部分です。

       偽造紙幣犯人だと理解して下さい。

      Discriminatorを騙します。


 Discriminator

        偽データを見て本物か偽物かを区別する部分です。

        警察だと理解して下さい。

        Generatorが作ったデータが本物か偽物かを区別します。


つまり、Discriminator(警察)がGenerator(偽造紙幣犯人)に騙され、区別が出来ないところまでGeneratorが学習を行い、データを生成します。


参照:Deep Learning for Computer Vision: Generative models and adversarial training (UPC 2016) 

GANの活用

GANは、画像データを生成する方向に多く発展されていますが、最近では、単語を作成する試みもあります。アジャイルソーダは、画像や単語ではなく、実際の企業のデータをGANとEmbeddingを通じ、モデリングに必要なデータを生成することにより、モデルの性能を高める研究を進めています。企業の中にはマシンラーニングを行う学習データが不足する場合が多く、マシンラーニングを導入や運営しにくい状況でも画期的なソリューションを提供することになるでしょう。

当社は、こちらをData Aesthetic(データ エステティックドク)サービスと呼んでいます。

Embedding

Embeddingの定義

Embeddingはデータを表現する一つの方法で単語ごとのオブジェクトを実数のベクトルにマップすることです。単語のような個々のオブジェクトの表現する方法を局所表現、実数のベクトルでオブジェクトを表現する方法を分散表現といいます。つまり、局所表現になっているデータを分散表現方法で表す手法がEmbeddingです。代表的なアルゴリズムでWord2Vec、Doc2Vecなどがあります。

Word2Vecは、単一の単語を実数のベクトルでEmbeddingするアルゴリズムであり、Doc2Vecは一つの

Documentation (ニュース記事、ブログ記事などの文書自体)を実数のベクトルでEmbeddingするアルゴリズムです。


参照:Embedding Word2Vec & Doc2Vec

AgileSoDA


アジャイルソーダは企業のお客様が急激に変化する市場環境に対し、機敏に対応できる’AI DevOps環境分析‘を通し、‘最適な意思決定サポートソフトウェア‘を提供する企業です。


ContactUs


AgileSoDA


Contact Us


アジャイルソーダは企業のお客様が急激に変化する市場環境に対し、

機敏に対応できる’AI DevOps 環境分析‘を通し、‘最適な意思決定

サポートソフトウェア‘を提供する企業です。

  ch.choi@agilesoda.ai