Azure Machine Learning Studio (クラシック) のアルゴリズムの選択方法How to choose algorithms for Azure Machine Learning Studio (classic)

ヒント

現在 Machine Learning Studio (クラシック) をご利用 (または評価中) のお客様は、ML モジュールのドラッグアンドドロップ対応 に加え、スケーラビリティ、バージョン コントロール、エンタープライズ セキュリティを備えた Azure Machine Learning デザイナー (プレビュー) をぜひお試しください。Customers currently using or evaluating Machine Learning Studio (classic) are encouraged to try Azure Machine Learning designer (preview), which provides drag-n-drop ML modules plus scalability, version control, and enterprise security.

「どのような機械学習アルゴリズムを使用すべきか」という質問への答えは、The answer to the question "What machine learning algorithm should I use?" 常に「場合による」です。is always "It depends." データのサイズ、品質、および性質によって異なります。It depends on the size, quality, and nature of the data. 得られた回答で何を行うかによって異なります。It depends on what you want to do with the answer. アルゴリズムの数値演算が使用しているコンピューターの命令にどのように変換されるかによって異なります。It depends on how the math of the algorithm was translated into instructions for the computer you are using. そして、どれだけ時間があるかによって異なります。And it depends on how much time you have. 最も経験豊富なデータ科学者であっても、試してみる前にどのアルゴリズムが最適か判断することはできません。Even the most experienced data scientists can't tell which algorithm will perform best before trying them.

Machine Learning Studio (クラシック) は、拡張性の高い強化された意思決定ツリー、ベイズの推薦システム、ディープ ニューラル ネットワーク、Microsoft Research で開発された意思決定のジャングルなど、最先端のアルゴリズムを提供します。Machine Learning Studio (classic) provides state-of-the-art algorithms, such as Scalable Boosted Decision trees, Bayesian Recommendation systems, Deep Neural Networks, and Decision Jungles developed at Microsoft Research. Vowpal Wabbit のようなスケーラブルなオープン ソース機械学習パッケージも含まれます。Scalable open-source machine learning packages, like Vowpal Wabbit, are also included. クラシック バージョンの Machine Learning Studio では、複数クラスと二項分類、回帰、クラスタリング用の機械学習アルゴリズムがサポートされます。The classic version of Machine Learning Studio supports machine learning algorithms for multiclass and binary classification, regression, and clustering. Machine Learning モジュールの完全な一覧をご覧ください。See the complete list of Machine Learning Modules. このドキュメントでは、各アルゴリズムに関するいくつかの情報と、使用するアルゴリズムを最適化するためにパラメーターを調整する方法について説明しています。The documentation provides some information about each algorithm and how to tune parameters to optimize the algorithm for your use.

Machine Learning Algorithm Cheat SheetThe Machine Learning Algorithm Cheat Sheet

Microsoft Azure Machine Learning Algorithm チート シート を使用すると、Azure Machine Learning のアルゴリズム ライブラリから、ご自分の予測分析ソリューションに適した機械学習アルゴリズムを選択できます。The Microsoft Azure Machine Learning Algorithm Cheat Sheet helps you choose the right machine learning algorithm for your predictive analytics solutions from the Azure Machine Learning library of algorithms. この記事では、このチート シートの使用方法について説明します。This article walks you through how to use this cheat sheet.

注意

チート シートをダウンロードし、それを見ながらこの記事を読むために、「Microsoft Azure Machine Learning アルゴリズム チート シート」に移動してください。To download the cheat sheet and follow along with this article, go to Machine learning algorithm cheat sheet.

これらの推奨事項は、多くのデータ科学者や機械学習専門家からのフィードバックとヒントをまとめたものです。These recommendations are compiled feedback and tips from many data scientists and machine learning experts. すべてに同意したわけではありませんが、大まかな総意に意見を合わせるように調整しました。We didn't agree on everything, but we've tried to harmonize our opinions into a rough consensus. 意見の相違がある場合、「...によって異なる」という言い回しを使用して記述されています。Most of the statements of disagreement begin with "It depends…"

ヒント

機械学習の基礎の概要については、わかりやすいインフォグラフィックをダウンロードしていただけます。よく使用されるアルゴリズムについて説明し、機械学習に関する一般的な質問に答えるものとなっています。「機械学習の基礎とアルゴリズムの使用例」を参照してください。To download an easy-to-understand infographic overview of machine learning basics to learn about popular algorithms used to answer common machine learning questions, see Machine learning basics with algorithm examples.

