目次
02. AI開発経験" >02. AI開発経験
1.Agenthood" >1.Agenthood
2. 報酬 " >2. 報酬
3. 幕間: 経験とは何か " >3. 幕間: 経験とは何か
4. 経験的な状態 " >4. 経験的な状態
5. 予測知識 " >5. 予測知識
ホームページ テクノロジー周辺機器 AI リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

Apr 09, 2023 am 10:01 AM
ai 開発する 経験

#################################### 導入: ######### ###近年、強力な人工知能の開発が注目されています。単にラベル付けされたデータではなく、AI に人間の認識や行動から学習させることが、多くの研究者の焦点となっています。その中で、人間が獲得した日常生活の経験を利用して、さまざまな環境に適応し、外界と対話できる人工知能をインスピレーションおよび構築する方法が、いくつかの分野で探求される新しい方法となっています。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階強化学習の父として知られるリチャード・サットンは、最近、経験を利用して AI の開発を促すというアイデアを提案しました。データの利用から経験の利用に至るまでのAIのプロセスを4つの開発段階に分け、将来的に本物のAI(リアルAI)を構築するという開発の方向性を提案した。 2022 年 5 月 31 日、リチャード サットンは 2022 北京インテリジェント ソース カンファレンスで「AI における感覚運動経験の増大する役割」と題した基調講演を行い、開発を刺激するための経験の利用に焦点を当てました。 AIの手法をまとめ、展望する。

講演者紹介:

リチャード サットン、モダン コンピューティング タイプベースの強化の創始者の 1 人彼は、DeepMind の優れた研究科学者であり、アルバータ大学コンピューティング科学学部の教授であり、王立協会、カナダ王立協会、アルバータ州人工知能推進協会の会員でもあります。 Machine Intelligence Institute (AMII) および CIFAR 研究者。

01. 背景: 知性の発達における経験の重要性

サットンは、人間と人間の間の相互作用は次のように考えています。知的エージェントと外界は相互作用し、アクションを送信し、認識 (そこからのフィードバック) を受け取ります。経験を伴うこの種の相互作用は、強化学習における通常の認識方法です。これは、エージェントに外界の予測を試みさせるときに使用される通常のアプローチでもあります。ただし、このアプローチは、現在最も一般的なタイプの機械学習である教師あり学習では一般的ではありません。機械学習には通常の経験(Ordinary Experience)は含まれず、通常の経験とは異なる特別な学習データからモデルが学習することはありません。実際、実行時には教師あり学習システムはまったく学習しません。 #つまり、エクスペリエンスはインタラクティブな (持ち込まれた) データであり、外部の世界と通信する方法です。経験は他の経験と関連していなければ意味がありません。もちろん、例外が 1 つあります。それは、特別なシグナルを介して表現される報酬です。報酬は適切な目標を表しており、エージェントは確かに報酬を最大化したいと考えています。

#サットンはスピーチの中で、「知能は最終的に何が説明できるのか?」という核心的な質問を提起しました。それは客観的な用語ですか、それとも経験的な用語ですか?前者にはエージェントの中にはない外界の状態、目標、人、場所、関係、空間、行動、距離などが含まれ、後者には知覚、行動、報酬、時間などエージェントの内部にあるものが含まれます。手順などサットン氏は、研究者は通常、コミュニケーションや論文執筆の際に客観的な概念について考えるが、今後はエージェントと外界との相互作用によって生成される経験にもっと注意を払う必要があると考えている。

#知的エージェントに経験の重要性をさらに紹介するために、Richard Sutton は、経験が徐々に評価されるにつれて、次のように提案しました。合計 4 つの段階を経ました。それは、主体性、報酬、経験的状態、予測知識です。これら 4 つの開発段階を経て、AI は徐々に経験を積み、より実用的で学習可能になり、拡張が容易になります。

02. AI開発経験

1.Agenthood

Agenthoodとは、 /(AIの)経験を積む。おそらく驚くべきことに、初期の AI システムにはまったく経験がありませんでした。人工知能開発の初期段階 (1954 年から 1985 年) では、ほとんどの AI システムは問題を解決したり、質問に答えたりするためにのみ使用され、認識を持たず、行動することはできませんでした。ロボットは例外ですが、従来のシステムには、下の図の積み重ねられた構成要素のように、開始状態と目標状態しかありません。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

適切な目標状態に到達したい場合、解決策は AI が確実に機能するようにする一連のアクションです。開始状態から目標状態に到達できます。外界全体は既知であり、決定されており、閉じられているため、これには認識や行動はありません。そのため、AI が認識して行動する必要はありません。研究者は何が起こるかを知っているので、問題を解決するための計画を立ててAIに実行させるだけでよく、人間はそれが問題を解決することを知っています。

