人工知能はすでにトレンドです。スマートホテル、スマートインターネットカフェ、自動運転車などが実現され、すぐに私たちの生活に普及するでしょう。同様に、インテリジェント時代の到来は、多くの人が失業に直面することを意味します。私たちは、時代に見捨てられ、排除されることのないよう、時代の発展に遅れを取らないようにしなければなりません。 人工知能に最適な言語として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の詳細な応用を分析
ChatGPT がおかしくなるまで 1 つのことを実行するように要求し続けると、どうなるでしょうか?...
2016年3月、ロボットと世界チャンピオンでプロ棋士のイ・セドル九段による人機囲碁対決が世界中から大...
[[195601]]ディープラーニングは機械学習のサブセットであり、さまざまな方法を使用して人工知能...
ResearchAndMarkets が発表した最新のレポートによると、2027 年までに世界の人...
データの規模を拡大し、関連するリテラシーを向上させることで、米空軍のさまざまな部門と人員は、意思決定...
[[379190]]スタックの本質は、特殊なデータ構造です。その特殊な構造は、データのエントリと終了...
Andrej Karpathy は、ディープラーニング コンピューター ビジョン、生成モデル、強化学...
[[259734]] tensorflow.jsとはTensorflow.js は、ブラウザーと ...
人工知能がもたらす脅威について議論するとき、スカイネット、マトリックス、ロボットによる終末の世界とい...
現在の AI の世界は電力を大量に消費し、計算能力が制限されています。モデル開発の軌跡は急速でしたが...
今年12月1日より、物理チャネルでは顔認識技術対策を全面的に導入し、電話ネットワークへのアクセスプロ...
トランスフォーマー モデルは現在、言語、視覚、強化学習などの分野での有効性から注目を集めています。た...
英国放送協会が10月25日に報じたところによると、人工知能によって制作された芸術作品がオークションで...