機械学習を使用したサーバーログ分析


10

例外ログ、データベースログ、イベントログなどを含むアプリケーションのサーバーログを分析するためにこのタスクが割り当てられました。機械学習は初めてで、Sparkをエラスティック検索とSparks MLlib(またはPredictionIO)で使用しています。結果は、収集された例外ログに基づいて予測できるようになり、次の例外を発生させる可能性が高いユーザーと機能(および追跡してアプリケーションの最適化を改善する他の要素)を予測できるようになります。

ElasticSearchからSparkにデータを取り込み、DataFrameを作成して必要なデータをマッピングすることに成功しました。私が知りたいのは、実装の機械学習の側面にどのように取り組むかです。私は、データの前処理、データモデルのトレーニング、ラベルの作成、そして予測の生成について説明する記事や論文を読みました。

私が持っている質問は

  • 既存のログデータを、トレーニングするデータセットに使用できる数値ベクトルに変換する方法を教えてください。

  • データセットをトレーニングするためにどのアルゴリズムを使用しますか?

この問題へのアプローチ方法に関する提案を探しています。

ありがとうございました。


特定のユーザーが例外の可能性が高いと考える予測能力を持っていた場合、どうしますか?目標は、アプリケーションを最適化することです。アプリケーションの既知のバグを修正するだけでなく、エンジニアが時間を費やす必要のあるバグを改善しようとしていますか?機能エンジニアリングは、このタスクにとって非常に重要な場合があります。また、確率として解釈される0..1値を生成するロジスティック回帰を検討することもできます。

5
目標を達成しすぎていると思います。MLを魔法のブラックボックスとして扱わないでください。結果を得るためには、適切な質問をする必要があります(そのための十分なデータも必要です)。
QUITあり-Anony-Mousse 2015

あなたの問題は、どのユーザーが次の例外を引き起こす可能性が高く、どの機能(およびアプリケーションの最適化を追跡および改善するための他の多くの要素)を予測するために解決されましたか?はいの場合、ソリューションのアプローチを共有していただけますか、それとも他の誰かが共有できますか?
Ashish Tyagi

回答:


12

アルゴリズムで使用するために、個々のログエントリをベクターに変換する必要は必ずしもないと思います。あなたが興味を持っているのは、一連の「ケース」を構成する一連のイベントを時間順に並べた一連のログエントリです。ここでは、収集された一連のログエントリ間の関係が重要です。

この場合は、プロセスマイニング技術の使用を検討してください。これにより、プロセス(アプリケーションの使用)のモデルを構築し、エラーとリワークステップとともに、プロセスステップのパターンを決定できます。

Courseraには、こちらの優れた紹介コースがあります。分析と視覚化を支援する「disco」のようないくつかの開発された商用パッケージもあります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.