#過去 30 年間の開発において、人工知能の研究はインテリジェント エージェントの構築に焦点を当ててきました。この変化は、人工知能に関する標準的な教科書にエージェントの概念が基礎として含まれているという事実からもわかります。たとえば、1995 年版の『Artificial Intelligence: A Modern Approach』では、本書全体の統一テーマがインテリジェント エージェントの概念の導入であると述べられています。この観点から見ると、AI の問題は、インテリジェントなエージェントを記述して構築し、環境から認識を得て、行動を起こすことです。研究が発展するにつれて、標準的かつ最新のアプローチは、外部の世界と対話できるエージェントを構築することです。サットン氏は、AI をこの観点から見ることができると考えています。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

2. 報酬

報酬は AI の目標について説明します。経験的な用語。これは、AI のすべての目標を構築するために現在提案されている効果的な方法でもあります。これは、サットンと彼の共同研究者によって提案された方法でもあります。

報酬は、現時点では比較的十分な仮説であると考えられています。知能とそれに関連する能力は、報酬を最大化するために奉仕した結果として理解できます。だからエージェントにとっては報酬は十分だと言われています。

#しかし、サットン氏は、この考えには異議を唱える必要があると考えています。知性を達成するには報酬だけでは十分ではありません。報酬は単なる数値、スカラーにすぎず、知能の目標を説明するには十分ではありません。心の外から来て単一の数字で表現される目標は、あまりにも小さすぎ、あまりにも還元的で、あまりにも卑劣にさえ思えます。人間は、家族の世話、世界の救い、世界平和、世界をより良い場所にするなど、より大きな目標を想像することを好みます。人間の目標は、幸福や快適さを最大化することよりも重要です。

#研究者たちが、報酬が目標を構築する良い方法ではないことを発見したのと同じように、研究者は、報酬を通じて目標を構築することの利点も発見しました。報酬によって構築される目標は小さすぎますが、その中で人々は進歩することができます。目標は明確に定義されており、簡単に学ぶことができます。これはむしろ、経験を通じて目標を構築するための挑戦です。

サットンは、経験を通じて目標を完全に構築することを想像するのは難しいと考えています。歴史を振り返ると、今でもAIはもともと報酬に興味がなかったことがわかります。したがって、初期の問題解決システムであっても、AI教科書の最新版であっても、目標は経験(定義)としてではなく、達成すべき世界状態(World State)として定義されることに変わりはありません。このような目標は、達成されると認識されている結果ではなく、依然として特定の「構成要素」のセットである可能性があります。

もちろん、最新の教科書には強化学習について言及し、これらの AI が報酬メカニズムを使用していると言及している章があります。さらに、報酬は目標を構築するプロセスにおいてすでに一般的な慣行となっており、マルコフ意思決定プロセスを使用して達成できます。目標を適切に構築できていないとして報酬を批判する研究者(ヤン・ルカンなど)にとって、報酬はすでに知性という「ケーキ」の上に乗った「サクランボ」であり、非常に重要である。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

次の 2 つのステージで、サットンは経験的な観点から外界を理解する方法を紹介します。そこで彼はまず、経験とは何を指すのかを紹介します。

3. 幕間: 経験とは何か

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

下の図のシーケンス (実際のデータではありません) に示すように、タイム ステップが開始すると、システムは感知信号を取得し、信号とアクションも送信します。したがって、知覚された信号はいくつかのアクションを引き起こし、それらのアクションは次の知覚された信号を引き起こす可能性があります。システムは常に、次に何が起こるか、そしてそれをどのように行うかを決定できるように、最近のアクションと最近の信号に注意を払う必要があります。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

#図に示すように、これはエージェント実行プログラムの入出力信号配列です。最初の列は時間ステップであり、各ステップは 0.1 秒または 0.01 秒の瞬間とみなすことができます。アクション信号列は、グレーと白の 2 レベル システムで表されます。次に、感覚信号列があり、最初の 4 列はバイナリ値 (グレーと白も使用)、最後の 4 列は 0 から 3 までの 4 つの値を使用し、赤の 4 色で表されます。 、黄色、青、緑、最後の列は報酬を表す連続変数です。実験では、パターンを見つけやすくするために、研究者らは数字を削除し、色だけを残しました。サットンは、経験とは感覚運動経験のデータに見られるパターンの知識と理解を指すと考えています。

この場合、サットンは 4 つの典型的なパターンを挙げました。

