Apache Spark BatchのtNaiveBayesModelプロパティ - 7.2

Machine Learning

Version
7.2
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > 機械学習コンポーネント
データガバナンス > サードパーティーシステム > 機械学習コンポーネント
データクオリティとプレパレーション > サードパーティーシステム > 機械学習コンポーネント

このプロパティはSpark Batchジョブフレームワークで実行されているtNaiveBayesModelを設定するために使います。

Spark Batch tNaiveBayesModelコンポーネントは、機械学習ファミリーに属しています。

このコンポーネントは、ビッグデータ対応のTalend Platform製品およびTalend Data Fabricで利用できます。

基本設定

[Define a storage configuration component] (ストレージ設定コンポーネントを定義)

HDFSなどのターゲットファイルシステムへの接続の設定情報を提供するために使用する設定コンポーネントを選択します。

このチェックボックスをオフにすると、ターゲットファイルシステムはローカルシステムになります。

使用する接続設定は同じジョブ内にあることが必要です。たとえば、tHDFSConfigurationコンポーネントをジョブにドロップした場合は、このコンポーネントを選択して、所定のHDFSシステム内で結果を書き込むことができます。

Sparkバージョン

使っているSparkのバージョンを選択します。

Spark V1.4以降の場合、設定するパラメーターは次のとおりです。
  • [Save the model on file system] (モデルをファイルシステムに保存):

    特定のファイルシステムにモデルを保管するには、このチェックボックスをオンにします。オフの場合、モデルはメモリに保管されます。参照用のボタンはSpark [Local] (ローカル)モードでは機能しません。Spark YarnまたはSpark [Standalone] (スタンドアロン)モードを使用している場合は、同じジョブ内のtHDFSConfigurationなどの設定コンポーネントで接続を適切に設定したことを確認する必要があります。

  • [Label column] (ラベルカラム):

    分類ラベルを提供するために使う入力カラムを選択します。このカラムのレコードは、分類されるエレメントのクラス名(分類の対象)として使われます。

  • [Feature column] (特徴カラム):

    機能を提供するために使う入力カラムを選択します。多くの場合、このカラムはtModelEncoderによって実行された機能エンジニアリング計算の出力です。

Spark 1.3については、このテーブルの以下の行で説明されているパラメーターを参照してください。

[Column type] (カラムタイプ)

分類子モデルを計算するために、このテーブルを完成させて、各入力カラムの特徴タイプを定義します。
  • [Column] (カラム): このカラムには、入力スキーマから自動的に取得された入力カラムがリストされます。

  • [Usage] (使用方法): 各入力カラムのレコードが表す特徴のタイプを選択します。

    たとえば、人の年齢は継続的な特徴を表し、性別はカテゴリー特徴(離散特徴とも呼ばれます)を表します。

    入力カラムに[Label] (ラベル)を選択すると、このカラムのレコードが、分類されるエレメントのクラス名(分類に関してはターゲット)として使われます。モデル計算でカラムを無視する必要がある場合は、[Unused] (未使用)を選択します。

  • [Bin edges] (ビンエッジ): このカラムは、入力カラムが連続的特徴を表す場合にのみアクティブになります。これにより、連続データをビンに離散化できます。つまり、境界値を二重引用符で囲むことにより、連続データをハーフオープンセグメントに分割できます。

    たとえば、人の年齢に関してカラムに"18;35"と入力した場合、年齢は、18以下の年齢、18を超えて35以下の年齢、35を超える年齢という3つのセグメントにグルーピングされます。

  • [Categories] (カテゴリー): このカラムは、入力カラムがカテゴリー特徴を表す場合にのみアクティブになります。使う各カテゴリーの名前を入力し、"male;female"のようにセミコロン(;)で区切る必要があります。

    入力するカテゴリーは入力カラムに存在する必要があります。

  • [Class name] (クラス名): このカラムは、[Usage] (使用方法)カラムで[Label] (ラベル)オプションが選択されている場合にのみアクティブになります。分類に使うクラスの名前を入力し、"platinum-level customer;gold-level customer"のようにクラスをセミコロン(;)で区切る必要があります。

[Training percentage] (トレーニングの割合)

分類子モデルのトレーニングに使う入力データのパーセンテージ(10進形式で表現)を入力します。残りのデータはモデルのテストに使われます。

[PMML model path] (PMMLモデルパス)

使うファイルシステムで生成された分類子モデルを保管するディレクトリーを入力します。

参照用のボタンはSpark Localモードでは機能しません。お使いのディストリビューションでStudioがサポートしているその他のSpark Yarnモードを使用している場合は、同じジョブ内の設定コンポーネント(tHDFSConfigurationなど)で接続を適切に設定したことを確認する必要があります。使用されるファイルシステムに応じて設定コンポーネントを使用します。

単純ベイズ分類モデルで使われるPMML形式の詳細は、http://www.dmg.org/v4-2-1/NaiveBayes.htmlを参照してください。

[Parquet model name] (Parquetモデル名)

分類子モデルに使う必要がある名前を入力します。

使用方法

使用ルール

このコンポーネントは終了コンポーネントとして使用され、入力リンクを必要とします。

[Model evaluation] (モデル評価)

設定する必要があるパラメーターは自由パラメーターであるため、値は以前の実験や経験的推測などによって提供される場合があります。すべてのデータセットに適用できる最適値はありません。

したがって、各クラスで最適な正確性(ACC)スコアと最適な精度、[Recall] (再現率)およびF1測定スコアが得られるまで、さまざまなパラメーター値のセットを使って生成する分類子モデルをトレーニングする必要があります。

  • 精度スコアの範囲は0から1で、分類の精度を示します。精度スコアが1に近いほど、対応する分類が正確になります。

  • [Precision] (適合率)スコアも範囲は0から1までで、分類によって選択されたエレメントの特定のクラスに対する関連性の度合いを示します。

  • [Recall] (再現率)スコアも範囲は0から1までで、関連するエレメントがいくつ選択されているかを示します。

  • F1測定スコアは、[Precision] (適合率)スコアと[Recall] (再現率)スコアの調和平均です。

[Scores] (スコア)

これらのスコアは、Project SettingsダイアログボックスのLog4jビューに次のコードを追加した時にジョブを実行すると、[Run] (実行)ビューのコンソールに出力できます。
<!-- DataScience Logger -->
<logger name= "org.talend.datascience.mllib" additivity= "false" >
<level value= "INFO" />
<appender-ref ref= "CONSOLE" />
</logger>

これらのスコアは、Log4j INFOレベルの他の情報と共に出力されます。無関係な情報が出力されないようにするには、たとえば、この種の情報のLog4jレベルをWARNに変更します。ただし、このDataScience LoggerコードをINFOにしておく必要があります。

サブスクリプションバージョンのStudioを使用している場合は、このコンポーネントのアクティビティは、log4j機能を使用して記録できます。この機能の詳細は、 Talend Studioユーザーガイドをご覧ください。

log4jロギングレベルの詳細は、Apacheのドキュメンテーション(http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html)をご覧ください。