--- title: Algorithm (アルゴリズム) slug: Glossary/Algorithm tags: - CodingScripting - Glossary translation_of: Glossary/Algorithm --- <p>アルゴリズムとは、ある機能を実行するための、独立した一連の命令です。</p> <p>言い換えれば、アルゴリズムは問題の解決方法を記述する方法であり、人間または機械によって反復的に解決されます。コンピューター科学者は「アルゴリズムの複雑性」や "Big O" 記法の概念でアルゴリズムの効率性を比較します。</p> <p>例としては、以下のようなものがあります。</p> <ul> <li>料理レシピは、人間のための簡単なアルゴリズムです。</li> <li>整列アルゴリズムは、機械がデータを並べ替える方法を説明するために、コンピュータープログラミングでよく使われます。</li> </ul> <p>よくあるアルゴリズムとしては、巡回セールスマン問題などの経路探索アルゴリズム、ツリー探索アルゴリズムなどがあります。</p> <p>線形回帰 (Linear Regression)、ロジスティック回帰 (Logistic Regression)、決定木 (Decision Tree)、ランダムフォレスト (Random Forest)、サポートベクターマシン (Support Vector Machine)、再起型ニューラルネットワーク (Recurrent Neural Network; RNN)、長短期記憶 (LSTM) ニューラルネットワーク、畳み込みニューラルネットワーク (Convolutional Neural Network; CNN)、ディープ畳み込みニューラルネットワーク (Deep Convolutional Neural Network) などの機械学習アルゴリズムもあります。</p> <h2 id="Learn_more" name="Learn_more">詳細情報</h2> <h3 id="General_knowledge" name="General_knowledge">一般知識</h3> <ul> <li>Wikipedia の {{Interwiki("wikipedia", "アルゴリズム")}}</li> </ul> <h3 id="Technical_reference" name="Technical_reference">技術リファレンス</h3> <ul> <li><a href="https://www.toptal.com/developers/sorting-algorithms">Explanations of sorting algorithms</a></li> <li><a href="http://bigocheatsheet.com/">Explanations of algorithmic complexity</a></li> </ul>