1. 最後のパターンアクションの桁は、その直後に知覚される信号と同じです。あるタイム ステップでのアクションが白であれば、その後最初に知覚される信号も白となり、灰色についても同様です。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

#2. 赤いピクセルが表示されると、次のタイム ステップは緑のピクセルになります。データ範囲を拡大すると、赤と緑のピクセルが次々に出現した後、タイム ステップごとに青のピクセルが出現することがわかります。

#3. データの最後の 3 列には、同じ色の長い文字列が含まれており、変更されていないことがよくあります。一度色がつき始めると、それは複数の期間にわたって持続し、最終的には縞模様を形成します。赤、緑、青などの長い文字列など。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

#4. AIが予測した特定の感覚データが表示されても、すぐには観察できないことが多いため、このデータに、得られる報酬の予測を表す戻り値(Return)を追加します。ボックス内の緑色のストリップは、その後の報酬が赤よりも緑であることを示します。これは現在の報酬の予測を表します。

特別な影付きの領域は待機機能を表します。待機関数の影付きの領域には緑と赤のバンドがあります。ここで、研究者は、色付きの報酬を使用して、以前のリターンをより重視しています。戻り値を時間の経過とともに移動すると、予測結果と実際の報酬の間の色と値の対応する変化がわかります。この戻り値は予測であり、経験から学ぶことができます。

サットン氏は、この戻り値は本質的にすでに発生したイベントから学習されるのではなく、時間差信号から学習されると考えています。最も重要な信号は値関数です。この場合、戻り値は実際には将来の報酬の合計を表す値関数です。将来の値を参照できる複雑な関数の一般的な形式が必要な場合は、General Value Functions (GVF) と呼ばれるメソッドを使用できます。一般的な価値関数には、報酬だけでなくさまざまなシグナルが含まれており、指数関数だけでなく任意の時間エンベロープ形式にすることができます。一般値関数には、あらゆるキューの戦略も含めることができ、非常に多数の広範囲の事柄を予測できます。もちろん、計算による予測の難しさは、予測されるオブジェクトの形状に依存するとサットン氏は考えています。一般的な値関数を予測に使用する場合、予測対象の表現形式を学習しやすく高い計算効率が要求される形式に設計する必要があります。

4. 経験的な状態

「状態」という言葉に関しては、多くの研究で言及されています。来るのは世界国家であり、客観的な概念に属する言葉です。状態とは、世界そのものの状況と一致することができる客観的な世界の象徴的な記述(反映)を指します。例えば、積み木の位置情報(Aの上にCがある)など。最近、一部の研究者 (ユダヤ・パールなど) が、世界国家の確率分布を表す確率的グラフ モデルを提案しました。 「外は雨が降っていますが、草は濡れていますか?」などの一部のイベントには、確率的な関係があります。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

もう 1 つの状態は、信念状態 (Belief State) です。この概念では、状態は離散世界の状態を表す確率分布であり、それに対応する方法は POMDP (部分的に観察可能なマルコフ決定プロセス) と呼ばれます。隠れた状態変数があり、その一部は観察可能であり、を使用してモデル化できます。マルコフの意思決定プロセス。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

上記の方法はすべて客観的であり、経験とは程遠いものです。世界の状況を説明する方法を試してください。 。

#違いは、経験の状態です。サットンは、経験的状態とは経験に基づいて定義された世界全体の状態を指すと考えています。経験状態は過去の経験を要約したものであり、将来得られる経験を予測し制御することができます。

#過去の経験を構築し、未来を予測するこのアプローチは研究に反映されています。たとえば、強化学習タスクの 1 つである Atari ゲームでは、研究者はビデオの最後の 4 フレームを使用して体験状態を構築し、その後の行動を予測します。 LSTM ネットワークの一部のメソッドは、特定の経験的状態から予測を行うものと考えることもできます。

エクスペリエンスのステータスを振り返ると、再帰的に更新できます。経験状態は、過去に起こったことの概要の関数です。AI は次のイベントを予測するために、毎瞬経験状態にアクセスする必要があるため、経験状態の更新は再帰的です。現在の瞬間は、過去の経験状態にのみアクセスします。最後の瞬間の経験状態は、過去に発生したすべてのイベントの概要です。次の瞬間には、この瞬間の経験状態のみがアクセスされ、この経験状態は過去に発生したすべてのイベントの要約でもあります。