機械学習の種類Flavors of machine learning

教師ありSupervised

教師あり学習アルゴリズムは、一連の例に基づいて予測を行います。Supervised learning algorithms make predictions based on a set of examples. たとえば、過去の株価を使用して将来の価格を推測できます。For instance, historical stock prices can be used to make guesses about future prices. トレーニングに使用される各例には、関心のある値でラベルが付けられます。この場合は株価です。Each example used for training is labeled with the value of interest—in this case the stock price. 教師あり学習アルゴリズムでは、これらの値ラベルのパターンを検索します。A supervised learning algorithm looks for patterns in those value labels. 関連する可能性があるすべての情報を使用でき (曜日、季節、会社の財務データ、業界の種類、破壊的な地政学的出来事の存在など)、各アルゴリズムは異なる種類のパターンを検索します。It can use any information that might be relevant—the day of the week, the season, the company's financial data, the type of industry, the presence of disruptive geopolitical events—and each algorithm looks for different types of patterns. アルゴリズムは、最適なパターンを発見した後、そのパターンを使用してラベル付けされていないテスト データ (明日の価格など) を予測します。After the algorithm has found the best pattern it can, it uses that pattern to make predictions for unlabeled testing data—tomorrow's prices.

教師あり学習は、人気のある便利な機械学習の種類です。Supervised learning is a popular and useful type of machine learning. 1 つの例外を除き、クラシック バージョンの Azure Machine Learning Studio のモジュールはすべて教師あり学習アルゴリズムです。With one exception, all the modules in the classic version of Azure Machine Learning Studio are supervised learning algorithms. 教師あり学習には複数の種類があり、Azure Machine Learning Studio (クラシック) では、分類、回帰、および異常検出と表現されています。There are several specific types of supervised learning that are represented within Azure Machine Learning Studio (classic): classification, regression, and anomaly detection.

  • Classification (分類)。Classification. カテゴリを予測するためにデータが使用されている場合、教師あり学習は分類とも呼ばれます。When the data are being used to predict a category, supervised learning is also called classification. これは、写真を「猫」または「犬」に割り当てるような場合です。This is the case when assigning an image as a picture of either a 'cat' or a 'dog'. 選択肢が 2 つだけの場合、これは 2 クラス分類または二項分類と呼ばれます。When there are only two choices, it's called two-class or binomial classification. 全国高校野球選手権大会の優勝校を予測する場合のように、多くのカテゴリがある場合は、多クラス分類と呼ばれます。When there are more categories, as when predicting the winner of the NCAA March Madness tournament, this problem is known as multi-class classification.
  • Regression (回帰)。Regression. 株価のような値を予測するときの教師あり学習は回帰と呼ばれます。When a value is being predicted, as with stock prices, supervised learning is called regression.
  • Anomaly detection (異常検出)。Anomaly detection. 目的が単に異常なデータ ポイントを識別することである場合があります。Sometimes the goal is to identify data points that are simply unusual. たとえば、不正行為の検出では、クレジット カードの極めて異常な使用パターンが疑われます。In fraud detection, for example, any highly unusual credit card spending patterns are suspect. 可能性のあるバリエーションは非常に多く、トレーニングの例は少ないので、不正行為がどのようなものになるかを学習するのは不可能です。The possible variations are so numerous and the training examples so few, that it's not feasible to learn what fraudulent activity looks like. 異常検出が使用するアプローチは、単に正常な行為がどのようなものかを (不正でない取引履歴を使用して) 学習し、それと大きく異なるものを識別するというものです。The approach that anomaly detection takes is to simply learn what normal activity looks like (using a history of non-fraudulent transactions) and identify anything that is significantly different.

教師なしUnsupervised

教師なし学習では、データ ポイントにラベルが関連付けられていません。In unsupervised learning, data points have no labels associated with them. 代わりに、教師なし学習アルゴリズムの目的は、いくつかの方法でデータを整理したり、その構造を記述することです。Instead, the goal of an unsupervised learning algorithm is to organize the data in some way or to describe its structure. これは、クラスターにグループ化したり、複雑なデータを簡単に、または整然と表示したりできるようにさまざまな表示方法を検索することを意味します。This can mean grouping it into clusters or finding different ways of looking at complex data so that it appears simpler or more organized.

