【深層学習】訓練用データの作成方法

人工知能

ここでは 超初心者がAIを理解するために訓練用データの作成方法(アノテーション、データの欠損値の補完)方法について説明します。なお、内容に誤りがあった場合はご指摘頂けると幸いです。

目次

1.アノテーション

編集中

2.データの欠損値の補完

 通常、AIモデルの学習に使用するデータには欠損値が存在する場合が多い。このため何らかの値で補完する必要がある。ここでは欠損値の補完方法について解説する。

2.1 欠損しているデータ数を合計

欠損値があるデータの数を把握するため、その合計値を求める。                                             

例:                                                   for data in ○○_data:                                                  

  print(data.isnull().sum())                                                                                                           

※1 isnull():pandas.DataFrameおよびpandas.Seriesに用意されているメソッド。各要素に対して判定を行い、欠損値NaNであればTrue、欠損値でなければFalseとする。 ※2 notnull():isnull()と反対の動作

2.2 欠損値の補完

 欠損値を補完する方法には、平均値による補完、最頻度値による補完等様々ある。ここでは平均値による補完について説明する。

2.2.1 平均値による補完

 pandas.DataFrameに欠損値がある場合に各行の平均値で補完する方法について解説する。 例として下図のようなpandas.DataFrameに対して欠損値(NaN)がある場合に欠損値を各行の平均値(A=4, B=9, c=12, d=17)で補完してみる。                                           

pandas.DataFrameに欠損値がある表
pandas.DataFrameに欠損値がある表

            ↓NaN(欠損値)を各列の平均値で補完する

pandas.DataFrameの欠損値を補完した表
pandas.DataFrameの欠損値を補完した表

                                                                               欠損値を穴埋めするコードは次のようになる。 例:                                                                    import pandas as pd                                     

df = pd.read_csv(‘○○/○○/○○.csv’)                                             

df.fillna(df.mean(), inplace=True)  #対応する列の欠損値が平均値で置換される。                                      

※1 fillna():欠損値を任意の値で置き換える。                                                                                    ※2 mean(): 平均値を得る。 引数を指定しない場合は列ごとの平均値を求めてくれる。                           a=7, b=10, c=11, d=14                                                 axis=’columns’ の場合、行ごとの平均値を求めてくれる。ただしNaN値は無視する。                                                                 A=4, B=9, C=12, D=17                                                                                                 ※3 【参考】median():中央値を得る。                                                   ※4 【参考】mode():最頻値を得る。

3.欠損値の削除

 欠損値を削除する方法について説明する。

3.1 欠損値の削除

 pandas.DataFrameに欠損値がある場合に削除する方法について解説する。                                          

pandas.DataFrameに欠損値がある表
pandas.DataFrameに欠損値がある表

           ↓ NaN(欠損値)がある列を削除 

pandas.DataFrame  欠損値がある列を削除
pandas.DataFrame 欠損値がある列を削除

欠損値を削除するコードは次のようになる。 例:                                                                    import pandas as pd                                     

df = pd.read_csv(‘○○/○○/○○.csv’)                                             

df.dropna(how=’any’, axis=1)  #欠損値が1個でもある列を削除する。                                      

※1 dropna()・・・欠損値のあるデータを削除する。

以降、「【深層学習】AIモデルの評価方法」に続く  

                                                                                                                                                                                                   

[affi id=9]

[affi id=10]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次