日本語対応の分かち書きライブラリ『BudouX』、AndroidやChromeに標準搭載へ 43
ストーリー by nagazou
搭載 部門より
搭載 部門より
Googleが9月24日、公式ブログ上で日本語などアジア圏の言語でのテキスト折り返しを改善するための「BudouX」という「分かち書き」ライブラリを紹介している。アジア圏の言語は単語と単語の間にスペースを入れないため、テキストが意図しない位置で改行されてしまい読みにくくなることがある(Googleブログ、窓の杜)。
「BudouX」はこの問題を解決するために開発された。「BudouX」は、オープンソースのライブラリで、サイズはモデルを含めて20KB程度とコンパクト、かつさまざまな言語モデルを学習できる特徴がある。現時点では日本語と中国語(簡体字と繁体字)で利用可能で、JavaScript、Python、Javaなどのプログラミング言語でサポートされている。このライブラリは既に「adobe.com」などで活用されているという。また、「Google Chrome 119」以降では、特定条件で自動的に「BudouX」の分節区切りが適用される。また、「Android 14」以降でも「BudouX」が使われているとのこと。
「BudouX」はこの問題を解決するために開発された。「BudouX」は、オープンソースのライブラリで、サイズはモデルを含めて20KB程度とコンパクト、かつさまざまな言語モデルを学習できる特徴がある。現時点では日本語と中国語(簡体字と繁体字)で利用可能で、JavaScript、Python、Javaなどのプログラミング言語でサポートされている。このライブラリは既に「adobe.com」などで活用されているという。また、「Google Chrome 119」以降では、特定条件で自動的に「BudouX」の分節区切りが適用される。また、「Android 14」以降でも「BudouX」が使われているとのこと。
機能自体はAndroid13からあった (スコア:2, 参考になる)
TextViewにandroid:lineBreakWordStyle="phrase"を指定するといい感じに改行入れてくれる。
https://android-developers-jp.googleblog.com/2022/07/android-13-japanese.html [googleblog.com]
htmlでのwbrの取り扱い (スコア:1)
ちょうど、昨日ガンダムSEED FREEDOM のメカ [gundam-seed.net]についての情報が公開されたんだけど、
Firefoxで見ると画像に重ねて表示しているモビルスーツ名が
とか
ってなってる。
なんじゃこりゃと思ったんだけど、機体名は画像埋め込みではなくテキストとして表示しており、Chromeで見たら問題なかった。
ってとこで気になったんですが、
BudouXライブラリは、HTMLページに対する処理では、単語の切れ目に<wbr>を入れるようです。
でも、日本語の場合は、そもそも全ての文字間でbreak可能(wbr相当が全ての字間に入ってる)という認識なので、
これでいいのかがちょっと気になる。
たぶんブラウザの挙動としては、暗黙のwbrよりも明示的なwbrの方が強い、って処理になってるんだろうけど、これだけだと
上記みたいな予期せぬ改行は防げないようなぁ、と。
「日本語を単語途中改行させない」って制御も入れて欲しい。
Re: (スコア:0)
そもそも「ほぼカタカナのみで表記される特定作品内の固有名詞」の単語の切れ目を認識するというのは、人間にとっても難度が高いような…
Re: (スコア:0)
「ブラックナイトス・コード・シヴァ」でも違和感が無いっちゃないよな・・・。
Re: (スコア:0)
元記事にも書いてあるけど、京大とNTT Blogが81人のブログ記事を手動で解析したデータが元になっていて、解析元のブログ記事は249個、budouXが使っているモデルに至っては14KBしかない。
KNBコーパス
https://hayashibe.jp/tr/corpus/knbc [hayashibe.jp]
ja_knbc.json
https://github.com/google/budoux/blob/main/budoux/models/ja_knbc.json [github.com]
https://raw.githubusercontent.com/google/budoux/main/budoux/models/ja_... [githubusercontent.com]
を見ると、「京都」が3つあるのに「東京」や「大阪」はゼロだから、KNBCの
4テーマ(京都観光、携帯電話、ス
Re: (スコア:0)
ガノタは信用できない
Re: (スコア:0)
将来的にはテキストの前処理ではなく、Chrome 119が実装しているCSS4プロパティのword-break: auto-phrase [csswg.org]で解決されることになるでしょう
これを思い出した (スコア:1)
あなたとJAVA,
今すぐダウンロー
ド
アジア圏の言語は単語と単語の間にスペースを入れない? (スコア:0)
お隣さん [kvillage.jp]は入れるようですよ。
日本語でも単語と単語の間にスペースを入れる表記をMicrosoftは採用していますね。
Re: (スコア:0)
よくわからない表記をしてしまいましたが「英単語と英単語の間」のコトです。
Re: (スコア:0)
ますますよくわからないんだが、誰か説明して。
Re: (スコア:0)
MicrsoftはMicro softとは書かないということではないか
Re: (スコア:0)
「Xbox コンソール コンパニオン」「クイック アシスト」「ビデオ エディター」「ボイス レコーダー」とかでしょ。
カタカナにするときに元の単語でスペースになるのがそのまま維持されている。
Re: (スコア:0)
中黒があるのにねぇ
Re: (スコア:0)
ドンキ・ホーテ
サンフラン・シスコ
Re:アジア圏の言語は単語と単語の間にスペースを入れない? (スコア:1)
モヘン・ジョダロ [wikipedia.org]
スリジャヤ・ワルダナ・プラコッテ [wikipedia.org]
Re: (スコア:0)
フラン・シスコ・ザ・ビエル
Re: (スコア:0)
普通、「Windowsでコンピュータの世界が広がります。」って書くところを
マイクロソフトルールでは「Windows でコンピュータの世界が広がります。」って書くみたいな感じの話なんじゃないの?
Re: (スコア:0)
MSルール [srad.jp]ならコンピュータじゃなくてコンピューターだぞ
Re: (スコア:0)
対偶をとれば、「単語と単語の間にスペースを入れるなら、アジア圏の言語ではない」だな。
確かに。
Re: (スコア:0)
朝鮮語版ウィキペディアみたいに半角空白使うガイドラインのところもあれば、報道記事では使ってないところも見かけるので表記はバラバラ。
慣れないから 読みにくいでしょ こんな 書き方 は さ。
Re: (スコア:0)
ハングルって日本語で言う平仮名片仮名みたいなもんなんだとすると
にほんごでもこれはちょっとよみづらいでしょ
にほんご でも これは ちょっと よみづらい でしょ
Re: (スコア:0)
> ハングルって日本語で言う平仮名片仮名みたいなもんなんだとすると
というかほぼローマ字そのもの(「ん」だけ別ルール)。
母音と子音記号覚えたらすぐ読める。
Re: (スコア:0)
ケブンリッジでは そほれど よらづみく なですいよ
Re: (スコア:0)
にほんこ゛等幅で
Re: (スコア:0)
読点の使い方がわからないのか使うのが面倒くさいのか、そういう書き方をしてる文章を、SNSとかでは偶に見かけますね!
Re: (スコア:0)
アラビア語もペルシャ語もアジア圏だよなあ。
Re: (スコア:0)
極東と言うべきだったね
だからもういいって… (スコア:0)
もともとBudouがあってその後継としてBudouX… またマスクかよ!
# マスク憎けりゃXという文字まで憎い
Re: (スコア:0)
マスクではなく、オーバーボディという奴ではないですかね グロロ~
Re: (スコア:0)
それはともかく縦書きへの対応を頑張って欲しいかな。
しかし、
iが頭につくのが流行ったりeが頭につくのも流行ったけどXには及ばない気がする。
シャープやマイクロソフトもXが好きみたいだし、Xにどんな魅力があるのだろうか。
Re: (スコア:0)
seX。
Re: (スコア:0)
文字に罪はない。
それに、文字パージとは始めたら大変なことになるよ。子供問題どころじゃない。
Re: (スコア:0)
卍:そのとおりなんですがね... (´・ω・`)
Re: (スコア:0)
> もともとBudouが
こっち [github.com]みたら、武道じゃなくて葡萄なのねん
Re: (スコア:0)
ネプチューンマスクか
Re: (スコア:0)
商標権侵害でXを提訴って無理があると思ったが風評被害をおそれたのか
VS (スコア:0)
VisualStudioやVSCodeにも取り入れてほしいな。
VisualStudio2015までは日本語の単語単位での選択とか出来たのに、2017からは出来なくなってるし。
VSCodeは最初から出来なくて、拡張(Japanese Word Handler)入れても完全にとは行かないし。
Unicode Line Breaking Algorithmの何がまずいの? (スコア:0)
Unicode Line Breaking Algorithmがあるのに何でそんなめんどくさいことしなきゃならんの?
Re: (スコア:0)
それって昔からある禁則処理じゃないんですか?
Re: (スコア:0)
そうだよ。
改行なんかそれでいいじゃん。
Re: (スコア:0)
まあパソコンなんか覚えるの面倒だから使わないって人もいるし、そのへんはその人の自由ですね。
ワカチコ (スコア:0)
ワカチコ