強化学習Reinforcement learning

強化学習では、アルゴリズムが各データ ポイントに応答してアクションを選択します。In reinforcement learning, the algorithm gets to choose an action in response to each data point. また、学習アルゴリズムはその決定がどの程度優れていたかを示す報酬信号をその後短時間で受信します。The learning algorithm also receives a reward signal a short time later, indicating how good the decision was. アルゴリズムはこれを基に戦略を変更し、最大の報酬を実現しようとします。Based on this, the algorithm modifies its strategy in order to achieve the highest reward. 現時点で、Azure Machine Learning Studio (クラシック) には強化学習アルゴリズム モジュールはありません。Currently there are no reinforcement learning algorithm modules in Azure Machine Learning Studio (classic). 強化学習はロボット工学の一般的な手法です。ある時点での一連のセンサーの読み取りがデータ ポイントになり、アルゴリズムがロボットの次の動作を選択します。Reinforcement learning is common in robotics, where the set of sensor readings at one point in time is a data point, and the algorithm must choose the robot's next action. モノのインターネット アプリケーションにも自然に適合します。It is also a natural fit for Internet of Things applications.

アルゴリズム選択時の考慮事項Considerations when choosing an algorithm

精度Accuracy

可能な限り最も正確な回答を得ることが常に必要であるとは限りません。Getting the most accurate answer possible isn't always necessary. 使用目的によっては、近似で十分な場合があります。Sometimes an approximation is adequate, depending on what you want to use it for. その場合は、より大まかな方法を使用することで、処理時間を大幅に削減できることがあります。If that's the case, you may be able to cut your processing time dramatically by sticking with more approximate methods. 近似手法のもう 1 つの利点は、一般に過剰適合が回避される傾向があることです。Another advantage of more approximate methods is that they naturally tend to avoid overfitting.

トレーニング時間Training time

モデルのトレーニングに必要な分数または時間数は、アルゴリズムによって大きく異なります。The number of minutes or hours necessary to train a model varies a great deal between algorithms. 通常、トレーニング時間は精度と密接に関係しています。Training time is often closely tied to accuracy—one typically accompanies the other. さらに、一部のアルゴリズムは他よりデータ ポイントの数に大きく影響を受けます。In addition, some algorithms are more sensitive to the number of data points than others. 時間が限られている場合、アルゴリズムの選択を左右することがあります。データ セットが大きい場合は特にそうです。When time is limited it can drive the choice of algorithm, especially when the data set is large.

線形性Linearity

機械学習アルゴリズムの多くは線形性を使用します。Lots of machine learning algorithms make use of linearity. 線形分類アルゴリズムは、クラスを直線 (またはその高次元版) で分離できるものと想定します。Linear classification algorithms assume that classes can be separated by a straight line (or its higher-dimensional analog). これには、ロジスティック回帰とサポート ベクター マシンが含まれます (Azure Machine Learning Studio (クラシック) で実装されています)。These include logistic regression and support vector machines (as implemented in Azure Machine Learning Studio (classic)). 線形回帰アルゴリズムは、データの傾向が直線に従うことを想定しています。Linear regression algorithms assume that data trends follow a straight line. 問題によって、このような想定が適切な場合もありますが、精度が低下することもあります。These assumptions aren't bad for some problems, but on others they bring accuracy down.

非線形クラス境界

非線形クラス境界 - 線形分類アルゴリズムに従うと精度が低下しますNon-linear class boundary - relying on a linear classification algorithm would result in low accuracy

非線形傾向のデータ

非線形傾向のデータ - 線形回帰法を使用すると、必要以上に多くのエラーが生成されますData with a nonlinear trend - using a linear regression method would generate much larger errors than necessary

危険性はありますが、線形アルゴリズムは最初に使用する方法として非常に一般的です。Despite their dangers, linear algorithms are very popular as a first line of attack. アルゴリズムが簡単で、速くトレーニングできる傾向があります。They tend to be algorithmically simple and fast to train.

パラメーターの数Number of parameters