次の図は、エージェントのエクスペリエンス状態の構築プロセスを示しています。このうち、赤い矢印は、感情、行動、報酬など、エージェントの基本的な動作信号を示します。青い矢印は、知覚からの出力である経験状態 (表現) の方向を示しており、各タイム ステップでの経験状態の更新を担当します。更新されたステータスは、アクションの戦略を立てたり、その他の更新を行ったりするために使用されます。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

5. 予測知識

知識「ジョー・バイデンは米国大統領である」「エッフェル塔はパリにある」などは、外部の客観的世界の記述であり、経験的ではありません。ただし、「何かをするのに X 時間かかると予想される」といった知識は経験的な知識です。経験的知識と客観的知識の間には大きな違いがあり、これがAI研究の課題でもあります。

これまでの AI 研究では知識を客観的な項目として扱う傾向がありましたが、最近の研究ではこの問題を経験的な観点から考察しているものもあります。初期の AI システムには経験がなかったため、予測できませんでした。より現代的な AI は知識を客観的な存在として扱います。より高度なものは確率的グラフィカル モデルですが、多くの場合、同時に発生する 2 つの物事の間の確率を研究し、予測は一連のシーケンス イベントを対象としている必要があります。

# シーケンス イベントに基づく予測は、明確な意味論的特性を持つ知識です。何かが起こると予測された場合、AI はその予測と実際の結果を比較できます。この種の予測モデルは、新しい種類の世界知識、つまり予測知識と考えることができます。サットン氏は、予測知識の中で最も最先端のものは一般価値関数とオプション モデルであると考えています。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

サットンは世界の知識を 2 つのカテゴリーに分類し、1 つは世界状態に関する知識、もう 1 つは世界状態の移行に関する知識です。 。 知識。世界の状態遷移に関する知識の例としては、世界予測モデルがあります。ここでの世界予測モデルは、マルコフ決定プロセスや差分方程式の主要な形式ではありません。それは経験的な状態から抽出できる抽象的な状態である可能性があります。予測は行動全体に基づいているため、選択モデルでは、エージェントは特定の戦略を停止し、特定の条件を終了することも選択できます。メロディー伝達モデルを使用すると、アクション実行後の状態を予測できる場合があります。日常生活を例に挙げると、街に行きたいと考えた場合、街の中心部までの距離と時間を予測し、一定の閾値を超える行動(街中に10分歩くなど)を想定します。 )、さらに予測が行われ、疲労などの状態が明らかになります。

#行動を拡張できるこのモデルを使用すると、表現される知識の規模も非常に大きくなります。たとえば、ある行動に基づいて世界の状態を予測し、その状態に基づいて次の行動を予測する...といったことができます。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

サットン氏は、AI 研究における経験の発展プロセスを要約し、「経験は世界知識の基礎です。人間は知覚と行動を通じて世界を理解し、影響を与えます。経験は人間が行動するための基礎です」と述べました。情報を入手して行動する、それは人間と切り離せない唯一の行動手段です。残念なことに、経験はあまりにも主観的かつ個人的なものであるため、人間は依然として経験に基づいて考えたり表現したりすることを好みません。経験は人間にとってあまりにも異質で、直観に反し、一時的で、複雑なものです。経験も主観的かつ個人的なものであり、他人に伝えたり検証したりすることはほとんど不可能です。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

サットン氏は、次の理由から AI にとって経験が非常に重要であると考えています。まず、経験は AI の日常的な操作プロセスから得られ、これらの経験の取得はコストがかからず、自動的に行われます。同時に、AIの分野では計算に使用されるデータが大量にあるため、経験が世界を理解する道筋となり、世界の事実が経験的なものであれば、AIは経験から世界の理解を学習し、経験に基づいて構築し、検証します。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

要約すると、サットン氏は、過去 70 年間の AI 開発の中で、AI は経験への依存度を徐々に高めてきたと考えています。 . 価値 – 経験を積み、経験に基づいて目標を設定し、経験に基づいてステータスと知識を獲得します。各段階で、人間にとってなじみのない実証研究の重要性が高まっており、根拠があり、学習可能で、拡張可能であるという利点があります。

リチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階

03. 経験を将来の AI に活かす方法

# サットン氏は、経験の活用という点では AI はまだステージ 3 と 4 を完了していないと考えていますが、この傾向はさらに進むでしょう。サットン氏は、すべてを経験に帰することが真の AI への実現可能な道であると信じています。非常に困難ではありますが、これはデータ フローを理解し、インテリジェンスを実現できるというイメージです。最後に、サットンは感覚運動経験に焦点を当てる 4 つの段階をさらに凝縮し、次のスローガンを作成しました: 「データは人工知能を動かし、経験は究極のデータです。経験を積めば、人工知能の開発をより迅速かつ効果的に促進できます。」

