カテゴリー
ネットのサービス

Autoregex.xyz – 英語で書いた文章から正規表現を作る変換サービス

AutoRegexは、英語から正規表現への変換をしてくれるというwebサービスです。

トップには「平易な英文からGPT-3を使って正規表現を生成します」とあります。

autoregex.xyz のトップ

メールアドレスで登録して試してみました。

“phone number”と入れて出てきたのはこんな正規表現。

\d{3}-\d{3}-\d{4}

北米の番号としてはありうる正規表現かな。文字と桁だけチェックできて、形式も限定されていますが。(参考: まじめな正規表現の例)

“Japanese phone number” だとこれが帰りました。

^\d{2}-\d{4}-\d{4}$

うん。だめですねこれ。携帯電話の番号とか地方の局番とかはマッチしなさそう。あと先ほどはなかった行頭行末の条件が増えています。

中身がどう動いているかわかりませんが、正規表現とその解説文(英文)をたくさん食わせて学習させてるということだと、その中の日本の電話番号に関する情報が間違ってるのかもしれません。

正規表現でよく揉める難しいやつ、”email address”を入れると、

[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+

はい。これはもともと簡単そうに見えて非常に難しい問題なのですが、かなり緩い正規表現になっています。簡易なチェックに使うのも問題ありそう。

トップページの例は英文で説明的に書いたものを正規表現化するものが多いので、こういうのも試しました。”word starts either a or b, then any alphabet follows, and ends with three digits”

^(a|b)[a-zA-Z]{3}[0-9]{3}$

言ってない条件が入ってますが、大きくは違ってないかと。

変換ボタンをもう一度押すと、出てくる正規表現は変わっていくようです。何回も試す事でより正解に近い正規表現が得られることもあるかもしれませんが、現時点では出てきた正規表現を理解して意図通りになってることを確認・必要に応じて修正するとか、大量にテストケースを書いてテストするとか(まあ、これは自分で作った正規表現でもすることですが)しないといけなさそうに思います。

現時点では利用には十分注意した方がいいと思いますが、いつか賢くなっていくなら助かる人もいそうなサービスです。

via reddit

カテゴリー
Uncategorized 技術者と英語

「ランダムなdigitsを示して」「左小指、左足親指、右足第4指、右人差し指、…」

数学・計算に強い検索エンジンとして知られるWolfram Alphaで、面白い検索結果が出るというツイートがありました。

「数字をランダムに48個表示して」のつもりで入力したものに対して、両手両足の指の名前がランダムに返ってきてます。

digit の2番目の意味に「手足の指」があるそうです。知りませんでした。

指を折って数えたものが数字(digit)になったから、数字より指の方が先にあった言葉なのかもしれませんね。

この結果、技術的に(technically)正しいと言えばまったくもって正しいのですが、Wolfram Alpha に求められてる結果ではなさそう。このツイートがバズったのを見て修正したのか、今は結果が出なくなってしまっていますが、下の方の「関連検索語」にはまだ「左足親指」や「右足第2指」が提案で出てきますね。

本来ほしかった結果を得たいときはどうすればいいか、ですが、48 random integers (ランダムな整数を48個)ですかね。

ヒトケタの数字を48個ほしかったのかもしれませんが。

カテゴリー
Uncategorized ネットの事件

グーグル翻訳が機械学習バイアスで中性主語に性別をつける問題

日本語では”She”/”He”に「彼女」/「彼」が対応するため、あまり気づかないところなのですが、三人称代名詞が中性の言語というのもいろいろあるのですね。

ハンガリー語

ハンガリー語では三人称の代名詞で男女の区別をしないそうです。彼女・彼の両方が”Ő”になります。

ハンガリー語で三人称の様々な文章を作りそれらを英語に翻訳すると英語の三人称単数で中性を表せないため”She”か”He”になるのですが、その決まり方がどうにも偏っているのでは、という話。

日本語をハンガリー語に翻訳して、それをもう一度日本語に戻すと、英語と同じように性別がつくことが確認できました。

マレー語(アニメーションgif)

エストニア語

トルコ語

アルメニア語

フィリピン語

多数の翻訳例を学習して再現するのですから、ナイーブに作った機械翻訳が社会の持っているジェンダーバイアスを再現してしまうのは当然といえば当然ですね。ここは勝手に推論してはいけない箇所のように思います。実際、単文の翻訳では”He or She”などと両案併記で翻訳される場合もあるそう。

三人称単数のtheyという案もありそうですが、これらの言語からの翻訳がtheyになることを利用者が望むかも難しいところ。

via Bored Panda