シャネルキャトルオンブル362/レティサージュ140

シャネルキャトルオンブル362/レティサージュ140

ブーケ 花束の保存専門店 シンフラワー ウエディングブーケや

  • ブーケ保存専門店フラワー工房Xing「シンフラワー」公式サイト。ウエディングブーケをアフターブーケとして保存加工。プロポーズなど思い出の花束・生花を美しいまま残せる方法。挙式後のご注文でも受付可能。1年間の無償保証。
  • 開発したアプリの紹介です。

    ① RepeCa〜連続復習 Repeat Card〜

    暗記カードに復習機能をプラスしたアプリです。

    カメラで暗記カードを素早く作り、4日連続+1ヶ月後の復習をします。

    復習予定は自動作成・自動更新。

    全体の成果をグラフでひと目で確認できます。

    ※暗記カード5枚分は無料。

    ONE PIECE全巻→「RepeCa〜連続復習 Repeat Card〜」をAppStoreで見る


    ②移動平均AI
     
    アストロシティ ミニ


































    移動平均AIの作り方 最終回は、〜④AWSデプロイ・iOSアプリ編〜 です。

    すべての手順を書くと膨大になるので、方針のみ記載します。

    (セキュリティ上もあまり細やかに記述するのはよろしくない気がするのでかなりざっくりです。)

    <AWSへのニューラルネットワークのデプロイ>
    ・AWS Lambda へデプロイします。
     注意点として、アプリ作成時点でAWS Lambda が Python 2 系(2.7)のみでの動作であったので、Tensorflowライブラリを Python 2 でコンパイルし直す作業が必要でした。
    <iOSアプリの作成>
    ・iOSでは、Lambda で予測したデータを S3 と連携して表示します。(AWS Amplify は AWS の設定を自動化しており"ものすごい"ですね。pod をたくさんインストールするところは複雑です。)
     
    以上、移動平均AIの作り方でした。 

    <AI予測の精度はちゃんとしてるのか?>

    ここでは、 AIの精度の検証結果を1つ示します。
    ※ 投資判断を提供しているわけではありません ので、横軸の日付は伏せています。AIの精度の検証という観点でご覧ください。(市場予測ではありません。)

    移動平均AIのモデルを使用して、予測値が実際の株価の変動(移動平均との関係)をどのくらいの精度で予測しているかの検証です。 専用 GUCCI キッズ ナイロン ジップジャケット


    AI予測が棒グラフです。

    ニューラル・ネットワークは良くも悪くもこういった精度です。

    アプリでは、"客観的な参考情報"として提供している所以です。


    (余談 AIの作成過程について)


      

     
    シリーズ「移動平均AI」、第3回は 〜予測してみる編〜 です。

    ここから移動平均乖離率(の推移)を求めます。
    # <<<<< 移動平均を計算 >>>>>
    def add_divergence(input_data_df):
        input_data_df = input_data_df.assign(MD=0)
        sum = float()
        for i in range(len(input_data_df)-1-T ,len(input_data_df)):
            for j in range(0, T):
                sum = sum + input_data_df.iloc[i+j-(T-1),0]
            input_data_df.iloc[i,4] = sum/T
            sum = 0
        return input_data_df
    # <<<<<  移動平均解離度を計算 >>>>>
    def add_div_divergence(input_data_df):
        input_data_df = input_data_df.assign(Div=0)
        for k in range(len(input_data_df)-1-T, len(input_data_df)):
            input_data_df.iloc[k,5] = input_data_df.iloc[k,0]/input_data_df.iloc[k,4]
        return input_data_df
    # <<<<< Neural Net への入力データを取り出す >>>>>
    def get_feature_data(input_data_df):
        # 注! 最後に[NaN]があるので調整している
        input_data_df = input_data_df.iloc[len(input_data_df)-T-1:len(input_data_df)-1,5]
        predictor_ndarray = input_data_df.T.values
        feature_data = np.array([predictor_ndarray]).astype('float32')
        return feature_data
    
    ここまでで、最新のデータを入力データに加工できました。

    ここから、ニューラル・ネットワークモデルをロードして予測します。
    (⬇ここまでの処理を実行するメイン関数)
    注:出力の調整について入力の調整でも述べたように、ばらつきが大きくデータの意味が読めないことで調整を行っています。これが移動平均AIの提供している予測です。


    ※ 免責事項の繰り返しになりますが、本モデルは

     

    (以下、余談)(小難しい言い方をすると、あるいは感覚的な言い方をすると、)
    "乖離率(離れ具合)の推移(の形状)"を AIが "見て(認識して)" 、
    学習させた期間の推移を"総合的なパターン"としてAIの判断基準としたときに、(条件分岐を組み合わせたり、新たな計算をすることなく、)
    移動平均AIの作り方  〜②機械学習編〜 です。
    ①で作成した入力データを調整しました。
    調整したのは、データ列の最後の「UP_Ratio」(上昇・下落度)です。


    最終的に2つの"強調加工”をしました。
    ・1つ目は、変化の幅を強調するため、過去5営業日間で一番絶対値が大きい変化率をその日の変化率としました。これで、“株価の上下の方向性が強調される“よう加工しました。

    加工した入力データ(各営業日に対して、当日〜25日前までの移動平均乖離度の列+調整した当日の変化率)をニューラルネットに学習させます。

    Tensorflowを使用しました。
    ニューラルネットの構成は以下のとおりです。
    ・入力層(25) ー 中間層(25) ー 出力層(1) ※()内はノード数・損失関数は単純に二乗誤差としました。(エントロピーなどでは良い結果が出ませんでした。) 正答誤差については、各自調整してください。


    ここまでで入力データをロードし、整形しました。 以下がニューラル・ネットワークの構成です。

    次に学習を行います。学習後、正答率の算出を行っています。(ここでは正答率のみで、F1 Score等出してません。)

    ⬇上記処理を行うメイン関数です。

    今回はここまでです。

     

     

    KERASTASE✨ディシプリン✨フルイドオレオリラックス✨くせ毛new基本編✨