パラメーターは、アルゴリズムを設定するときに使用します。Parameters are the knobs a data scientist gets to turn when setting up an algorithm. エラーの許容範囲や反復回数などのアルゴリズムの動作に影響を与える値、またはアルゴリズムの動作のバリエーションのオプションです。They are numbers that affect the algorithm's behavior, such as error tolerance or number of iterations, or options between variants of how the algorithm behaves. アルゴリズムのトレーニング時間と精度は、設定の適切さに大きな影響を受けることがあります。The training time and accuracy of the algorithm can sometimes be quite sensitive to getting just the right settings. 通常、パラメーター数の多いアルゴリズムは、適切な組み合わせを見つけるのに多くの試行錯誤が必要です。Typically, algorithms with large numbers of parameters require the most trial and error to find a good combination.

別の方法として、クラシック バージョンの Azure Machine Learning Studio にはパラメーター スイープ モジュール ブロックがあり、ユーザーが選択した粒度でパラメーターのすべての組み合わせを自動的に試行します。Alternatively, there is a parameter sweeping module block in the classic version of Azure Machine Learning Studio that automatically tries all parameter combinations at whatever granularity you choose. これは、パラメーター空間を確実に網羅する優れた方法ですが、パラメーターの数が増えるとモデルのトレーニングに必要な時間が指数関数的に増加します。While this is a great way to make sure you've spanned the parameter space, the time required to train a model increases exponentially with the number of parameters.

利点として、通常、パラメーターの数の多さはアルゴリズムがより柔軟であることを示します。The upside is that having many parameters typically indicates that an algorithm has greater flexibility. 適切なパラメーター設定の組み合わせを見つけられる場合に、非常に高い精度を示すことが多くあります。It can often achieve very good accuracy, provided you can find the right combination of parameter settings.

特徴の数Number of features

特定の種類のデータでは、特徴の数がデータ ポイントの数と比較して非常に大きくなる可能性があります。For certain types of data, the number of features can be very large compared to the number of data points. 遺伝学やテキスト データの場合によくあります。This is often the case with genetics or textual data. 特徴の数が多いと一部の学習アルゴリズムは処理が遅くなり、実行不可能なほどトレーニング時間が長くなります。The large number of features can bog down some learning algorithms, making training time unfeasibly long. このケースには、Support Vector Machine が最適です (下記参照)。Support Vector Machines are particularly well suited to this case (see below).

特殊なケースSpecial cases

一部の学習アルゴリズムは、データの構造や目的の結果について特定の想定をします。Some learning algorithms make particular assumptions about the structure of the data or the desired results. ニーズに合うものが見つかれば、より役に立つ結果や正確な予測が得られたり、トレーニングが短時間で済みます。If you can find one that fits your needs, it can give you more useful results, more accurate predictions, or faster training times.

アルゴリズムAlgorithm 精度Accuracy トレーニング時間Training time 線形性Linearity パラメーターParameters メモNotes
Two-class classification (2 クラス分類)Two-class classification
logistic regression (ロジスティック回帰)logistic regression 55
デシジョン フォレストdecision forest 66
decision jungle (デシジョン ジャングル)decision jungle 66 低メモリ フットプリントLow memory footprint
ブースト デシジョン ツリーboosted decision tree 66 メモリ フットプリントが大きいLarge memory footprint
neural network (ニューラル ネットワーク)neural network 99 追加カスタマイズ可能Additional customization is possible
averaged perceptron (平均化パーセプトロン)averaged perceptron 44
support vector machine (サポート ベクター マシン)support vector machine 55 大きい特徴セットに好適Good for large feature sets
locally deep support vector machine (ローカル詳細サポート ベクター マシン)locally deep support vector machine 88 大きい特徴セットに好適Good for large feature sets
Bayes’ point machine (ベイズ ポイント マシン)Bayes’ point machine 33
Multi-class classification (多クラス分類)Multi-class classification
ロジスティック回帰logistic regression 55
デシジョン フォレストdecision forest 66
decision jungle (デシジョン ジャングル)decision jungle 66 低メモリ フットプリントLow memory footprint
ニューラル ネットワークneural network 99 追加カスタマイズ可能Additional customization is possible
one-v-all (一対全)one-v-all - - - - 選択した 2 クラス法のプロパティを参照してくださいSee properties of the two-class method selected
Regression (回帰)Regression
linear (線形)linear 44
Bayesian linear (ベイジアン線形)Bayesian linear 22
decision forest (デシジョン フォレスト)decision forest 66
boosted decision tree (ブースト デシジョン ツリー)boosted decision tree 55 メモリ フットプリントが大きいLarge memory footprint
fast forest quantile (高速フォレスト分位)fast forest quantile 99 ポイント予測ではなく分布Distributions rather than point predictions
ニューラル ネットワークneural network 99 追加カスタマイズ可能Additional customization is possible
Poisson (ポワソン)Poisson 55 技術的には対数線形。Technically log-linear. カウント予測用For predicting counts
ordinal (序数)ordinal 00 ランク順序予測用For predicting rank-ordering
Anomaly detection (異常検出)Anomaly detection
support vector machine (サポート ベクター マシン)support vector machine 22 大きい特徴セットに特に好適Especially good for large feature sets
PCA-based anomaly detection (PCA ベースの異常検出)PCA-based anomaly detection 33
K-MeansK-means 44 クラスタリング アルゴリズムA clustering algorithm

