fc2ブログ

OpenAIのGPT-3で遊ぶ(1)

 自然言語処理に興味があり、ネットを彷徨っていると、OpenAIが開発しているGPT-3(Generative Pretrained Transformer)が目に止まりました。
 OpenAIはElon Muskが出資者の一人である、人工知能を研究する非営利団体で、GPT-3は前バージョンのGPT-2の100倍の1,750億のパラメーターを備えた自然言語のディープラーニングモデルとのこと。

 いつもながらの思いつきですが、面白そうなので早速試してみました。以下、アカウント登録からPlaygroundで実行するまでの流れです。
 ① OpenAIのサイトに行き、「API」をクリックします。openai1_220223.png ② 「GET STARTED」をクリックします。openai2_220223.png ③ アカウント作成画面が表示されますので、今回は自分のMicrosoftアカウントを利用することにしました。openai3_220223.png ④ OpenAIのスタート画面が出たら、「Examples」をクリックしました。どのようなことができるのかを把握するためです。openai4_220223.png ⑤ OpenAIで実行できる項目は現時点(22/2/23)で49種類ありました。openai5_220223.pngopenai6_220223.pngopenai7_220223.png
 今回は「Friend chat」と「Create study notes」をPlaygroundで試してみました。openai8_220223.pngAI-Friendにチャットで話しかけてみました。openai9_220223.png基本的な会話ですが、相手がAIとは思えないですね。チューリングテストOKでしょうか?(甘い・・)
 次に、「Create study notes」でデータサイエンスを学ぶ上で知っておくべき5つのポイントを尋ねてみます。openai10_220223.pngopenai11_220223.png
Datascienceを学ぶ上で知っておくべき5つのポイントとは?
1. データサイエンスとは、データを研究し、データを使って意思決定を行うことです。
2. データサイエンスは、統計学、機械学習、データマイニング、人工知能の技術を取り入れた学際的な分野である。
3. データサイエンスは、ビジネス、金融、ヘルスケア、科学など、さまざまな分野の意思決定に利用されている。
4. データサイエンスは急速に成長している分野であり、有能な専門家が不足している。
5. Datascienceを学ぶためのオンラインおよび対面式のコースが多数存在する。
当たり前の回答のように思いますが、クイズの回答のように単語ではなく文章で返してくれることに個人的には「新鮮さ」とある意味での「違和感・不思議さ」を感じました。大したものですね。

 AIエンジンはAda、Babbage、Curie、Davinciの4種類があり、能力に応じて利用料金が異なります。今回のPlaygroundでの確認は、Davinciを使っています。1,000tokens(約750words)あたり$0.06とのこと。openai12_220223.png 現在、4か月の有効期限で$18までFreeで利用可能のPersonalで登録しています。過去の利用費用も個人ページから確認できました。openai13_220223.png
 今回、触り程度しか使っていないので、Freeの有効期限の中でもう少し掘り下げて、遊んでみようと思います。
スポンサーサイト



Androidアプリを作る(3)

 前回の続きです。今回はAndroidのスマホ実機(京セラ製BASIO4)で前回作成したアプリを動かすお話です。まず初めにスマホ側の設定を行いました。

1. スマホ側の設定
 ① 「設定」の「デバイス情報」を選択します。Android_SmartPhone_DevMode1_220219.png ② 「デバイス情報」の「ビルド番号」を7回タップして「開発者モード」にします。Android_SmartPhone_DevMode2_220219.png ③ 「設定」の「システム」を選択し、Android_SmartPhone_DevMode3_220219.png ④ 「開発者向けオプション」を選択し、Android_SmartPhone_DevMode4_220219.png ⑤ 「開発者向けオプション」を「ON」にします。Android_SmartPhone_DevMode5_220219.png ⑥ 「USBデバッグ」を「ON」にして、スマホ側の設定は完了です。Android_SmartPhone_DevMode6_220219.png続いて、アプリを実行させるステップです。

