Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add furigana enrichment function #3

Open
new-village opened this issue May 13, 2024 · 5 comments
Open

add furigana enrichment function #3

new-village opened this issue May 13, 2024 · 5 comments
Assignees

Comments

@new-village
Copy link
Owner

new-village commented May 13, 2024

フリガナの項目に欠損値が多いため、nameを機械変換して補完するenrich_furigana関数を追加する。

TODO

  • pd.from_pandas(pandas.Dataframe)を使ってfireducks.dataframeに変換(参考
  • furigana列を std_furigana列にコピー
  • Vectorized を使ってstd_furiganaがNaNの場合は、nameを入れる
  • 文字列の標準化
  • std_furiganaから法人格を削除
  • 漢字名称のフリガナ変換:pykakasi を使った漢字のカタカナ変換を行う
  • アルファベットのフリガナ変換:Bilingual Emacspeak Project辞書ファイルをベースに置換を行う。
  • to_pandasを使ってpandas.dataframeに変換
@new-village
Copy link
Owner Author

想定される企業のパターン

最低でも下記のパターンについては変換することを考慮したロジックを作成する。

  • すべて漢字:島田商事株式会社
  • 英単語:株式会社souvenir
  • 漢字と英単語のミックス:有限会社HAP観光
  • カタカナとアルファベット記号のミックス:株式会社T&Mコンサルティング
  • 複数の英単語(スペースなし):株式会社OceansCreative
  • 複数の英単語(スペースあり):株式会社Copel direction
  • 漢字と英単語のミックス(複数):株式会社NewホテルCentury

@new-village new-village self-assigned this May 13, 2024
@new-village new-village changed the title add furigana enrichment functio add furigana enrichment function May 13, 2024
@new-village
Copy link
Owner Author

Bilingual Emacspeak Project(BEP)辞書は、正確な発音表現となっており、Address アドゥレス といったカタカナ変換が多くみられるが、フリガナとしては不適当なのでインポート時に補正をかける必要あり。

下記に別言語ながら正規表現で変換しているパターンがあった。
https://gist.github.com/ikegami-yukino/2213879

@new-village
Copy link
Owner Author

new-village commented May 13, 2024

Bilingual Emacspeak Project(BEP)辞書のライセンスは GPL (ファイルの冒頭に記載あり)。
READMEへの追記も忘れずに。

Copyrights
アルファベット文字列とカタカナを変換する辞書は、Bilingual Emacspeak Projectのbep-eng.dicのデータを利用しています。
Bilingual Emacspeak Project (c) 1999-2002 Bilingual Emacspeak Project

@new-village
Copy link
Owner Author

Benchmark Task

df['std_furigana'] = df['std_furigana'].apply(function)をpandas dataframeで実行した場合と、fireduck dataframeで実行した場合の時間を計測する

@new-village
Copy link
Owner Author

new-village commented May 16, 2024

Benchmark Task

df['std_furigana'] = df['std_furigana'].apply(function)をpandas dataframeで実行した場合と、fireduck dataframeで実行した場合の時間を計測する

fireducksはapplyをサポートしていない(2024年5月16日現在)。このため、マルチプロセスを活用する。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant