Skip to content

第7章:機械学習モデルとの比較について #11

@enakai00

Description

@enakai00

第7章の冒頭で機械学習モデルについて少しだけ触れられていますが、最近は、機械学習の知識のある読者も増えていると思うので、機械学習モデルとの具体的な比較があると、より理解が深まるかもと思い、scikit-learn で簡単な線形モデルとの比較をおこなってみました。

書籍の改訂を計画されているとの事でしたので、「こういう内容もあると面白いかな」というアイデアとして提供させていただきます。あくまで、一読者としての提案ですので、書籍の内容にそぐわないものであれば、無視していただいて結構です m(_ _)m

具体的なコードは、こちらを参照ください。(「機械学習による予測」以降が新しく追加した内容です。)

ポイントとしては、

  • 書籍のモデルの場合は、単調性や凸性に関する制約条件を明示的にモデルに取り入れることができている

  • 機械学習モデルの場合は、これらの制約条件を「明示的」に取り入れるのは難しく、この例の場合は、次のような状況になる

    • Recency と Frequency の線形予測モデル:線形モデルなので単調増加という制約は自動的に満たされるが、モデルが単純すぎてデータにうまくフィットしない(平均二乗誤差が大きくなる)
    • Recency と Frequency の 2 次までの項を用いた線形予測モデル:よりデータにフィットした自然な結果が得られるが、単調増加という制約は満たされなくなってしまう。

というあたりで、いずれも「データとの二乗誤差を最小化する」という意味での最適化を行なっているものの、モデルの構成方法において、制約条件を明示的に取り入れられるかどうかという違いがある点がわかると面白い気がしています。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions