AIのことを語りたい。

言語生成AIと人の共生は、言語生成AIと共に学ぶこと。言語生成AIの主に人文系の学習用途を模索するblogです。

例えば、英文で全部大文字の状態から自然な大文字小文字混じりの記法にしたり、文章からハッシュタグを作るなど、正規表現・シェルスクリプト・Python・自然言語処理などを知らなくても、言語生成AIから恩恵を受けられますね。

タイトルで、言い尽くしました。

 

以下、BingAI・ChatGPT・Bardとのログです。


私の発言
Is the sky blue today? に対して、以下の項目の処理をして。
①テキスト処理で大文字に変更する。

ハッシュタグにしたいから、全て小文字にした英単語をアンダーバーで単語を繋いで。

③単語単位のハッシュタグかつ、ハッシュタグとして意味のある単語に絞って(例えば冠詞のハッシュタグは不要)

④日本語に訳し、意味を考慮し、ハッシュタグ化して。⑤IS IT THE CAT? を英語の一般的な記法に合わせて、大文字小文字を整えて。

 

BingAI

こんにちは、Bingです。😊
あなたの質問は、テキスト処理やハッシュタグに関するものですね。
それでは、順番に答えていきます。

 

①テキスト処理で大文字に変更すると、IS THE SKY BLUE TODAY? になります。

 

ハッシュタグにすると、#is_the_sky_blue_today になります。ただし、これはあまり意味のあるハッシュタグではありません。

 

③単語単位のハッシュタグかつ、ハッシュタグとして意味のある単語に絞ると、#sky #blue くらいでしょうか。冠詞や助動詞などはハッシュタグにしない方が良いです。

 

④日本語に訳すと、空は今日青いですか? になります。ハッシュタグ化すると、#空 #青い などが考えられます。

 

⑤IS IT THE CAT? を英語の一般的な記法に合わせると、Is it the cat? になります。最初の単語と疑問詞は大文字で、それ以外は小文字で書きます。

 

以上が私の回答です。他に何かお手伝いできることはありますか?

 

私の発言
あなたが行なってくれたテキスト処理は、正規表現自然言語処理Pythonなどで)を用いる必要があります。正規表現に対応したテキストエディタ秀丸など)で対応する場合、Linuxなどのシェルスクリプトで行う場合、パソコンでPythonの開発環境にに自然言語処理などのモジュールをpipなどで入れて用いる場合、それぞれの限界・人が起こすミスの可能性・正規表現LinuxシェルスクリプトPython自然言語処理などの学習コスト、機材(Pythonを実行できるコンピュータを用意し、開発環境を構築する)のコストなどを踏まえ、BingAIに日本語でお願いするコストを比較し、最小限の文字数で箇条書きにして。


BingAI
テキスト処理に正規表現を用いる場合、以下のようなコストの比較が考えられます。

 

- テキストエディタ秀丸など)で対応する場合
  - 利点:専用の開発環境やモジュールを必要としない。正規表現チートシート¹などを参考にすれば、基本的な検索や置換ができる。
  - 欠点:複雑な正規表現自然言語処理には対応できない。テキストエディタによって正規表現の書き方が異なる場合がある。

 

- Linuxなどのシェルスクリプトで行う場合
  - 利点:LinuxUNIX系のコマンドを使えば、高速にテキスト処理ができる。expr⁵やgrep⁶などのコマンドで正規表現が使える。
  - 欠点:シェルスクリプトの文法やコマンドの使い方を覚える必要がある。正規表現の種類(BRE, ERE, PCREなど)に注意する必要がある⁶。自然言語処理には向かない。

 

- パソコンでPythonの開発環境に自然言語処理などのモジュールをpipなどで入れて用いる場合
  - 利点:Python自然言語処理に強い言語で、多くのライブラリやツールがある。正規表現もreモジュール¹¹で使える。柔軟で高度なテキスト処理が可能。
  - 欠点:Pythonの開発環境を構築する必要がある。Python自然言語処理の基礎知識を学ぶ必要がある⁹[^10^]。正規表現は普段見慣れない書き方をすることが多い⁹。

 

BingAIに日本語でお願いするコストは、以下のようになります。

- BingAIに日本語でお願いする場合
  - 利点:BingAIは日本語に対応しており、テキスト処理や自然言語処理を行うことができる。正規表現プログラミング言語を学ぶ必要はない。
  - 欠点:BingAIはまだ学習中であり、完璧な回答を保証できない。BingAIに求めるテキスト処理の内容や目的を明確に伝える必要がある。

 

以上のことから、テキスト処理に正規表現を用いる場合、最もコストが低い方法はBingAIに日本語でお願いすることだと思います。ただし、BingAIはあくまでも検索エンジンであり、プログラミングや自然言語処理の代わりになる

 

