私たちの生活を変えた強力なアルゴリズム

1. はじめに

        M ラーニングはここ数年で大きく進歩し、さまざまな分野での応用が急増しています。Chat-GPTからDALLへ。E 2、各アプリは機械学習アルゴリズムを使用して最良の結果をもたらし、複雑な問題をより効率的かつ正確に解決できるようにします。このブログ投稿では、将来を支配する可能性がある最も有望な機械学習アルゴリズム 10 個を紹介します。

2. アルゴリズムとは何ですか?   

        つまり、アルゴリズムとは、値または値のセットを入力として受け取り、値または値のセットを出力する、明確に定義された計算ステップです。(出典: homas H. Cormen、Chales E. Leiserson 『アルゴリズム入門 第 3 版』) アルゴリズムとは、特定の問題を解決するために使用される一連のステップであると理解できます (コンピューターだけがアルゴリズムを必要とするわけではなく、私たちはコンピューターでもアルゴリズムを使用します)私たちの日常生活)。アルゴリズムには、次の 3 つの重要なプロパティが必要です。   

[1] 有限性。有限数のステップを実行した後、アルゴリズムは中止する必要があります。   

[2] 確実性。アルゴリズムの各ステップは正確に定義する必要があります。   

[3] 実現可能性。特定のアルゴリズムは特定の問題を特定の時間内に解決できなければなりません。   

        実際、アルゴリズムはコンピュータ分野で広く使用されていますが、完全に数学から派生したものです。実際、最も初期の数学アルゴリズムは紀元前 1600 年に遡り、バビロニア人の因数分解と平方根のアルゴリズムに遡ります。   

3. それでは、今日の私たちの生活はどのアルゴリズムによって形成されているのでしょうか?

        以下のリストを順不同でご覧ください。

3.1. マージソート(MERGE SORT)

        クイックソート(QUICK SORT)とヒープソート(HEAP SORT)   

        どの並べ替えアルゴリズムが最も効率的ですか? 場合によります。これら 3 つのアルゴリズムをまとめた理由は、どちらか 1 つを頻繁に使用することもできますが、それぞれに独自の利点があります。   

        これまでで最も重要なアルゴリズムの 1 つであるマージ ソート アルゴリズムは、1945 年に数学者のジョン フォン ノイマンによって発明された分割統治法の典型的な応用です。   

        セット パーティション アルゴリズムと分割統治アルゴリズムを組み合わせたクイックソート アルゴリズムは、あまり安定性がありませんが、ランダムな配列 (AM ベースの配列) を扱う場合には非常に効率的です。   

        スタッキングソートはソート時の検索時間を短縮するために優先キューの仕組みを採用していますが、やはり安定性はあまり高くありません。以前の並べ替えアルゴリズム (バブル アルゴリズムなど) と比較して、これらのアルゴリズムは並べ替えアルゴリズムを大きなレベルに引き上げました。これらのアルゴリズムのおかげで、今日のデータ マイニング、人工知能、リンク分析、およびほとんどの Web ページ計算ツールが存在します。

3.2 フーリエ変換と高速フーリエ変換   

        これら 2 つのアルゴリズムはシンプルですが非常に強力であり、デジタル世界全体がそれらから切り離すことができず、その機能は時間領域関数と周波数領域関数の間の相互変換を実現することです。この記事を読めるのもこれらのアルゴリズムのおかげです。   

        インターネット、WIFI、スマートフォン、固定電話、コンピューター、ルーター、衛星、およびほとんどすべてのコンピューター関連デバイスは、多かれ少なかれそれらに関連しています。これら 2 つのアルゴリズムがなければ、エレクトロニクス、コンピューター、通信工学の学位を取得することは不可能です。(アメリカ合衆国)

3.3. ダイクストラのアルゴリズム   

        このアルゴリズムがなければ、インターネットは確かに今ほど効率的ではなかったと言えます。問題が「グラフ」モデルで表現できる限り、このアルゴリズムを使用して「グラフ」内の 2 つのノード間の最短距離を見つけることができます。   

        現在、最短経路問題を解決するためのより良い方法はたくさんありますが、Dexto のアルゴリズムの安定性は代用できません。

3.4. RSA 非対称暗号化アルゴリズム   

このアルゴリズムの暗号化とネットワーク セキュリティへの貢献がなければ、今日のインターネットの地位はそれほど高くなかったと        言っても過言ではありません。現在のネットワークには安全性はありませんが、金銭関連のトラブルが発生した場合には十分なセキュリティを確保する必要があり、ネットワークが安全ではないと感じた場合は、愚かにウェブページに銀貨情報を入力することは絶対にありません。   

        RSA アルゴリズムは、暗号化の分野で最も強力なアルゴリズムの 1 つであり、RSA の 3 人の創設者によって提案され、現在の暗号化研究分野が確立されました。このアルゴリズムによって解決される問題は、セキュリティを確保しながら、独立したプラットフォームとユーザー間で鍵をどのように共有するかという単純かつ複雑な問題です。

3.5. 安全なハッシュアルゴリズム   

正確に言うと、これはアルゴリズムではなく、米国国立標準技術研究所によって最初に提案された暗号化ハッシュ関数のセットです。アプリ ストア、電子メールおよびウイルス対策ソフトウェア、ブラウザなどのいずれであっても、このアルゴリズムは、ダウンロードが正常に行われていること、および「中間者」や「フィッシング」による攻撃を受けていないかどうかを確認するために使用されます。

3.6. 整数因数分解アルゴリズム(整数因数分解)   

        これは実際には数学的なアルゴリズムですが、コンピュータ分野で広く使用されています。このアルゴリズムがなければ、暗号化された情報は安全ではなくなります。一連の手順を通じて、合成数を割り切れない数因数に分解できます。   

        先ほど述べた RSA アルゴリズムなど、多くの暗号化プロトコルがこのアルゴリズムを使用します。

3.7. リンク解析アルゴリズム(リンク解析)   

        インターネット時代では、さまざまなポータル間の関係を分析することが重要です。検索エンジンやソーシャル ネットワーキング サイトから市場分析ツールに至るまで、インターネットの真の構造を見つけることに誰もが苦労しません。   

        リンク解析アルゴリズムは常にこの分野で最も不可解なアルゴリズムの 1 つであり、さまざまな実装方法があり、その独自の特性により各実装方法のアルゴリズムが疎外されていますが、基本原理は非常に似ています。   

        リンク分析アルゴリズムのメカニズムは実際には非常に単純です。行列を使用して「グラフ」を表現し、固有値問題を形成できます。固有値問題は、この「グラフ」の構造と各ノードの重みを分析するのに役立ちます。このアルゴリズムは、1976 年に Gabriel Pinski と Francis Narin によって提案されました。   

        誰がこのアルゴリズムを使用するのでしょうか? Google のページ ランク、Facebook があなたに送信するフィード (つまり、フィードはアルゴリズムではなく、アルゴリズムの結果です)、Google+ と Facebook の友達のおすすめ、LinkedIn の仕事のおすすめ、Youtube の動画のおすすめなどです。   

        一般に Google がこのタイプのアルゴリズムを使用した最初の組織であると考えられていますが、実際には 1996 年 (Google が登場する 2 年前) の時点で、Robin Li によって作成された小型検索エンジン「RankDex」がこのアイデアを使用していました。Hyper Search 検索アルゴリズムの作成者である Massimo Macchioli も同様のアルゴリズムを使用しました。この 2 人は後に Google の歴史の中で伝説となりました。

3.8. 比例積分微分アルゴリズム   

        このアルゴリズムは、いくつか例を挙げると、飛行機、自動車、テレビ、携帯電話、衛星、工場、ロボットなどに搭載されています。   

        簡単に言うと、このアルゴリズムは主に「制御ループ フィードバック メカニズム」を通じて、プリセット出力信号と実際の出力信号の間の誤差を削減します。このアルゴリズムは、信号処理が必要な場合や、自動機械、油圧システム、加熱システムを制御する電子システムが必要な場合に使用されます。それがなければ現代文明は存在しません。

3.9. データ圧縮アルゴリズム   

        データ圧縮アルゴリズムはたくさんありますが、どれが最適ですか? アプリケーションの方向に応じて、圧縮された mp3、JPEG、および MPEG-2 ファイルが異なります。   

        どこで見られますか? フォルダー内の圧縮ファイルだけではありません。あなたが表示している Web ページは、データ圧縮アルゴリズムを使用して情報をコンピュータにダウンロードしています。テキストに加えて、ゲーム、ビデオ、音楽、データストレージ、クラウドコンピューティングなどがすべてです。さまざまなシステムをより簡単かつ効率的にします。

3.10. 乱数生成アルゴリズム   

        現時点では、コンピューターが「真の」乱数を生成する方法はありませんが、擬似乱数生成アルゴリズムで十分です。これらのアルゴリズムは、ネットワーク接続、暗号化技術、安全なハッシュ アルゴリズム、オンライン ゲーム、人工知能、問題分析における条件付き初期化など、多くの分野で応用されています。   

        このリストは完全ではなく、機械学習や行列乗算など、私たちに密接に関係する多くのアルゴリズムについては言及されていません。また、知識が限られておりますので、抜けがある場合はご指摘ください。

4. 将来の生活を支配する10のアルゴリズム

        このブログ投稿では、最も基本的なアルゴリズムから最新の最先端のアルゴリズムまで、2023 年に注目すべき機械学習アルゴリズムの概要を説明します。さっそくブログを書いてみましょう。

