人工知能はすでにトレンドです。スマートホテル、スマートインターネットカフェ、自動運転車などが実現され、すぐに私たちの生活に普及するでしょう。同様に、インテリジェント時代の到来は、多くの人が失業に直面することを意味します。私たちは、時代に見捨てられ、排除されることのないよう、時代の発展に遅れを取らないようにしなければなりません。 人工知能に最適な言語としてPython それは私たちの学習の究極の目標です。かつて誰かがこう言いました。 未来の社会では、Python を知らない人は新たな「文盲」に分類されるでしょう。 また、Python は、プログラミング言語の基礎をまったく学んでいない人にとっても最適です。それで私は Python を学ぶ旅を始めました! 正しい手順、正しい方法を見つけて、一生懸命勉強すれば大丈夫です!信じてください、すぐに習得できますよ! ここでは、エディターは、学習したい初心者のための非常に適切な学習教材を用意しました。もちろん、今日のソースコード さて、今日はインテリジェントなロボットの書き方を紹介します。 1. ジェネレータオブジェクトの分析 簡単な例を見てみましょう。ジェネレータ関数を作成し、ジェネレータ オブジェクトを生成します。 人工知能の時代に、チャットするインテリジェントロボットを Python で作成しました。とても優れています。 G がジェネレーター オブジェクトであることを示します。その内部にあるものを分析してみましょう。 dir(G) を印刷する 非常に特殊な関数が 4 つあることに注意してください: close()、next()、send()、throw()、next()。これらについては前の 2 つの記事ですでに説明しているので、ここでは説明しません。今日は、send()、throw()、close() 関数に焦点を当てます。 2. コルーチンとは何か Python のコルーチンは、スレッドに似ています。コルーチンは、複数の関数を実行し、同時に実行されているように見せることができる、ユーザーレベルの軽量スレッドまたはマイクロスレッドと考えることができます。ただし、メモリをあまり消費しない、オーバーヘッドが低い、スレッドの安全性を考慮する必要がないなど、スレッドよりも優れた点がいくつかあります。(スレッドとは何かについては、次の記事で説明します) 1.send()関数 send() は、パラメータを渡してジェネレータとやりとりするために使用されます。プログラムがreceive=yieldまで実行されると、一時停止され、ジェネレータがsendメソッドを呼び出すのを待ちます。このとき、send関数は外部から呼び出され、データ変数を送信し、データ変数はreceivedに渡されます。 コード例: a) echo 関数には無限ループがあり、その中にはキーとなるコード行のreceive=yieldが含まれています。これは、外部から送信される send 関数のエントリ ポイントです。 b). 外部関数は最初にジェネレータオブジェクトを生成する必要があります。つまり、Echo = echo() です。 c) 次に重要なステップは next(Echo) です。ジェネレーターを最初の yield 式に進めるには、 next 関数を 1 回呼び出す必要があります。 d) 次に、yield 操作と send 操作を組み合わせて外部からのデータ入力を取得し、一連のプロセスを使用してそれを処理します。 2.throw()関数 Throw は主に例外をジェネレータに送信し、システム定義の例外 (もちろんカスタム例外も含む) を終了できます。 コード例: a). ジェネレータオブジェクトGを作成する b) next(G) を実行し、結果を出力します。最初の yield でキャッシュされた結果 'First' を取得し、yield 'Second' の前に留まります。 c). 例外クラス ValueError をスローします (ValueError は文字列ではなくクラスであることに注意してください)。ジェネレーターが例外を受け取ると、yield 'Second' を直接スキップして except 部分に入り、'Catch the TypeError' と出力します。 d). next(G) を実行し、結果を出力します。while の先頭に戻り、最初の yield 'Frist' を消費し、 yield 'Second' を実行します。 3.close()関数 close はジェネレータを停止するために使用されます。停止後に next が呼び出されると、StopIteration エラーがトリガーされます。 コード例: ジェネレーター オブジェクト Echo が close() を呼び出すと、send('123') を呼び出すと例外 StopIteration がスローされ、これをキャッチします。 3. 実用化 - ミニチャットボット たくさん話した後で、少し目が回りませんか? ジェネレータはPythonで最も複雑な概念の1つです。学生の中には、他にもジェネレータがあるかどうか尋ねた人もいました(はい、デコレータです)。 コルーチンを使って小さなチャットボットを書いてみましょう~~ 1). バックグラウンドでスレッド機能として考えられるチャットボットジェネレーター機能を作成する 2) フロントデスクは継続的にユーザー入力を取得し、コルーチンを使用してバックエンドに送信して処理します。 ランニングの効果を見てみましょう |
<<: 【WOT2018】4人の重鎮専門家が企業ビジネスにおけるNLPの詳細な応用を分析
コペルニクス気候変動サービスによると、2023年は記録上最も暖かい年となっただけでなく、世界の平均表...
[「今回の調整は、主にユーザーのアクティベーション率、アプリの使用頻度、評価など総合的に考慮して行う...
[[397895]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...
この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
人類が地球上の食物連鎖の頂点に上り詰め、さらには宇宙の探査を続けられるようになったのは、個人の脳だけ...
[[272354]]画像: この Uber の自動運転車は、米国サンフランシスコでテスト中に信号待ち...
2011年、Google DeepMindの共同創設者であるシェーン・レッグは、2028年までにAI...
1. 機械学習の概要1. 機械学習とは何ですか?機械は大量のデータを分析して学習します。たとえば、猫...
画像を 3D に変換する方法としては、通常、スコア蒸留サンプリング (SDS) 方式が採用されていま...
企業は、AI を搭載し、AI 向けに構築されたデータベースを検討する必要があります。最適化と使いやす...
[51CTO.com からのオリジナル記事] ニューラルネットワーク翻訳モデルは、使用できる語彙のサ...