データサイエンス プロジェクトに Scikit-learn Python ライブラリを使用する方法

データサイエンス プロジェクトに Scikit-learn Python ライブラリを使用する方法

[[246038]]

柔軟で多様な Python ライブラリは、データ分析とデータマイニングのための強力な機械学習ツールを提供します。

Scikit-learn Python ライブラリは 2007 年に最初にリリースされ、さまざまな機械学習やデータ サイエンスの問題を解決するためによく使用されています。この多用途のライブラリは、クリーンかつ一貫性のある効率的な API と包括的なオンライン ドキュメントを提供します。

Scikit-learn とは何ですか?

Scikit-learn は、強力なデータ分析およびデータマイニング ツールを備えたオープン ソースの Python ライブラリです。 BSD ライセンスの下で利用可能であり、次の機械学習ライブラリ上に構築されています。

  • NumPy 、多次元配列と行列を操作するためのライブラリです。また、さまざまな計算を実行するために使用できる数学関数の広範なコレクションも備えています。
  • SciPy 、技術的な計算タスクを実行するためのライブラリのエコシステムです。
  • さまざまなチャートやグラフを描画するためのライブラリ、 Matplotlib

Scikit-learn は、データ サイエンス プロジェクトで十分に活用できる幅広い組み込みアルゴリズムを提供します。

Scikit-learn ライブラリを使用する主な方法は次のとおりです。

1. 分類

分類ツールは、提供されたデータに関連付けられたカテゴリを識別します。たとえば、電子メールをスパムかそうでないか分類するために使用できます。

Scikit-learn の分類アルゴリズムには次のものがあります。

  • サポートベクターマシンサポートベクターマシン(SVM)
  • 最も近い最も近い隣人
  • ランダムフォレストランダムフォレスト

2. 回帰

回帰では、入力データと出力データの関係を理解し​​ようとするモデルを作成します。たとえば、回帰ツールを使用すると株価の動きを理解できます。

回帰アルゴリズムには次のものがあります。

  • サポートベクターマシンサポートベクターマシン(SVM)
  • リッジ回帰リッジ回帰
  • 投げ縄

3. クラスタリング

Scikit-learn クラスタリング ツールは、類似した特性を持つデータを自動的にグループ化するために使用されます。 たとえば、顧客データは場所に基づいてセグメント化できます。

クラスタリング アルゴリズムには次のものがあります。

  • K平均法
  • スペクトルクラスタリングスペクトルクラスタリング
  • 平均シフト

4. 次元削減

次元削減により、分析に使用されるランダム変数の数が削減されます。たとえば、周辺データは視覚化の効率を向上させるために考慮されない場合があります。

次元削減アルゴリズムには以下のものがあります。

  • 主成分分析主成分分析(PCA)
  • 特徴選択特徴選択
  • 非負行列分解非負行列分解

5. モデルの選択

モデル選択アルゴリズムは、データ サイエンス プロジェクトで使用する最適なパラメーターとモデルを比較、検証、選択するためのツールを提供します。

パラメータ調整によって精度を向上できるモデル選択モジュールには次のものがあります。

  • グリッド検索グリッド検索
  • クロス検証クロス検証
  • 索引メトリクス

6. 前処理

Scikit-learn 前処理ツールは、データ分析中の特徴抽出と正規化において非常に重要です。 たとえば、これらのツールを使用して、テキストなどの入力データを変換し、その特性を分析に適用できます。

前処理モジュールには以下が含まれます。

  • 前処理
  • 特徴抽出

Scikit-learn ライブラリの例

簡単な例を使って、データ サイエンス プロジェクトで Scikit-learn ライブラリを使用する方法を説明しましょう。

Scikit-learn ライブラリに含まれている Iris flower データセットを使用します。 アイリスの花のデータセットには、3 種類の花に関する 150 の詳細が含まれています。

  • セトサ: 0 とマーク
  • Versicolor: 1 としてマーク
  • Virginica: 2 とマーク

データセットには、花の種類ごとに次の特徴が含まれています (センチメートル単位で測定)。

  • 萼片の長さ
  • 萼片の幅
  • 花びらの長さ
  • 花びらの幅

ステップ1: ライブラリをインポートする

アイリスの花のデータセットは Scikit-learn データ サイエンス ライブラリに含まれているため、次のようにしてワークスペースに読み込むことができます。

  1. from sklearn import datasets
  2. iris = datasets . load_iris ()

これらのコマンドは、 sklearnからdatasetsモジュールをインポートし、 datasetsload_iris()メソッドを使用してデータをワークスペースに含めます。

ステップ2: データセットの特徴を取得する

datasetsモジュールには、データの操作に慣れるためのいくつかのメソッドが含まれています。

Scikit-learn では、データセットはデータに関するすべての詳細が含まれる辞書のようなオブジェクトを指します。 データは、配列リストである.dataキーを使用して保存されます。

たとえば、 iris.dataを使用して、アヤメの花のデータセットに関する情報を出力できます。

  1. print ( iris . data )