アルゴリズムのプロパティ:Algorithm properties:

- 極めて高い精度、高速のトレーニング時間、線形性の使用。 - shows excellent accuracy, fast training times, and the use of linearity

- 高い精度と中程度のトレーニング時間。 - shows good accuracy and moderate training times

アルゴリズムの注意事項Algorithm notes

Linear regression (線形回帰)Linear regression

前に説明したように、 linear regression はデータ セットに直線 (または平面、または超平面) を適合させます。As mentioned previously, linear regression fits a line (or plane, or hyperplane) to the data set. 役に立ち簡単で高速ですが、一部の問題については過剰に単純になる可能性があります。It's a workhorse, simple and fast, but it may be overly simplistic for some problems.

線形傾向のデータ

線形傾向のデータData with a linear trend

Logistic regression (ロジスティック回帰)Logistic regression

名前に "regression" が含まれていますが、logistic regression は実際には 2 クラス分類と多クラス分類のための強力なツールです。Although it includes 'regression' in the name, logistic regression is actually a powerful tool for two-class and multiclass classification. 高速で単純です。It's fast and simple. 直線ではなく「S」型の曲線を使用するため、データをグループに分割するのに適しています。The fact that it uses an 'S'-shaped curve instead of a straight line makes it a natural fit for dividing data into groups. logistic regression は線形クラス境界を提供するので、使用するときは、線形近似を受け入れ可能なことを確認します。Logistic regression gives linear class boundaries, so when you use it, make sure a linear approximation is something you can live with.

特徴が 1 つだけの 2 クラス データに対する logistic regression

特徴が 1 つだけの 2 クラス データへの logistic regression - クラス境界はロジスティック曲線が両方のクラスに近いポイントですA logistic regression to two-class data with just one feature - the class boundary is the point at which the logistic curve is just as close to both classes

ツリー、フォレスト、ジャングルTrees, forests, and jungles

Decision forest (regressiontwo-classmulticlass)、decision jungle (two-classmulticlass)、および boosted decision tree (regressiontwo-class) はすべて、機械学習の基本概念であるデシジョン ツリーに基づきます。Decision forests (regression, two-class, and multiclass), decision jungles (two-class and multiclass), and boosted decision trees (regression and two-class) are all based on decision trees, a foundational machine learning concept. デシジョン ツリーには多くのバリエーションがありますが、行うことはすべて同じで、特徴空間をほとんど同じラベルを持つ領域に分割します。There are many variants of decision trees, but they all do the same thing—subdivide the feature space into regions with mostly the same label. これらは、分類または回帰のどちらを実行しているかにより、一貫性のあるカテゴリを持つ領域、または定数値の領域です。These can be regions of consistent category or of constant value, depending on whether you are doing classification or regression.

デシジョン ツリーで特徴空間を細分化する

デシジョン ツリーは特徴空間をほぼ同じ値の領域に細分化しますA decision tree subdivides a feature space into regions of roughly uniform values

