以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
回帰分析とは、ある変数を1つ以上の別の変数を用いて予測する手法である。例として、「身長」と「体重」から「肥満度」を予測する問題を考える。このとき「身長」と「体重」は説明変数、「肥満度」は目的変数となる。また、回帰分析のうち、1つの説明変数で予測するものを単回帰分析という。
目的変数 $y$ と説明変数 $x$ の関係性を一次関数 $y = ax + b$ としたとき、パラメータ $a, b$ の値を求める方法の1つが( ア )である。単回帰分析における( ア )では、データ $y$ と推定値 $ax + b$ の差(残差)を最小化するようにパラメータ $a, b$ の値を求める。
単回帰分析において、直線 $y = ax + b$ の( イ )を回帰係数という。
A. (ア)最小二乗法 (イ)$a$
B. (ア)最尤法 (イ)$a$
C. (ア)最小二乗法 (イ)$y$
D. (ア)最尤法 (イ)$y$
単回帰分析において、直線の式の傾き$a$を回帰係数といいます。最小二乗法では、理論的に1つの正しい解が解析的に求められます。そのため、同じデータに対して最小二乗法を行うと、毎回必ず同じ回帰係数が算出されます。
【ある商品の売上を目的変数、来客者数を説明変数とした場合の単回帰直線】
<図32_050_2-1--->
図32_050_2-1 来客者数と売上の散布図および単回帰直線
<--->
最尤法は、尤度が最大になるようにパラメータを求める方法です。尤度とは、確率密度関数において確率変数に観測値を代入したものです。単回帰分析において、最小二乗法の代わりに用いられることもあります(B、D)。よって、空欄アは「最小二乗法」、空欄イは「$a$」となります。以上より組み合わせが正しい選択肢Aが正解です。
試験対策
最小二乗法、回帰係数について説明できるようにしておきましょう。試験対策
本問では特に触れませんでしたが、『データサイエンティスト検定(リテラシーレベル)公式リファレンスブック』では、$b$も回帰係数として取り扱っています。一方で、$a$のみを回帰係数として定義している書籍も存在します。DS検定にて、切片$b$が回帰係数に含まれるかどうかを問われた場合は、公式リファレンスブックにならい、$b$も含まれると解答するのがよいでしょう。
<図PAGE_ID-n--->)に変換しました。データ集合のスケールを調整する方法の1つに、標準化という手法がある。観測値 $x_i (i = 1, 2, \dots, n)$ が与えられた際、$x_i$ に対する標準化の計算式として、最も適切なものを選べ。
(ここでは $x_i$ の平均を $\mu$、$x_i$ の標準偏差を $\sigma$ とし、$x_i$ の最大値を $x_{\text{max}}$、$x_i$ の最小値を $x_{\text{min}}$ とする。)
A.
$$\sqrt{x_i^2}$$
B.
$$\frac{x_i - x_{\text{min}}}{x_{\text{max}} - x_{\text{min}}}$$
C.
$$\frac{x_i - \mu}{\sigma}$$
D.
$$\frac{x_i - x_{\text{max}}}{x_{\text{min}}}$$
04_100_1
\text{})に修正しました。標準化(z-score normalization)とは、ある変数 $x$ の値を、平均が0、標準偏差が1になるように変換する操作です。具体的な計算手順としては、まず $x$ の平均($\mu$)と標準偏差($\sigma$)を求め、次に、$x$ のそれぞれの要素について、$x$ の平均($\mu$)を引き、$x$ の標準偏差($\sigma$)で割ります。
$$ \frac{x_i - \mu}{\sigma} $$
以上より、選択肢Cが正解です。
Aは、正と負のどちらも取り得る変数の値を、絶対値に変換するための方法です。
Bは、値が0から1の範囲に収まるように変換する方法であり、一般に0-1正規化と呼ばれます。
Dは、$x$ の各要素から $x$ の最大値を引き、それを $x$ の最小値で割っています。通常、このような変換を変数に施すことはありません。
標準化や0-1正規化を行うと、異なるデータ集合のスケール(単位)を揃えることができます。例として、100人分の身長と体重のデータを考えてみます。身長の平均が $160 \,\mathrm{cm}$ で、体重の平均が $60 \,\mathrm{kg}$ になるとします。このとき、身長と体重の値を直接比較しても、意味のある結果は得られません。これは「身長データにおける $1 \,\mathrm{cm}$」と「体重データにおける $1 \,\mathrm{kg}$」のスケールが異なるためです。
ここで、身長と体重のデータ集合のそれぞれに対して標準化を行ってみます。すると、標準化後の身長と体重のデータ集合は、それぞれ平均が0で分散が1になります。この状態のデータでは、スケールが揃っているため、ある値が平均からどの程度離れているかを厳密に数値で評価することができます。これにより「Aさんは平均と比べ、身長が0.3大きいが、体重は0.2小さい」といったように、スケールを統一した状態で身長と体重の値を比較することができます。
0-1正規化を行う場合の注意点としては、データ集合に外れ値(解答12参照)が含まれている場合、変換後のデータ集合が偏ってしまうということが挙げられます。例えば、ある身長データ集合に、身長 $210 \,\mathrm{cm}$ の人が含まれていたとします。この身長データ集合を0-1正規化すると、身長 $210 \,\mathrm{cm}$ の人が含まれていない場合と比べ、変換後のデータ集合が0付近に偏ってしまいます。
データ分析や機械学習では、標準化のほうがよく用いられますが、データ集合の最大値や最小値が決まっている場合は、0-1正規化も用いられます。例えば、画像データの場合は、各ピクセルの値が0~255として扱われるため、0-1正規化がよく用いられます。
試験対策
標準化と0-1正規化の違いを説明できるようにしておきましょう。
\mathrm{})で表記し、数値との間に \, スペースを挿入しました(例:$160 \,\mathrm{cm}$)。あなたは、中古車の買取価格を予測する機械学習のプロジェクトに携わっている。クライアントから、以下の表に示すようなデータを預かった。このデータのうち、説明変数として用いる際に、ダミー変数に変換する必要のある項目として、最も適切なものを選べ。
【中古車の買取価格データ】
| 製造年 | 買取価格 | 自動車の規格 | 走行距離 | 排気量 |
|---|---|---|---|---|
| 2015 | 200,000 | 軽自動車 | 30,405 | 655 |
| 2003 | 100,000 | コンパクトカー | 122,340 | 1,498 |
| 2001 | 80,000 | 軽自動車 | 150,252 | 639 |
| 2016 | 400,000 | ミニバン | 23,500 | 2,000 |
A. 走行距離
B. 排気量
C. 自動車の規格
D. A〜Cのすべてが変換の対象となる
データは、その性質によって数値演算のできない質的データ(質的変数)と、数値演算のできる量的データ(量的変数)に分けられます。「製造年」や「走行距離」「買取価格」「排気量」は量的データに該当します(A、B)。
質的データのうち、個々のデータを識別するための名称や固有番号(例:郵便番号、氏名など)を名義尺度といいます。名義尺度は、数値としての意味をもたないため、数値演算を行うことはできません。設問のデータにおいては、「自動車の規格」が名義尺度に該当します(C)。
質的データは、多くの場合、数値によって表現されていません。数値で表現されていないデータはそのままでは学習に利用できないため、何らかの方法を用いて数値で表現されたデータに変換する必要があります。質的データの各カテゴリに便宜的に割り当てる数値をダミー変数といいます。
数値で表現されたデータに変換する際に最もよく用いられる方法は、ワンホットエンコーディング (one-hot encoding) です。ワンホットエンコーディングでは、対象となる変数を、その変数が取り得る値(カテゴリ)ごとに別々の変数に分解します。例えば、この問題における「自動車の規格」をワンホットエンコーディングによってダミー変数に変換する場合、新たに「軽自動車」「コンパクトカー」「ミニバン」という変数(列)を作成します。そして、あるレコードにおける自動車の規格が「軽自動車」であった場合、そのレコードの「軽自動車」列の値を $1$、それ以外の $2$ つの列の値を $0$ とします。こうすることで、ある自動車の規格を、規格のカテゴリごとに作成された列の値が $1$ になっているかどうかで表現できるようになります(次ページの表)。
カテゴリをダミー変数に変換する場合、「軽自動車」を $0$、「コンパクトカー」を $1$、「ミニバン」を $2$ と置き換える方法が最も単純です。しかし、このような変換を行うと、便宜上割り当てられているだけの数値の大小が学習に影響を及ぼす可能性があります。このため、ワンホットエンコーディングがよく用いられます。
【ワンホットエンコーディングの例】
| 自動車の規格 | 軽自動車 | コンパクトカー | ミニバン |
|---|---|---|---|
| 軽自動車 | 1 | 0 | 0 |
| コンパクトカー | 0 | 1 | 0 |
| 軽自動車 | 1 | 0 | 0 |
| ミニバン | 0 | 0 | 1 |
参考
説明変数に名義尺度のデータを用いる場合には、ダミー変数に変換する必要があります。例えば「日本人であるか」を説明変数として用いたい場合、日本人ならば $1$、それ以外ならば $0$ の値をとる変数を用意します。
**)で強調しました。$0$, $1$, $2$)に統一し、可読性を向上させました。[35_052_1] を規定のマーカー形式 <図35_052-1---> に置換しました。[35_052_1] について、元の形式がルール例と若干異なりましたが、文脈から図の挿入位置と判断し、IDを 35_052-1 と解釈して変換しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
1つの目的変数を複数の説明変数を用いて予測することを重回帰分析という。
重回帰分析においては、各変数における係数の推定値を偏回帰係数といい、( ア )を標準偏回帰係数という。また、目的変数の実測値と目的変数の推定値との間の相関係数を( イ )という。
A. (ア)データを標準化したうえで求めた偏回帰係数
(イ)重回帰係数
B. (ア)データを標準化したうえで求めた偏回帰係数
(イ)重相関係数
C. (ア)偏回帰係数の平均
(イ)重回帰係数
D. (ア)偏回帰係数の平均
(イ)重相関係数
## 4. およびページ区切りマーカー <pb: 05_037_1> を維持しました。重回帰分析は、回帰分析において説明変数(独立変数)が2つ以上のものを指します。例として、身長($x_1$)・腹囲($x_2$)・胸囲($x_3$)を元に体重($y$)を予測する問題について考えます。このとき重回帰分析では、式
$$y = ax_1 + bx_2 + cx_3 + d$$
で説明変数と目的変数の関係をモデル化します。
重回帰式の各変数における係数を偏回帰係数といいます。特に、データを事前に標準化してスケールを統一し、そのうえで求めた偏回帰係数を標準偏回帰係数といいます(A、B)。標準偏回帰係数は重回帰式における各変数の重要度を示す指標です。標準偏回帰係数は変数のスケールに依存しないため、この値を比べることで、「身長」「腹囲」といったスケールの異なる変数の重要度を比較できます。
また重回帰分析において、目的変数の推定値と実際の値との相関係数を重相関係数といいます(B、D)。この値が1に近いほど、モデルの精度は高いといえます。
以上より、空欄アは「データを標準化したうえで求めた偏回帰係数」、空欄イは「重相関係数」となり、組み合わせが正しい選択肢Bが正解です。
試験対策
問1の回帰係数の事例と同様に、DS検定公式リファレンスブックでは、重回帰式における $d$ も回帰係数として取り扱っています。よって、DS検定にて、切片 $d$ が回帰係数に含まれるかどうかを問われた場合は、DS検定公式リファレンスブックにならい、$d$ も含まれると解答するのがよいでしょう。
$$...$$)へ昇格させました。ある二値分類モデルを使用してデータセットのラベルを予測させたところ、以下のような結果が得られた。特異度を示す値として、適切なものを選べ。
【ある二値分類モデルの正解ラベルと予測ラベル】
| 正解ラベル | 予測ラベル |
|---|---|
| 0 | 1 |
| 1 | 1 |
| 0 | 0 |
| 0 | 1 |
| 1 | 1 |
| 0 | 1 |
| 1 | 1 |
| 1 | 0 |
| 1 | 1 |
| 0 | 0 |
A. 0.4
B. 0.57
C. 0.67
D. 0.8
分類問題の主な評価指標に関する知識を問う問題です。
分類問題の評価では、まず混同行列を作成します。混同行列とは、正解ラベルと予測ラベルをクロス集計することで得られる表です。この行列では、陽性 (Positive) は肯定的なクラス(例えば「病気である」など)、陰性 (Negative) は否定的なクラス(例えば「病気でない」など)を指します。
これらの定義に基づき、分類モデルの評価指標を計算できます。
特異度 (Specificity) とは、すべての陰性データのうち正しく陰性として予測できたデータの比率を指します。この例では、以下の通り計算されます。
$$ \text{特異度} = \frac{TN}{TN + FP} = \frac{2}{2 + 3} = 0.4 $$
したがって、選択肢Aが正解です。
ほかの主要な指標として、正解率、再現率、適合率、F値があります。
参考
F値(F-score、F1スコアとも)は、再現率と適合率を組み合わせた評価指標です。この指標は再現率と適合率の調和平均として定義されます。再現率を $R$、適合率を $P$、F値を $F$ とおくと、以下の式で表すことができます。$$F = \frac{2 \cdot \text{Recall} \cdot \text{Precision}}{\text{Recall} + \text{Precision}} = \frac{2}{\frac{1}{R} + \frac{1}{P}}$$
機械学習モデルの性能評価において、再現率と適合率は、一方が増加すると一方が減少するトレードオフの関係にあることが知られています。F値が高い(1に近い)値になっているかどうかを見ることで、トレードオフの関係にある2つの指標が同時に可能な範囲で高い値になっているかどうか(2つの指標のバランスの良さ)を評価することができます。
$$...$$)へ昇格させました。\frac{}{})を適用し、演算子を * から \times または \cdot に修正しました。(TN + FN)(負の予測値の合計)となっていましたが、定義に基づき (TN + FP)(実際の陰性データの合計)に修正しました(数値の計算結果 $0.4$ と整合させるため)。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
分類問題においてモデルの性能を評価する際に混同行列という表が用いられる。2値分類の場合の混同行列は、下図のように表される。混同行列の各象限は、それぞれ $TP$ (True Positive)・$TN$ (True Negative)・$FP$ (False Positive)・$FN$ (False Negative) の値を表す。
【混同行列の例】
<図06_037_2-1--->
図06_037_2-1 混同行列の例(実際と予測のクロス集計表)
<--->
混同行列の値を元に再現率 (Recall) を算出する式は( ア )であり、適合率 (Precision) を算出する式は( イ )である。
A. (ア) $TP / (TP + FN)$ (イ) $TP / (TP + FP)$
B. (ア) $TP / (TP + FP)$ (イ) $TP / (TP + FN)$
C. (ア) $TP / (TP + TN)$ (イ) $TP / (TP + FN)$
D. (ア) $TP / (TP + FN)$ (イ) $TP / (TP + TN)$
[図:06_037_2-1:...] を指定のマーカー形式 <図...---> に置換しました。**)で強調しました。$ ... $)で統一しました。混同行列は、実際のデータのラベルと、モデルが予測したラベルの関係を表形式で表したものです。
例として、与えられた画像に猫が写っているかどうかを判断するモデルを考えます。「猫が写っている」を陽性とし、「猫が写っていない」を陰性とします。
再現率(Recall)は、「実際に猫が写っている画像」($\text{TP} + \text{FN}$)のうち、モデルが「猫が写っている」と判断した画像($\text{TP}$)の割合です。
また適合率(Precision)は、モデルが「猫が写っている」と判断した画像($\text{TP} + \text{FP}$)のうち、「実際に猫が写っている」画像($\text{TP}$)の割合です。
したがって、再現率と適合率は以下の式によって求めることができます。
$$\text{再現率} = \frac{\text{TP}}{\text{TP} + \text{FN}}$$
$$\text{適合率} = \frac{\text{TP}}{\text{TP} + \text{FP}}$$
以上より、選択肢 A が適切です。
\frac{...}{...})に変更し、視認性向上のためディスプレイ数式として配置しました。\text{})として表記し、一般的な変数と区別しました。*)に整理し、構造化しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
回帰問題における性能評価指標として( ア )がある。( ア )はモデルの予測値と実際のデータの値の差(残差)の絶対値の平均として求める。また、分類問題における性能評価指標として( イ )がある。( イ )は ROC 曲線の下部の面積として求める。
A. (ア) MAE (イ) AUC
B. (ア) MAE (イ) Accuracy
C. (ア) MSE (イ) AUC
D. (ア) MSE (イ) Accuracy
**)で強調しました。<!-- 07_038_1 -->)を維持しました。回帰問題において、残差の絶対値の平均をMAE(Mean Absolute Error:平均絶対誤差)といいます(A、B)。また、残差の二乗の平均をMSE(Mean Squared Error:平均二乗誤差)といいます(C、D)。
MAEは、元のデータと単位が揃っているため誤差としての解釈がしやすく、比較的外れ値の影響を受けにくいという性質をもっています。一方MSEは、誤差の大きさを二乗によって強調するため、大きな誤差に対する感度が高いということになります。
例1:外れ値のない誤差分布
| 残差 | 残差の絶対値 | 残差の二乗 |
|---|---|---|
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 0 | 0 | 0 |
| MAE | MSE |
|---|---|
| 1.8 | 4.2 |
例2:外れ値のある誤差分布
| 残差 | 残差の絶対値 | 残差の二乗 |
|---|---|---|
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 1 | 1 | 1 |
| -2 | 2 | 4 |
| 3 | 3 | 9 |
| 20 | 20 | 400 |
| MAE | MSE |
|---|---|
| 3.8 | 44.2 |
例えば、外れ値のない誤差分布、外れ値のある誤差分布のそれぞれに対してMAEおよびMSEを計算すると、上記の表のようになります。MAEはMSEに比べ、特に外れ値の影響を受けにくいことが見てとれます。
分類問題において、Recall(再現率)、Precision(適合率)、F値といった指標は、陽性/陰性の判定に用いるしきい値を変更すると、値が変化します。例として、分類問題に用いられる機械学習手法の1つであるロジスティック回帰を取り上げます。
ロジスティック回帰は、入力データを元に、そのデータが陽性である確信度を確率値($0$~$1$)で出力する手法です。さらにその値にしきい値を設けることにより、最終的にデータが陽性、陰性のどちらであるかを出力します。例えば $0.75$ という確率値が算出された場合、しきい値が $0.5$ ならばモデルの出力は陽性、しきい値が $0.8$ ならばモデルの出力は陰性となります。しきい値
が変わると、モデルが出力した陽性または陰性の件数が変化するため、評価指標の値も変化します。
このしきい値に依存しない評価指標としてROC曲線(Receiver Operating Characteristic curve)とAUC(Area Under Curve)を選ぶことができます。ROC曲線では、縦軸を真陽性率(True Positive Rate)、横軸を偽陽性率(False Positive Rate)として、クラス判定のしきい値を $0$ から $1$ の範囲で変化させながら真陽性率と偽陽性率をプロットしていきます。また、ROC曲線の下部の面積をAUCといいます(A、C)。AUCの値が $1.0$ に近いほど面積が大きくなり、モデルの性能がよいと解釈できます。
<図39_054_1-1--->
図39_054_1-1 真陽性率(TPR)を縦軸、偽陽性率(FPR)を横軸とし、AUC(0.5〜1までの値をとる)を示すROC曲線のグラフ。
<--->
真陽性率は、実際に陽性であるもののうち陽性と予測された割合であり、以下の計算により求めることができます。
$$ \text{真陽性率} = \frac{\text{TP}}{\text{TP} + \text{FN}} $$
偽陽性率は、実際に陰性であるもののうち陽性と予測された割合であり、以下の計算により求めることができます。
$$ \text{偽陽性率} = \frac{\text{FP}}{\text{FP} + \text{TN}} $$
Accuracy(正解率)とは、分類問題において、全体のうち正解したものの割合であり、以下の計算により求めることができます(B、D)。
$$ \text{Accuracy} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}} $$
問題の種類によっては、AccuracyではなくRecall、Precision、F値やAUCなどから相応しい評価指標を選択する必要があります。病理診断モデルを例にとって考えてみます。患者にとって性能が高いモデルとは、陽性/陰性を正しく判定できるモデルであるため、Precisionを重視した評価を行う必要があります。対して、医師にとっては、陽性の患者の見逃しを防ぐことができるモデルが性能が高いモデルとなるため、Recallを重視した評価を行う必要があるといえます。
以上より、空欄アはMAE、空欄イはAUCとなり、組み合わせが正しい選択肢Aが正解です。
参考
RMSE(Root Mean Square Error)、MAPE(Mean Absolute Percentage Error)、決定係数といった評価尺度も存在します。
$inline$ 形式から $$display$$ 形式の分数表記へ変更しました。また、変数(TP, TN等)を \text{} で囲い、適切に整形しました。[図:...] を指定の <図...---> 形式へ置換しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
汎化誤差の小さいモデルを構築するために用いられる手法として、( ア )と( イ )がある。
データを事前に訓練用と検証用に分割し、検証用データで学習済みモデルの汎化誤差を評価する手法を( ア )という。
また、データを複数のグループに分け、訓練用と検証用を交代させながら汎化誤差を評価する手法を( イ )という。
A. (ア)交差検証法 (イ)ローテーション法
B. (ア)ホールドアウト法 (イ)ローテーション法
C. (ア)ホールドアウト法 (イ)交差検証法
D. (ア)ローテーション法 (イ)交差検証法
機械学習では、データに対する誤差を2種類に分けて考えます。学習に用いたデータ(訓練データ)に対する誤差を訓練誤差といい、未知のデータに対する誤差を汎化誤差といいます。訓練誤差が小さくても、汎化誤差の大きいモデルは性能がよいとはいえません。
汎化誤差を評価する方法として、ホールドアウト法と交差検証法(クロスバリデーション法)があります。どちらを用いても、疑似的に未知のデータを用意することにより、モデルの学習時に汎化誤差を求めることができます。
ホールドアウト法では、データ全体を訓練データ(学習データ)・テストデータに一定の割合で分割し、それぞれの役割を固定して用います(B、C)。まず訓練データで機械学習モデルを構築し、次にテストデータを用いてモデルの汎化性能を確認します。テストデータを用いた評価を行う前に、モデルのパラメータチューニングを行うために検証データを用意する場合もあります。
ホールドアウト法の実装は簡単ですが、元のデータ数が少ないと汎化性能を精確に評価できないという欠点があります。
対して交差検証法では、まずデータを $K$ 個に分割し、その一部をテストデータ、それ以外を訓練データとして扱って評価を行います(C、D)。その後、分割したデータの役割(訓練データ・テストデータ)を交代させながら、テストデータが一巡するまで繰り返し評価を行い、最終的に評価値の平均を求めます。計算に時間はかかりますが、ホールドアウト法と比べ精確に汎化性能を評価することができます。
【交差検証法の概略】
「ローテーション法」という用語は機械学習の分野に存在しません(A、D)。よって、空欄アはホールドアウト法、空欄イは交差検証法となり、組み合わせが正しいCが正解です。
**)化しました。<図PAGE_ID-n--->)に置換しました。時間方向に対して連続的に観測されたデータを時系列データと呼ぶ。時系列データの扱い方に関する記述として、最も適切でないものを選べ。
なお、ここでは観測されたデータを原系列という。
A. 時系列データを用いて将来予測を行うための回帰モデルを作る場合、訓練データより過去のデータを検証データやテストデータとして用いてはならない
B. 移動平均をとり、原系列を移動平均系列に変換することで、長期的な傾向を確認できる
C. 原系列の差分をとると、長期的な傾向を確認できる
D. 原系列に対して高速フーリエ変換を実行すると、原系列を異なる周波数成分に分解できる
時系列データを用いて未来の値を予測するモデルを作る場合、検証データやテストデータには訓練データよりも未来のデータを用いる必要があります(A)。そのため、訓練データよりも過去のデータを検証データやテストデータとして用いてしまうと、運用時と同じ条件での評価を行うことができなくなります。
原系列の移動平均を計算すると、移動平均系列が得られます(B)。よって、移動平均系列に変換した場合は、局所的な変動が小さくなるために、長期的な傾向をとらえやすくなります。例えば、日ごとの平均気温のデータに対して移動平均を計算すると、季節の移り変わりによる気温の変動を見ることができます。
原系列において、前後時刻の差分を計算すると、差分系列が得られます(C)。差分系列に変換した場合は、長期的な傾向が取り除かれて局所的な変化が強調されます。
原系列に対して高速フーリエ変換(FFT)を実行すると、周波数スペクトルが得られます(D)。高速フーリエ変換は、離散的な信号を三角関数の和に分解する変換である離散フーリエ変換(DFT)を効率的に行うための計算手法です。周波数スペクトルを見ると、原系列に含まれる周波数成分の分布を確認できます。
以上より、最も適切でない選択肢はCとなります。
**)で強調しました。以下の記述を読み、空欄ア〜ウに入る語句の組み合わせとして、最も適切なものを選べ。
機械学習において、( ア )学習を行う手法を教師あり学習という。また、( イ )学習を行う手法を教師なし学習という。このうち、クラスタリングは( ウ )に該当する。
A. (ア)教師ラベルが付与されたデータを用いて
(イ)教師ラベルを与えずに
(ウ)教師なし学習
B. (ア)教師ラベルが付与されたデータを用いて
(イ)訓練データを与えずに
(ウ)教師なし学習
C. (ア)シミュレーション環境を与えて
(イ)訓練データを与えずに
(ウ)教師あり学習
D. (ア)シミュレーション環境を与えて
(イ)教師ラベルを与えずに
(ウ)教師あり学習
**)に設定。教師ラベルが付与されたデータを用いて学習を行う手法を教師あり学習といいます(A、B)。教師あり学習の例としては、株価データを用いた株価予測などの回帰問題や画像分類などの分類問題が挙げられます。また、ラベル付け作業のことをアノテーションといいます。アノテーションを行う場合は、目的に合ったラベルを付与することが重要になります。例えば、画像に車が写っているかどうかを判別するモデルを作る場合、ラベル名には「乗用車・トラック・バス」などの車の種類ではなく「写っている・写っていない」を用います。
教師ラベルを用いずに学習を行う手法を教師なし学習といいます(A、D)。教師なし学習の例としては、購入履歴を用いた顧客のクラスタリングや、画像からの特徴抽出(次元削減)などが挙げられます。
訓練データを与えず、モデルの動作に対して反応(報酬)を返すシミュレーション環境を用いて学習を行う方法を強化学習といいます(B、C)。強化学習では、モデルが試行錯誤を行いながら最適な行動を学びます。強化学習の例としては、囲碁や将棋などのゲームをプレイするAIや、ロボットの歩き方の学習などが挙げられます。
クラスタリングは教師なし学習の一種であり、データの集合を部分集合に分割する問題です(A、B)。正解を表す教師データは存在せず、分析者自らが分割後のデータを解釈します。
以上より、空欄アは「教師ラベルが付与されたデータを用いて」、空欄イは「教師ラベルを与えずに」、空欄ウは「教師なし学習」となり、組み合わせが正しい選択肢Aが正解です。
試験対策
分類は教師あり学習に含まれ、クラスタリングは教師なし学習に含まれます。違いをしっかり覚えておきましょう。参考
入力データの変更のうち、モデルのパフォーマンスの低下につながるような変更のことをデータドリフトといいます。このデータドリフトが生じないように継続して監視を行うことで、モデルのパフォーマンスの低下を防止するような仕組みを作ることが重要です。
>)、および末尾のコメントアウトIDを正確に維持しました。\tagの配置)は発生していません。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
データ集合を、類似したデータからなる部分集合(クラスタ)に分割する問題をクラスタリングという。クラスタリングのうち、( ア )するものを階層型クラスタリングという。階層型クラスタリングの結果は、下に示すようなデンドログラム(樹形図)という図で表される。この図において、点線と縦線の交点の数 $k$ は( イ )である。
【デンドログラムの例】
A. (ア)クラスタの中心点をランダムに $k$ 個配置し、中心点と各データとの距離の総和が最小になるように中心点を更新
(イ)クラスタ数
B. (ア)クラスタの中心点をランダムに $k$ 個配置し、中心点と各データとの距離の総和が最小になるように中心点を更新
(イ)クラスタ間の距離
C. (ア)データの各要素を1つのクラスタととらえ、最も距離の近いクラスタ同士を結合し、データを階層的に分割
(イ)クラスタ数
D. (ア)データの各要素を1つのクラスタととらえ、最も距離の近いクラスタ同士を結合し、データを階層的に分割
(イ)クラスタ間の距離
<図PAGE_ID-n--->)に置換・整形しました。階層型クラスタリングとは、まずデータの個々の要素を1つのクラスタとして扱い、距離の近いクラスタ同士を結合する手法です(C、D)。クラスタ数を $k$ とおくと、クラスタを結合する工程は以下の図のように表されます。
【階層型クラスタリングにおけるクラスタの結合】
階層型クラスタリングの結果はデンドログラム(樹形図)という図で表されます。デンドログラムにおいて、高さは結合したクラスタ間の距離を表します。また、デンドログラムを横切るように線を引くと、その線と縦線との交点の数はクラスタ数を表します(A、C)。設問の図は、デンドログラムの例を示しています。
階層型クラスタリングの利点は、あらかじめクラスタ数を決める必要がないことです。また、デンドログラムを見ることにより、クラスタがどのように結合されていくか確認したうえで、クラスタ数を後から決めることができます。
階層型クラスタリングの欠点は、データ数が非常に多い場合、計算量が多くなったり、デンドログラムが巨大になり解釈が難しくなったりすることです。通常は、非常に多くのデータを対象とするクラスタ分析では、$k$-means法などの非階層型クラスタリングが用いられます。選択肢AとBの(ア)「クラスタの中心点をランダムに $k$ 個配置し、中心点と各データとの距離の総和が最小になるように中心点を更新」は$k$-means法の説明です($k$-means法の詳細については解答46を参照)。
以上より、空欄アは「データの各要素を1つのクラスタととらえ、最も距離の近いクラスタ同士を結合し、データを階層的に分割」、空欄イは「クラスタ数」となり、組み合わせが正しい選択肢Cが正解です。
$k$-means法 と整えました。<図PAGE_ID-n--->)に置換しました。外れ値とは、あるデータ集合において、他のデータと極端に値の異なるデータのことである。外れ値を含むデータ集合への対処法として、最も適切でないものを選べ。
A. データ集合に対して0-1正規化を行う
B. ヒストグラムを用いて外れ値を特定し、そのデータを除去する
C. データ集合に対して標準化を行い、しきい値を超えた値を除去する
D. データ集合から、値の大きさが上位5%および下位5%のデータを除去する
**)で強調しました。外れ値とは、他のデータから大きく離れた値のことを指します。外れ値は分析結果に悪影響を及ぼす場合があります。例えば、外れ値が含まれたデータの平均値を求めると、その平均値は外れ値の極端な値に引っ張られてしまう可能性があります。その場合、データの平均値は当てにならないものとなります。ヒストグラムを用いると、データの分布を確認しつつ外れ値を検出することが容易になります(B)。
外れ値への対処法の1つとして、標準化を行ったうえで、あらかじめ設定したしきい値を超えたデータを外れ値とみなして除去する方法があります(C)。データ分布の両端(最大値/最小値)から $5 \sim 10\,\%$ をカットして外れ値の混入を防ぐという方法もあります(D)。ただしこの方法では、正常なデータも除去してしまうおそれがあります。
外れ値を含むデータ集合に対して $0$-$1$正規化を行うと、変換後のデータ集合の値の分布が外れ値につられて偏ってしまいます(A)。よって、外れ値に対する根本的な対処法とはいえません。
外れ値と関連する用語に、異常値と欠損値があります。
異常値は、外れ値のうち、外れた理由が明らかなものを指します。例えば、健康な人の体温と免疫力の関係を調査したデータに含まれる、調査時に風邪によって高熱を出していた人のレコードなどがこれにあたります。
欠損値は、何らかの理由により記録されなかった値を指します。欠損値の補完は特に表形式データの解析において重要です。例えば、「年齢・年収・職業」を列とする表形式データに「年収」の値が欠損している行があったとします。このようにデータの欠損があると、正しい解析結果を得られなくなるおそれがあります。
表形式データにおける欠損値への対処法としては、欠損していないデータから求めた平均値などの値を欠損箇所に挿入する方法があります。
試験対策
外れ値、異常値、欠損値の違いについて説明できるようにしておきましょう。
**)で強調しました。\,)を挿入しました(例:$5 \sim 10\,\%$)。$0$-$1$正規化 の数式部分の一貫性を維持しつつ、強調を適用しました。データの可視化手法の名称とその用途の組み合わせとして、最も適切なものを選べ。
A. 名称:棒グラフ
用途:データの散らばり具合を見る
B. 名称:ヒストグラム
用途:数値の大小を比較する
C. 名称:散布図
用途:データの相関関係を調べる
D. 名称:円グラフ
用途:データの推移を確認する
データ可視化に用いられるグラフには、棒グラフ、ヒストグラム、散布図、円グラフ、折れ線グラフなどがあります。
棒グラフは、データの値を1つの棒として表現し、それらを単純に並べたグラフです。例えば、売上金額などの大小を比較する際に用いられます(A、B)。
【棒グラフの例】
とある学校におけるインフルエンザ発症数
ヒストグラムは、データを一定間隔(ビン)で区切り、各範囲に含まれるデータの個数(度数)を棒の長さで表現したグラフです。データの分布を確認する際に用いられます(A、B)。
【度数分布表とヒストグラムの例】
| ビン幅 | 度数 |
|---|---|
| 5.0〜10.0 | 2 |
| 10.0〜15.0 | 7 |
| 15.0〜20.0 | 2 |
-->
散布図は、2次元平面または3次元空間にデータをプロットしたグラフです。2つの変数同士または3つの変数同士の相関関係を把握することができます(C)。次の例は、あるクラスの定期試験の結果から作成された、2つの教科の点数の相関関係を把握するための散布図です。
【散布図の例】
とあるクラスの定期試験の結果(点)
円グラフは、データの構成比を扇形で表したグラフです($D$)。次の例は、Aさんのポートフォリオ(所有している金融資産の構成比)を表す円グラフです。
【円グラフの例】
Aさんのポートフォリオ
-->
円グラフと似た用途のグラフとして、積み上げ棒グラフがあります。積み上げ棒グラフでは、量の合計とその内訳を表示することができます。ただし、内訳の微妙な変化を読み取ることはできません。
【積み上げ棒グラフの例】
-->
折れ線グラフは、データ点を直線でつないだグラフです。データの推移を確認する際に用いられます(D)。
【折れ線グラフの例】
-->
参考
ヒストグラムを作成する場合は、データのばらつき具合を正確に把握できるように、データ区間を適切に設定する必要があります。ヒストグラムによって、人口動態が年月とともに変化する様子を表現するなど、図表の変化をアニメーションで可視化できることも、データサイエンティストとしての重要な要素です。
<図ID--->)に置換しました。\%)および数値との間のスペース挿入(\,)を適用しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
一般に数や量で測れないデータを質的変数といい、数値演算の行えるデータを量的変数という。量的変数を、カテゴリを表す質的変数に変換することを( ア )と呼ぶ。また量的変数を、等間隔の区間で分割することを( イ )と呼ぶ。
A. (ア)カテゴライズ (イ)ビン化
B. (ア)サンプリング (イ)ビン化
C. (ア)カテゴライズ (イ)アンサンブル平均
D. (ア)サンプリング (イ)アンサンブル平均
カテゴリ化とは、量的変数をカテゴリ変数に変換することです($A$、$C$)。例としては、年齢のデータから、「若者・中年・高齢」という値をもった年齢層のカテゴリ変数を作る操作が挙げられます。
ビン化とは、データを等間隔の区間で分割することです($A$、$B$)。区間のことをビンと呼び、区間の大きさをビン幅と呼びます。各ビンに含まれるデータの個数を度数と呼びます。ビン化したデータの度数を可視化したものがヒストグラムです。
サンプリングとは、調査対象となる母集団の中から、データ(標本)をピックアップすることです($B$、$D$)。ピックアップしたデータの値を平均すると、アンサンブル平均となります。
アンサンブル平均とは、同一条件下において得られた測定値を平均した値です($C$、$D$)。逆に、異なる条件下で得られた測定値を平均した値を時間平均といいます。
カテゴリライズやビン化を行うと、分析対象となるデータの分布特性をとらえやすくなります。一方で、サンプリングやアンサンブル平均は、分析対象となるデータの量を削減するために用いられます。
以上より、組み合わせが正しい選択肢Aが正解です。
試験対策
カテゴリライズおよびビン化と、サンプリングおよびアンサンブル平均の用途の違いを説明できるようにしておきましょう。参考
サンプリングやアンサンブル平均によって、データ量を減らすことができます。
**)で強調しました。## 14. A および引用ブロック、図のプレースホルダーを維持しました。<TRANSCRIPTION_49_059_1> は指定の [図:PAGE_ID-n:内容] 形式ではありませんでしたが、構造維持のためそのまま残しています。これが図表を指す場合は、必要に応じて正規の形式に差し替えてください。データの集計・可視化をする際の注意点として、最も適切でないものを選べ。
A. データの打ち切りや脱落を避ける
B. グラフに用いる色の数を少なくする
C. グラフの軸の基準点は原則として $0$ にする
D. なるべく棒グラフより円グラフを用いる
$0$ に統一。データの打ち切りとは、「●●以上」や「●●以下」のような範囲の上限/下限を片方しかもたないカテゴリを作ることです。例えば、年収のデータにおいて、50万円ごとに区切ったカテゴリに加え、「1000万円以上」というカテゴリを作成したとします。その場合、「年収2000万円」や「年収1億円」などもこのカテゴリに含まれることになります。つまり、このカテゴリは、他の年収帯と性質が異なるカテゴリになるということです。
データの脱落とは、「含まれていないデータの存在を無視する」ことです。例えば、「プロ野球の平均年棒が4000万円である」という情報を得たとします。この場合、「野球選手であれば高収入である」と解釈しがちですが、背景には、多くの選手がプロ契約を結ぶことができなかったという事実が存在しています。この例の場合、「プロ契約を結ぶことができなかった人」のデータが脱落しているといえます。このため、こうした人々の年収を含めた平均をとらなければ、実情を正しくとらえられないおそれがあります。
データに打ち切りや脱落があると不適切な解釈が生まれる可能性があります。よって、選択肢Aは適切です。
データの可視化の際には、なるべくシンプルな表現を心がけ、不要な装飾は排除する必要があります。多くの色を用いると、解釈しにくいグラフになる可能性があります。よって、選択肢Bは適切です。
グラフの視認性や解釈性に関する指標として、データインク比があります。
データインク比は、以下のように定義されており、この値が $1$ に近いほど簡潔でよい表現であるといえます。
$$ \text{データインク比} = \frac{\text{データを印刷するために費やしたインク量}}{\text{グラフィック全体の印刷に費やしたインク量}} $$
【データインク比の大きいグラフと小さいグラフの例】
-->
グラフの軸の基準点は、そのグラフを見たときの印象に大きく影響します。
例えば、以下のグラフにおいて、0が起点か否かで、データの大小関係が異なって見えます。よって、選択肢Cは適切です。
【起点が0であるグラフと0ではないグラフの例】
円グラフは、データの構成比を扇型の大きさで表す図であるため、データの大小関係を読み取りにくいという欠点があります。円グラフを用いる際には、扇形の中に割合を書き入れたり、棒グラフを併用したりするなどの工夫を行う必要があります。よって、不適切な選択肢はDとなります。
【同じデータを表す棒グラフと円グラフの例】
-->
【参考】
コラムチャート(縦棒グラフ)のY軸の基準点は「0」からを原則とし、軸を切らないなど、不必要な誇張をしないための軸表現を常に意識することが重要です。これにより、データ分析を行わない部署の関係者にも、適切にデータの傾向を把握してもらうことが可能となります。
<図PAGE_ID-n---> 形式の専用マーカーに置換。\div (除算記号)が使われていましたが、専門書の慣例に従い分数形式で整理しました。意味に相違がないかご確認ください。あなたはとある証券会社の依頼で、顧客が融資を返済できるか否かを判断する機械学習モデルの開発を担っている。証券会社から受け取った20,000件の債務者データには、6つの変数[所得・年齢・職種・融資金額・利率・返済したかどうか]が含まれている。このとき、まず初めに行うべき分析方法として、最も適切でないものを選べ。
A. データの構造や性質を理解するために、生データを20件眺める
B. 生データを20件眺め、不要そうな説明変数を削除する
C. データの分布を確認するため、各変数に対してヒストグラムを作成する
D. データを「返済できたもの」と「返済できなかったもの」に分割し、それぞれの変数の平均と分散を比較する
## 16. および末尾のコメントアウトを正確に維持しました。データ分析や機械学習のプロジェクトを進める際に、最初に行うべきことは、変数の関連性・分布傾向などデータの性質を理解することです。
データを入手したら、まずはデータそのものを眺めたり(A)、ヒストグラムを用いてデータの分布を確認したり(C)、平均や分散を算出してデータの散らばり具合を見たりするとよいでしょう(D)。そうすることで、外れ値や欠損値の存在に気づくことができ、データに対して行うべき処理を決定しやすくなります。ここで、データの関連性を見出せれば、変数の取捨選択や機械学習モデルの選定を行いやすくなります。
$20,000$ 件のうち $20$ 件だけのデータを眺めても、どの説明変数が有効か無効かを判断することはできません(B)。説明変数の選択を行う際には、データ全体の傾向を確認しましょう。
参考
統計量を使うことで、データから読み取る必要のある特徴を効果的に可視化することが可能です。ばらつき、有意性、分布傾向、特異性、関連性、変曲点、関連度の高低など、分析や図表から直接的な意味合いを抽出できるように意識しましょう。
**)に設定しました。$20,000$, $20$ )に整形し、文書内での視認性と整合性を高めました。以下に示す図表(クロス集計表、散布図、ヒストグラム)に関する記述のうち、最も適切でないものを選べ。
【例1:クロス集計表】
社員100人へのアンケート結果
【例2:散布図】
【例3:ヒストグラム】
A. 例1:クロス集計表を見ると、電車通勤をしている本社勤務の社員の割合は、全体の $20\,\%$ である
B. 例1:クロス集計表を見ると、電車通勤の社員の割合は、全体の $30\,\%$ である
C. 例2:散布図を見ると、数学の点数と理科の点数の間には正の相関がある
D. 例3:データに関しては、データの範囲(レンジ)が狭く、ヒストグラムとして表す必要性があまりない
<図ID--->)に置換。\,)を挿入し、例3の階級表現を数式モード($[0, 4]$等)に統一。クロス集計とは、2つの軸でデータの集計を行うことです。クロス集計の結果を表で表したものをクロス集計表といいます。設問におけるクロス集計表は「本社勤務かどうか」と「電車通勤かどうか」を軸としています。以下のように、クロス集計表の中にデータの合計を表すマスを設ける場合もあります。
【合計を含むクロス集計表】
| 電車通勤である | 電車通勤ではない | 合計 | |
|---|---|---|---|
| 本社勤務である | 20 | 10 | 30 |
| 本社勤務ではない | 30 | 40 | 70 |
| 合計 | 50 | 50 | 100 |
この表から、「電車通勤をしている本社勤務の社員」の割合は、$20 / 100 = 20\,\%$ であると読み取れます(A)。また、「電車通勤である社員」の割合は、$50 / 100 = 50\,\%$ であると読み取れます。そのため、選択肢Bは適切ではありません。
<図52_060_2--->
図52_060_2
<--->
散布図は、2次元平面または3次元空間にデータをプロットしたグラフです。これは、2つの変数同士または3つの変数同士の相関関係を見るのに適したグラフです。
2つの変数があり、どちらかの変数が大きくなれば他方も大きくなる傾向が見られる場合、それら2つの変数には正の相関関係があるといいます。設問の【例2:散布図】を見ると、数学の点数が高いと理科の点数も高いことが読み取れるため、数学の点数と理科の点数の間には正の相関があると考えられます(C)。
ヒストグラムは、データを一定間隔(ビン)で区切り、各区間に含まれるデータの個数を棒の長さで表現したものです。これは、データの分布を確認する際に用いられるグラフです。また、度数分布表とは、ビンごとのデータの個数を表にしたものです。
設問の【例3:ヒストグラム】のデータに関しては、値の範囲が $0 \sim 12$ と狭いため、ヒストグラムを用いなくても、以下の表のような度数分布表で分布を十分に確認することができます(D)。
【度数分布表の例】
| 階級 | 度数 |
| :--- | :--- |
| 0〜4 | 15 |
| 5〜8 | 5 |
| 9〜12 | 1 |
試験対策
比較して可視化したい分類によってデータを分けることを層化といいます。層化は「データを何らかの比較軸(何かと何かを比較する際の基準)によって切り分けること」ともいえます。例えば、「チェーンのスーパーマーケットにおける売上減少の要因を探索する」ことを目的として層化を行う場合、層化の候補としては「時間帯別」「エリア別」「購買年代別」「店舗別」などが考えられます。
層化を行う際は、比較の切り口として用いる属性(時間帯、エリア、購買年代、店舗など)と、その粒度(時間帯別なら月単位なのか週単位なのか、エリア別なら市単位なのか町単位なのか、など)についてよく検討する必要があります。また、層化の前に「どのような比較軸によってデータを切り分ければ差がはっきりと可視化されるか」といった仮説を立てることも重要です。適切な仮説を立てることによって、適切な層化の候補を導き出すことができるようになります。
【参考】
「0以上2未満」といった範囲を示す際に、$[0, 2)$ のように角括弧と丸括弧を用いて表すことがあります。Excelのヒストグラムにおいては、ビン幅はこの形式で表されます。
% の前に \, スペースを挿入しました($20\,\%$)。[52_060_2] を指定のマーカー形式 <図52_060_2---> に置換しました。[52_060_2] について、入力では「図:」というプレフィックスがありませんでしたが、文脈上図の挿入箇所と判断し、マーカー形式を適用しました。内容(キャプション)が不明なため、IDをそのまま内容として記載しています。<!-- 53_018_1 --> はHTMLコメント形式のため、そのまま維持しています。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
図1のような図をボロノイ図という。ボロノイ図とは( ア )である。
また図2のような図をヒートマップという。ヒートマップとは( イ )である。
【図1:ボロノイ図の例】
【図2:ヒートマップの例】
(ア) 個々のデータをボロノイ点として空間上に配置し、ボロノイ点同士をつないで領域分けを実施した図
(イ) $2$次元データの個々の値を色の種類や色の濃淡で表現した図
(ア) 個々のデータをボロノイ点として空間上に配置し、ボロノイ点同士をつないで領域分けを実施した図
(イ) ヒストグラムを $2$ 次元に拡張した図
(ア) 個々のデータを母点として空間上に配置し、母点以外の場所がどの母点に近いかによって領域分けを実施した図
(イ) ヒストグラムを$2$次元に拡張した図
(ア) 個々のデータを母点として空間上に配置し、母点以外の場所がどの母点に近いかによって領域分けを実施した図
(イ) $2$次元データの個々の値を色の種類や色の濃淡で表現した図
<図PAGE_ID-n--->)に置換しました。ボロノイ図とは、平面上に複数個の点がある場合に、任意の点と一番近い点を把握するための表現です。距離の近い点同士を線で結び、その垂直二等分線をつなぐことによって作られます。この操作をボロノイ分割といいます。ボロノイ分割では、配置された点を母点と呼び、その周りの領域をボロノイ領域と呼びます(C、D)。また、領域の境目の線をボロノイ境界と呼び、その交点をボロノイ点と呼びます(A、B)。点の周りの領域の面積から、隣接する点との距離を図形的に把握することができます。
【ボロノイ図の例】
例として、母点を携帯電話の基地局の座標としてボロノイ図を作成することを考えてみましょう。この場合のボロノイ図では、まず基地局の位置的な分布を把握することができます。母点が密集しており各母点のボロノイ領域が小さい領域は、基地局が集中して配置された地域であることを表します。母点が疎に分布している場合には、その母点は比較的大きなボロノイ領域をもつことになります。これは担当する地域の面積が大きい基地局が存在することを意味します。この情報があることで、電波の届きにくい地域を推測することが可能になります。
ヒートマップとは、数値の大小を色の濃淡で表現し、平面上に配置した図です(A、D)。行列の形式となった2次元データがある場合に、ヒートマップを用いると、値の分布を色によって視覚的にとらえることができます。
【ヒートマップの例】
例えば、列番号が経度、行番号が緯度を表し、各要素の値が人数を表すような2次元データをヒートマップで可視化すると、人口の分布を一目で確認することができます。温度の違いを色で表現するサーモグラフィーも、ヒートマップの一種であるといえます。
以上より、組み合わせが正しい選択肢Dが正解です。
試験対策
ボロノイ図とヒートマップの特徴と用途について、説明できるようにしておきましょう。参考
隣接するボロノイ領域の母点同士を結んだ図形をドロネー図といいます。
<図PAGE_ID-n--->)へ置換しました。重複していた図53_018_1-1のプレースホルダーを整理し、キャプションを含む形で統合しました。## 18. D および引用ブロック、ページ番号コメントをそのまま維持しました。以下に示す図(散布図行列・平行座標プロット)に関する記述のうち、最も適切でないものを選べ。
【散布図行列の例】
【猫の品種と体格の平行座標プロット】
A. 散布図行列から、変数1と変数2の間には正の相関があることが読み取れる
B. 散布図行列の変数3のヒストグラムは、値の分布が把握できていないとは言い難いため、個別にヒストグラムを作成しビン幅を調節したほうがよい
C. 平行座標プロットは、横軸のラベルの並び順が不適切である
D. 平行座標プロットから、マンチカンはシャムネコよりも尾の長さが短い傾向にあると読み取れる
<図PAGE_ID-n--->)へ置換しました。可視化手法にはさまざまなものがあります。データ分析においては、目的に応じて適切な可視化手法を利用し、分布の傾向や、グループ間の相違点、特異点(際立って異なる部分)や変曲点(データの傾向の変化点)を把握することが重要です。
散布図行列は、多変量データのヒストグラムと散布図を行列として列挙する可視化手法です。これにより、複数の変数の関係性を同時に把握することが可能になります。各行 / 各列が変数に対応しており、行番号に対応する変数と列番号に対応する変数の散布図が、行列の要素として並びます。対角成分は各変数のヒストグラムになります。
設問の散布図行列を見ると、変数 $1$ の値が大きくなるにつれ変数 $2$ の値も大きくなっており、変数 $1$ と変数 $2$ の間には正の相関が見えます。よって、選択肢Aは適切です。
また、同じ図において、変数 $3$ のヒストグラムは値がすべて左端のビンに偏っており、データの分布を正確に把握することができません。よって、選択肢Bは適切です。
平行座標プロットは、4次元以上のデータを可視化する手法の一種です。2次元および3次元散布図では、変数ごとに異なる方向を向いた軸を割り当ててデータを可視化しますが、平行座標プロットでは同じ方向を向いた軸で可視化を行います。主に種類や名前など(名義尺度)と複数の数値がセットになったデータに対して用います。
例えば、以下の表のような「体長・体重・尾の長さ・体毛の長さ・猫の品種」がセットになったデータを平行座標プロットで可視化するとします。
【猫の品種と体格を示すデータ】
| 体長 $[\mathrm{cm}]$ | 体重 $[\mathrm{kg}]$ | 尾の長さ $[\mathrm{cm}]$ | 体毛の長さ $[\mathrm{cm}]$ | 猫の品種 |
|---|---|---|---|---|
| 100 | 8.2 | 60 | 5.8 | メインクーン |
| 80 | 6.6 | 55 | 5.1 | メインクーン |
| 70 | 5.9 | 48 | 4.8 | メインクーン |
| 50 | 5.8 | 40 | 2.5 | シャムネコ |
| 45 | 4.2 | 38 | 2.2 | シャムネコ |
| 42 | 3.5 | 36 | 2.1 | シャムネコ |
| 32 | 4.0 | 15 | 2.7 | マンチカン |
| 30 | 3.6 | 14 | 2.6 | マンチカン |
| 29 | 3.3 | 12 | 2.4 | マンチカン |
このデータを用いて平行座標プロットを行うと、設問の図のようになります。
「猫の品種」ごとに線種を変え、横軸に「体長・体重・尾の長さ・体毛の長さ」を並べ、縦軸に値の大きさをとって表示します。この図において、「尾の長さ」の軸では、マンチカンを表す破線がシャムネコを表す点線より下にあるため、「マンチカンはシャムネコよりも尾の長さが短い傾向にある」と読み取れます。よって、選択肢Dは適切です。
平行座標プロットでは、軸ごとの値のスケールが大きく異なる場合、視認性を高めるために、変数ごとに縦軸のスケールを変えることがあります。また、名義尺度の変数をダミー変数に変換し横軸に並べる場合もあります。この2つの操作を行った場合、グラフは以下のようになります。
【猫の品種と体格の平行座標プロット(スケール調整済み)】
平行座標プロットは折れ線グラフとよく似ていますが、折れ線グラフの場合は横軸の順番に時系列としての意味があるのに対し、平行座標プロットの場合は、通常は横軸の順序に意味はありません。よって、選択肢Cは不適切です。
試験対策
散布図行列と平行座標プロットの用途および読み取り方を覚えておきましょう。
\mathrm{} を用いて立体に修正しました。[図:56_062_2-1:...] を指定されたマーカー形式 <図...---> に置換しました。$1$, $2$ などの前後にスペースを入れ、視認性を調整しました。以下の記述を読み、空欄アに入る数値の範囲として、最も適切なものを選べ。
以下の表のような度数分布表が与えられたとき、中央値を含む階級は( ア )である。
| 得点 [点] | 人数 [人] |
|---|---|
| 0~20 | 2 |
| 20~40 | 13 |
| 40~60 | 20 |
| 60~80 | 21 |
| 80~100 | 4 |
| 合計 | 60 |
A. 20~40
B. 40~60
C. 60~80
D. 80~100
中央値とは、データを小さい順に並べた際にちょうど中央に位置する値のことです。データの個数が偶数の場合は、中央の $2$ つの数の平均を中央値と定めます。
設問の表の場合、データの個数の合計が $60$ であるため、中央の位置は $30$ 番目と $31$ 番目の間となります。度数を上から数えていくと、$30$ 番目と $31$ 番目の値はともに $40 \sim 60$ の階級に属しています。よって、選択肢Bが正解です。
試験対策
基本統計量を見ることで、新しいデータの流入によってデータ全体の傾向に起きた変化などを把握することができます。こうした変化を素早くとらえるために、中央値のような基本統計量や、代表的な分布の形状を覚えておく必要があります。
また、こうした変化を素早くとらえるためには、普段業務の中で扱っているデータの発生トリガーやタイミング、頻度を把握しておく必要があることを覚えておきましょう。参考
平均に関連する統計量として、幾何平均(相乗平均)と調和平均があります。幾何平均は、値の総積に対し累乗根をとったものです。調和平均は、値の逆数の平均に対し逆数をとったものです。どちらも、比率を平均する際に用いられます。
$2$, $60$, $40 \sim 60$ 等のLaTeX形式を維持し、構文の不備がないことを確認しました。以下の図は、2025年における日本の将来推計人口を表す人口ピラミッドである。この図からどのようなことが読み取れるか、最も適切なものを選べ。
※「日本の将来推計人口(平成29年推計)」に基づく2025年の人口ピラミッド(国立社会保障・人口問題研究所)(https://www.ipss.go.jp/site-ad/TopPageData/PopPyramid2017_J.html)を基に作成
A. 男女とも、20歳代から30歳代の人口よりも、50歳代から60歳代の人口のほうが多い
B. 2020年時点よりも高齢化が進んでいることがわかる
C. 2000年以降の出生数は増加傾向にある
D. 高齢出産の割合が多い
[図:17_043_1-1] および解説文を、規定のマーカー形式 <図17_043_1-1---> に置換・統合しました。## 21. および末尾のID [18_043_2] を正確に維持しました。図表を解釈する際には、その図単体から得られる情報を材料として考える必要があります。
設問の人口ピラミッドでは、$20$ 歳代から $30$ 歳代の人口よりも、$50$ 歳代から $60$ 歳代の人口のほうが明らかに多くなっています。よって、選択肢Aは適切です。選択肢B、C、Dの根拠となる情報は、この図のみからは得ることができません。設問の人口ピラミッドは、$2025$ 年時点での推計値に過ぎません。年をまたいだ人口の変化の傾向をつかむためには、他の年の人口ピラミッドの情報と比較する必要があります。したがって、設問の図単体から高齢化の傾向や出生数の傾向についての情報を得ることはできません(B、C)。また、出産年齢の情報は人口ピラミッドに含まれていません(D)。「高齢出産の割合が多い」という判断をするためには、出産年齢そのもののデータを見る必要があります。
<図58_084_1--->
図58_084_1
<--->
試験対策
図表を読み解く際には、まず知りたい情報がその図表に含まれているかどうかを確認しましょう。
[58_084_1] を規定のマーカー形式に置換しました。$...$)で統一しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
( ア )に従うことで、効率のよいデータ収集と適切なデータ解析を行うことが可能となる。また、標本誤差とは( イ )を表す量である。ここで、「標本の値(標本値)」は標本から算出される平均や分散などの値、「母集団の値(母集団値)」は母集団から算出される平均や分散の値を意味するものとする。
A. (ア)実験計画法
(イ)標本の値と母集団の値の差
B. (ア)実験計画法
(イ)標本の値のばらつき
C. (ア)収集解析法
(イ)標本の値と母集団の値の差
D. (ア)収集解析法
(イ)標本の値のばらつき
実験計画法とは、効率のよい実験方法を設計し、結果を適切に解析することを目的とする統計学の手法です(A、B)。例えば、変数の組み合わせの総数が多い場合などは、実験計画法を用いることにより、少ない実験回数で必要なデータを収集することができます。
ここで、「標本の値(標本値)」は標本から算出される平均や分散などの値、「母集団の値(母集団値)」は母集団から算出される平均や分散の値を意味するものとします。
母集団とは、調査の対象となる集合全体のことです。母集団から一部のデータを抽出することを標本調査と呼び、得られたデータを標本(サンプル)といいます。標本の平均を標本平均といいます。
標本誤差とは、標本値と母集団値との差のことであり、調査結果が信頼できるものかどうかを判断するための指標です(A、C)。標本誤差は抽出数を多くするほど小さくなり、また母集団のデータのばらつきが小さいほど小さくなります(B、D)。
以上より、組み合わせが適切な選択肢Aが正解です。
母集団値は未知であることがほとんどであり、その場合には標本誤差を求めることは不可能です。しかし、標本誤差がどの範囲になるかは、確率論に基づいて一定の式で計算することができます。
この、標本誤差の範囲を確率的に評価する統計量を標準誤差といいます。標準誤差は、標本と母集団との間にどの程度誤差が存在しうるかを確率的に算出したものです。標準誤差によって、標本調査の結果の集計や平均、分散が母集団を推定するための代表値として妥当であるかを評価することができます。この標準誤差が小さければ小さいほど、標本調査の結果が母集団に近いといえます。標準誤差 $\sigma_{\bar{x}}$ は、次式によって定義されます。
$$ \sigma_{\bar{x}} = \sqrt{\frac{\sigma^2}{n}} $$
($\sigma_{\bar{x}}$:標準誤差(標本平均の標準偏差)、$\sigma$:母集団の標準偏差、$n$:標本のサンプルサイズ)
<図59_064_1--->
図59_064_1
<--->
この定義より、標本数が増えるほど標準誤差が小さくなり、より信頼性の高いデータが得られることがわかります。
[59_064_1] を指定のマーカー形式 <図59_064_1---> に変換しました。[59_064_1] は「PAGE_ID-n」の形式として解釈し置換しましたが、内容の記述がなかったためマーカー内はIDのみとしています。写真に馬が写っているかいないかを判定する画像分類モデルを構築するため、畳み込みニューラルネットワーク(CNN)のモデルを学習させる。学習に使用するデータセットは 10,000 枚の画像からなり、そのうち 200 枚に馬が写っている。また、馬が写っている画像のうち $98 \,\%$ が競馬場で撮られたもので、$2 \,\%$ が牧場で撮られたものである。このとき、このモデルが引き起こしうる問題点として、最も適切でないものを選べ。
A. CNNは、馬のような複雑な形状を認識するのに適していないため、精度の低いモデルになる可能性がある
B. 訓練データの総数に対して、馬が写っている画像の数が極端に少ないため、学習の工夫をしなければ、精度の低いモデルになる可能性がある
C. 馬の写っている画像のほとんどが競馬場で撮られたものであるため、他の場所で撮られた馬が写っている画像に対して、分類精度が低いモデルになる可能性がある
D. 競馬場で撮影された写真には馬とともに騎手が多く写っているため、馬のみが写っている画像を、馬が写っている画像と認識できないモデルになる可能性がある
$98 \,\%$ に統一し、数値と記号の間に適切なスペース( \, )を挿入しました。## 23. を維持し、選択肢の構造を整えました。<!-- PAGE_19_044_1 --> は図のプレースホルダー形式([図:...])ではなかったため、ページ識別用のコメントとしてそのまま維持しています。畳み込みニューラルネットワーク(CNN)は、畳み込み層をもつ深層学習モデルの総称であり、画像分類や物体検出などに多く用いられます。CNNでは、畳み込み層を用いて画像の特徴を抽出することにより、複雑な物体の特徴をとらえることができます。よって、選択肢Aは不適切な記述です。
データセットを用意する際には、集めた画像に偏り(バイアス)がないか注意する必要があります。まずは、カテゴリ(写っているものの種類)ごとのデータの数に偏りがないかを確認します。全体に対する特定のカテゴリのデータ数が少ないデータセットを用いてモデルを学習させた場合、そのカテゴリに対するモデルの分類精度が低くなる可能性があります(B)。
また、設問の場合「競馬場にいる馬」の写真が多く、「牧場にいる馬」の写真が少ないことも懸念事項の1つです。競走馬と牧場の馬は微妙に体格が異なるうえ、競馬場で撮られた写真と牧場で撮られた写真では、背景に写っているものが大きく異なります。そのため、モデルがデータ数の多い「競馬場にいる馬」の特徴ばかりを学習してしまい、「牧場にいる馬」に対する精度が低くなる可能性があります(C)。
さらに、競馬場で撮影された写真に馬とともに騎手が多く写っている場合、このデータを用いて学習させたモデルは、「競走馬と騎手」の特徴をひとまとめにして「馬」の特徴としてとらえてしまう可能性があります。このときモデルは「馬が写っているが騎手は写っていない画像」を、馬が写っている画像として認識できなくなることがあります(D)。これを回避するためには、画像の中で馬の写っている領域のみにラベルを付与する、特殊なアノテーションを行う必要があります。
参考
データ自体にカテゴリなどの偏りがある場合、その偏りをデータバイアスと呼びます。また、モデルを構築する際に用いたアルゴリズムに起因する、モデルの出力の偏りをアルゴリズムバイアスと呼びます。
ある大学で実施した体育祭の結果において、「マラソンの記録がよい集団の中には、成績のよい人が多い」という傾向が見られた。この傾向から導くことのできる結論として、最も適切なものを選べ。
A. マラソンの記録と成績の間には、正の相関関係がある
B. 成績がよいと、マラソンの記録がよくなる
C. 成績のよい人は、運動神経がよい
D. 成績のよい人は、トレーニングをする時間的余裕がある
ある変数のペアがあり、一方の変数の変化に応じて他方も変化する傾向が見られる場合、相関関係があると考えることができます。
相関関係は、正の相関関係と負の相関関係に分けることができます。2つの変数があり、どちらかの変数が大きくなれば他方も大きくなる傾向が見られる場合、それら2つの変数には正の相関関係が見られるといいます。逆に、どちらかの変数が小さくなれば他方が大きくなる傾向が見られる場合、それら2つの変数には負の相関関係が見られるといいます。
設問の「マラソンの記録がよい集団の中には、成績のよい人が多い」という結果は、「マラソンの記録と成績の間には正の相関関係がある」ということを表しています(A)。
選択肢B、Cは因果関係の例です。因果関係とは、一方の変数の変動を原因として、もう一方の変数が変動する関係を意味します。データ同士に相関関係がある場合に、必ずしも因果関係があるとは限りません。 例えば、相関関係が2つの変数以外の因子によって引き起こされている場合などがこれに該当します。このような相関関係を擬似相関といいます。
通常は、データを元に「2つの変数間には因果関係がある」と断言することはできません(「因果関係がある可能性がある」と考察することは可能です)。よって、「マラソンの記録がよい集団の中には、成績のよい人が多い」という分析結果から、選択肢B、Cのような因果関係を断言することはできません。また、選択肢Dは、「成績と時間の余裕の関係」を示すデータが与えられていないため、導くことはできません。
試験対策
データ分析の際は、結論を急がず、数値を冷静に見たうえで物事を多角的に考察することを意識しましょう。場合によっては、扱っているデータのみではなく、それに紐づいたデータにも目を向けましょう。
<!-- 61_065_1 -->)を正確に維持。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切でないものを選べ。
機械学習の手法の1つである( ア )は、( イ )問題に対して用いられる。
A. (ア)線形回帰 (イ)回帰
B. (ア)k-means 法 (イ)回帰
C. (ア)ランダムフォレスト (イ)分類
D. (ア)サポートベクターマシン (イ)分類
機械学習において、回帰とは、ある入力データに対して適切な連続値を出力することです。また、分類とは、ある入力データに対し適切なカテゴリ(病気である/病気でないなど)を出力することです。
線形回帰は、説明変数に対する重み付け和によって連続値を出力する手法であり、回帰問題で用いられます(A)。
$k$-means法は、クラスタリングに用いられる手法です。データをクラスタに分けた後、クラスタの平均と各データの距離を用いて、データを $k$ 個のクラスタに分類します。よって、選択肢Bの組み合わせは適切ではありません。
ランダムフォレストは、ランダムに生成した複数の決定木の出力をもとに最終的な予測結果を出力する、アンサンブル学習を行う手法の一つです。ランダムフォレストは、回帰問題・分類問題の両方に適用することができます。ランダムフォレストを回帰問題に適用する場合には、それぞれの決定木(これを回帰問題では特に回帰木と呼ぶ場合があります)の出力の平均値(あるいはそれ以外の何らかの代表値)を最終的な出力とします。一方、ランダムフォレストを分類問題に適用する場合には、それぞれの決定木(分類問題では特に分類木という場合があります)の出力の多数決をとり、その中で最多のクラスを最終的な出力とします(C)。
決定木は、座標軸に平行な境界線を複数引くことによって、分類または回帰を行う手法です。決定木の学習結果は、木構造で表現されます。決定木では、不純度という指標が大きく減少するようにクラスの分割を行います。多様なクラスが混在するグループは不純度が高く、ある1つのクラスで構成されている場合、もしくはある1つのクラスの割合が非常に高い場合などは、不純度が低くなります。
サポートベクターマシン(SVM)は、マージン最大化に基づいて分類の境界線を学習する手法であり、主に分類問題に用いられます(D)。
試験対策
分類問題は教師あり学習のタスクの1つですが、クラスタリングは教師なし学習のタスクの1つです。再度確認しておきましょう。参考
量的な変数を予測する代表的な方法として線形回帰が、2値の質的な変数を予測する代表的な手法としてロジスティック回帰があることも把握しておきましょう。
** で強調しました。$k$個 を $k$ 個 とし、数式と日本語テキストの間の視認性を微調整しました。## 25. B や引用ブロック(>)、ページブレークマーカー <pb: ...> 等の構造を一字一句維持しつつ、Markdownとしての整合性を整えました。<pb: 62_087_1> はページ区切りを示す特殊タグと判断し、そのまま残しています。図のプレースホルダー形式とは異なるため置換は行っていません。機械学習における、過学習(過剰適合)と次元の呪いがもたらす問題の組み合わせとして、最も適切なものを選べ。
過学習:( ア )
次元の呪い:( イ )
A. (ア)未知のデータに対応できない (イ)学習にかかる時間が大幅に増大する
B. (ア)未知のデータに対応できない (イ)予測にかかる時間が大幅に増大する
C. (ア)予測にかかる時間が大幅に増大する (イ)学習にかかる時間が大幅に増大する
D. (ア)予測にかかる時間が大幅に増大する (イ)膨大な量のデータが必要になる
機械学習において、訓練データによる予測結果と正解データとの誤差を訓練誤差といいます。また、学習に用いていない未知のデータに対する誤差を汎化誤差といいます。
過学習(過剰適合)とは、モデルの訓練誤差が十分小さいにもかかわらず、汎化誤差が大きいことを指します。過学習しているモデルは、未知のデータに対応することができません(A、B)。これは人間でいうと、「ドリルで勉強した問題の答えは完璧に覚えているが、実際のテストでドリルと異なる問題が出てきたときに解くことができない」状態です。過学習の主な原因としては、問題に対してモデルの表現能力が高すぎたり、訓練データの数が少なすぎたりすることや、あるいはその両方の組み合わせなどが挙げられます。過学習を抑える技法には、正則化などがあります。
次元の呪いとは、機械学習において、入力の次元数(説明変数の数)が増えると、学習の難しさが指数関数的に増加するという現象をいいます。次元の呪いが生じると、具体的には、学習時間が増えたり、十分な予測精度を出すために膨大な量の訓練データが必要になったりします(A、C、D)。また、次元の呪いが生じると、かえって予測精度が低下する場合があります。データの次元数を削減する技法には、主成分分析などがあります。
以上より、空欄アは「未知のデータに対応できない」、空欄イは「学習にかかる時間が大幅に増大する」となり、組み合わせが適切な選択肢Aが正解です。
試験対策
過学習や次元の呪いの定義と、それぞれへの対処法について説明できるようにしておきましょう。
## 26. A および末尾のコメントタグ、引用ブロックの構造を正確に維持しました。以下の記述を読み、空欄アに入る語句として、最も適切なものを選べ。
機械学習モデルの説明責任や精度改善のために、そのモデルの解釈性が求められる場合が増えつつある。モデルの解釈性を確保する方法の1つは、モデルの予測結果の大域的(global)な説明を行うことである。大域的な説明とは( ア )のことである。
A. 複雑なモデルを、人間にとって解釈可能なモデルを用いて再現する試み
B. ある入力に対するモデルの予測プロセスを説明する試み
C. モデルの学習アルゴリズムを疑似コードで書き表す試み
D. モデルの予測値の分布を推定する試み
モデルの大域的な説明とは、機械学習を用いて構築した複雑なモデルを、人間にとって解釈可能で可読性の高いモデルを用いて再現することを指します $(A)$。近似的に再現したモデルの予測プロセスを調べることで、元のモデルの解釈を試みることができます。
例として、モデルを単純な線形回帰に変換する場合を考えてみます。この場合は、回帰式における各変数の係数の大小を見れば、モデルがどの変数を重視しているかを調べたり、ある変数の値が $1$ 上がると予測結果がどのように変化するかを調べたりすることができます。近似モデルを作る際には、線形回帰の他に決定木を用いる方法などを使うことができます。ただし、元のモデルと比べ、可読性の高いモデルで近似したものは、予測の精度が低くなる可能性があります。
近似を行うことによって生じる精度の低下を回避する方法の $1$ つが、モデルの局所的な説明です。これは、機械学習モデルへの特定の入力に対する予測結果や予測プロセスを元に、モデル自体の解釈を試みる方法です $(B)$。
例えば、画像に写っている動物の種類を識別するモデルを考えます。このモデルにある猫の写真を入れて正しく猫と識別したときに、画像のどの部分を特徴としてとらえたか、入力した画像を用いて説明するという方法があります。これは、モデルが「この画像には猫が写っている」と判断した根拠を説明することにつながります。
予測結果の理由を説明できると、モデルが不適切な予測を出力した場合に、その原因を探ることができます。逆に、説明ができない状態では、モデルが不適切な予測を出力した場合、どこを改良すればよいのか、解決の糸口を見出すことが困難になります。
選択肢 $C$、$D$ は、大域的な説明/局所的な説明のどちらの定義にも当てはまりません。
参考
2015年に、Google Photos の AI による自動タグ付け機能が、アフリカ系女性の写真に対し「ゴリラ」とラベル付けしてしまうという事件が起こりました。結局、そのような不適切な予測をした要因の特定には至らず、タグ付け AI の訓練データから「ゴリラ」のラベルを除外するという措置がとられました。
## 27. A および末尾のコメント、引用ブロックの構造を正確に維持しました。自然言語処理の基礎技術の1つとして、文を意味のある最小の文字の集まりまで分割する形態素解析がある。次の中から、形態素解析に用いられるツールではないものを選べ。
A. JUMAN
B. ChaSen
C. MeCab
D. CaboCha
形態素解析と、それを実行するツールに関する問題です。
人間が日常的にコミュニケーションに用いている言語を自然言語といいます。自然言語ではない言語の例としては、Pythonのようなプログラミング言語や、エスペラント語に代表されるような人工言語などが挙げられます。自然言語をコンピュータに処理させるための技術分野を自然言語処理(NLP:Natural Language Processing)といいます。
形態素解析は、自然言語処理の基礎技術の1つです。形態素解析は、入力された文を形態素まで分解する技術です。形態素とは、何らかの意味をもつ最小限の文字の集まりです。例えば、「今日はよい天気だ。」という文を形態素に分解すると、以下のようになります。
【「今日はよい天気だ。」を形態素に分解した結果】
| 形態素 | 品詞の分類 |
|---|---|
| 今日 | 名詞-副詞可能 |
| は | 助詞-係助詞 |
| よい | 形容詞-自立、形容詞-アウオ段-基本形 |
| 天気 | 名詞-一般 |
| だ | 助動詞-特殊・ダ 基本形 |
| 。 | 記号-句点 |
日本語の形態素解析に用いられる代表的なツールとして、MeCabやJUMAN、ChaSenなどが挙げられます(A、B、C)。
CaboChaは、MeCabの解析結果を入力とする係り受け解析ツールです(D)。係り受け解析は、形態素解析の解析結果を元に各形態素間の係り受け関係を解析する技術です。CaboChaの他に、代表的な係り受け解析ツールとして、KNPやGiNZAなどがあります。
自然言語処理に関する以下の記述のうち、最も適切でないものを選べ。
A. 形態素解析とは、文を文節に分け、各文節の関係を推定する処理である
B. 単語の大文字/小文字や全角/半角などの表記を統一(正規化)すると、単語の出現頻度を調べるにあたって都合がよい
C. 出現頻度の少ない単語や、タスクに関係のない単語をストップワードと呼ぶ
D. 動詞の語幹を抽出する処理をステミングと呼ぶ
[page:21_045_1]
[page:21_045_1] は図のプレースホルダーの形式([図:...])とは異なるため、参照用IDとしてそのまま維持しました。形態素解析とは、文を形態素(単語)に分割し、各形態素の属性(品詞など)を判定することです。また、文を文節に分けて、それぞれの文節の関係を調べる処理を係り受け解析といいます。よって、適切でない選択肢はAとなります。
【形態素解析と係り受け解析の例】
「東京都に住む」を形態素解析した結果
| 東京 | 名詞, 固有名詞, 地域, 一般, , , 東京, トウキョウ, トーキョー |
| 都 | 名詞, 接尾, 地域, , , *, ト, ト |
| に | 助詞, 格助詞, 一般, , , *, に, ニ, ニ |
| 住む | 動詞, 自立, , , 五段・マ行, 基本形, 住む, スム, スム |
係り受けの例
データ集合に含まれる欠損・外れ値・不正確な値・無関係な値を特定し、除去/修正することをデータクレンジング(データクリーニング)と呼びます。同じ単語の大文字/小文字や全角/半角を統一することは、自然言語処理のクレンジング処理の1つです(B)。この処理を行うことで、例えば、「Python・PYTHON・python」のような表記揺れのある単語を同一単語として扱うことができます。
自然言語処理において、出現頻度の少ない単語や、タスクに関係のない単語をストップワードと呼びます(C)。ストップワードの例としては「、」「。」などの記号や「a」「an」といった冠詞が挙げられます。また、単語の語幹を抽出する処理(running → runなど)をステミングと呼びます(D)。ストップワードの除去やステミングもまた、自然言語処理のデータクレンジングの一種です。これらの処理を行うことで、取り扱う単語の数を削減することができます。
【試験対策】
形態素解析、係り受け解析の定義や、自然言語データのデータクレンジングの種類についてよく確認しておきましょう。
**)に設定しました。[図:29_001_1-1:...] を、指定されたマーカー形式 <図29_001_1-1---> に置換しました。## 29. A および末尾の <p_num> タグを正確に維持しました。GLUEは、自然言語処理において用いられる複数の言語理解タスクを1つにまとめたベンチマークである。GLUEにおいて課せられるタスクに関する説明として、最も適切でないものを選べ。
A. GLUEでは、与えられた2つの文について、2者の内容の間に矛盾があるか、一方が他方を含意するかなどを判定するタスクが課せられる。このようなタスクは、**自然言語推論(NLI)**もしくは**含意関係認識(RTE)**と呼ばれる
B. GLUEでは、ある代名詞が文中のどの名詞を指しているかを判定するタスクが課せられる。このようなタスクは、**照応解析**と呼ばれる
C. GLUEでは、文書の中から人名や地名などの固有名詞、日付、時間表現などを含む固有表現を取り出すタスクが課せられる。このようなタスクは、**固有表現抽出(NER)**と呼ばれる
D. GLUEでは、映画作品のレビューテキストがポジティブな内容かネガティブな内容かを判定するタスクが課せられる。この種のタスクは、**評判分析**と呼ばれる
自然言語処理の分野で用いられるGLUEベンチマークに関する問題です。
GLUE (General Language Understanding Evaluation) は、自然言語処理モデルによる言語理解の精度を計測するためのベンチマーク(評価水準)です。GLUEでは、複数の自然言語処理タスクに対する成績の総合値によって、自然言語処理モデルの性能が表現されます。
GLUEにおいて課せられるタスクは下表のとおりです。
【GLUEにおいて課せられるタスク】
| タスクの名称 | 概要 |
|---|---|
| CoLA (The Corpus of Linguistic Acceptability) | 入力された文が英文法的に正しいか (acceptability) を判定する |
| SST-2 (The Stanford Sentiment Treebank) | 入力された文(映画レビュー)を分類する(評判がポジティブであるかネガティブであるかを判定する) |
| MRPC (Microsoft Research Paraphrase Corpus) | 入力された2つの文の意味が同じかどうか(一方が他方の言い換えかどうか)を判定する |
| STS (Semantic Textual Similarity) | 入力された2つの文の意味の類似性を評価する |
| QQP (Quora Question Pairs) | 入力された2つの質問文の意味が同じかどうか(等価であるか)を判定する |
| MNLI (Multi-Genre Natural Language Inference) | 入力された2つの文の含意関係(含意・矛盾・中立)を判定する |
| QNLI (Question Natural Language Inference) | あるパラグラフとそれに対する質問が入力され、パラグラフが質問に対する正しい回答を含んでいるか否かを判定する |
| RTE (Recognized Textual Entailment) | 入力された2つの文の含意関係(含意/含意でない)を判定する |
| WNLI (Winograd Natural Language Inference) | ある代名詞が文中のどの名詞を指しているのかを判定する |
上の表からわかるとおり、固有表現抽出はGLUEには含まれません(C)。
固有表現抽出(NER:Named Entity Recognition)は、文書中の固有表現を判定して取り出すタスクです。固有表現とは、固有名詞(人名・地名・組織名など)や数値表現(時間や日付や金額といった数値で表現される事物
など)の総称です。これらの固有表現は、一般名詞などと区別して処理する必要があります。
C以外の選択肢については、以下のとおりです。
A 2つの文の間の含意関係や矛盾の有無を判定するタスクは、自然言語推論(NLI)もしくは含意関係認識(RTE)と呼ばれます。
B 照応詞(代名詞や指示詞など)が文中の何を指しているか(照応関係)を判定するタスクは、照応解析と呼ばれます。
D 何らかの基準によって文書の内容を分類するタスクは、一般に文書分類と呼ばれます。GLUEのSST-2のような評判分析・感情分析と呼ばれるタスクも、文書分類タスクの一種です。
** で強調しました。## 30. C および HTMLコメント <!-- 67_068_1 --> を原文通り維持しました。<!-- 67_068_1 --> の前後で文章が物理的に分断されている可能性がありますが、文脈から判断して補完は行わず、元の構造を維持しています。画像データに関する以下の記述のうち、最も適切でないものを選べ。
A. **画像データ**は、**画素(ピクセル)**の集合である
B. 画像データのフォーマット(保存形式)の一種である**PNG**は、**上書き保存を繰り返すたびに画質が劣化**するという性質をもつ
C. **リサイズ**や**パディング**は、画像の**大きさ(幅と高さ)を揃える**ための処理の一種である
D. **ノイズ除去**や**輪郭抽出**は、画像に対する**フィルタ処理**の一種である
画像データの本質は、複数の画素(ピクセル)の集合です(A)。画素とは画像を構成する情報の単位であり、色を表す数値情報をもつ非常に小さな正方形を指します。画像データにおいて、色はR・G・B(赤・緑・青)の三原色を用いて表現されます。三原色それぞれの濃度を調整することにより、さまざまな色を表すことができます。例えば、黒色は $(R, G, B) = (0, 0, 0)$ で表現されます。各色の最大値は $255$ です。$(R, G, B) = (255, 255, 255)$ は白色を表します。
【画像データと画素】
画像データのフォーマットとしては、JPG(JPEG)、PNG、GIFなどがあります。データの圧縮方式や表現可能な色の種類に違いがあります。
JPGとPNGは、フルカラー(1677万色)で画像を表現するためのフォーマットです。PNG形式で保存された画像は、保存を繰り返しても画質は劣化しません(B)。対して、JPG形式では、目視で把握できない情報を削除することでデータを圧縮します。そのため、JPG形式で保存された画像は、保存を繰り返すたびに画質が劣化します。
GIFは、256色で画像を表現するためのフォーマットです。1つのファイル内に複数枚の画像を格納することができ、パラパラ漫画のような動画を作成することができます。
画像データを用いたデータセット(データ集合)を作成する場合には、画像の大きさ(幅と高さ)を統一しておくと便利です(モデルの構造によっては、サイズを統一しなくても学習を行える場合があります)。画像の大きさを揃える際には、パディングやリサイズを行います(C)。パディングとは、画像のフチにダミーのデータを挿入する処理です。また、リサイズとは、画像の拡大/縮小を行い、幅と高さを変更する処理です。
ノイズ除去や輪郭抽出など、画像に対し特殊な加工を行うことをフィルタ処理といいます(D)。適切な加工(前処理)を行うと、データの特徴をとらえやすくなり、識別精度の高いAIモデルの構築につながります。
【試験対策】
画像フォーマットの名称と性質について説明できるようにしておきましょう。【参考】
カラーからモノクロへの色変換には、さまざまなアルゴリズムが用いられます。例えば、各画素の濃度を、R・G・Bすべての値を平均したものに置き換えるという方法があります。
[図:67_068_1-1:...] を指定のマーカー形式 <図67_068_1-1---> に置換しました。## 31. B および文末のページマーカー <Page_1>、参照記号 (A) などの構造を維持しました。以下の記述を読み、空欄ア、イに入る語句の組み合わせとして、最も適切なものを選べ。
データの保存形式をフォーマットという。音声データのフォーマットの例としては、( ア )が挙げられる。また、動画データのフォーマットの例としては、( イ )が挙げられる。
A. (ア)WebM (イ)MOV
B. (ア)WAV (イ)MP3
C. (ア)MP3 (イ)WebM
D. (ア)WebM (イ)MP4
音声データのフォーマットとしては、WAV、MP3、FLACなどがあります。
WAV (Waveform Audio File Format) は、非圧縮のフォーマットです。同じデータをこれら3つのフォーマットで保存した場合、WAVファイルとして保存したものは最も容量が大きくなります。
MP3 (MPEG Audio Layer3) とFLAC (Free Lossless Audio Codec) は、音声データのコーデック(データ圧縮技術)の1つであり、それを用いた音声データのフォーマットの名称でもあります。FLACは、圧縮前のデータを完全に復元することができる可逆圧縮のフォーマットであり、MP3は圧縮前のデータを完全には復元できない非可逆圧縮(不可逆圧縮)のフォーマットです。
動画データのフォーマットとしては、AVI、MOV、MP4、WebMなどがあります。
AVIはWindows、MOVはmacOSにおける標準的な動画フォーマットです。MOVはビデオカメラにも多く利用されています。WebMは、Google社によって開発/公開されているWeb向けの軽量なフォーマットです。MP4も、WebMと同様に軽量なフォーマットです。MP4ファイルは本来、動画データ(映像+音声)を扱うための形式ですが、音声のみを格納する際にも用いられます。
以上より、空欄アはMP3、空欄イはWebMとなり、組み合わせ適切な選択肢Cが正解です。
参考
動画ファイルのフォーマット名称は、データを格納する方式を表しています。そのため、音声ファイルの場合とは異なり、フォーマットとコーデックの名称は一致しません。例えば、MP4ファイルのコーデックにはH.264が用いられたり、WebMのコーデックにはVP9が用いられたりします。
あなたは、ある衣料品店におけるバスケット分析(商品の売れ行きの関係性の分析)業務に携わっている。クライアントから以下の表に示すような購買履歴データを受け取った。表中の「◯」はその商品が購入されたこと、「-」は購入されなかったことを示す。このデータを元に、商品Aから見た商品Bのリフト値を計算せよ。ただし、値の小数第四位以下は切り捨てるものとする。
【購買履歴データ】
| レシート番号 | A | B |
|---|---|---|
| 1 | ◯ | ◯ |
| 2 | ◯ | ◯ |
| 3 | ◯ | - |
| 4 | - | ◯ |
| 5 | - | ◯ |
| 6 | ◯ | ◯ |
| 7 | ◯ | - |
| 8 | - | ◯ |
| 9 | ◯ | - |
| 10 | - | ◯ |
| 合計 | 6 | 7 |
A. 0.3
B. 0.5
C. 1.666
D. 0.714
本来、割合と確率は別物ですが、データ分析の分野においては、相対度数を確率の推定値として取り扱うことがあります。
ある購買履歴データが得られたとき、購買履歴全体の中で、顧客の1回の購買において商品Aが購入される確率を $P(A)$、商品Bが購入される確率を $P(B)$ と表現します。また、一度に商品Aと商品Bが両方に購入される確率は、積集合の記号 $\cap$ を用いて $P(A \cap B)$ と表されます。
さらに、Aを買った購買履歴の中でBが買われる確率は、条件付き確率の記号 $|$ を用いて $P(B|A)$ と表します。
バスケット分析とは、小売店や通販サイトにおける顧客の買い物かご(バスケット)の中身の傾向を解析する手法です。商品単体ではなく、商品Aと商品Bの売れ行きの関係性を分析することを目的としています。
バスケット分析においては、$P(A \cap B)$ を支持度(support)といい、$P(B)$ を期待信頼度(expected confidence)といいます。さらに、$P(B|A)$ をAから見たBの信頼度(confidence)といいます。また、$P(B|A)$ を $P(B)$ で割ったものを、Aから見たBのリフト値(lift)といいます。
Aから見たBのリフト値は、Aと一緒にBも購入した人の割合(信頼度)が、すべてのデータの中でBを購入した人の割合(期待信頼度)よりどれだけ多いかを倍率で示したものです。Aから見たBのリフト値が大きいほど、「Aを買った人はついでにBも買う傾向にある」といえます。
設問の表のデータからこれらの値を計算すると、次のようになります。
$$ \begin{aligned} P(A) &= 6/10 = 0.6 \\ P(B) &= 7/10 = 0.7 \\ P(A \cap B) &= 3/10 = 0.3 \\ P(B|A) &= 3/6 = 0.5 \end{aligned} $$
となり、リフト値は次のように計算されます。
$$ \frac{P(B|A)}{P(B)} \approx 0.714 $$
以上より、選択肢Dが正解です。
また、バスケット分析のように、「もしこうだったら、こうなるであろう」というデータの関連性を見つけ出すことをアソシエーション分析といいます。
試験対策
リフト値の定義を理解し、実際に計算できるようにしておきましょう。参考
$P(B|A)$ は、条件付き確率の定義より、次のように求めることもできます。
$$ P(B|A) = \frac{P(A \cap B)}{P(A)} $$
$$...$$ によるディスプレイ形式および aligned 環境へ昇格させました。\frac 形式に変更しました。<!-- 70_069_2 -->)によって「積集合」という単語が分割されていたため、単語として成立するように配置を微調整しました。以下の表は、ある資格試験の受験者名とスコアを表したものである。この表からGさんのスコアの偏差値を算出し、最も値の近いものを選べ。ただし、値の小数第三位以下は切り捨てるものとする。
【ある資格試験の受験者名とスコア】
| 受験者名 | スコア |
|---|---|
| A | 360 |
| B | 410 |
| C | 420 |
| D | 560 |
| E | 570 |
| F | 600 |
| G | 710 |
| H | 720 |
| I | 740 |
| J | 910 |
A. 6.68
B. 50.66
C. 56.68
D. 164.56
偏差値とは、偏差(データと平均の差)を標準偏差(分散の平方根)で割ったものに10を掛け、さらに50を足した値です。データを $x_i$ ($i = 1, 2, \dots, n$)、平均を $\mu$、標準偏差を $s$ とおくと、偏差値は以下の式で求められます。
$$10 \left( \frac{x_i - \mu}{s} \right) + 50$$
また、分散は「偏差の二乗を平均する」または「$x^2$の平均から$\mu^2$を引く」計算で求めます。以下の式のどちらを用いても求めることができます。
$$\frac{1}{n} \sum_{i=1}^{n} (x_i - \mu)^2$$
$$\frac{1}{n} \sum_{i=1}^{n} x_i^2 - \mu^2$$
設問の表のスコアの平均は 600、分散は 27080、標準偏差は 164.56 となるため、Gさんのスコアの偏差値は $10 \times (710 - 600) / 164.56 + 50 \approx 56.68$ となります。
以上より、選択肢Cが正解です。
試験対策
分散や偏差値の計算式をしっかりと覚えておきましょう。
以下の記述を読み、空欄 $ア \sim ウ$ に入る語句の組み合わせとして、最も適切なものを選べ。
深層学習において用いられるディープニューラルネットワークは、多層化されたニューラルネットワークである。一般に、ディープニューラルネットワークは、入力を受け付ける入力層、出力を送り出す出力層、それらの間にある複数の( ア )の3つの要素によって構成される。( イ )は、ニューラルネットワークの各層が前の層から受け取った信号を、どのように次の層に伝播させるかについて定義する関数である。深層学習の登場によって、データから自動的に( ウ )することが可能になった。
A. (ア) 合成層 (イ) 損失関数 (ウ) 特徴量を抽出
B. (ア) 隠れ層 (イ) 損失関数 (ウ) 意味を抽出
C. (ア) 合成層 (イ) 活性化関数 (ウ) 意味を抽出
D. (ア) 隠れ層 (イ) 活性化関数 (ウ) 特徴量を抽出
$ア \sim ウ$ )に整えました。深層学習、ニューラルネットワークの仕組みに関する問題です。
ニューラルネットワークは、人間の脳の神経回路の仕組みを模した機械学習の一手法です。単純パーセプトロンは、最も基本的なニューラルネットワークの1つで、入力を受け取る入力層と、出力を送り出す出力層によって構成されます。この単純パーセプトロンに隠れ層(中間層)を追加したモデルが多層パーセプトロンです。単純パーセプトロンでは線形分離しか行うことができませんが、多層パーセプトロンでは非線形分離を行うことが可能です。
このように、ニューラルネットワークには、隠れ層を増やすことでモデルの表現力が向上し、より複雑な問題に対応できるようになる傾向があります。深層学習において用いられるディープニューラルネットワークは、このような考え方に基づいて隠れ層が追加された(層が深くなった)ニューラルネットワークです(空欄ア)。
【ディープニューラルネットワークの層構造】
活性化関数は、各層が前の層から受け取った信号を、どのように次の層に伝播させるかについて定義する関数です(空欄イ)。代表的な活性化関数として、シグモイド関数やtanh関数(ハイパボリックタンジェント関数)、ReLU(Rectified Linear Unit)などが挙げられます。勾配消失(ニューラルネットワークが多層化しすぎると学習が思うように進まなくなる現象)が起きにくいことから、近年ではReLUやその派生系の活性化関数(Leaky ReLUなど)がよく用いられています。
近年の深層学習(ディープラーニング)の発展によって、データに含まれる規則性(特徴)をモデルが自動的に抽出し、学習できるようになりました。データの特徴(特徴量)を機械学習によって自動的に学習させるこのようなアプローチを特徴表現学習と呼びます。従来の機械学習では、特徴量を人間の手で作り込むのが一般的でした。そのため、画像データや音声データなどといった、特徴量を取り出すことが難しいデータを機械学習の入力データとすることが困難でした。以上のような背景から、特徴量を自動的に学習できる深層学習が大いに注目されるようになりました(空欄ウ)。
以上より、組み合わせが適切な選択肢Dが正解です。
試験対策
深層学習やその基本となるニューラルネットワークの仕組みについて覚えておきましょう。
<図PAGE_ID-n--->)に置換・整形しました。サポートベクターマシンにおいて、2つのクラスを区分けする決定境界に最も近いデータ点を( ア )と呼ぶ。また、この( ア )と決定境界との間の距離を( イ )と呼ぶ。サポートベクターマシンは線形分離可能なデータに対して高い分類性能をもつが、( ウ )という手法を組み合わせると、線形分離可能でないデータに対しても高い分類精度をもつ。
A. (ア) サポートベクター
(イ) マージン
(ウ) ペナルティ
B. (ア) サポートベクター
(イ) 近傍距離
(ウ) カーネルトリック
C. (ア) サポートベクター
(イ) マージン
(ウ) カーネルトリック
D. (ア) テンソル
(イ) マージン
(ウ) カーネルトリック
<書名コード_37_1>
<書名コード_37_1>)を維持しました。<書名コード_37_1> は図のプレースホルダー規定([図:...])の形式とは異なりますが、データ識別用のタグと判断し、そのまま維持しています。サポートベクターマシンに関する問題です。
サポートベクターマシン(SVM:Support Vector Machine)は、教師あり機械学習の手法の1つです。もともと2つのクラスを分類するためのアルゴリズムとして考案されましたが、多クラス分類や回帰といった問題にも応用されています。サポートベクターマシンを回帰問題に応用した手法は、サポートベクター回帰(SVR:Support Vector Regression)と呼ばれます。
2クラス分類に用いられるサポートベクターマシンでは、「マージンが最大になるように決定境界を引く」というコンセプトに基づいて分類が行われます。決定境界は、2つのクラスを区分けする境界線です。決定境界によって分けられた2つのクラスに属するデータ点のうち、決定境界までの距離が最も小さいものはサポートベクトルと呼ばれます(空欄ア)。決定境界とサポートベクトルとの間の距離をマージンといいます(空欄イ)。サポートベクターマシンは、このマージンが最大になるような決定境界を引くことで、2つのクラスを線形分離します。
【サポートベクターマシンのコンセプト】
サポートベクターマシンは線形分離可能な(2つのクラスを直線的に分離できる)問題に対して用いられます。したがって、サポートベクターマシンを下図左のような線形分離できないデータに対して適用しても高い予測性能は期待できません。下図左のようなデータに対しては、下図右のような高次元特徴空間(入力データの次元をより高次元に拡張した空間)にデータを射影すると、線形分離が可能になる場合があります。高次元特徴空間にデータを射影して線形分離する発想を数学的にうまく実現するのがカーネルトリックという手法です(空欄ウ)。サポートベクターマシンとカーネルトリックを組み合わせれば、もともとのサポートベクターマシンでは対処の難しかった
データに対しても、高い予測性能を期待することができます。
【高次元特徴空間へ写像のイメージ】
以上より、組み合わせが適切な選択肢Cが正解です。
**)で強調しました。<図PAGE_ID-n--->)へ置換しました。$ ... $)で囲い、視認性を向上させました。<!-- 74_071_2 --> というコメントで中断されていますが、ルールに基づきそのまま維持しています。文脈自体は前後で繋がっているため、特に追加の補完は行っていません。機械学習に関する以下の記述を読み、空欄ア〜ウに入る語句の組み合わせとして、最も適切なものを選べ。
( ア )は、複数のモデルを組み合わせて1つのモデルを生成する手法である。( ア )の代表的な実装例である( イ )では、複数の決定木を並列に生成し、それらの出力の多数決をとることで最終的な予測結果を得る。一方( ウ )では、まず1つの決定木を学習させておき、そのモデルが誤認識したデータを正しく分類できるように次の決定木を学習させることで予測精度を高める。
A. (ア)アンサンブル学習 (イ)勾配ブースティング決定木 (ウ)ランダムフォレスト
B. (ア)マルチタスク学習 (イ)勾配ブースティング決定木 (ウ)ランダムフォレスト
C. (ア)アンサンブル学習 (イ)ランダムフォレスト (ウ)勾配ブースティング決定木
D. (ア)マルチタスク学習 (イ)ランダムフォレスト (ウ)勾配ブースティング決定木
## 37. および末尾のコメントアウト記号を維持しました。弱識別器として決定木を用いたアンサンブル学習に関する問題です。
アンサンブル学習は、複数のモデルの予測結果を組み合わせることで、汎化性能の高いモデルを生成する手法です(空欄ア)。アンサンブル学習は、単体での精度がそれほど高くなく、過学習(モデルが訓練データに対して過剰に適合してしまい、未知のデータに対する予測性能が低い状態)しやすい決定木のようなモデルに対して特に有効です。このような、単体での精度が比較的低いモデルは弱識別器と呼ばれることもあります。
アンサンブル学習の代表的な手法として、バギング(Bagging:Bootstrap AGGregatINGの略)とブースティング(Boosting)が挙げられます。
● バギング
各モデルを並列的に学習させる手法です。分類タスクでは各モデルが出力したクラスの多数決、回帰タスクでは各モデルの出力値の加重平均をとることで、最終的な予測結果を決定します。バギングの代表的な手法として、ランダムフォレストなどがあります(空欄イ)。
● ブースティング
各モデルを直列的・逐次的に学習させる手法です。前のモデルの予測精度が悪かったデータに対する予測精度が優先的に上がるように、次のモデルの学習が進められます。ブースティングの代表的な手法として、AdaBoostなどがあります。
<図75_072_1--->
図75_072_1
<--->
近年、Kaggleなどのデータ分析コンペティションにおいて高い成績を記録しているモデルのうち、多くのものに、勾配ブースティング決定木(GBDT:Gradient Boosting Decision Tree)と呼ばれる手法が用いられています。勾配ブースティング決定木は、名前からもわかるとおりブースティングの一手法です(空欄ウ)。勾配ブースティング決定木の有名な派生手法として、XGBoost や LightGBM などがあります。
以上より、組み合わせが適切な選択肢Cが正解です。
試験対策
勾配ブースティング決定木の派生手法としてXGBoostやLightGBM、CatBoostなどがあることを覚えておきましょう。
<!-- 75_072_1 --> を、指定されたマーカー形式 <図75_072_1---> に置換・整形しました。75_072_1 について、元のテキストに内容の記述がなかったため、IDのみを記載しています。文脈から「アンサンブル学習の概念図」などが入ると思われます。あるデータセットに対して重回帰分析を行ったところ、決定係数が $0.59$、自由度調整済み決定係数が $0.18$ であった。この結果からわかることとして、適切なものの組み合わせを選べ。
(ア) 決定係数が比較的大きいため回帰モデルは汎化性能をもつが、自由度調整済み決定係数が小さいため、外れ値の影響を受けた可能性がある
(イ) 決定係数と自由度調整済み決定係数の値に比較的大きな差があるため、データ件数から特徴量数を引いた値が $0$ に近いか、負の値となっている
(ウ) すべての特徴量を使用して線形回帰でモデリングする場合、過学習につながるおそれがある
(エ) 決定係数と自由度調整済み決定係数の値に比較的大きな差があるため、重相関係数の値が $0.59$ を下回る可能性がある
A. (ア)と(ウ)
B. (ア)と(イ)と(エ)
C. (イ)と(ウ)
D. (イ)と(ウ)と(エ)
$ ... $ で囲み、体裁を整えました。<!-- PAGE_27_048_1 --> は図のプレースホルダーの規定形式([図:...])とは異なりますが、内部参照用のIDと判断し、そのまま維持しています。決定係数と自由度調整済み決定係数の関係について問う問題です。
決定係数には複数の定義が存在しますが、ここでは著名なものとして、データ分析用のPythonライブラリであるscikit-learnやstatsmodelsに用いられているものを例に解説します。
scikit-learnやstatsmodelsにおける決定係数は、目的変数の全変動(全偏差平方和)に対する、モデルにより説明された変動(回帰平方和)の割合として定義されます。具体的には、予測誤差 $y_i - \hat{y}_i$ の二乗和(残差平方和)を全データの変動 $y_i - \bar{y}$ の二乗和(全偏差平方和)で割り、この値を1から引くことで決定係数 $R^2$ を計算します。全偏差平方和から残差平方和を引くことにより、回帰平方和 $\hat{y}_i - \bar{y}$ の二乗和が求まるというわけです。ここで、$\hat{y}_i$ はモデルの予測値、$y_i$ は真の値、$\bar{y}$ は真の値における平均値、$n$ はデータ数を表します。
$$ R^2 = \frac{\sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2}{\sum_{i=1}^{n} (y_i - \bar{y})^2} = \frac{\sum_{i=1}^{n} (y_i - \bar{y})^2 - \sum_{i=1}^{n} (y_i - \hat{y}_i)^2}{\sum_{i=1}^{n} (y_i - \bar{y})^2} = 1 - \frac{\sum_{i=1}^{n} (y_i - \hat{y}_i)^2}{\sum_{i=1}^{n} (y_i - \bar{y})^2} $$
残差平方和は、モデルの予測が実際のデータからどれだけ離れているかを示す誤差の総量です。全偏差平方和はデータ全体の変動を表し、これを使って残差平方和を標準化します。これにより、予測のばらつきがどの程度大きいかを評価できます。
ただし、決定係数には、特徴量の数が多ければ多いほど値が大きくなるという性質があります。この問題を補正するために、自由度調整済み決定係数 $R^{*2}$ が用いられます。
<図76_072_2-1--->
図76_072_2-1 自由度調整済み決定係数の定義式
<--->
$$R^{*2} = 1 - \frac{\frac{\sum_{i=1}^{n}(y_i - \hat{y}_i)^2}{n-1-p}}{\frac{\sum_{i=1}^{n}(y_i - \bar{y})^2}{n-1}}$$
自由度調整済み決定係数は、定義式の分母と分子の両方に自由度(データ数 $n$ から1を引いた値)を導入し、分子に特徴量の数 $p$ を組み込むことで、決定係数の値にペナルティを加えたものです。このペナルティは、特徴量の数が多いほど、またデータ数が少ないほど大きくなります。したがって、特徴量の数が増えるほど、自由度調整済み決定係数はもとの決定係数より小さくなります。
以上より、適切なものの組み合わせである選択肢Cが正解です。
なお特徴量の数が多い場合は、特徴選択や次元削減、L1正則化などを取り入れることで、過剰適合を回避しやすくなります。
[図:76_072_2-1:自由度調整済み決定係数の定義式] を指定のマーカー形式 <図76_072_2-1---> に置換。\text{} 処理は今回発生していません。あるデータセットを用いた二値分類問題に対し、同じ訓練データを使用してロジスティック回帰のモデルとニューラルネットワークのモデルを学習させた。なお、ニューラルネットワークのモデルは隠れ層を $1$ つもち、隠れ層の活性化関数として恒等関数、出力層の関数としてシグモイド関数を利用していた。両モデルを同じテストデータを使用し正解率を比較したところ、両者とも $0.6$ 前後であり大きな違いが見られなかった。学習曲線を確認すると、訓練データとテストデータの両方に対する正解率が低かった。そこで、ニューラルネットワークの設定にいくつかの変更を行い学習をやり直してみたところ、テストデータに対するニューラルネットワークの正解率が大きく向上した。このとき行った変更として最も適切なものを選べ。
A. すべての隠れ層を取り除き、出力層の関数はシグモイド関数を維持した
B. 隠れ層の数を $1$ 層のまま維持し、出力層の活性化関数を ReLU に変更した
C. 隠れ層の数を $1$ 層から $3$ 層に増やし、隠れ層の活性化関数を ReLU に変更した
D. 隠れ層の数を $1$ 層から $20$ 層に増やし、隠れ層の活性化関数にはシグモイド関数を用いた
**)で強調しました。$ ... $ で統一し、可読性を高めました。ニューラルネットワークの基本的なコンセプトの理解度を問う問題です。
ニューラルネットワークとは、一般的に入力層、隠れ層、出力層から構成されるモデルです。各層はノード(またはニューロン)と呼ばれる単位で構成されます。各層のノード間には、そのつながりの強さを示す重みパラメータがあり、これらの重みがニューラルネットワークモデルの主要な学習対象です。ノードから次の層へ値を渡す際には、入力と重みの積によって計算された結果に活性化関数を適用します。
活性化関数は、層の入力に非線形性を導入する重要な役割をもちます。これにより、モデルはより複雑なデータのパターンを表現できるようになります。シンプルな線形モデルでは扱うことができない問題も、非線形な活性化関数を使うことで解くことが可能です。なお、恒等関数を活性化関数として使用した場合、実質的に活性化関数を適用していないことになり、層は単なる線形変換を行うのみとなります。
シグモイド関数は、深層学習の黎明期に広く使われていた活性化関数です。しかし、$10$ 層や $20$ 層など、層が深いニューラルネットワークで用いると勾配消失の問題を起こしやすくなり、それによって学習によるパラメータ更新が停滞することがあります。このため、深層学習では ReLU(Rectified Linear Unit) などの活性化関数が使用されるようになりました(D)。
ReLUは正の入力に対してはそのままの値を出力し、負の入力に対しては $0$ を出力します。この計算はシグモイド関数と比較して勾配消失の問題が少なく、パラメータの効率的な更新が期待できます(C)。
ReLUは、隠れ層の活性化関数に利用されるものであり、出力層の関数には利用されません(B)。
また、隠れ層を一切もたず、出力層でシグモイド関数を用いたモデルは、ロジスティック回帰と同等のモデルであるため、精度の向上は期待できません(A)。
$100$ 個の決定木で構成されるランダムフォレストを使用し、分類モデルを作成した。十分な予測精度を達成できたため、このモデルの内容を解釈することで、予測に有効な特徴量を確認したい。このときに実施する分析内容として、最も適切なものを選べ。
A. 任意の決定木をランダムに $1$ つ取り出してツリー構造を描画し、内容を解釈する
B. 各ノードの分岐処理における情報利得を計算し、情報利得が小さい特徴量ほど重要度が高いと判断する
C. 全決定木について、不純度減少への貢献量が大きい特徴量を特定する
D. ある予測の出力値を決める多数決において、多数派の予測をした決定木で使用された特徴量ほど、モデルの予測精度への寄与が大きいと判断する
<図28_041--->
図28_041
<--->
<!-- [IMAGE_ID] 28_041 --> を、指定されたマーカー形式 <図28_041---> に置換。$1$ つ)に変更し、本文中の $100$ との統一感を持たせました。28_041 というIDのみであったため、マーカー内にもそのIDを反映させています。具体的な説明文が必要な場合は、元データの確認が必要です。決定木ベースのアンサンブルモデルについて、学習結果の解釈方法を問う問題です。
各決定木はブートストラップ法によりサンプリングされたデータを使用して学習が進められています。ランダムフォレストでは、データだけでなく、使用する特徴量もランダムにサンプリングされます。したがって個々の木だけを見てもモデル全体の挙動を把握できるとは限りません(A)。
情報利得とは、あるノードの不純度から子ノードの不純度に対する加重平均を引いた値です。これを数式で表すと、以下のように表現できます。
$$I(D_p) - \left( \frac{N_{D_{c1}}}{N_{D_p}} I(D_{c1}) + \frac{N_{D_{c2}}}{N_{D_p}} I(D_{c2}) \right)$$
ここで、$I(D)$ と $N_D$ はそれぞれ、データセット $D$ における不純度とデータ数を表します。$D_p$ は分割前のノード(parent)におけるデータセット、$D_{c1}$ と $D_{c2}$ は分割後の子ノード(child)におけるデータセットに相当します。情報利得は値が大きいほど、その特徴量による分岐が分類に有効であることを示します。したがって、情報利得が小さい特徴量ほど重要という解釈は誤りです(B)。
決定木のあるノードにおいては、異なるラベルのデータが同じ比率で存在しているときに、不純度が最も高くなります。特定の特徴量を使用してデータを分割した結果、各子ノードで特定のラベルの割合が高まり不純度が減少した場合、その特徴量がデータの分類に有効であったと判断できます。ランダムフォレストのモデル全体で不純度の減少に貢献している特徴量を調べることにより、予測に重要な特徴量を特定できます(C)。
ある予測において、予測値を決める多数決で多数派となった木が使用している特徴量が、必ずしもモデル全体での予測精度に大きく寄与しているとは限りません。各決定木は異なる視点からデータを見ており、特定の予測で少数派となった木の特徴量も、別の予測では重要な役割を果たす可能性があります(D)。
**)に設定しました。$$ 形式を維持し、可読性を確認しました。## 40. C および各選択肢の解説記号(A)〜(D)を維持しました。<transcription_data_41> は、規定の図プレースホルダー形式ではありませんが、データの断片化による文脈保持のためそのまま残しています。図である場合は、別途 [図:...] の形式に修正が必要です。次の文章を読み、空欄ア、イに当てはまる語句の組み合わせとして、最も適切なものを選べ。
あなたは医療現場向けに医療画像データから病変を高精度に検出するソリューションを企画している。あなたは、医療画像データを個人情報保護法が定める( ア )へ処理するフローを整備し、関係者向けガイドラインを用意したうえで、提携医療機関を広げていこうとした。しかしデータ漏えいを危惧し慎重な姿勢をとる医療機関が多く、提携先拡大が難航する兆しをみせている。データサイエンティティストのアドバイスを受けたあなたは、連合学習(Federated Learning)により( イ )仕組みを計画し、セキュリティへの懸念が強かった医療機関を再度訪問して意向をうかがうこととした。
A. (ア)秘匿加工情報
(イ)医療データ自体を外部共有せずモデルパラメータのみを連携する
B. (ア)匿名加工情報
(イ)医療機関側で暗号化したデータを収集し復号せずモデルを学習する
C. (ア)秘匿加工情報
(イ)医療機関側で暗号化したデータを収集し復号せずモデルを学習する
D. (ア)匿名加工情報
(イ)医療データ自体を外部共有せずモデルパラメータのみを連携する
連合学習の適用例について問う問題です。
連合学習とは、訓練データの授受を伴わずモデルパラメータのみをやり取りする、分散的なモデル学習の方式を指します。実際のモデル学習はさまざまな端末で分散して行われ、中央のサーバではモデルパラメータのみを受け取り、モデルの更新を行います。更新後のパラメータは各端末へ共有され、更新済みモデルとして運用可能となります。
このプロセスでは、個々のデータはその所有者の手元に留まります。これにより、データのプライバシーを保ちつつ、複数の参加者のデータを利用してモデルの性能向上が図れます。主要な適用例として、本問で取り上げたような医療分野のデータを用いるソリューション開発が挙げられます。
医療情報はその機密性のため、高いレベルのプライバシー保護が求められます。一方で、1つの医院だけでは、多様な症例に基づいた堅牢な機械学習モデルを開発するにはデータ量が不足しがちです。連合学習はこれらの課題に対処するために有効な手段となります。
具体的には、複数の医院が自院のデータを使用してモデルを学習させ、サーバを介してモデルのパラメータだけを共有します。この方式により、データの安全性への配慮とモデル性能の向上を両立できます。
一方、データを暗号化したまま計算処理を行う手法は、秘密計算技術と呼ばれます。この方式をとると、関係者が各自で暗号化処理を施したデータが、モデル学習を行う者に渡されます。そして、データを復号することなくモデル学習などの計算処理を進めることが可能になります。実データにアクセスできるのはデータ保有者のみであるため、データのセキュリティを向上させる効果が期待できます。
ただし、連合学習とは異なり、モデルのパラメータではなくデータの送受信が必要となるため、個人情報保護法の遵守を考慮する必要があります。一般的に、個人情報を含むデータを第三者に提供するにあたっては、そのデータを匿名加工情報に変換する必要があります。
匿名加工情報の主な要件は、データから元の個人を特定可能な情報が削除されており、元のデータへの復元が不可能となっていることです。一般的な暗号化データは、適切なキーと組み合わせることにより、元のデータを復元できてしまいます(B、C)。実データを単に暗号化するだけでは、匿名加工情報の要件を必ずしも満たせない点に注意が必要です。
以上より、(ア)は「匿名加工情報」、(イ)は「医療データ自体を外部共有せずモデルパラメータのみを連携する」となり、組み合わせが適切な選択肢Dが正解です。
秘匿加工情報は一般に用いられる用語ではありません(A、C)。
参考
この種の課題に対応するため、日本では次世代医療基盤法が2018年に施行されました。同法では、認定事業者が管理する医療情報をソリューション開発者が利用できるよう体制整備が行われています。
2024年4月の同法改正により、匿名加工情報に加え仮名加工情報も一定条件下で提供・利用可能となり、より多様な応用が期待されています。仮名加工情報の要件は匿名加工情報よりも緩和されているため、仮名加工情報への変換は比較的容易に行うことができます。
一方で、医療機関の協力がなければ認定事業者にデータが渡らないという課題は残ります。
漏えいリスクが原因で難色を示されるケースに対し、連合学習により「そもそもデータのやり取り自体を発生させない」という方針が注目されています。
**)に設定。1つのユニモーダルモデルでは実現できず、マルチモーダルモデルだと実現できるタスクとして、適切なものの組み合わせを選べ。
(ア) 直接の翻訳ペアコーパスが乏しい言語間で、中間言語としての英語を介さず機械翻訳を行う
(イ) 画像内に含まれるオブジェクトを検知し、各オブジェクトの位置座標と大きさを数値データとして出力する
(ウ) 音声と映像を含む単一のMP4形式ファイルを受け取り、含まれる全情報をもとに内容を要約する
(エ) テキストで情景を指示し、それを表現した画像を出力させ、対話形式でさらに修正を加える
A. (ア)と(イ)
B. (ア)と(ウ)
C. (イ)と(エ)
D. (ウ)と(エ)
機械学習モデルのモダリティに関する問題です。
テキストや画像、音声などのデータの種類をモダリティといいます。モダリティは、コンピュータと人間の間で情報をやり取りするために使用される手段の区分であるともいえます。人間が外界からの刺激を知覚する際に用いられる感覚器や、処理の仕組みの違いがモダリティの違いであると説明されることもあります。一般的に、モダリティが異なればコンピュータ上でデータを扱う枠組みも変わります。
これまでは、単一のモダリティを処理の対象とするユニモーダルなモデル(ユニモーダルモデル)が主流でした。しかし近年、大規模言語モデルの登場を皮切りに、複数のモダリティを同時的かつ統合的に扱えるマルチモーダルモデルの利用が広がりつつあります。
上記を踏まえ、(ア)〜(エ)の事例を見ていきます。
(ア)テキストデータのみを対象としているため、ユニモーダルモデルで対応することが可能です。
(イ)画像データのみを対象としており、異なるモダリティ間の変換や統合は必要ありません。したがって、この処理はユニモーダルモデルで対応可能です。
(ウ)MP4形式は画像のシーケンスと音声を格納する動画ファイルです。2種類のモダリティで構成されるデータを処理し、また別のモダリティ(テキスト)の情報を出力することを想定しており、マルチモーダルモデルが必要です。
(エ)対話形式で画像を作成・修正するフローでは、テキストと画像の双方を統合的に処理する必要があるため、マルチモーダルモデルが必要です。
以上より、適切な事例は(ウ)と(エ)であり、選択肢Dが正解です。
以下の記述を読み、空欄ア、イに入る数値として、最も適切な組み合わせを選べ。
次に示すグラフはエッジが3本ある無向グラフである。このグラフの平均次数を計算すると( ア )、パスの平均距離を計算すると( イ )である。
【エッジが3本ある無向グラフ】
A. (ア)$1.5$ (イ)$1.33$
B. (ア)$1.5$ (イ)$1.5$
C. (ア)$1.33$ (イ)$1.5$
D. (ア)$1.33$ (イ)$1.33$
<図PAGE_ID-n--->)に置換しました。$...$)で囲み、体裁を整えました。## 43. および末尾のコメントアウトを正確に維持しました。グラフの基本的な概念に対する理解を問う問題です。
さまざまなもの同士の関係性やつながりを数学的に表現する手段として、グラフと呼ばれる概念が用いられます。グラフを図で表すと下図のようになります(厳密には、グラフは数学的な構造を表す概念であり、図そのものではありません)。
【グラフ】
グラフは、交通網やSNSにおける個人間の関係など、何かと何かの関係やつながり(ネットワーク)を分析するネットワーク分析に用いられます。
グラフに関連する用語としては、次のようなものがあります。
問題中で示されたグラフにおける平均次数を計算すると、
$$\frac{1 + 1 + 1 + 3}{4} = 1.5$$
となります。
あるグラフにおいて考えられるすべてのパスの平均距離を求める場合、すべてのノードペアをまず特定します。問題中で示されたグラフには4つのノードがあり、異なるノードペアの組み合わせは合計で6通り存在します。この6通りのパスのエッジ数の平均を求めると、
$$\frac{2 + 2 + 1 + 2 + 1 + 1}{6} = 1.5$$
となります。
以上より、正しい組み合わせは(ア)1.5、(イ)1.5であり、選択肢Bが正解です。
【試験対策】
問題中に示されたグラフは無向グラフの一例です。無向グラフとは、ノード間の関係に方向が定義されないグラフです。対等な知人同士の関係や鉄道網のような、双方向性や対称性が想定されるつながりを表現する際には、無向グラフがよく用いられます。
これに対し、親子関係やタスク間の依存関係のような、一方向性や非対称性が想定されるつながりを表現する際には、有向グラフがよく用いられます。有向グラフを図示する際には、エッジの一端を矢印として、始端と終端を表現するのが一般的です。
無向グラフと有向グラフの意味や用途の違いについて押さえておきましょう。
<図PAGE_ID-n--->)に置換しました。$inline$ 形式から $$display$$ 形式へ昇格させ、分数表記(\frac{}{})を用いて整形しました。レコメンドアルゴリズムに関する以下の記述のうち、適切なものの組み合わせを選べ。
(ア) アイテムベースの協調フィルタリングでは、商品間の購買パターンの類似性に注目し、商品Aと同時に購入されることが多い商品Bを商品Aの購入者に推薦する
(イ) ユーザーベースの協調フィルタリングでは、商品の検索・購入パターンや高評価傾向が似ている他ユーザー群(類似ユーザー)を特定し、類似ユーザーによく購入されている商品を未購入者に推薦する
(ウ) コンテンツベースフィルタリングでは、商品に付与した特徴量とユーザーがもつプロファイルを使用し、ユーザーが関心をもつ可能性が高いと判定される商品を推薦する
(エ) 新規追加されたばかりの商品でも推薦候補に挙がる可能性があるのはアイテムベース協調フィルタリングである
A. (イ)と(エ)
B. (ウ)と(エ)
C. (ア)と(イ)と(ウ)
D. すべて正しい
レコメンドアルゴリズムの基本方式について問う問題です。
ECサイトなどにおいて、顧客に関するデータをもとに、顧客の好みに合致する商品やコンテンツを提案することをレコメンデーション(推薦)といいます。また、レコメンデーションを行うアルゴリズムを、レコメンドアルゴリズムといいます。
レコメンドアルゴリズムは、どういった情報に基づいて商品を推薦するかにより、大きくコンテンツベースフィルタリングと協調フィルタリングの2種類に分類されます。
コンテンツベースフィルタリングでは、ユーザーの過去の購買情報や好みの情報などを使用し、そのユーザーが、推薦候補のアイテムに付加された特徴量に対して高い評価を与えそうかどうかを予測します。アイテムに対して特徴量をもたせれば、発売後間もない新商品でもユーザーへの推薦が可能であるというメリットがあります。一方で、「現在の興味」といったユーザーのプロファイルが更新されない限り、同じユーザーに対して似たようなアイテムが継続的に推薦されてしまうというデメリットがあります。
協調フィルタリングでは、ユーザーの購入商品や、商品に対する評価の履歴が使用されます。ユーザーが各アイテムにつけた評価の一覧表(アイテム評価価値マトリックス)をおもなレコメンドのデータソースとして使用し、似たような評価をするユーザーや類似するアイテムを表から見つけ出して推薦を行います。この方式には、ユーザーの行動データが蓄積されるにつれて、自動的に推薦内容が更新されるというメリットがあります。一方で、十分な量のデータがなければ推薦が成立しない(コールドスタート問題)というデメリットがあります。
協調フィルタリングはユーザベースとアイテムベースに分かれます。
ユーザベース協調フィルタリングでは、前述の評価価値マトリックスをもとに、似通ったアイテム評価・購買傾向をもつユーザーを特定します。その情報をもとに、類似ユーザーが購入・高評価すると推定されるアイテムを推薦します。ECサイトでは、「あなたと似たユーザーはこのような商品も買っています」といった文言とともに推薦結果が提示されます。
アイテムベース協調フィルタリングでは、まず、評価価値マトリックスを使用してアイテム間の類似度を計算することで、アイテム間の関係を示す表を作成します。その後、ユーザーが商品を購入した際に、その商品と同時に購入されることが多い、あるいは類似した評価パターンをもつアイテムを推薦します。ECサイトにおいてはよく、「この商品を買った人はこのような商品も買っています」といった文言とともに推薦結果が提示されます。
以上より、適切な記述は(ア)と(イ)と(ウ)であり、選択肢Cが正解です。
**)に設定しました。## 44. C および末尾のコメント行は変更せず維持しました。\text{} 等の適用箇所はありませんでした。決定木の特徴に関する以下の記述のうち、最も適切なものを選べ。
A. 線形分離可能なデータに対する二値分類にのみ用いられ、非線形分離には用いられない
B. 予測性能は非常に高いが、決定木の判断基準を人が解釈することは困難である
C. 標準化・正規化のデータ前処理の有無が、汎化性能に大きな影響を与えるモデルである
D. 決定木の深さがモデルの複雑さに直結し、汎化性能に大きな影響を与える
機械学習手法の一種である決定木の特徴に関する問題です。
教師あり学習の手法の一つである決定木は、回帰と分類の両方に用いられます。決定木の学習では、各特徴量(説明変数)について、データセットを「ある値より大きいか小さいか」で2つに分割する操作が繰り返されます。例えば、「年収と年齢(説明変数)に基づいて、ある人に持ち家があるか否か(目的変数)を判定する」という二値分類の問題設定を考えてみます。この問題設定の場合、与えられたデータセットについて、「年収が $x$ 円以上か否か」「年齢が $y$ 歳以上か」といった複数の条件分岐を設けます。この操作により、データセットを「年収が500万円以上であり、なおかつ年齢が30歳以上である集団」のような集団に分割していきます。適切な分割を繰り返していくと、分割の条件が増えるごとに、条件に当てはまるデータ集団に含まれる目的変数の値(この場合持ち家があるか否か)が均質化していきます。最終的に、ある時点で分割操作を止め、分割されたデータ集団の中で多数決をとります。出来上がったモデルは、多数決の結果を「その条件に当てはまるデータが入力されたときの出力(判定結果)」とします。
分割の結果を座標平面上で図示すると、下図のようになります。しきい値を表す境界線(識別境界)によって区画されたそれぞれの矩形領域が、分割されたデータ集団です。
また、分割が進む過程をYes/Noの条件分岐が連なった木構造(二分木)と捉えると、次図のようになります。木のノードの括弧内の値は、(持ち家がある, 持ち家がない) のかたちで、分割されたデータ集団(座標平面における矩形領域)内のデータの件数を表しています。決定木という名前は、学習の様子がこのような木構造で表現できることに因んでいます。
このようなYes/No型のルールの繰り返しで構成されるため、どのような判断基準でデータが分類されたのかが人間にも解釈しやすいのが決定木の利点です (B)。また、他のモデルのように数式を用いたモデルの係数の解釈を行う必要がないため、非専門家の関係者に向けて判断の根拠を説明しやすいといえます。
決定木は、各特徴量の値による条件分岐を複数設けることで、線形分離不可能なデータを適切に分類することが可能です (A)。また、決定木では、各データをある値より大きいか小さいかの条件で選り分けるという特性上、データセットに対して標準化や正規化を行っても、データの分割方法が変化しません。このため、一般に、標準化・正規化の有無は、決定木の性能に影響しません (C)。
原理的には、多数の条件分岐を積み重ねる(木構造を深くする)ことで、与えられたデータすべてを決定木によって完璧に分割することが可能です。しかし、このような学習を行うと、学習に用いていない未知のデータをうまく分類できなくなり、汎化性能が低下します(過学習が起こります)(D)。このため、決定木では、条件分岐が複雑化しすぎないよう(木構造が深くならないよう)に、剪定と呼ばれる処理が行われます。
[図:PAGE_ID-n:内容] を <図PAGE_ID-n---> 形式に置換しました。機械学習の手法に関する次の説明のうち、最も適切なものを選べ。
A. 階層型クラスタリングは、教師あり学習の手法の一つであり、識別規則からなる二分木で表現される
B. 階層型クラスタリングは、教師なし学習の手法の一つであり、事前に決めた $N$ 個のクラスタにデータを分ける
C. 決定木は、教師あり学習の手法の一つであり、識別規則からなる二分木で表現される
D. 決定木は、教師なし学習の手法の一つであり、事前に決めた $N$ 個のクラスタにデータを分ける
階層型クラスタリングと決定木の違いに関する問題です。
階層型クラスタリングと決定木は、いずれも機械学習モデルですが、適用される問題設定や用いられる状況が異なります。
階層型クラスタリングは、クラスタリング(クラスタ分析)に用いられる教師なし学習モデルの一つです(A)。クラスタリングは、教師データのないデータセットを、類似したパターンをもつクラスタ(データの集団)に分ける手法です。教師データのないデータセットを対象とするという特性上、クラスタリングによって導き出されるクラスタは単なるデータの集団に過ぎないため、それぞれの集団がどのような属性をもつ集団であるかは、分析者の解釈によって決定されます(階層型クラスタリングの詳細は、解答10を参照)。
階層型クラスタリングでは、はじめに1つのサンプルからなるクラスタを作成します($N$個のデータに対して$N$個のクラスタが存在する状態からスタートします)(B)。その後、クラスタ間の距離を定義し、近距離に存在するクラスタ同士を1つのクラスタに結合します。クラスタ同士の結合の過程は、結合を分岐とする二分木(デンドログラム(樹形図)といいます)のかたちで表現することができます。階層型クラスタリングの手法として、最短距離法や群平均法、ウォード法などが存在します(【参考】を参照)。
決定木は、教師あり学習のアルゴリズムです(D)。決定木の学習では、各特徴量(説明変数)の値が「ある値より大きいか小さいか」というYes/Noの条件分岐によってデータセットを2つに分割する操作を繰り返します。この分割の過程は、条件分岐が連なった二分木によって表現することができます(C)。教師あり学習であるため、分類のカテゴリは、与えられた教師データ(正解ラベル)によって定義されます。
試験対策
解説中で取り上げた階層型クラスタリングのほかに、非階層型クラスタリングというクラスタリングの方法が存在します。非階層型クラスタリングの手法としては、$k$-means法がよく知られています。$k$-means法は、はじめにクラスタの中心点をランダムに$k$個配置し(この$k$個は、データを最終的に得たいクラスタの個数として、分析者があらかじめ設定する)、中心点と各データとの間の距離の総和が最小になるように中心点の更新を繰り返すことで、その条件下において最適な分割を行う手法です。大量のデータに対して比較的少ない計算量でクラスタリングを実行できることが非階層型クラスタリングのメリットです。一方で、事前にクラスタの数($k$の値)を決定する必要があるというデメリットもあります。
参考
解説で紹介されている階層型クラスタリングの各手法では、次のような考え方に基づいてクラスタリングが行われます。・最短距離法 …… 各クラスタの最も近いデータ点同士をクラスタ間の距離とし、それに基づいてクラスタを形成する
・群平均法 ……… 各クラスタに属するすべてのデータ同士の距離の平均をクラスタ間の距離とし、それに基づいてクラスタを形成する
・ウォード法 …… 統合後のクラスタ内のデータのばらつきが最小になるようにクラスタを形成する
<!-- 87_078_1 -->)を維持しました。