4.1 敵対的生成ネットワーク (GAN)

        敵対的生成ネットワークは、新しいコンテンツを生成し、人間のクリエイターと競合する音楽や芸術さえも作成できる能力に誰もを驚かせました。多くのクリエイターがアイデアを生み出し、アートを次のレベルに引き上げるためにこれを使用しています。過去 1 年間インターネットを席巻してきた GAN の人気アプリケーションの 1 つが Chat-GPT です。この最新鋭のアルゴリズムは、将来のイノベーションの最前線となるでしょう。

4.2 畳み込みニューラル ネットワーク (CNN)

        この深層学習アルゴリズムは、私たちの周囲の世界を見て解釈することができます。人間の脳が視覚情報を処理するのと同じ方法でモデル化されています。画像内のテクスチャ、顔、パターンなどを高い精度と速度で識別できます。このため、画像認識、コンピュータービジョン、ロボット工学の分野で重要なものとなっています。自動運転車の作成に興味がある場合、このツールは絶対に必要です。

4.3 リカレント ニューラル ネットワーク (RNN)

        チャットボットがどのようにして人間のように会話できるのか疑問に思ったことはありませんか? RNN はそれを可能にします。このような深層学習アルゴリズムは、次に入力する単語を予測し、文法上の誤りを修正し、まったく新しいテキストや音楽を生成することもできるため、自然言語処理 (NLP)、時系列予測、音楽生成、および画像のための重要なツールとなっています。キャプション。

4.4 オートエンコーダー 

        オートエンコーダーは、人間の介入なしに生データから最も関連性の高い特徴を抽出するため、「人工データ サイエンティスト」とも呼ばれます。それらは教師なし学習のかけがえのない部分となっています。データを圧縮および解凍し、生データの意味のある表現を提供し、大規模で複雑なデータセットからパターンと洞察を特定できます。これらは現在、データ圧縮や異常検出に広く使用されています。

4.5 デシジョンツリー

        このアルゴリズムは、機械学習における最も単純だが基本的なアルゴリズムの 1 つであると考えられています。それは「分割統治」の原則に従います。複雑な問題をより小さく、より管理しやすい問題に分割します。これらはデータを分類し、意思決定を行うために使用されます。これらは解釈可能なため、決定の理由を提供することもできます。これは、ランダム フォレストなどの他の有名なモデルの基礎を形成しており、リストの次のアルゴリズムにつながります。

4.6 ランダムフォレスト

        「一人ではできることはほとんどありませんが、一緒にやるとできることはたくさんあります。」 ランダム フォレストは、ヘレン ケラーの言葉で最も正確かつ美しく説明されています。複数のデシジョン ツリー機能を利用することで、ランダム フォレスト モデルはデシジョンよりも優れた結果を提供します。これらは、顧客離れの予測、不正行為の検出、病気の検出など、さまざまなアプリケーションで使用されます。

4.7 K-平均法クラスタリング

        教師なし学習における最も基本的で単純なアルゴリズムは非常に強力です。このアルゴリズムは、類似性に基づいてデータ ポイントをグループ化するため、市場の分割や顧客分析などのタスクに役立ちます。それは私たちに有益な洞察を提供し、情報に基づいた意思決定を行うのに役立ちます。

4.8 サポート ベクター マシン (SVM)

        Hava Siegelmann と Vladimir Vapnik によって作成された教師あり機械学習アルゴリズム。高次元のデータセットを処理し、驚くべき精度と速度で結果を提供できることで知られています。計算生物学、スパム検出、手書き認識、遺伝子分類などでよく使用されます。SVM アルゴリズムをデータセットに適用する際の最も重要なステップは、最適なカーネルを見つけることです。正しいカーネルを見つけると、最も正確な予測が得られます。

4.9 主成分分析

        これはデータ分析において非常に重要でよく知られたアルゴリズムです。これは、データセット内の不要な特徴を削除し、関連する特徴に焦点を当てるのに役立つ次元削減手法です。変数の数を減らすことで、データセット上でアルゴリズムを実行する時間と複雑さが軽減されるだけでなく、モデルのパフォーマンスも向上します。

4.10 ロジスティック回帰 

        最後になりましたが、ロジスティック回帰があります。シンプルかつ基本的でありながら多用途なアルゴリズムです。これは、線形または非線形の関係を持つ変数間の複雑な関係をモデル化できるため、強力です。主に病気の予測や侵入検知などのバイナリ分類問題で使用されます。また、これは高度に解釈可能なモデルでもあり、つまり、決定に影響を与える根本的な要因を説明できます。ここで詳しく説明します

5. 追記 

        上記で説明したアルゴリズムは非常に関連性が高いため、最初にそれらをマスターすることをお勧めします。これが有益で役立つことを願っています。

おすすめ

転載: blog.csdn.net/gongdiwudu/article/details/132228442