以上がリチャード・サットン: 経験は AI の究極のデータ、本物の AI の開発に至る 4 つの段階の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

XML形式を美化する方法 XML形式を美化する方法 Apr 02, 2025 pm 09:57 PM

XMLの美化は、合理的なインデンテーション、ラインブレーク、タグ組織など、本質的に読みやすさを向上させています。原則は、XMLツリーを通過し、レベルに応じてインデントを追加し、テキストを含む空のタグとタグを処理することです。 PythonのXML.ETREE.ELEMENTTREEライブラリは、上記の美化プロセスを実装できる便利なchile_xml()関数を提供します。

XML形式を確認する方法 XML形式を確認する方法 Apr 02, 2025 pm 10:00 PM

XML形式の検証には、その構造とDTDまたはスキーマへのコンプライアンスを確認することが含まれます。 ElementTree(基本的な構文チェック)やLXML(より強力な検証、XSDサポート)など、XMLパーサーが必要です。検証プロセスでは、XMLファイルを解析し、XSDスキーマをロードし、AssertValidメソッドを実行してエラーが検出されたときに例外をスローすることが含まれます。 XML形式の確認には、さまざまな例外を処理し、XSDスキーマ言語に関する洞察を得る必要があります。

C言語でchar配列の使用方法 C言語でchar配列の使用方法 Apr 03, 2025 pm 03:24 PM

Char Arrayは文字シーケンスをC言語で保存し、char array_name [size]として宣言されます。アクセス要素はサブスクリプト演算子に渡され、要素は文字列のエンドポイントを表すnullターミネーター「\ 0」で終了します。 C言語は、strlen()、strcpy()、strcat()、strcmp()など、さまざまな文字列操作関数を提供します。

Cスイッチステートメントでデフォルトに起因するエラーを避けてください Cスイッチステートメントでデフォルトに起因するエラーを避けてください Apr 03, 2025 pm 03:45 PM

Cスイッチステートメントでデフォルトに起因するエラーを回避するための戦略:定数の代わりに列挙を使用し、ケースステートメントの値を列挙の有効なメンバーに制限します。最後のケースステートメントでフォールスルーを使用して、プログラムが以下のコードを引き続き実行できるようにします。フォールスルーなしのスイッチステートメントの場合、エラー処理のためのデフォルトステートメントを常に追加するか、デフォルトの動作を提供します。

C言語合計の機能は何ですか? C言語合計の機能は何ですか? Apr 03, 2025 pm 02:21 PM

C言語に組み込みの合計機能はないため、自分で書く必要があります。合計は、配列を通過して要素を蓄積することで達成できます。ループバージョン:合計は、ループとアレイの長さを使用して計算されます。ポインターバージョン:ポインターを使用してアレイ要素を指し示し、効率的な合計が自己概要ポインターを通じて達成されます。アレイバージョンを動的に割り当てます:[アレイ]を動的に割り当ててメモリを自分で管理し、メモリの漏れを防ぐために割り当てられたメモリが解放されます。

C言語のnull文字とヌル文字の違いは何ですか C言語のnull文字とヌル文字の違いは何ですか Apr 03, 2025 am 11:12 AM

null(ポインター)と\ 0(null文字)はc言語では完全に異なります。NULLとは、無効なポインターポイント(メモリアドレス0)を意味しますが、\ 0は文字列の端をマークします。混合使用によりエラーが発生します(コンパイラ警告)。

C言語ヌルの意味は何ですか C言語ヌルの意味は何ですか Apr 03, 2025 pm 12:00 PM

C言語のnullは、nullポインターを表し、存在しないメモリアドレスを指します。エラー処理とDATA構造の終了マーキングに使用されますが、SEGFaultsやプログラムクラッシュなどの問題を回避するために、Null Pointerの有効性をチェックすることに注意する必要があります。

C言語で有用なヌル C言語で有用なヌル Apr 03, 2025 pm 12:03 PM

nullは、nullポインターを表すC言語の特別な値であり、ポインター変数が有効なメモリアドレスを指していないことを識別するために使用されます。 nullを理解することは、プログラムのクラッシュを回避し、コードの堅牢性を確保するのに役立つため、非常に重要です。一般的な使用法には、パラメーターチェック、メモリ割り当て、および機能設計のオプションパラメーターが含まれます。 nullを使用する場合は、ポインターのぶら下がりやnullのチェックを忘れるなどのエラーを避け、効率的なnullチェックを実行し、コードのパフォーマンスと読みやすさを最適化するために命名をクリアするように注意する必要があります。

See all articles