私は51CTOアカデミー講師の唐玉迪です。51CTOアカデミーの「4.20 ITリチャージフェスティバル」(4月19日〜20日)を機に、機械学習の事例における私の実践経験を皆さんと共有したいと思います。本文はここです〜〜〜
データ分析は非常に人気がありますが、機械学習は理解するのが難しすぎます!人工知能の波の到来により、機械学習はますます人気が高まっています。データ分析と機械学習のポジションは不足していますが、参入障壁もかなり高いです。機械学習は習得が難しすぎるのでしょうか、それとも適切な武器を選んでいないのでしょうか。今日の私たちの課題は、Python を使用してデータ分析と機械学習モデリングの旅を始め、最も簡単な方法で誰もが機械学習の第一歩を踏み出せるようにすることです。 機械学習:データ分析は理解しやすい、つまり必要な貴重な情報を掘り出すことですが、機械学習とは何ですか?この分野に不慣れな学生は混乱するかもしれません。この用語はかなり高度なようです。簡単に説明しましょう。機械学習とは、機械(コンピューター)に履歴データからいくつかのデータ分布ルールを学習させ、それを新しいデータに適用することです。このようにして、新しいデータが来たら、一連のタスクを実行できます。たとえば、銀行は履歴データを使用して、どのような人にいくらのお金を貸すかを決定します。次に、新しい学生がお金を借りに来たら、銀行は明確な価値といくらのお金を貸すかを考え出します。機械学習の応用は私たちの生活の隅々にまで関わっています。人工知能業界の発展に伴い、機械学習の力は私たちの生活環境をさらに良くすると信じています。 物語の背景:今日お話しするのは、よく知られているタイタニック号の話です。ジャックとローズの有名な行動を振り返ってみましょう。これは物語の始まりに過ぎません。タイタニック号のどの乗組員が救助されるかを予測するという、非常に興味深いことをします。
武器の選択:タスクは明確に割り当てられました。次の目標は、予測作業を実行するために適切な武器をいくつか選択することです。私たちの主な方針は Python を使用することです。Python はデータ分析と機械学習のリーダーとなっているからです。まず、武器リストを紹介しましょう。 Numpy-Scientific Computing Library は主に行列演算に使用されます。えっ?行列がどこで使用されるかわかりません。では、このように考えてみましょう。データは行 (サンプル) と列 (特徴) で構成されているので、データ自体は行列ではないでしょうか? Pandas - データ分析および処理ライブラリ多くの友人が、Python でデータを処理するのは簡単だと言います。では、その簡単さはどこにあるのでしょうか? 実際、Pandas を使用すると、非常に複雑な操作を 1 行のコードで解決できます。 Matplotlib 可視化ライブラリ分析でもモデリングでも、優れたメモリに頼るだけでは不十分です。結果とプロセスを視覚的に表示する必要があります。 Scikit-Learn-Machine Learning ライブラリは、非常に実用的な機械学習アルゴリズム ライブラリであり、基本的に使用できると思われるすべての機械学習アルゴリズムが含まれています。しかし、それだけではありません。探索できる前処理および評価モジュールが多数あります。 データの紹介:これらの便利な武器を手に入れて、作業に取り掛かりましょう。まず、データがどのようなものかを見てみましょう。次に、これらの武器を使用して問題に対処します。 まずは Pandas です。データの処理と分析にこれを使用すると非常に便利です。まず、.csv ファイルを読み取り、最初の 5 行のデータを表示します。データ内の各列の意味を簡単に説明しましょう。 PassengerId:乗客 ID 番号。これはあまり役に立ちません。救助されるかどうかは ID とあまり関係がなさそうなので、今のところは使用しません。 生存:これは非常に重要です。人が救助されたかどうかを示すラベル (LABEL) です。 Pclass:乗客の客室クラスは貴族か平民か? 客室クラスは 3 つあります。 名前:乗客の名前。外国人の名前は本当に長いですね~ 性別: 2種類のみ〜 年齢:全年齢 SibSp:乗組員と一緒に船に乗っている兄弟姉妹の数 パルチ:高齢者と子供の数 チケット:チケット~このコードは必要ないようです 運賃:船のチケットの料金。貴族のチケットはかなり高価です。 キャビン:欠損値が多すぎるので、そのまま通過します。 乗船場所:船に乗船するドック。場所は 3 か所のみです。 Age 列には 714 個の値しかありませんが、他の列には 891 個の値があることがわかります。これは何を示しているのでしょうか? これは大きな問題です。欠損値があります。どうすればよいでしょうか? 欠損値を埋める方法はたくさんあります。平均値、最頻値、中央値を使用できます。ここでは、中央値を使用して欠損値を埋めます。これは孤立した現象ではありません。実際のデータセットでは、欠損値は非常に一般的な現象です。 もう一度データを見てみましょう。データ内の多くの列の属性値は文字型です。これは私たちにどのような影響を与えるのでしょうか。私たち人間はこれらの男性と女性を認識できますが、コンピューターは認識できません。数値しか認識できないため、文字値を数値型に変換する必要があります。 核兵器が登場しました。scikit-learn を使用すると、機械学習モデルを簡単に構築できます。ここでは、ロジスティック回帰 (古典的なバイナリ分類) を使用してこのケースを完了します。まずは、ロジスティック回帰とは何かを紹介しましょう。 給与と年齢という 2 つの特徴があるとします。これら 2 つの指標に基づいて、銀行がこの人にいくらのお金を貸すかを予測する必要があります。すると、このような方程式を構築できます。つまり、最終的な予測値が実際の値にできるだけ近くなるように、最も適切なパラメータ セットを見つける必要があります。ただし、これから行うのは分類タスクです。つまり、救助されたかどうかのカテゴリ値を取得するには、さらに一歩進む必要があります。 この関数はすごいです。見てみましょう。まず、シグモイド関数の独立変数の範囲は負の無限大から正の無限大までで、ドメインは0から1の区間にあります。つまり、シグモイド関数に入る値はどれも区間(0,1)の値になり、これは確率値に相当します。次に、このようなしきい値を設定できます。たとえば、確率値が 0.5 より大きい場合は、カテゴリ 1 (救助済み) と見なし、確率値が 0.5 未満の場合は、カテゴリ 0 (残念ながら~) と見なします。パラメータを調整しなくても、精度は 80% 近くになります。 特徴選択:ここで、最終的な予測結果の精度が何に関係しているかを慎重に考える必要があります。一方では、選択する機械学習モデルであり、他方では、入力する特徴データであるため、どのような特徴が予測に適しているかを頭を使って考える必要があります。想像力を働かせる時間です。今回は、メンバーの家族の数、つまり兄弟姉妹+高齢者と子供の数、名前の長さ(形而上学)、ミスター、ミス、マスターなどの称号も数えました。これらを追加する目的は、機能を豊かにすることです。優れたモデルを構築するには、機能の選択が重要です。初期段階では、できるだけ多くの価値のある機能を提供する必要があります。 モデルの構築は終わりではありません。分析タスクでは、これらの機能が *** の結果にどのように影響するかも知る必要があります。たとえば、性別と年齢のどちらが結果に大きな影響を与えますか? 今回は、予測結果と実際の値を比較することで、さまざまな機能の重要性を分析することもできます。次の図は、さまざまな機能の重要性の差がかなり大きいことを示しており、トレードオフやさらなる分析を行うこともできます。 Matplotlib を使用して単純な棒グラフを描くには、棒の位置と高さを指定するだけです。これを視覚化するには、長い時間をかけて処理する必要があります。 このようにして、非常に単純な予測タスクが完了しました。まず、データの前処理によってデータをより純粋にし、これらの文字値を機械が認識できる数値に変換します。次に、この履歴データのバッチを通じて、どのようなパラメーターがデータに最も適合するかを機械に学習させ、最後に予測結果を出力して、この単純なタスクを完了します。 51CTOアカデミー4.20 ITチャージングフェスティバル (19日と20日は、100本のビデオコースが無料で受講でき、会員はビデオコースを40%割引で受講でき、非会員は30%割引、パッケージはさらに20%割引、マイクロジョブは2,000元の大幅割引をお楽しみいただけます) アクティビティリンク: http://edu..com/activity/lists/id-47.html?wenzhang 関連するライブチュートリアル: 「ワンストップ Python データ分析と機械学習トレーニング キャンプ ライブ ステーション」 |
<<: 機械学習のケーススタディ: クレジットカード詐欺検出
大規模な言語モデル アプリケーションが直面する 2 つの主要なセキュリティ上の脅威は、トレーニング ...
[[441194]]この記事はLeiphone.comから転載したものです。転載する場合は、Leip...
一言で言えば、ハルクに VR メガネをかけさせるのです。 4K品質。パンダのファンタジーの旅これは、...
OpenAI は最近、次世代の埋め込みモデルである埋め込み v3 をリリースしました。同社では、この...
現在、人工知能(AI)は、人事、サプライチェーン、マルチレベルマーケティングなど、さまざまな分野で広...
Lattix は最近、インフラストラクチャ管理ソフトウェアのバージョン 5.0 をリリースしました。...
[51CTO.com クイック翻訳] ご存知のとおり、人工知能 (AI) は 1956 年の誕生以来...
休暇の計画を立てることは、かつては時間がかかり、困難な作業でした。目的地の調査、宿泊施設の探し方から...
人工知能(略して AI)は、コンピュータサイエンスの重要な分野として、1956 年にダートマス協会で...