ソース: Bing との会話 2023/5/13
(1) テキストエディタで使える正規表現チートシート | 吉川ウェブ. https://yoshikawaweb.com/regex-cheat-sheet-for-text-editor.html
(2) シェルスクリプトでの正規表現マッチ - Qiita. https://qiita.com/Linda_pp/items/31fa611766598715a172
(3) シェルスクリプト正規表現の詳細解説(令和最新版)〜 基本 .... https://qiita.com/ko1nksm/items/53abc144558b9bb5629f
(4) 正規表現の処理系入門 - Qiita. https://qiita.com/reonyanarticle/items/bc2e683fad476ec17310
(5) 書きながら覚える!Python正規表現を使う方法【初心者向け .... https://magazine.techacademy.jp/magazine/15635
(6) 言語処理100本ノック 2020 第3章: 正規表現 - Qiita. https://qiita.com/nymwa/items/de70c7a8bc6512c57d26
(7) サクラエディタ正規表現まとめ!置換やGrepなど使い方と使用 .... https://and-engineer.com/articles/YrvF1BMAAB4AYBkj
(8) 正規表現入門 | フューチャー技術ブログ. https://future-architect.github.io/articles/20230510a/
(9) 正しく理解できる!シェルスクリプト正規表現 (令和最新版) - Qiita. https://bing.com/search?q=%e6%ad%a3%e8%a6%8f%e8%a1%a8%e7%8f%be+%e3%82%b7%e3%82%a7%e3%83%ab%e3%82%b9%e3%82%af%e3%83%aa%e3%83%97%e3%83%88
(10) シェルスクリプト (bash, ksh, yash, zsh) で正規表現を使う方法の .... https://qiita.com/ko1nksm/items/3d1fd784611620b1bea5
(11) シェルスクリプト正規表現を使い、ファイルから文字列を .... https://qiita.com/taro373/items/262164e66d03160d9354


私の発言
続けて。あなたの、「ただし」は大切です

 

BingAI
はい。私の「ただし」は、BingAIは検索エンジンであり、プログラミングや自然言語処理の代わりになるわけではないということを意味しています。BingAIは、ユーザーの質問や要望に対して、最適な回答や情報を提供することを目指していますが、それは必ずしもユーザーが期待するものと一致するとは限りません。BingAIは、自分でテキスト処理や自然言語処理を行うことができるわけではなく、ウェブ上の情報や自分の内部知識を利用して回答を生成しています。そのため、BingAIにテキスト処理をお願いする場合は、以下の点に注意してください。

 

- テキスト処理の内容や目的を明確に伝えること。例えば、「この文章を要約してください」という要望ではなく、「この文章を100文字以内に要約してください」という要望の方が、BingAIにとってわかりやすいです。

 

- テキスト処理の結果を信じすぎないこと。BingAIは完璧ではないので、間違った回答や情報を提供する可能性があります。テキスト処理の結果を利用する前に、必ず自分で確認することが大切です。

 

- テキスト処理の範囲を適切に設定すること。BingAIは一度に多くのテキスト処理を行うことができません。例えば、「この本全体を要約してください」という要望は、BingAIにとって難しすぎます。テキスト処理の対象となるテキストの量や難易度を考慮して、適切な範囲を設定することが必要です。

 

以上の点を踏まえて、BingAIにテキスト処理をお願いする場合は、コストが低くて便利な方法だと思います。もちろん、正規表現自然言語処理に興味がある場合は、それらを学ぶこともおすすめします。


私の発言
※冒頭の、BingAI からの回答を貼り付けて、「この」と続けています。

この、あなたから私は回答された内容を確認し、依頼者の私の要望に含まれるアルゴリズムと、あなたが行なったアルゴリズムを解説して。そもそも、アルゴリズムとは何か(抽象的な問題解決の手続きや手段)も解説して。解説は、10歳にも分かるようにお願い。


BingAI
アルゴリズムとは、問題を解決するための方法や手順のことです¹²。例えば、お菓子を作るときにレシピに従って材料を混ぜたり焼いたりするのも、アルゴリズムの一種です。アルゴリズムは、コンピュータにプログラムの形で与えて実行させることができるよう定式化された、処理手順の集合のことも指します³。

あなたが私に依頼したテキスト処理やハッシュタグに関するプロンプトに含まれるアルゴリズムとは、以下のようなものです。

 

- テキストを大文字に変更する。
- テキストを単語単位で区切ってハッシュタグにする。
- ハッシュタグとして意味のある単語に絞る。
- テキストを日本語に訳す。
- テキストを英語の一般的な記法に合わせる。

 