2. アプリの実行
 ① Android Studioが起動しているPCとスマホをUSBケーブルでつなぎます。「USBデバッグを許可しますか?」と聞かれるので、「OK」を選択します。Android_SmartPhone_DevMode7_220219.png ② 続いて、「許可」を選択します。Android_SmartPhone_DevMode8_220219.png ③ Android Studioの実行キーの横のデバイスがスマホ(KYOCERA KYV47)になっていることを確認して、Run(▶︎)させました。AndroidApp_run_220219.png ④ Runさせると、スマホ側でソフトが無事に起動しました。動作も問題ありません。AndroidApp_res1_220219.png ⑤ 実行終了すると、スマホ側にアイコンが作成されていました。以後、Android Studioを立ち下げても、アプリを動かすことができました。スマホ側にインストール完了したようです。AndroidApp_res2_220219.png
 結構簡単にスマホ側にアプリをインストールすることができました。今後、個人向けに楽しめるアプリを作ってみようと思います。

Androidアプリを作る(2)

 前回、Android Studioをインストールした所まで終わりましたので、今回は実際にコードを組んで行きます。アプリは以前のブログで「.NET MAUI」を使って作成したようなボタンを押すとカウントアップ/カウントダウンするものにしました。

 今回参考にしたサイトはAndroid for Developersとネット上のブログサイトです。

 まず初めに、Android Studioを起動して「Projects - New Project」を選択します。AndroidApp1_220219.png次に「Phone and Tablet」の「Empty Activity」を選択します。AndroidApp2_220219.pngプロジェクト名は「MyCounter」としました。Languageは「Kotlin」を選択。Androidアプリの言語はJavaとKotlinを選択できますが、Kotlinが推奨されているようですね。Minimum SDKはデフォルトだった「API 21: Android 5.0 (Lollipop)」をそのまま選択しました。AndroidApp3_220219.png起動後の「Androidビュー」のプロジェクトファイル類は以下の通りです。今回編集したファイルは赤枠で囲んだ3ファイルだけです。AndroidApp4_220219.png

 以下、アプリ作成の手順です。
1. activity_main.xmlにUIの部品を設置する。
  「app - src - main - res - layout - activity_main.xml」を選択し、Designを選択すると「Design Editor」が起動しました。AndroidApp5_220219.pngPaletteから4つの部品を貼り付け、以下のidとしました。
 ① Plain Text - CounterLbl
 ② TextView - CountertextView
 ③ Button - Plusbutton
 ④ Button - MinusbuttonAndroidApp6_220219.png部品と部品の位置関係はそれぞれの部品(id)の「Layout - Constraint Widget」で設定しました。

2. UI部品のキーを登録する。
  「app - src - main - res - values - string.xml」を選択し、「open editor」を選択すると「Translations Editor」が起動しました。AndroidApp7_220219.png「+ボタン」を押して上記のidを以下のkeyに登録しました。
 ① CounterLbl - counter_lbl_key
 ② CountertextView - counter_view_key
 ③ Plusbutton - plus_key
 ④ Minusbutton - minus_keyAndroidApp8_220219.png
3. ボタンクリックのコードを書き、ボタンidと紐づける。
  「app - src - main - java - com - example - mycounter - MainActivity」を選択し、MainActivity.ktにボタンクリックのコードを追加しました。
// MainActivity.kt
package com.example.mycounter

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.TextView

class MainActivity : AppCompatActivity() {

private var Counter_no = 0 // counter initialize

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}

fun plus_buttonOnClick(View: View){
val CountertextView = findViewById<TextView>(R.id.CountertextView).apply {
text = (++Counter_no).toString()
}
}

fun minus_buttonOnClick(View: View){
val CountertextView = findViewById<TextView>(R.id.CountertextView).apply {
text = (--Counter_no).toString()
}
}
}
また、ボタンのidとコードの関数の紐付けも行いました。AndroidApp9_220219.png コードを保存して、実行すると以下の通り、正常に指定した動作で動きました。今回は「Pixel_3_API_32_arm64-v8a」というEmulatorを使いました。AndroidApp10_220219.png
 WindowsのVisual Studioに慣れていたら、Android Studioの方が面倒な手続きが多いような気がしました。基本は同じことをやっているのですけどね。次回はAndroidのスマホ実機で今回作成したアプリを動かすお話をします。

