機械学習データ:ファイルcsv
データセットの構造:
Kaggleビッグデータ競争プラットフォーム、実際のデータ、膨大な量のデータ
人生のあらゆる側面をカバーするuciプロフェッショナルデータセット
scikit-learnには少量のデータがあり、学習に便利です。
構造:特性値+目標値。
家の面積、場所、床、向きは特性値です
ハウスエリア | 家の場所 | ハウスフロア | 家のオリエンテーション | 目標値 | ||
サンプル1 | データ1 | 80 | 9 | 3 | 0 | 80 |
サンプル2 | データ2 | 100 | 9 | 5 | 1 | 120 |
サンプル3 | データ3 | 80 | 10 | 3 | 0 | 100 |
一部のデータセットにはターゲット値がない場合があります
機能エンジニアリング:データセット内の機能を処理し、テキスト内の機能を数値に変換します
ツールsklearnを使用します(これに限定されません)
次の図は、機械学習のプロセス全体を示しています。
sklearnをインストールします(numpy、pandasなどのライブラリが必要です)
Python3の仮想環境では、mkvirtualenv -p /.../ml3
ubuntuの仮想環境で実行します:pip install Scikit-learn
使用できるかどうかを確認します:import sklearn
tf:期間頻度
idf逆ドキュメント頻度ログ(ドキュメントの総数、今回表示されるドキュメントの数)
tf * idfは重要度と呼ばれます
単語は重要度の高い順に並べ替えることができるため、記事内のキーワードを取得して分類処理することができます。
from sklearn.preprocessing import MinMaxScaler
def mm():
'''归一化处理'''
mm = MinMaxScaler()
data = mm.fit_transform([[90,2,10,40],[60,4,15,45],[75,3,13,46]])
print(data)
if __name__ == "__main__":
mm()
外れ値が多い場合、正規化を直接使用すると、最大値と最小値に影響し、最終結果の精度に影響します。標準化は多数のデータに対して行われるため、通常は正規化の前に行われます。
欠落した値を処理する方法は?
1.削除欠落している値が多い場合、削除するとデータ量が大幅に削減されます(通常は使用されません)
2.平均と中央値を埋めます