CART 訓練アルゴリズム – NP 完全問題

CART アルゴリズムについて説明している以下の文のうち、正しくものを選んでください.

[選択肢]
1. CART アルゴリズムは binary tree しか作らない.
2. scikit-learn の決定木用のクラスには CART アルゴリズムが最小されている.
3. CART アルゴリズムでは、ツリーを深くした方が正則化される.
4. CART アルゴリズムで最適な気を見つけるとき、NP 完全問題が発生するため、最適な木は見つからない.

計算量

決定木の計算量に関数する説明として正しいものを選択肢 1 ~ 3 から選んでください.

1. 決定木は大きな訓練インスタンスに対して訓練を高速化できる.
2. 予測全体の計算量は特徴量の数によらず、$${LARGE[O(log_{2}m)]}$$ となる.
3. 決定木では深さによってノード数が大きく異なるため、計算量を求めることができない.

決定技によるクラス確率の推計、分類

次のコードで空欄になっている行に入る適切な選択肢から選び、決定木を用いてクラス分類してください.
from sklearn.datasets import load_iris
# Q1:DecisionTreeClassifier クラスをインポートしてください.
from ########## import DecisionTreeClassifier

[Q1 選択肢]
1. sklearn.linear_model
2. sklearn.ensemble
3. sklearn.metrics
4. sklearn.tree

iris = load_iris()

# 花弁の幅は 2cm 以上
X = iris.data[:, 2:]
y = iris.target

# Q2:深さ 2 の決定木を定義し、訓練してください.( 2 行 )
d_tree = ##########
d_tree.fit(X, y)

[Q2の選択肢]
1. DecisionTreeClassifier(max_depth=2, random_state=42)
2. DecisionTreeClassifier(random_state=42)
3. DecisionTreeClassifier(2, random_state=42)

# Q3:花弁の長さが 3cm 、幅が 1.5cm の場合、どのクラスに分類されたかを出力してください.( 1 行 )
##########

[Q3の選択肢]
1. print(d_tree.predict([[3, 1.5]]))
2. print(d_tree.score([[3, 1.5]]))
3. print(d_tree.fit([[3, 1.5]]))

計算量

決定木の計算量に関数する説明として正しいものを選択肢 1 ~ 3 から選んでください.

1. 予測全体の計算量は特徴量の数によらず、$${LARGE[O(exp(m))]}$$ となる.
2. 予測全体の計算量は特徴量の数によらず、$${LARGE[O(n times log_{2}m)]}$$ となる.
3. 予測全体の計算量は特徴量の数によらず、$${LARGE[O(log_{2}m)]}$$ となる.

決定技によるクラス確率の推計、分類

次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、決定木を用いてクラスの確率を推計してください.

from sklearn.datasets import load_iris
# Q1:DecisionTreeClassifier クラスをインポートしてください.
from ########## import DecisionTreeClassifier

[Q1 選択肢]
1. sklearn.metrics
2. sklearn.tree
3. sklearn.linear_model
4. sklearn.ensemble

iris = load_iris()

# 花弁の幅は 2cm 以上
X = iris.data[:, 2:]
y = iris.target

# Q2:深さ 2 の決定木を定義し、訓練してください.( 2 行 )
d_tree = ##########
d_tree.fit(X, y)

[Q2の選択肢]
1. DecisionTreeClassifier(C=2)
2. DecisionTreeClassifier(random_state=2)
3. DecisionTreeClassifier(max_depth=2)

# Q3:花弁の長さが 3cm 、幅が 1.5cm の場合、どのクラスに分類されたかを出力してください.( 1 行 )
##########

[Q3の選択肢]
1. print(d_tree.score([[3, 1.5]]))
2. print(d_tree.fit([[3, 1.5]]))
3. print(d_tree.predict([[3, 1.5]]))

不純度 – ジニ係数、エントロピー

不純度について説明している以下の文で空欄に入る適切な単語を選択肢 1 ~ 3 から選んでください.

決定木では、不純度と呼ばれれる指標を用いて性能を評価できる.
例えばジニ係数 gini を不純度の指標とし、決定木でクラスの確率推計を行い各葉ノードにインスタンスを移していった場合、
それぞれの葉ノード内に存在するインスタンスのクラスが全て一致していると不純度 gini = ( Q1 _____ ) となり、
そのノードは純粋と言える.

[選択肢]
1. 0
2. 0.5
3. 1

決定技によるクラス確率の推計、分類

scikit-learn に用意されている以下のクラスにおける正則化パラメータとして正しいものを選んでください.
また、以下の Q4 にも答えてください.
(同じ選択肢を複数回使用しても構いせません.)

Q1:LogisticRegression
Q2:DesicionTreeRegressor
Q3:DesicionTreeClassifier

[Q1 — 3選択肢]
1. gamma
2. n_estimators
3. max_depth
4. C

Q4:また、それぞれの正則化パラメータをどのように設定すると過学習を緩和できるのか、正しいものを選んでください.
   (Q1 > Q2 > Q3 の順で記入してください.)

[Q4 選択肢]
1. より小さくする
2. より大きくする

決定技によるクラス確率の推計、分類

scikit-learn に用意されている以下のクラスにおける正則化パラメータとして正しいものを選んでください.
また、以下の Q4 にも答えてください.
(同じ選択肢を複数回使用しても構いせません.)

Q1:LogisticRegression
Q2:DesicionTreeRegressor
Q3:DesicionTreeClassifier

[Q1 — 3選択肢]
1. max_depth
2. n_estimators
3. C
4. gamma

Q4:また、それぞれの正則化パラメータをどのように設定すると過学習を緩和できるのか、正しいものを選んでください.
   (Q1 > Q2 > Q3 の順で記入してください.)

[Q4 選択肢]
1. より大きくする
2. より小さくする