特徴空間は任意の小さい領域に分割できるので、領域ごとに 1 つのデータ ポイントを持つようになるまで細かく分割することを簡単に想像できます。Because a feature space can be subdivided into arbitrarily small regions, it's easy to imagine dividing it finely enough to have one data point per region. これは極端な過剰適合の例です。This is an extreme example of overfitting. これを回避するには、ツリーが相互に関連しないように数学的に特別に考慮したツリーの大きなセットを作成します。In order to avoid this, a large set of trees are constructed with special mathematical care taken to ensure the trees are not correlated. この「デシジョン フォレスト」の平均が、過剰適合を回避するツリーです。The average of this "decision forest" is a tree that avoids overfitting. Decision forest は多くのメモリを使用する場合があります。Decision forests can use a lot of memory. Decision jungle は、トレーニング時間が若干長くなるのと引き替えにメモリ消費が少ないバリエーションです。Decision jungles are a variant that consumes less memory at the expense of a slightly longer training time.

Boosted decision tree は、分割できる回数、および各領域に許可されるデータ ポイントの最小数を制限することによって、過剰適合を回避します。Boosted decision trees avoid overfitting by limiting how many times they can subdivide and how few data points are allowed in each region. このアルゴリズムはツリーのシーケンスを構築し、各ツリーは前のツリーによって残されたエラーを補正するために学習します。The algorithm constructs a sequence of trees, each of which learns to compensate for the error left by the tree before. 結果は非常に正確ですが、メモリを多く使用する傾向があります。The result is a very accurate learner that tends to use a lot of memory. 技術的な詳細については、 Friedman の原著論文をご覧ください。For the full technical description, check out Friedman's original paper.

Fast forest quantile regression (高速フォレスト分位回帰) は、領域内のデータの標準 (中央) 値だけでなく、分位の形式でその分布も知りたい特殊なケースに対応するデシジョン ツリーの一種です。Fast forest quantile regression is a variation of decision trees for the special case where you want to know not only the typical (median) value of the data within a region, but also its distribution in the form of quantiles.

Neural network (ニューラル ネットワーク) と perceptron (パーセプトロン)Neural networks and perceptrons

Neural network は脳にインスパイアされた学習アルゴリズムで、多クラス2 クラス、および回帰の問題を対象とします。Neural networks are brain-inspired learning algorithms covering multiclass, two-class, and regression problems. 無限の多様性がありますが、クラシック バージョンの Azure Machine Learning Studio のニューラル ネットワークはすべてが無閉路有効グラフの形式です。They come in an infinite variety, but the neural networks within the classic version of Azure Machine Learning Studio are all of the form of directed acyclic graphs. つまり、入力特徴はレイヤーのシーケンスを前方に通過して (戻ることはありません) 出力に変換されます。That means that input features are passed forward (never backward) through a sequence of layers before being turned into outputs. 各レイヤーでは、入力はさまざまな組み合わせで加重され、合計されて、次の層に渡されます。In each layer, inputs are weighted in various combinations, summed, and passed on to the next layer. この単純な計算の組み合わせにより、一見マジックのように、高度なクラス境界とデータ傾向を学習できます。This combination of simple calculations results in the ability to learn sophisticated class boundaries and data trends, seemingly by magic. この種の多レイヤー ネットワークでは、多くの技術レポートと SF の基になっている「ディープ ラーニング」が実行されます。Many-layered networks of this sort perform the "deep learning" that fuels so much tech reporting and science fiction.

ただし、この高パフォーマンスにはコストがかかります。This high performance doesn't come for free, though. Neural network はトレーニングに時間がかかり、多数の特徴を持つ大規模なデータ セットの場合は特にそうです。Neural networks can take a long time to train, particularly for large data sets with lots of features. また、ほとんどのアルゴリズムよりパラメーターが多く、パラメーター スイープによってトレーニング時間が大幅に延びます。They also have more parameters than most algorithms, which means that parameter sweeping expands the training time a great deal. また、 独自のネットワーク構造を指定しようとがんばると、無限の可能性があります。And for those overachievers who wish to specify their own network structure, the possibilities are inexhaustible.

ニューラル ネットワークによって学習された境界

ニューラル ネットワークによって学習される境界は複雑で不規則になる場合がありますThe boundaries learned by neural networks can be complex and irregular

2 クラス平均化パーセプトロン は、急激に増加するトレーニング時間に対するニューラル ネットワークの回答です。The two-class averaged perceptron is neural networks' answer to skyrocketing training times. これは、線形クラス境界を提供するネットワーク構造を使用します。It uses a network structure that gives linear class boundaries. 今日の標準ではほとんど旧式ですが、長い活用の歴史があり、十分に小さいので短時間で学習できます。It is almost primitive by today's standards, but it has a long history of working robustly and is small enough to learn quickly.