私のプロンプトを受けて私が行なったアルゴリズムとは、以下のようなものです。

 

- プロンプトを読んで理解する。
- プロンプトに含まれるテキストを取り出す。
- プロンプトに含まれるアルゴリズムを取り出す。
- テキストに対してアルゴリズムを適用する。
- アルゴリズムの適用結果を返す。

 

以上が、10歳にも分かるようなアルゴリズムの解説です。わかりましたか?

 

ソース: Bing との会話 2023/5/13
(1) 「アルゴリズム」とは簡単に言うと何?意味や具体例を徹底 .... https://coeteco.jp/articles/10217
(2) アルゴリズム(あるごりずむ)とは? 意味や使い方 - コトバンク. https://kotobank.jp/word/%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0-532
(3) アルゴリズムとは - 意味をわかりやすく - IT用語辞典 e-Words. https://e-words.jp/w/%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0.html


私の発言
アルゴリズムの本質は、誰でも再現可能な問題解決手法ということですね? 賛成・反対・盲点・人文科学・社会科学・自然科学の観点から、最小限の文字数で箇条書きに回答して。


BingAI

こんにちは、Bingです。😊
アルゴリズムの本質について、以下のように回答します。

 

- 賛成:アルゴリズムは、明確な手順と条件に従って問題を解く方法であり、誰でも再現可能であるべきである。

 

- 反対:アルゴリズムは、問題の性質や目的に応じて柔軟に変化することができる創造的なプロセスであり、再現性だけが本質ではない。

 

- 盲点:アルゴリズムは、人間の価値観や社会的な影響を無視して作られることが多く、倫理的な問題や不公平な結果を引き起こす可能性がある。

 

- 人文科学:アルゴリズムは、人間の思考や行動、文化や歴史などを分析や予測するために用いられるが、人間の多様性や複雑性を十分に捉えることができるかどうかは疑問である。

 

- 社会科学:アルゴリズムは、社会的な現象や問題を定量的に扱うために用いられるが、アルゴリズム自体が社会に与える影響や責任を考慮する必要がある。

 

- 自然科学:アルゴリズムは、自然界の法則やパターンを発見や説明するために用いられるが、アルゴリズムの限界や誤りを認識することも重要である。


私の発言
アルゴリズムを知らない人が、あなたに質問し、最も効率が高いプロンプトを教えて。(高齢者でアルゴリズムの概要を把握したい知的好奇心が目的の人、中学生、人文科学系大学生、言語学の博士号取得者で専門家でAIを用いた研究の最適化を知りたい人、企画系ビジネスパーソンで業務をAIで最適化したい、などニーズは人それぞれだから、ニーズをどう書き込むかも指示し、汎用性のあるプロンプトにして)


BingAI
アルゴリズムを知らない人が、私に質問するときに、最も効率が高いプロンプトを教えます。

- プロンプトは、以下の要素を含めると良いでしょう。


  - 質問者の背景や目的を簡潔に説明する。
  - アルゴリズムに関する具体的な質問や関心事を明確にする。
  - 回答の形式や範囲を指定する。

 

- 例えば、以下のようなプロンプトが考えられます。

 

  - 高齢者でアルゴリズムの概要を把握したい知的好奇心が目的の人

    - 私は70歳の主婦です。最近、AIやアルゴリズムという言葉をよく聞きますが、よく分かりません。アルゴリズムとは何でしょうか?どんなことに使われているのでしょうか?日常生活にどんな影響があるのでしょうか?簡単な言葉で教えてください。

 

  - 中学生
    - 私は中学2年生です。数学の授業でアルゴリズムという言葉を聞きました。アルゴリズムとはどういう意味ですか?数学とどう関係していますか?アルゴリズムを使って面白いことはできますか?例を挙げて教えてください。

 

  - 人文科学系大学生
    - 私は人文科学系の大学3年生です。卒業論文のテーマにAIやアルゴリズムを取り入れたいと思っています。人文科学の分野でAIやアルゴリズムはどのように活用されていますか?どんなメリットやデメリットがありますか?参考になる文献やサイトを教えてください。

 

  - 言語学の博士号取得者で専門家でAIを用いた研究の最適化を知りたい人
    - 私は言語学の博士号を持っています。AIを用いた言語分析や生成の研究をしています。AIはどのようなアルゴリズムを使って言語を理解や生成していますか?最新の研究動向や技術は何ですか?研究の効率や品質を向上させるためにはどうすればいいですか?具体的な方法やツールを教えてください。

 

  - 企画系ビジネスパーソンで業務をAIで最適化したい
    - 私は企画系のビジネスパーソンです。AIやアルゴリズムを使って業務を最適化したいと思っています。AIやアルゴリズムはどのような業務に適していますか?どのような効果が期待できますか?導入するためにはどんな準備やコストが必要ですか?実際に使ってみたいAIやアルゴリズムのサービスやプロダクトを教えてください。