Androidアプリを作る(1)

 いまさらですが、昨年末に長年使っていた「ガラケー」を「スマホ」に機種変更しました。使っていたauの3G回線ガラケーが22年3月末で使えなくなるからです。長い間、機種変更してくださいとダイレクトメールや毎週休日に電話がかかってきていましたが、黙殺していました。
 ただ、auが機種更新しないと名義を抹消するとの文面で強行的に訴えてきたのでやむなく更新することにしました。日頃滅多に使っていない個人携帯なので、機種変更する必要もなく、変更すると結果的に維持費が割高になってしまうので馬鹿らしいと思っていました。とはいえ、全く使わないわけでもないですし、家族割等で名義がなくなっても困るので仕方がないですね(この辺りは結構頑固者です・・)。

 結局、年寄り携帯?(失礼!)の京セラ製BASIO4に機種変更して、会社から持たされている携帯(iPhone)との2台のスマホ持ちになりました。会社携帯はアプリのインストールが会社で一括管理され、個人で触れないので、今回のBASIO4(Android)でいろいろ遊んでみようと思い立ちました。

 Androidはセキュリティ面でiOSに比べてNegativeなイメージが未だにありますが、アプリ作成が気軽にできる感はあります。早速、ネットで調べてアプリを作ってみました。
 先日のブログでWindows-Visual Studio 2022(Preview版)環境で「.NET MAUI」を使ってAndroid Emulatorでアプリを実行した話をしましたが、今回はM1チップのMac Mini-Android Studio環境で作成しました。

 前置きが長くなりました・・。(よくあることですね)。
まず、Android Studioをサイトからダウンロードし、インストールしました。
 Download Android Studioボタンを押すと、dmgファイル(android-studio-2021.1.1.21-mac_arm.dmg)がダウンロードされました。Android_Studio_Install1_220219.pngdmgファイルを実行して、アプリをApplicationsフォルダにドラッグした後は、基本的にインストーラの指示通りに進めました。Android_Studio_Install2_220219.pngData Sharingは「Don't send」で「Next」へ。Android_Studio_Install3_220219.pngInstall Typeは「Standard」で「Next」へ。Android_Studio_Install4_220219.pngSelect UI Themeはダークモード「Darcula」で「Next」へ。Android_Studio_Install5_220219.pngVerify Settingは確認後、「Next」へ。Android_Studio_Install6_220219.pngLicense Agreementは2つあり、1つ目の「android-sdk-licence」をacceptして、「Next」へ。Android_Studio_Install7_220219.png2つ目の「android-sdk-arm-dbt-licence」をacceptして、「Finish」でインストールが完了しました。Android_Studio_Install8_220219.png
 前置きとインストール方法を長々と書いてしまったので、次回は実際にAndroid Studioでコーディングした内容をお話します。

Visual Studio Codeの日本語変換が正常になる

 年末のブログでVisual Studio Codeの日本語変換がおかしいという内容をお話ししましたが、直近の更新で正常になりましたね。GitHubの開発チーム宛にこの不具合内容をメールして良かったと思います。この不具合は私以外にも報告されていたようですが・・。

 最新バージョンは1.64.1で2/7にリリースされましたので、アップデートしました。VScode_version_220210.png前バージョン1.63.2の日本語変換に不具合があり(利用環境:Mac Mini: Apple M1)、前々バージョン1.62.3をこの1か月間使っていました。

以下の日本語変換をするとJapaneseConversion_220210.png以前変換した文字がオーバーラップして表示されて、直近で入力している文字が表示されていない不具合で、大変気持ち悪いものでした。JapaneseConversion_defect_220210.png今回、アップデートした1.64.1で試すと、JapaneseConversion_nomal_220210.png正常に戻っていました。

GitHubの開発チームには感謝!感謝!です。

ご訪問者数

(Since 24 July, 2016)

タグクラウド


プロフィール

Dr.BobT

Author: Dr.BobT
興味のおもむくままに生涯考え続けるエンジニアでありたい。

月別アーカイブ

メールフォーム

名前:
メール:
件名:
本文: