検索結果
-
-本書は、LLMやチャットAIを外部のシステムに接続し、判断力を備えたシステムを開発する、というのをメインテーマとしています。 本書ではChatGPTのAPIを使用し、ChatGPTの入出力とAPIを呼び出しているプログラムを接続することで、ChatGPTを要素として組み込んだアプリケーションを開発する手法を解説しています。 ChatGPTを要素として組み込んだシステムを体験し、理解するためには、実際に動作するアプリケーションに触れてみることが、最もよい方法でしょう。 そのため、本書の多くの章では、GUIを持ったアプリケーションを開発します。つまり、ユーザーが操作しグラフィカルな応答を得ることができる、ゲームなどのアプリケーションにChatGPTを組み込むことで、ChatGPTと外部システムとの連携方法を紹介していきます。
-
-最近のAI開発では、サーバー上でプログラムを直接実行するよりも、GCPのAI PlatformやAWSのSageMakerのような、クラウド上のPaaS(Platform as a Service)を使うことが多くなっています。その際には、GCPであればGCSやBigQuery、AWSであればS3などの、ストレージサービスと接続し、データパイプラインのループ内に機械学習モデルと学習プロセスを埋め込みます。 本書では、Google Cloud Platformでサーバーレスのディープラーニングを行い、GCSやBigQueryなどのストレージとデータパイプラインで接続する方法を紹介します。 また、バックエンド側の経験はあるもののAI開発の経験はない読者のために、TensorFlowの基礎と、AI Platform上での実行方法を紹介します。
-
-最新の自然言語処理(NLP)では、Transformerという種類のニューラルネットワークが使われるようになりました。 TransformerはBERTやGPT2などのAIで採用され、NLP技術にブレークスルーをもたらしましたが、その特徴は、高い性能とさまざまな用途に使える汎用性の高さにあります。 本書では、Transformerの構造を理解するためにBERTとGPT2を一から実装し、またNLPプログラムを作成するために必要となる、Transformerを拡張して応用AIを作成する方法を紹介します。 Transformerの実装では、Transformerの中心となるSelf-Attention層の作成やテキストのエンコード方法など、最も基礎的な部分から、Pythonのコードをもとに解説をしています。 また、学習では、事前学習と特定のタスクに向けたファインチューニングという、Transformerに特徴的な2段階のステップを、両方とも行います。 ニューラルネットワークの実装は、TensorFlow 2を利用します。
-
-本書では、PyTorchを使い、実際の製品やサービスの開発時に役に立つ手法を紹介するようにしています。 本書で紹介する「AI開発」では、必ずしもすべての章で、ニューラルネットワークの構造(ニューロン同士の接続の仕方)を一から新しく作成するようなことはしませんが、TorchVisionやTorchHubにある学習済みのモデルやGitHub上で公開されているコードなども、積極的に採用するようにしています。 本書では、章によって、異なるAIを開発しますが、その際には、公開されているモデルをそのまま流用して「広義のAI」のみを作成したり、あるいは公開済みのモデルを転移学習・ファインチューニングしたりと、その都度、もっとも近道であると思われるスキームを利用して、「AI開発」を行います。
-
-Jetson Nanoは、NVIDIA社が発売しているシングルボードコンピューターです。同社は、エッジAI向けにJetsonシリーズというシングルボードコンピューターを発売していますが、Jetson Nanoはその中の最も小さなモデルとなります。Jetson Nanoの最も大きな特徴は、何といっても128個のCUDAコアからなる機械学習用アクセラレータを搭載している点です。 このように、Jetson Nanoには、CUDAアクセラレータを搭載したエッジAI向けコンピューターという特徴と、小型の組み込みボードという2つの特徴があります。 本書では、その両面を生かすため、Jetson Nano上での機械学習プログラムの開発と、組み込み用途での開発の両方をテーマにしています。 そして、AI開発は主にソフトウェアの作成が、組み込み用途での開発は主にハードウェアの作成がテーマとなります。 そのため、本書で紹介する内容は、ソフトウェアの作成をメインにした章と、ハードウェアの作成をメインにした章とがあります。 たとえば、CHAPTER 02で紹介するTwitterボットはソフトウェアの作成をテーマにしています。しかし、その次のCHAPTER 03では、自動ドアの作成というハードウェアの作成がテーマになり、AI部分はCHAPTER 02で作成したAIをそのまま利用します。 ※本書ではハードウェアの作成にについては、半田付けが行えることを前提として解説しています。半田付けの基本などについては説明を割愛していますので、あらかじめ、ご了承ください。
-
3.5Kaggleとは、コンペティションを主催するほかに、機械学習エンジニアの育成から就職支援まで携わる、データサイエンティスト支援の一大ポータルです。本書では、Kaggleの概要から、コンペティションへの参加方法、コードの実行方法、活用方法など、幅広く解説しています。 【序文より抜粋】 本書では、データ解析コンペティションを開催しているKaggleというサイトを紹介しますが、Kaggleのコンペティションは、単純にデータを受け取り、解析し、スコアが付けられるだけの流れ作業ではありません。 Kaggle上で行われるコンペティションは、それぞれが1つのドラマです。 データの特性に関する議論や有効なソリューションの公開が行われると思えば、仮順位の推移を巡る駆け引きもあり、そして時には主催者側の問題で右往左往する参加者の姿が見られたりと、コンペティションの開催から終了まで続くお祭り期間中には、さまざまな人間模様を見ることができます。 Kaggleのコンペティションを通じて、そうしたデータサイエンティストたちの活動の実態を紹介し、また、実際にKaggleに参加して、人間味あふれるデータサイエンティストたちと交流するにはどうすればよいかを紹介するために、本書を執筆しました。 そのため、本書では、単にKaggleの使い方を解説するだけではなく、実際のコンペティションで起こった事例を、できるだけ多く取り入れるようにしています。
-
-本書は、LightGBMやXGBoostなどに代表されるアンサンブル学習のアルゴリズムをPython 3でゼロから実装することで、その仕組みや原理を学べる1冊です。 <序文より抜粋> ビッグデータを解析するための機械学習アルゴリズムとしては、ディープラーニング、つまりニューラルネットワークの他にも、ベイズ分類器や決定木、それにそれらを組み合わせた「アンサンブル学習」アルゴリズムなど、さまざまな種類があり、データやその利用シーンに応じて適切なものを選択しなければ、その威力を発揮させることはできません。実際、海外のデータコンペティションにおいてはLightGBMなどのアルゴリズムがよく利用されますが、それは勾配ブースティングアルゴリズムの一種であり、「アンサンブル学習」アルゴリズムの1つです。 そうした「アンサンブル学習」アルゴリズムは強力な分析力を提供してくれますが、それらを正しく使いこなし、最大限の性能を引き出すためには、アルゴリズムの詳細についての理解が欠かせません。そして、どのようなアルゴリズムについても、その手法を最もよく理解できる学習手段は、そのアルゴリズムを実際に一からプログラミングしてみることなのです。 そうした「アンサンブル学習」と呼ばれる手法について、最も基礎的な部分から解説し、実際にコードを作成しながらその動作原理を学ぶ、というの本書の目的となります。 そして本書では、Python言語を使用して、複数のアンサンブル学習アルゴリズムを、完全に一からスクラッチで制作します。数式でアルゴリズムを理解するのではなく、実際に一からプログラムを書き、コードに触れることで得られる知識は、実際のデータ解析における問題解決能力を大きく養ってくれるはずです。
-
-Pythonの基礎はもちろん、外部パッケージを含めた、よく使う機能を丁寧に解説! Python開発のために押さえておきたいポイントがわかる! Pythonの入門に最適な1冊! 【「はじめに」より抜粋】 本書はそのような、プログラミングそれ自体を初めて学ぼうという読者から、Python言語の初~中級者に向けて、Pythonによるプログラミングの基本を解説します。また、Pythonを実際の業務で使用するための最初のステップになるべく、GUIアプリケーションやCGIプログラムの作成方法、Jupyter Notebook上でのPythonコードの実行など、単純なコンソールアプリの作成だけではない、実践的な内容も紹介しています。 本書では、一から新しくプログラミングを学ぼうという読者でも十分に理解できること、プログラミング特有のさまざまな概念について把握すること、Python言語の仕様について学ぶこと、さまざまなPythonパッケージの使い方を知ることなど、いくつかの目標を設定しました。本書を構成する各章は、それぞれの章を順番に読み進めることで、それらの目標を自然と達成できるように構成されています。 もちろん、Pythonの言語仕様はそれだけで膨大ですし、外部パッケージの機能なども含めてしまうと、その内容はとても1冊に収まる分量ではなくなってしまいます。そのため、本書で紹介している内容には、かなりの程度、筆者の主観によって削り落とした、限定的なものになっている箇所があります。 しかし、本書を通じてPythonの世界をある程度でも理解することで、次のステップとしてPythonの言語仕様書を読んだり、外部パッケージの機能について調べたりできる程度のスキルを身に付けられるだろうと、筆者としては考えています。
-
-本書ではディープラーニングフレームワーク「MXNet」を使って、自然言語・時系列データ・有向グラフなどのデータを扱う手法や、Metric Learning・Deep Embedding Clusteringなどのニューラルネットワークを使用してデータの分類・数値の予想・クラスタリングなどを行う人工知能プログラムの作成方法をわかりやすく解説しています。
-
-本書ではディープラーニングフレームワーク「Chainer」を使って、画像の自動生成や画像のスタイル変換、意味のある文章の自動生成や機械翻訳を行う人工知能プログラムを作成する方法をわかりやすく解説しています。
-
4.0本書は、ディープラーニングを使用した人工知能開発について、主にビジネスで取り組む上での注意点を念頭に置いて、包括的に解説をしています。実際に開発を行う技術者に向けられた内容ではなく、技術を使ってビジネスを行う側の方に向けて書かれています。 そのため、ディープラーニングの技術に関しては、動作原理を解説する程度にとどめ、従来のシステム開発とはずいぶんと勝手が異なっている部分、たとえば、開発期間・費用の見積もり方、検収方法、プロジェクトのハンドリングに関するノウハウなどをかみ砕いて解説しています。 下記のようなよくある疑問に答える1冊です。 ・AIは何ができて何ができないのか? ・AI開発にかかる費用は? ・納品されたAIをどうやって評価すればいい? ・AIに知的財産権はある? ■本書の特長 ●ターゲットは技術者ではなくビジネスを行う人 本書は、外部に人工知能を使ったシステムを発注する側の人間を主な読者対象としています。ディープラニングなどの技術に関しては動作原理を解説する程度にとどめ、ビジネス上で問題になる点などについては、著者が実際に開発・相談を受けた案件などの実体験も踏まえ、解説しています。 ●項目冒頭のQ&Aを流し読みしても概要がわかる 項目の冒頭に人工知能システムにまつわるよくある疑問をQ&A形式で解説しているので、忙しい人でもQ&Aを読むだけでも概要がつかめます。解説も丁寧にしており、図解なども交えてわかるやすく解説しています。 ●知的財産権や今後の予想など、一歩先の内容も解説! 現在、盛んに議論されている人工知能にまつわる知的財産権(著作権など)についても現在の政府の取り組みなども紹介し、解説しています。また、今後のビジネスの予想についても触れています。
-
-
-
-
-
-本書はゲームアプリなどに利用されている「Box2D」のJavaScript実装であるBox2DWebについてわかりやすく解説しています。 Box2Dの基本的な概念の説明はもちろん、具体的に物体を操作する方法や、摩擦などの物性の設定方法、ジョイントなどの高度なテクニックを解説しています。また、JavaScriptで利用する場合のポイントなどにも言及しています。 Box2DをJavaScriptで利用したい方にお勧めの入門書です。
-
-本書ではプログラミング言語「Swift」の基本について、わかりやすく解説しています。他のプログラミング言語を使ったことがある人を主な対象とし、ポイントなどをまとめた1冊です。iOSアプリ開発者/ Macアプリケーション開発者にオススメです。電子書籍版ではSwift 3.0に対応しています。
-
-