タグ

ブックマーク / nowokay.hatenablog.com (9)

  • GPTのEmbeddingを利用してブログの投稿に対する近いものを探し出す - きしだのHatena

    OpenAIでGPTを使ったAPIembeddingというのがあって、これを使うと文章同士の距離がとれるので、近いエントリを取得したり文章から検索したりができるということで、試してみました。 思いのほかちゃんと動きました。おそらく、GPTで一番実用的なんじゃないでしょうか。 GPTで実際に一番出番がありそうなEmbeddingを使った、近いブログをとってきたり検索したりするやつ。 pic.twitter.com/Vzgy57a7ju— きしだൠ(K1S) (@kis) 2023年3月9日 embeddingとは なんか、文章の特徴を表す多次元のベクトルに変換してくれるらしい。 ようわからん。 OpenAIでは1500次元くらいのベクトルに変換します。 そして、このベクトルの距離が近ければ文章の内容も近いやろということで、似たエントリの抽出などができます。 しかし、テキストが要素数1500

    GPTのEmbeddingを利用してブログの投稿に対する近いものを探し出す - きしだのHatena
  • ChatGPTによって世の中の「AI」の理解がすすんだ - きしだのHatena

    もうなんかどこもかしこもChatGPT、という感じで流行ってますね。といいつつ、ぼくも割とChatGPTのブログ書いてます。だっておもしろいもん。 そして、多くの人が触って、今のAIの特性みたいなものに気づく人が多くなってるように思います。 世の中でAIが流行りだして画像認識だったり音声認識だったり、データ認識系がまず流行りました。 画像に映ってるものがなにかを識別してくれるというのは当時はすごいなと思ったものの、その結果をみても「うまく認識できないものもあるね」という感じでした。 「あぁこういう間違いするんだ」というのもあったけど「錯覚しやすいのね」くらいの感じだったと思います。「錯覚」するのがすごかったりするのだけど。 そもそもとして、画像認識や音声認識を実際に直接触るのは技術者くらいのものなので、普通の人は「alexaテレビの声に反応してる」みたいなアプリケーションが失敗するという

    ChatGPTによって世の中の「AI」の理解がすすんだ - きしだのHatena
  • ChatGPTがGoogle検索を使いものにならなくする未来 - きしだのHatena

    いろいろ仕組み的にChatGPTというのはGoogle検索の代替以上の働きをするなぁと思っていたのだけど、それとは別にChatGPTによって検索が使い物にならなく未来が考えられるなぁと思った。 ChatGPTが検索よりもいいのは、そのものズバリな文書がなくても、その周辺から学んだ単語の関係をもとに、答えを構築してくれることです。 たとえば検索の場合は、日語で書かれた文書が用意されていなければ、たとえ英語中国語の文書があったとしても日語での検索には引っかかりません。 けど、ChatGPTの場合は、英語中国語の文書から学んだ単語の関係や、ほかの文書から学んだ英語と日語の関係、日語での単語の関係などから、日語の回答を生成してくれます。 たとえばGluonという会社について日語で説明してる記事はおそらくないと思うのですが、ちゃんと日語で説明してくれます。社はベルギーですが。。。

    ChatGPTがGoogle検索を使いものにならなくする未来 - きしだのHatena
  • ChatGPTのヤバさは、論理処理が必要と思ったことが確率処理でできるとわかったこと - きしだのHatena

    ChatGPTのヤバいところは、論理処理が必要だと思っていたことが、じつは多数のデータを学習させた確率処理で解決可能だと示したことだと思います。 たとえば、このように正規表現にマッチする文字列を生成するには、特別に専用の論理処理が必要だと思っていました。 前のブログのときには特殊処理が必要だと考えてましたね。 ウソはウソと見抜ける人じゃないとChatGPTを使うのは難しい - きしだのHatena けど、123_45678world.mdはマッチするのにマッチしないと言っているので、そのような誤りが入ることを考えると、どうも確率処理だけでやっているようです。 考えてみると、3層以上のニューラルネットであれば論理素子を再現できるので、ディープラーニングで論理処理を模倣することは可能なんですよね。 バックプロパゲーションでニューラルネットの学習 - きしだのHatena そもそも論理は、多数の

    ChatGPTのヤバさは、論理処理が必要と思ったことが確率処理でできるとわかったこと - きしだのHatena
  • 情報収集について - きしだのHatena

    情報収集をどうするか、という話をしたのでメモ。 ここではトレンドを追うための日々の情報収集の話です。プロジェクトの準備のためとかトピックが決まってる場合はまたちょっと違うかも。 まず情報収集であまり話題にのらないけど一番大事なのは、情報収集の優先度です。 情報収集は無限に深堀して無限に時間をかけることができるので、どこまで情報収集が大切なのかというのを考える必要があります。 まず情報収集自体がどれだけ大切かということで、ぼくの場合は、情報収集して発信することがある程度の役割としてあるので毎日それなりに時間をかけているけど、普通にエンジニアをやる場合はそこまで時間をかけるものでもないと思います。 で、収集する情報にも当然に優先度があります。これは雑に3段階くらいに分けると次のような感じになります。 一般教養 専門分野 自分の強みになる分野 それぞれ情報の収集のしかたは変わるのだけど、そのまえ

    情報収集について - きしだのHatena
  • オブジェクト指向はすでに粒度が時代にあっていない - きしだのHatena

    定期的にオブジェクト指向disを書いてしまってるのだけど。 とりあえずオブジェクト指向の話をすると定義が人によって違いすぎるので、改めてここでの定義を書いておくと 、基的にはOMTの「データ構造と振る舞いが一体となったオブジェクトの集まりとしてソフトウェアを組織化すること」 に従うのですが 「1990年に流行りソフトウェア開発のすべてを飲み込み、いまとなっては人それぞれ定義が違って技術的議論に使えなくなった、主にオブジェクトを基単位としてプログラムを整理するやりかたを指すマーケティング用語」 という感じです。 ほとんどの場合で人によってオブジェクト指向の指す範囲が違いすぎて、技術的知見の共有には使えなくなっています。でも、いずれの定義にしろオブジェクトを基単位にするというのは重要ではないかと。 ソフトウェアの組織化の単位としてオブジェクトを使うというのが大事で、データの搬送に構造体代

    オブジェクト指向はすでに粒度が時代にあっていない - きしだのHatena
  • アルゴリズムの勉強のしかた - きしだのHatena

    この記事で、アルゴリズムの勉強はアルゴリズムカタログを覚えることじゃないよということを書きました。 プログラムの理論とはなにか アルゴリズムの勉強というのは、スポーツで言えば腕立て伏せや走り込みみたいな基礎体力を養うようなもので、「ソートなんか実際に自分で書くことないだろう」とかいうのは「サッカーは腕つかわないのに腕立ていらないだろう」とか「野球で1kmも走ることなんかないのに長距離の走り込みいらないだろう」とか言うようなものです。 Twitterでアルゴリズムの勉強とはなにかと尋ねられて、「アルゴリズムの基的なパターンを知って、それらの性質の分析のしかたをしって、いろいろなアルゴリズムでどのように応用されているか知って、自分が組むアルゴリズムの性質を判断できるようになることだと思います。 」と答えたのですが、じゃあ実際どういうで勉強すればいいか、ぼくの知ってるからまとめてみました。

    アルゴリズムの勉強のしかた - きしだのHatena
    yuki_2021
    yuki_2021 2019/05/14
    アルゴリズムと数学は、勉強しよう勉強しようと思ってるけど手が出ない・・・
  • プログラムの難しさの階層 - きしだのHatena

    プログラムを理解するのは、まあ難しいです。 でも、その難しさには階層があります。 よく、変数は箱だとか箱じゃないとか議論になりますが、何人か初心者に教えた感じでは、変数自体でつまづくことはあまりないので、実際はそんな例えをしなくても「変数は変数だ」で充分だったりします。 デバッガでステップ実行しながら変数の内容を見ればいい。 で、条件分岐くらいは結構つまづくことはなくて、単純な演算と条件分岐だけが必要なプログラムであればまあそれなりに書けるようです。 ぼくも、一番最初に自分の意図で作ったプログラムは input "ワカレミチガアル。ドウスル? 1:ミギ 2:ヒダリ"; a if a = 1 then print "ガケニオチテシニマシタ" else print "ライオンニカマレテシニマシタ" みたいなものでした。こういった条件分岐をたくさん並べてアドベンチャーゲームっぽいものを作った人は

    プログラムの難しさの階層 - きしだのHatena
  • プログラマが勉強すること - きしだのHatena

    今日もプログラマになる勉強する人のところで話をしてきました。 で、また適当にいろいろ書いてました。 http://www.slideshare.net/nowokay/20140228-31742219 今日は特に、この図の内容についてまとめておきます。 ※ このエントリは、主に今日の話を聞いた人を対象としています。前提や補足については省略しています。 まずはプログラミング言語を プログラマというのは、利用者に直接サービスを提供することはできません。コンピュータの上でプログラムを動かして、そのプログラムを使ってもらうことでサービスを提供します。 ※組み込みは前提から外しています。 そのプログラムも、コンピュータで動くものを直接記述することは現実的にできません。 なんらかのプログラミング言語で、プログラムを書くことになります。つまり、プログラマの仕事は直接的にはプログラミング言語をいじくる作

    プログラマが勉強すること - きしだのHatena
  • 1