SVMSVMs

Support vector machine (SVM) は、可能な限り広いマージンでクラスを分離する境界を探します。Support vector machines (SVMs) find the boundary that separates classes by as wide a margin as possible. 2 つのクラスを明確に分離できない場合、アルゴリズムは最善の境界を検出します。When the two classes can't be clearly separated, the algorithms find the best boundary they can. Azure Machine Learning Studio (クラシック) の 2 クラス SVM は、直線のみでこれを行います (SVM でいうと、線形カーネルを使用します)。As written in Azure Machine Learning Studio (classic), the two-class SVM does this with a straight line only (in SVM-speak, it uses a linear kernel). この線形近似を行うため、かなり高速に実行できます。Because it makes this linear approximation, it is able to run fairly quickly. 特に有効なのは、テキストやゲノム データのような特徴の多いデータの場合です。Where it really shines is with feature-intense data, like text or genomic data. このような場合、SVM は、他のほとんどのアルゴリズムより速く、少ない過剰適合でクラスを分離でき、さらに必要なメモリ量も中程度です。In these cases SVMs are able to separate classes more quickly and with less overfitting than most other algorithms, in addition to requiring only a modest amount of memory.

Support vector machine のクラス境界

標準的な Support vector machine のクラス境界は、2 つのクラスを分離するマージンを最大化しますA typical support vector machine class boundary maximizes the margin separating two classes

Microsoft Research のもう 1 つの所産である two-class locally deep SVM (2 クラス ローカル詳細 SVM) は、SVM の非線形バリエーションであり、線形バージョンの速度とメモリ効率性をほぼ維持しています。Another product of Microsoft Research, the two-class locally deep SVM is a non-linear variant of SVM that retains most of the speed and memory efficiency of the linear version. 線形アプローチでは十分に正確な回答を得られない場合に最適です。It is ideal for cases where the linear approach doesn't give accurate enough answers. 速さを維持するために、問題が多数の小さな線形 SVM 問題に分解されています。The developers kept it fast by breaking down the problem into a number of small linear SVM problems. 仕組みについては、 詳細な説明 をご覧ください。Read the full description for the details on how they pulled off this trick.

非線形 SVM の巧妙な拡張機能を使用して、 one-class SVM (1 クラス SVM) はデータ セット全体を正確に示す境界を描画します。Using a clever extension of nonlinear SVMs, the one-class SVM draws a boundary that tightly outlines the entire data set. 異常検出に有効です。It is useful for anomaly detection. その境界のはるか外側に位置する新しいデータ ポイントは、注目するのに十分な異常値です。Any new data points that fall far outside that boundary are unusual enough to be noteworthy.

ベイズ法Bayesian methods

