人工知能のトレンドに遅れないようにするには、Python と C/C++ のどちらを学ぶべきでしょうか?答えはここにあります

人工知能のトレンドに遅れないようにするには、Python と C/C++ のどちらを学ぶべきでしょうか?答えはここにあります

あらゆるものがデータと自動化によって駆動される現代の世界では、人工知能はますます一般的になりつつあります。私たちは日常生活の大部分をスマートデバイスとのやり取りに費やしています。人工知能は、そのすべての中心にあり、私たちの変化する生活様式に不可欠な要素になりつつあります。

開発段階、成果、使用された製品、結果など、AI分野で何が起きているのかを理解することに夢中になるかもしれません。もちろん、AIに最適なプログラミング言語の1つとしてPythonが選ばれる理由も紹介します。

Python: Python は非常に効率的な言語であり、他の多くの言語で必要とされるよりも少ないコード行でより多くのプログラムを処理できます。他の言語と比較して、コードはデバッグや読み取りが容易で、拡張も容易です。

Java: Java は、プログラマーがモバイル アプリケーションやデスクトップ アプリケーションを作成できるようにするために世界中で使用されている成熟した汎用プログラミング言語です。これは、プログラマーが「一度書けばどこでも実行できる」ように設計されており、コードは一度実装すれば、再コンパイルせずにハードウェアとオペレーティング システムの任意の組み合わせで実行できることを意味します。

C/C++: C プログラミングはシンプルで広く使用されているコンピュータ プログラミング言語です。 C プログラミング言語は主にソフトウェア開発者やプログラマー、特にオペレーティング システム、UNIX、C コンパイラー、およびほぼすべての UNIX アプリケーションを扱う開発者やプログラマーによって使用されます。 C プログラミング言語は、今日のコンピュータ分野で最も一般的に使用されている専門言語であると言えます。 C++ はコンパイル言語です。プログラムを実行するには、そのソース テキストをコンパイラで処理してオブジェクト ファイルを作成し、それをリンカーで結合して実行可能プログラムを生成する必要があります。 C++ プログラムは通常、多数のソース コード ファイルで構成されます。

人工知能はPythonなしでは成り立たない

1. Python は純粋なフリー ソフトウェアです。そのソース コードとインタープリター CPython は GPL 契約に従います。簡単に言えば、オープン ソースで無料です。

2. Python はインタープリタ型言語なので、プログラムの作成と実行が簡単です。

Python はインタープリタ言語です。実行前にコンパイルする必要があるコンパイル言語と比較すると、Python コードはコンパイルする必要がなく、インタープリタによって解釈された後、直接実行できます。機械学習に従事する人々にとって、プログラム作成の利便性は非常に重要です。モデルは頻繁に変更する必要があり、コンパイルされた言語全体に影響する可能性があるためです。ただし、Python ではこれを非常に短時間で実現できます。たとえば、Java コードを変更した後は、コードを実行する前に再コンパイルする必要がありますが、IDE プラグインの助けを借りて即座にコンパイルすることもできます。ただし、Python コードを変更した後は、js と非常によく似ており、直接更新して変更された効果を確認できます。

3. Python の開発エコシステムは成熟しており、開発効率が高い。

プログラミング言語の品質や人気は、その生態系環境に深く関係しています。以前、Java プログラミングについて話したとき、Java の生態系は非常に成熟していると述べました。 Python のエコシステムも非常に成熟しています。Python が提供するクラス ライブラリと SDK は、テキスト、リスト、セット、タプル、辞書などの操作に効率的です。実装が簡単で、非常に効率的です。提供される豊富で強力なライブラリはグルー言語という愛称で呼ばれており、他の言語(特に C/C++)で作成されたさまざまなモジュールを簡単に接続できます。

[[279184]]

人工知能アルゴリズムの中核は依然としてC/C++である

人工知能は計算集約型であり、非常に高度な最適化、GPU や特殊なハードウェアなどのインターフェースを必要としますが、これらはすべて C/C++ でのみ実行できるため、ある意味では、C/C++ は実際には人工知能の分野で最も重要な言語です。

Python は API バインディングです。Python が使用されるのは、CPython のグルー言語機能により、他の言語で作成されたさまざまなモジュールを簡単に接続できるためです。たとえば、3D ゲームのグラフィックス レンダリングは、パフォーマンス要件が特に高い場合は C/C++ で書き直し、Python から呼び出せる拡張クラス ライブラリとしてカプセル化できます。そのため、他の言語から C/C++ へのクロスランゲージ インターフェースを開発する場合、Python が最も簡単で、特に Cython を使用する場合、ffi の敷居は他の言語よりもはるかに低くなります。他の言語の多くの ffi は、C 関数のエントリ ポイントしかインポートできず、複雑なデータ構造はバイト配列で手動で接続するしかありません。コールバック関数の入力が必要な場合は、何もできません。

