ホームページ  >  記事  >  バックエンド開発  >  Python データ分析のためにはどのような数学を学ぶ必要がありますか?

Python データ分析のためにはどのような数学を学ぶ必要がありますか?

(*-*)浩
(*-*)浩オリジナル
2019-07-02 09:50:045080ブラウズ

なぜなら、私が学んだ数学の知識が何の役に立つのかわからないからです。 IT企業の研究開発担当者は、ビッグデータ関連の職に就く前に数学を学ぶ必要があると常に感じていますが、広大な数学の世界において、データテクノロジーの終着点はどこにあるのでしょうか?

Python データ分析のためにはどのような数学を学ぶ必要がありますか?

データテクノロジーというと、多くの人が最初に数学を思い浮かべるのは、おそらく数学体系の中で数字が確固たる地位を占めているためでしょう。これも当然のことです。 。この記事では、データ テクノロジの数学的基礎について説明します。 (推奨学習: Python ビデオ チュートリアル )

数学には、代数、幾何学、解析という 3 つの主要な分野があることはわかっています。それぞれの分野は、研究の発展とともに多くの小さな分野に拡張されています。 。この数学体系において、ビッグデータ技術と密接に関係する数学的基礎には、主に以下のカテゴリーが含まれます。 (これらの数学的手法のビッグデータ技術への応用については、書籍『インターネットビッグデータ処理技術と応用』、2017年、清華大学出版部を参照してください。)

(1) 確率理論と数学統計

この部分は、ビッグデータ技術の開発、条件付き確率と独立性、確率変数とその分布、多次元確率変数とその分布、分散分析などの基本概念と非常に密接に関連しています。回帰分析、ランダムプロセス(特にマルコフ)、パラメータ推定、ベイズ理論などは、ビッグデータのモデリングとマイニングにおいて非常に重要です。ビッグデータはもともと高次元の特性を持っており、高次元空間でのデータ モデルの設計と分析には、多次元確率変数とその分布に関する一定の基礎が必要です。ベイズの定理は、分類器構築の基礎の 1 つです。これらの基礎知識に加えて、条件付き確率場 CRF、潜在マルコフ モデル、n グラムなどをビッグデータ分析における語彙やテキストの分析に使用したり、予測分類モデルの構築に使用したりできます。

もちろん、ビッグデータ解析においても確率論に基づく情報理論は一定の役割を果たしており、特徴量分析に用いられる情報利得や相互情報量などの手法もすべて情報理論の概念です。

(2) 線形代数

数学的知識のこの部分は、データ技術の発展とも密接に関係しています行列、転置、ランクブロック行列、ベクトル、直交行列、ベクトル空間、固有値、固有ベクトルも、ビッグデータのモデリングと分析で一般的に使用される技術的手法です。

インターネット ビッグ データでは、多数の Web ページとその関係、Weibo ユーザーとその関係、テキスト間の関係など、多くのアプリケーション シナリオの分析オブジェクトをマトリックス表現に抽象化できます。テキストセット内の語彙などは行列で表すことができます。たとえば、Web ページとその関係が行列で表される場合、行列要素はページ a と別のページ b の間の関係を表します。この関係は指向関係にすることができます。1 は a と b の間にハイパーリンクがあることを意味し、0 は a と b の間にハイパーリンクがあることを意味しますは a を意味し、b の間にはハイパーリンクはありません。有名な PageRank アルゴリズムは、ページの重要性を定量化し、その収束性を証明するためにこのマトリックスに基づいています。

行列分解などの行列に基づくさまざまな演算は、解析対象の特徴を抽出する手法です 行列はある変換や写像を表すため、分解後に得られる行列は解析を表現します いくつかの新しい特徴新しい空間内のオブジェクトの。そのため、ビッグデータ解析では特異値分解SVD、PCA、NMF、MFなどが広く使われています。

(3) 最適化手法

モデルの学習とトレーニングは、多くの分析マイニング モデルがパラメーターを解決するための方法です。 give 関数 f:A→R を定義し、A のすべての a について f(a0)≤f(a) (最小化)、または f(a0)≥f(a) (変化を最大化)となるような要素 a0∈A を見つけます。 )。最適化方法は関数の形式によって異なりますが、現在の観点から見ると、最適化方法は通常、勾配降下法、山登り法、最小二乗法、共役分布法などの微分法と微分法に基づいています。

(4) 離散数学

離散数学の重要性は自明であり、コンピュータ サイエンスのあらゆる分野の基礎です。自然はデータ テクノロジーの重要な基盤でもあります。ここでは詳しく説明しません。

最後に、多くの人は自分は数学が苦手で、データテクノロジーの開発や応用はうまくできないと考えていることを述べておく必要がありますが、そうではありません。ビッグデータの開発とアプリケーションにおいて自分がどのような役割を果たしているかを明確に考えてください。ビッグデータ技術の研究と応用については、以下のエントリーポイントを参照してください。上記の数学的知識は主にデータマイニング層とモデル層に反映されます。これらの数学的知識と手法を習得する必要があります。

もちろん、他のレベルでも、これらの数学的手法の使用は、アルゴリズムを改善するのに非常に意味があります。たとえば、データ取得層では、確率モデルを使用して、次の値を推定できます。より適切な判断を下すために、クローラー コレクション ページを参照してください。ビッグ データ コンピューティングおよびストレージ層では、マトリックス ブロック コンピューティングを使用して並列コンピューティングを実現します。

Python 関連の技術記事をさらに詳しく知りたい場合は、Python チュートリアル 列にアクセスして学習してください。

以上がPython データ分析のためにはどのような数学を学ぶ必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。