This is fascinating stuff! Also, as an on-and-off longtime user of the Neo Smartpen I had never looked into whether these pens were hackable! I wish I had more samples of my father's unique and expressive handwriting with the Neo Smartpen before he succumbed to micrographia.
I've had one or two moments where it doesn't complete some strokes.
"이런걸할수 있을까" were missing it's ㅏ or ㅓ ticks and turned into "이런길할수 있을끼" or "안녕하세요" was missing the last horizontal stroke on the ㅛ
Nice! Did you find any weird/funny case while training the model? [I remember autotranlation/readers inventing stuff a few years ago.]
> Drive a real mechanical pen
> I think it would be fun to hook the output of this model up to a real pen. I'm not sure of the use case, but maybe you're an artist and have some ideas?
If you get someone to make a few samples and photos, it would be very nice.
> Nice! Did you find any weird/funny case while training the model? [I remember autotranlation/readers inventing stuff a few years ago.]
Mostly, it was me trying things the naive way, running into problems, and then solving them, usually by copying what Alex Graves did in 2013 (but not always!)
For example, to make things simple I first built the model to simply predict the next x, y direction of the pen. This worked for simple pen strokes, but I noticed the model had a difficult time turning corners.
To fix this, I changed the model to instead predict an Mixture Density Network (Same as Graves). This is explained better in his paper, but essentially, instead of predicting one x, y direction, you predict 10, and then randomly sample one of those predictions. Also instead of predicting scalar x, y values, you predict a parameters for a gaussian distribution, and then sample from that.
It always amazes me how much randomness is involved in intelligence.
> If you get someone to make a few samples and photos, it would be very nice.
I'm in Seoul, if you know anyone who would be interested in collaborating, please send me a note! jon@jonb.org
The text embedding structure is very specific to Hangul. Someone that knows more about Chinese than me could probably design a suitable text embedding structure that would work well. I’m happy to collaborate if you want to fork my project and try.
Thank you, you're right! It definitely seems to have a problem when the end of the string ends with 다. It seems to work if you end the sentence with "다." instead of "다". I'll look into this more. There should be plenty of "다" data in the training set, maybe there's something deeper going on.
Ah yes, I'm well aware! My company (hiworker.com) makes AI products for ship building and construction companies that have a large foreign workforce. We have some customers in Ulsan. It's a beautiful place, I love visiting.
I think this would work well for Chinese, but you’d probably need to modify the text embedding system. Let me know if you’d like to try, happy to collaborate.
Given that you found pressure added useful information about a stroke might be continued, do you think adding tilt angle or velocity might also help?
This is fascinating stuff! Also, as an on-and-off longtime user of the Neo Smartpen I had never looked into whether these pens were hackable! I wish I had more samples of my father's unique and expressive handwriting with the Neo Smartpen before he succumbed to micrographia.
I've had one or two moments where it doesn't complete some strokes.
"이런걸할수 있을까" were missing it's ㅏ or ㅓ ticks and turned into "이런길할수 있을끼" or "안녕하세요" was missing the last horizontal stroke on the ㅛ
Thank you for the feedback. I’ll incorporate this into the new training run.
I’m sorry about your father. Reproducing his handwriting would be a beautiful project. What kind of samples do you have from him?
Nice! Did you find any weird/funny case while training the model? [I remember autotranlation/readers inventing stuff a few years ago.]
> Drive a real mechanical pen
> I think it would be fun to hook the output of this model up to a real pen. I'm not sure of the use case, but maybe you're an artist and have some ideas?
If you get someone to make a few samples and photos, it would be very nice.
> Nice! Did you find any weird/funny case while training the model? [I remember autotranlation/readers inventing stuff a few years ago.]
Mostly, it was me trying things the naive way, running into problems, and then solving them, usually by copying what Alex Graves did in 2013 (but not always!)
For example, to make things simple I first built the model to simply predict the next x, y direction of the pen. This worked for simple pen strokes, but I noticed the model had a difficult time turning corners.
To fix this, I changed the model to instead predict an Mixture Density Network (Same as Graves). This is explained better in his paper, but essentially, instead of predicting one x, y direction, you predict 10, and then randomly sample one of those predictions. Also instead of predicting scalar x, y values, you predict a parameters for a gaussian distribution, and then sample from that.
It always amazes me how much randomness is involved in intelligence.
> If you get someone to make a few samples and photos, it would be very nice.
I'm in Seoul, if you know anyone who would be interested in collaborating, please send me a note! jon@jonb.org
Reminiscent of
https://tug.org/tug2003/abstracts/pdf/yiu/yiu.pdf
have you considered extending this to include support for Chinese characters?
The text embedding structure is very specific to Hangul. Someone that knows more about Chinese than me could probably design a suitable text embedding structure that would work well. I’m happy to collaborate if you want to fork my project and try.
It seems that in some sentences, the Korean ending '다 da' is not being output. the AI definitely write better than me.
P.S. I checked the issue: when I input '다.', it outputs '다', but when I input '다', it outputs '디'.
Thank you, you're right! It definitely seems to have a problem when the end of the string ends with 다. It seems to work if you end the sentence with "다." instead of "다". I'll look into this more. There should be plenty of "다" data in the training set, maybe there's something deeper going on.
PS: I saw your feedback report. 화이팅! :)
좋은 하루보내세요:) I hope it goes well. In my area of Ulsan, there are many workers who speak languages other than Korean, and your idea seems promising.
Ah yes, I'm well aware! My company (hiworker.com) makes AI products for ship building and construction companies that have a large foreign workforce. We have some customers in Ulsan. It's a beautiful place, I love visiting.
This is really cool, I wanted to do something similar for hanzi (Chinese characters) so I could practise Chinese handwriting.
I think this would work well for Chinese, but you’d probably need to modify the text embedding system. Let me know if you’d like to try, happy to collaborate.
[flagged]
Wow, what a cool project! It struggles a bit with "쀍" tho... (but so does my phone’s Korean font lol)
Oh thank you, good catch. "쀍" is definitely not a common character in my training set. I'll add it to the next run!
[flagged]
[flagged]
[flagged]