出力は次のとおりです (結果は切り捨てられています)。

  1. [[ 5.1 3.5 1.4 0.2 ]
  2.   [ 4.9 3.   1.4 0.2 ]
  3.   [ 4.7 3.2 1.3 0.2 ]
  4.   [ 4.6 3.1 1.5 0.2 ]
  5.   [ 5.   3.6 1.4 0.2 ]
  6.   [ 5.4 3.9 1.7 0.4 ]
  7.   [ 4.6 3.4 1.4 0.3 ]
  8.   [ 5.   3.4 1.5 0.2 ]
  9.   [ 4.4 2.9 1.4 0.2 ]
  10.   [ 4.9 3.1 1.5 0.1 ]
  11.   [ 5.4 3.7 1.5 0.2 ]
  12.   [ 4.8 3.4 1.6 0.2 ]
  13.   [ 4.8 3.   1.4 0.1 ]
  14.   [ 4.3 3.   1.1 0.1 ]
  15.   [ 5.8 4.   1.2 0.2 ]
  16.   [ 5.7 4.4 1.5 0.4 ]
  17.   [ 5.4 3.9 1.3 0.4 ]
  18.   [ 5.1 3.5 1.4 0.3 ]

また、 iris.targetを使用して、花のさまざまなラベルに関する情報も提供します。

  1. print ( iris . target )

出力は次のようになります。

  1. [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  2.   0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
  3.   1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
  4.   2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
  5.   2 2 ]

iris.target_namesを使用すると、データセット内で見つかったラベル名の配列が出力されます。

  1. print ( iris . target_names )

Python コードを実行した結果は次のとおりです。

  1. [ 'setosa' 'versicolor' 'virginica' ]

ステップ3: データセットを視覚化する

ボックス プロットを使用して、アイリス データセットの視覚的な表現を生成できます。 ボックス プロットは、データが四分位数を通る平面上でどのように分布しているかを示します。

これを実現する方法は次のとおりです。

  1. import seaborn as sns
  2. box_data = iris . data # 表示数据数组的变量
  3. box_target = iris . target # 表示标签数组的变量
  4. sns . boxplot ( data = box_data , width = 0.5 , fliersize = 5 )
  5. sns . set ( rc ={ 'figure.figsize' :( 2 , 15 )})

結果を見てみましょう:

水平軸について:

  • 0は萼片の長さ
  • 1は萼片の幅
  • 2は花びらの長さ
  • 3は花びらの幅です

縦軸の寸法はセンチメートル単位です。

要約する

以下は、このシンプルな Scikit-learn データ サイエンス チュートリアルの完全なコードです。

  1. from sklearn import datasets
  2. iris = datasets . load_iris ()
  3. print ( iris . data )
  4. print ( iris . target )
  5. print ( iris . target_names )
  6. import seaborn as sns
  7. box_data = iris . data # 表示数据数组的变量
  8. box_target = iris . target # 表示标签数组的变量
  9. sns . boxplot ( data = box_data , width = 0.5 , fliersize = 5 )
  10. sns . set ( rc ={ 'figure.figsize' :( 2 , 15 )})

Scikit-learn は、データ サイエンス プロジェクトを効率的に完了するために使用できる多目的 Python ライブラリです。

<<:  アマゾン、AIが女性の求職者に低い評価を与えたため研究チームを解散に追い込まれる

>>:  機械学習における皇帝の新しい服の発見

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

Stable Diffusion で 1 秒で写真を作成しましょう。清華大学マスターアクセラレーターはホットなトレンドで、いくつかの企業が参加している

AI画像生成は秒単位のスピードに達しました。描画を完了するには4ステップの推論しかかからず、最速では...

...

論文のイラストは拡散モデルを使用して自動的に生成することもでき、ICLRに受け入れられました。

ジェネレーティブ AI は人工知能コミュニティに旋風を巻き起こしました。個人も企業も、Vincent...

「顔認識」は諸刃の剣です。どうすればそれを利用して被害を回避できるのでしょうか?

[[356811]]顔認識は人工知能の画期的な技術として、大規模に導入され始めています。顔認証ロッ...

...

...

ソフトウェア配信における機械学習の活用方法

現代のほとんどのソフトウェア チームにとって、ソフトウェアの配信は継続的なプロセスです。ソフトウェア...

テキスト生成画像は非常に人気があり、これらの技術の進化を理解する必要があります

OpenAIは最近、AIコミュニティに「地震」を引き起こしたDALL・E 2システムをリリースしま...

シングルトランスフォーマー情報検索、Google は微分可能な検索インデックスでデュアルエンコーダーモデルに勝利

情報検索 (IR) は、インターネットの誕生以来、揺るぎない地位を築いてきました。膨大なデータからユ...

AlphaGoの仕組み:マルチエージェント強化学習の詳細な説明

このレビュー記事では、著者はマルチインテリジェンス強化学習の理論的基礎を詳細に紹介し、さまざまなマル...

Google のアルゴリズムが明らかに: 検索リクエストは平均 2,400 キロメートル往復移動します

Google 検索の進化3月12日のニュース: 世界で最も広く使われている検索エンジンであるGoog...

...

データセンター管理者は AI と ML の爆発的な増加にどのように備えればよいのでしょうか?

生成 AI と機械学習 (ML) は急速に一般の人々の意識に入り込み、これらの有望なテクノロジーの能...

行列分解はディープラーニングに勝る! MIT が時系列データベース tspDB をリリース: 機械学習に SQL を使用

人類が歴史から学んだ唯一の教訓は、人類は歴史から何も学べないということだ。 「しかし、機械は学習でき...

衝撃の2017年!この10日間は中国の人工知能の時代

2017年にはすでに「残高不足」が発生。今年、中国の人工知能開発は多くの進歩を遂げ、実りある成果を達...