Cpython の CAPI は双方向の融合であり、カプセル化された Python オブジェクトを外部に直接公開できるだけでなく、ユーザーがこれらのカスタム オブジェクトを継承して新しい機能を導入することもできます。特定の条件下では、C コードから Python 関数を呼び出すこともできます。しかし、これは PyPy などの JIT インタープリターにとっても障害となります。さらに、Python は歴史を通じて科学計算やデータ分析の重要なツールであり続けています。NumPy のような基盤を持つ Python は、業界が似ているため、API バインディング言語を選択する際の第一候補です。同時に、NumPy などの基本ライブラリを再利用することで、開発の負荷が軽減されるだけでなく、実践者が簡単に始めることができます。さらに、優秀で有能なプログラマーになり、人工知能ソフトウェア開発を行いたいのであれば、C / C ++を学ぶ必要があります。そして、プログラミングを学ぶ際には、学習環境とコミュニケーションサークルを持つことが特に重要です。ここでは、C 言語と C++ の通信リンクをお勧めします。ぜひアクセスしてください: 最初は 784、次は 143、次は 133。あなたが専門家であろうと初心者であろうと、私たちは一緒に成長し、向上することができます。

[[279185]]

そして、C/C++ と人工知能理論の密接な関係。どうやっても切断できない。 C++ について本当に混乱している場合は、人工知能における論理表現に関する本を少し読んでみるのもいいでしょう。 C/C++ はビッグデータの時代には活気がないように見えますが、パフォーマンスと効率の面で依然として優位性を維持しており、多くのデスクトップ アプリケーションでは依然として C/C++ が広く使用されています。テンセントを含むインターネット企業は、ビッグデータエンジニアを採用する際に、依然としてC/C++をオプションのプログラミングツールの1つとして使用しています。人工知能の時代はC/C++の復活をもたらし、主流の人工知能フレームワークはすべてC/C++に基づくはずです。ある意味、Python は単なるラッパーであり、C++ がコアです。結局のところ、C++ 言語は人工知能の急速な発展に基づいて登場したのです。多くの場合、問題の原因を突き止めることが、問題を解決する最善の方法です。

本日のシェアは以上です。最後に、皆さんが自分の好きなプログラミング言語を選び、人工知能のトレンドに乗って、どんどん先に進んでいけることを願っています。

<<:  中国語からSQLへの自動変換精度92%、このKaggleマスターが世界記録を更新

>>:  チューリング賞受賞者のヨシュア・ベンジオ氏:ディープラーニングの最優先事項は因果関係を理解すること

ブログ    

推薦する

アルゴリズム王国では中国が他国を追い抜くかもしれない

今年の初め、世界中で人工知能の発展に注目していた人たちの注目を集めた出来事が2つありました。一つは、...

なぜAlipayは携帯電話の闇市場に関与しないのでしょうか?公式回答: 犯罪者は顔認識を突破できない

「携帯電話1台で世界中を旅する」というのは、ほぼすべての人の現状です。アクセスカード、バスカード、鍵...

フェイフェイ・リー氏のチームは、一人暮らしの高齢者のCOVID-19症状を監視する家庭用AIシステムを開発

[[321322]]フェイフェイ・リーCOVID-19パンデミックにより、高齢者の介護はさらに困難に...

人工知能が将来経験する7つの段階

2030年までに、人工知能のおかげで世界のGDPは15.7兆ドル増加するでしょう。企業の 84% は...

ViT以外にも、美団、浙江大学などが、視覚タスクのための統合アーキテクチャであるVisionLLAMAを提案した。

過去 6 か月間にわたり、Meta のオープン ソース LLaMA アーキテクチャはテストされ、LL...

人工知能の分野でどのように計画するか? マイクロソフトはこうする

[51CTO.com からのオリジナル記事] 人工知能は勢いを増しており、多くの大手企業が独自の計画...

...

JVM チューニングの概要: 基本的なガベージ コレクション アルゴリズム

ガベージ コレクション アルゴリズムは、さまざまな観点から分類できます。基本的なリサイクル戦略によれ...

...

教育は新世代の人工知能の発展を積極的に支援すべきである

[[250135]]習近平総書記は中国共産党中央委員会政治局第9回集団学習会で、人工知能は新たな科学...

とんでもないことだ! UniVision: BEV 検出と Occ 共同統合フレームワーク、デュアルタスク SOTA!

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

医療業界における人工知能の5つの主要な応用シナリオと典型的な事例

近年、スマートヘルスケアの開発は国内外で人気を集めています。 「セキュリティやスマート投資アドバイザ...

各国の人工知能戦略の解釈

現在、人工知能の開発は引き続き盛んに行われており、新世代の科学技術革命の先駆者となりつつあります。米...

...

「人工知能+学習」は教育をより良くするのでしょうか?

「教育は死んだが、学習は不滅である。」半世紀前、アメリカの教育思想家イリイチは著書『脱学校社会』の...