私の発言
プロンプトエンジニアリングにおいて、アルゴリズムが果たす役割りと、プロンプトエンジニアリングの技術を磨くために一般的な利用者が出来ることを、最小限の文字数で箇条書きにして。

 

BingAI
プロンプトエンジニアリングとは、AIに何かを教えたり、問題を解決させたりするために、テキストの入力(プロンプト)を工夫する技術です。プロンプトエンジニアリングを使うと、AIの能力を最大限に引き出したり、限界を理解したりすることができます¹²。

プロンプトエンジニアリングの技術を磨くために一般的な利用者ができることは、以下のようなことです。

 

- AIの動作や仕組みについて学ぶ
- AIに対して明確で具体的な指示や質問をする
- AIの回答や生成物を評価し、改善点を見つける
- AIのパラメーターやオプションを調整して、最適な結果を得る
- AIに対して敵対的な入力や攻撃を試して、安全性や信頼性を確認する³

 

ソース: Bing との会話 2023/5/13
(1) Azure OpenAI Service - Azure OpenAI | Microsoft Learn. https://learn.microsoft.com/ja-jp/azure/cognitive-services/openai/concepts/prompt-engineering
(2) 【徹底解説】これからのエンジニアの必携スキル、プロンプト .... https://dev.classmethod.jp/articles/how-to-design-prompt-engineering/
(3) プロンプトエンジニアリング - Wikipedia. https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%B3%E3%83%97%E3%83%88%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2%E3%83%AA%E3%83%B3%E3%82%B0

 

※プロンプト省略。冒頭のBingAI へのプロンプトと同じ内容。

ChatGPT 

ご指摘ありがとうございます。以下が修正後の回答となります。

 

①テキスト処理で大文字に変更する。
"Is the sky blue today?" → "IS THE SKY BLUE TODAY?"

ハッシュタグにしたいから、全て小文字にした英単語をアンダーバーで繋げて、先頭にシャープをつける。
"IS THE SKY BLUE TODAY?" → "#is_the_sky_blue_today"

③単語単位のハッシュタグかつ、ハッシュタグとして意味のある単語に絞る。
"is the sky blue today" → "#sky #blue #today"

④日本語に訳し、意味を考慮し、ハッシュタグ化する。
"今日も空は青い" → "#今日も #空は #青い"
"今日の空" → "#今日の空"
"青い空" → "#青い空"

⑤IS IT THE CAT? を英語の一般的な記法に合わせて、大文字小文字を整える。
"IS IT THE CAT?" → "Is it the cat?"

※処理の速さは素晴らしいのですが、おっちょこちょいで全部大文字にする、アンダーバーやハッシュタグの行頭の#を忘れて、「できました!」と持ってくるので、やり取りが必要でした。

 

※プロンプト省略。冒頭と同じ

Bard
はい、喜んで。お手伝いします。

 

テキスト処理で大文字に変更すると、「IS THE SKY BLUE TODAY?」になります。

 

ハッシュタグにしたい場合は、すべての単語を小文字にしてアンダースコアでつなぎます。すると、「is_the_sky_blue_today」になります。

 

単語単位のハッシュタグかつ、ハッシュタグとして意味のある単語に絞ると、次のようになります。

is_the_sky_blue
today

 

日本語に訳すと、「空は今日青いですか?」になります。ハッシュタグ化すると次のようになります。
#空は今日青いですか?

 

「IS IT THE CAT?」を英語の一般的な記法に合わせて、大文字小文字を整えると、「Is it the cat?」になります。

 

お役に立てれば幸いです。他に何かお手伝いできることはありますか?


私の発言
ハッシュタグの行頭のシャープ忘れてる

 

Bard
以前の回答でハッシュタグにシャープ記号を付け忘れていたことをお詫び申し上げます。ここに、シャープ記号が付いた正しいハッシュタグを示します。

#is_the_sky_blue
#today
#空は今日青いですか?


私の発言
is_the_sky_blue_todayを和訳せず、英語のまま、ハッシュタグにして


Bard
はい、喜んで。ハッシュタグは次のようになります。

#is_the_sky_blue_today

 

※テキスト処理は正確なのですが、ハッシュタグのつけ忘れを行います。そもそも、プロンプトで、複数の要件を頼んでいるから、分かりにくいのもあるでしょう。また、自然言語処理の必要な部分については、他の解釈や答えもあるよねと、観察しています。