ベイズ法は高品質であり、過剰適合を回避します。Bayesian methods have a highly desirable quality: they avoid overfitting. 回答の予想される分布について事前にいくつかの想定を行うことによってこれを実現します。They do this by making some assumptions beforehand about the likely distribution of the answer. この方法のもう 1 つの副産物は、パラメーターが非常に少ないことです。Another byproduct of this approach is that they have very few parameters. クラシック バージョンの Azure Machine Learning Studio には、分類 (2 クラス ベイズのポイント マシン) と回帰 (ベイズ線形回帰) の両方向けのベイズ アルゴリズムがあります。The classic version of Azure Machine Learning Studio has Bayesian algorithms for both classification (Two-class Bayes' point machine) and regression (Bayesian linear regression). これらのアルゴリズムではデータを直線で分割または適合できるものと想定していることに注意してください。Note that these assume that the data can be split or fit with a straight line.

歴史的には、Bayes' point machine は Microsoft Research で開発されました。On a historical note, Bayes' point machines were developed at Microsoft Research. いくつかの非常に美しい理論的な処理が背後で行われています。They have some exceptionally beautiful theoretical work behind them. 興味がある場合は、JMLR のオリジナル記事および Chris Bishop による洞察に富むブログをご覧ください。The interested student is directed to the original article in JMLR and an insightful blog by Chris Bishop.

特殊なアルゴリズムSpecialized algorithms

非常に特殊な目標がある場合でも大丈夫です。If you have a very specific goal you may be in luck. Azure Machine Learning Studio (クラシック) コレクション内には、次に特化したアルゴリズムがあります。Within the Azure Machine Learning Studio (classic) collection, there are algorithms that specialize in:

PCA-based anomaly detection (PCA ベースの異常検出)

PCA-based anomaly detection - 大部分のデータは標準的な分布に分類されます。その分布から大きく逸脱したポイントは異常ですPCA-based anomaly detection - the vast majority of the data falls into a stereotypical distribution; points deviating dramatically from that distribution are suspect

K-means を使用してグループ化されたデータ セット

データ セットは、K-means を使用して 5 つのクラスターにグループ化されますA data set is grouped into five clusters using K-means

集合体のone-v-all multiclass (一対全多クラス) 分類子もあります。これは、N クラス分類問題を N-1 2 クラス分類問題に分割します。There is also an ensemble one-v-all multiclass classifier, which breaks the N-class classification problem into N-1 two-class classification problems. 精度、トレーニング時間、線形性プロパティは、使用される 2 クラス分類子によって決まります。The accuracy, training time, and linearity properties are determined by the two-class classifiers used.

3 クラス分類子を形成するために組み合わされた 2 クラス分類子

2 クラス分類子のペアの組み合わせで、3 クラス分類子が形成されますA pair of two-class classifiers combine to form a three-class classifier

クラシック バージョンの Azure Machine Learning Studio には、Vowpal Wabbit というタイトルの強力な機械学習フレームワークへのアクセスも含まれています。The classic version of Azure Machine Learning Studio also includes access to a powerful machine learning framework under the title of Vowpal Wabbit. VW はここでの分類には当てはまらず、分類と回帰の両方の問題を学習でき、部分的にラベル付けされていないデータからさえも学習できます。VW defies categorization here, since it can learn both classification and regression problems and can even learn from partially unlabeled data. さまざまな学習アルゴリズム、損失関数、および最適化アルゴリズムのいずれかを使用するように構成できます。You can configure it to use any one of a number of learning algorithms, loss functions, and optimization algorithms. 効率的で、並列的で、非常に高速なように一から設計されました。It was designed from the ground up to be efficient, parallel, and extremely fast. 非常に大きい特徴セットを簡単に処理します。It handles ridiculously large feature sets with little apparent effort. Microsoft Research の John Langford によって開発が進められた VW は、市販車のようなアルゴリズムの中における F1 のような存在です。Started and led by Microsoft Research's own John Langford, VW is a Formula One entry in a field of stock car algorithms. VW に適さない問題もありますが、もしご自身の問題に適合するならば学習する価値は十分にあります。Not every problem fits VW, but if yours does, it may be worth your while to climb the learning curve on its interface. また、複数の言語で スタンドアロンのオープン ソース コード として使用することもできます。It's also available as stand-alone open source code in several languages.

次の手順Next Steps

  • 機械学習の基礎の概要については、わかりやすいインフォグラフィックをダウンロードしていただけます。よく使用されるアルゴリズムについて説明し、機械学習に関する一般的な質問に答えるものとなっています。「機械学習の基礎とアルゴリズムの使用例」を参照してください。To download an easy-to-understand infographic overview of machine learning basics to learn about popular algorithms used to answer common machine learning questions, see Machine learning basics with algorithm examples.

  • Machine Learning Studio (クラシック) で使用可能な機械学習アルゴリズムのカテゴリ別の一覧については、Machine Learning Studio (クラシック) アルゴリズムとモジュールのヘルプのモデルの初期化に関するページを参照してください。For a list by category of all the machine learning algorithms available in Machine Learning Studio (classic), see Initialize Model in the Machine Learning Studio (classic) Algorithm and Module Help.

  • クラシック バージョンの Machine Learning Studio で使用できるすべてのアルゴリズムとモジュールの一覧 (アルファベット順) については、Machine Learning Studio (クラシック) アルゴリズムとモジュールのヘルプの「Machine Learning Studio (クラシック) モジュールの一覧 (アルファベット順)」を参照してください。For a complete alphabetical list of algorithms and modules in the classic version of Machine Learning Studio, see A-Z list of Machine Learning Studio (classic) modules in Machine Learning Studio (classic) Algorithm and Module Help.